DATBI Massenänderung Konditionen

SAP R/3 Vertrieb: Auftragsverwaltung, Versand und Transport, Fakturierung, Kreditmanagement, Außenhandel/Zoll...
4 Beiträge • Seite 1 von 1
4 Beiträge Seite 1 von 1

DATBI Massenänderung Konditionen

Beitrag von BubbleSort (ForumUser / 30 / 11 / 0 ) »
Hallo,

ich muss für sehr viele Konditionen in einem Programm jeweils nur das DATBI ändern.
Ich habe mir bereits viele Funktionsbausteine etc. angesehen...vieles sieht allerdings relativ umständig aus.

Wie kann man in diesem Fall am schnellsten und einfachsten zum Ziel gelangen? Hat jemand bereits ein ähnliches Szenario realisiert?

Besten Dank und Grüße

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: DATBI Massenänderung Konditionen

Beitrag von Tron (Top Expert / 1327 / 35 / 331 ) »
Moin.
Ich habe es so gelöst:
Eine Batchaufzeichnung der VK12 mit dem Transaktionsrekorder (SHDB) und daraus einen Funktionsbaustein generiert.
Der erzeugte Baustein ist übrigens RFC - fähig.
Dann den Baustein in ein Programm einbauen und z.B. einen Excel-Upload ermöglichen.

gruß Jens
<:: XING-Gruppe Tricktresor::>
Die deutsche Rechtschreibung ist Freeware, du darfst sie kostenlos nutzen –
Aber sie ist nicht Open Source, d. h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

Re: DATBI Massenänderung Konditionen

Beitrag von BubbleSort (ForumUser / 30 / 11 / 0 ) »
Hallo.
Ok, danke. Werde so vorgehen, allerdings müssen direkt im Programm alle Datensätze im Hintergrund geändert werden.
Bei Konditionen, die auf Grund der Selektion nur einen Treffer haben geht das ohne Probleme.

Wie kann man das allerdings handhaben, wenn es mehrere Einträge gibt und man zudem vorher nicht weiß wie viele es sind?
Geht das auch direkt via Transaktionsrekorder oder muss ich im Endeffekt vorher auf die Konditionstabelle gehen und prüfen wie viele Einträge es gibt und die Batch-Input Mappe dynamisch generieren (für die Zeilen, wenn es mehrere sein sollten)?

Danke & beste Grüße

Re: DATBI Massenänderung Konditionen

Beitrag von Tron (Top Expert / 1327 / 35 / 331 ) »
Moin.
BubbleSort hat geschrieben:...wenn es mehrere Einträge gibt...
Da muß ich mal genauer nachhaken, was mehrere Einträge bedeutet.
Mehrere Einträge eines Materials in Konditionstabelle(n) Tabelle Axxx (z.B. A304) ?

Ich würde mir erst mal die verwendeten Konditionstabellen (VK13) ermitteln z.B. über das Infosystem oder Customizing.
Dahinter verbergen sich ein oder mehrere Konditionstabellen namens Axxx.
Um das Ausmaß der anstehenden Änderungen zu ermitteln, kann man sich ein, oder mehrere Quickviews anlegen, indem man Axxx-KNUMH mit der Tabelle KONP-KNUMH joined.
Wir hatten für jede Kondition eine Batchaufzeichnung und damit je Kondition einen Funktionsbaustein erstellt.
Erfreute sich jedes Jahr großer Beliebtheit :wink:
Ich würde allerdings für die Zukunft dazu raten von Konditionsänderungen (VK12) abzusehen(nur im Bedarfsfall) und lieber neue Konditionssätze (VK11) anlegen !

Zum Thema Hintergrundverarbeitung:
Eine gängige Methode zum Ablegen oder Verarbeiten von Daten im Hintergrund, ist das Verwenden von Clustern.
Beispiel:
*&---------------------------------------------------------------------*
*& Report ZCREATE_CLUSTER_ZA *
*& *
*&---------------------------------------------------------------------*
*& *
*& *
*&---------------------------------------------------------------------*

REPORT zcreate_cluster_za .
DATA lt_data3 TYPE TABLE OF sflight.

SELECT * FROM sflight INTO TABLE lt_data3.
PERFORM create_cluster.


*&---------------------------------------------------------------------*
*& Form CREATE_CLUSTER
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_DEST text
* <--P_BIN_ID text
*----------------------------------------------------------------------*

FORM create_cluster.
IF NOT lt_data3[] IS INITIAL.
DATA: indxkey TYPE indx-srtfd.
indxkey = sy-repid.
EXPORT lt_data3 FROM lt_data3 TO DATABASE indx(za) ID indxkey.
ENDIF.
ENDFORM. " CREATE_BIN
Die Daten werden in die Tabelle INDX unter dem Schlüssel ZA / Reportname abgelegt.

Zurücklesen der Daten aus dem Cluster.
*&---------------------------------------------------------------------*
*& Report ZREAD_CLUSTER_ZA *
*& *
*&---------------------------------------------------------------------*
*& *
*& *
*&---------------------------------------------------------------------*

REPORT zread_cluster_za .
DATA lt_data3 TYPE TABLE OF sflight.
DATA l_fn TYPE string VALUE 'c:\temp\lt_data3.txt'.


PERFORM get_cluster.
break-point.
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = l_fn
CHANGING
data_tab = lt_data3
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
not_supported_by_gui = 22
error_no_gui = 23
OTHERS = 24.

*PERFORM delete_cluster.


*&---------------------------------------------------------------------*
*& Form READ_CLUSTER
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_DEST text
* <--P_BIN_ID text
*----------------------------------------------------------------------*

FORM get_cluster.

IF lt_data3[] IS INITIAL.
DATA: indxkey TYPE indx-srtfd.
indxkey = 'ZCREATE_CLUSTER_ZA'.
IMPORT lt_data3 TO lt_data3 FROM DATABASE indx(za) ID indxkey.
ENDIF.
ENDFORM. " get_cluster

*&---------------------------------------------------------------------*
*& Form DELETE_CLUSTER
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_DEST text
* <--P_BIN_ID text
*----------------------------------------------------------------------*

FORM delete_cluster.

DATA: indxkey TYPE indx-srtfd.
indxkey = 'ZCREATE_CLUSTER_ZA'.
DELETE FROM DATABASE indx(za) ID indxkey.

ENDFORM. " DELETE_CLUSTER
So kann man auch im Hintergrund Daten sammeln, oder zur Hintergrundverarbeitung bereitstellen.
Mit dem 2. Report die Ergebnisse lesen downloaden (und löschen) . Dir fällt bestimmt was dazu ein.
https://wiki.scn.sap.com/wiki/display/S ... +Databases
Ps. Der Name der Internen Tabelle (e.g. LT_DATA3) darf nicht mehr als 8 Zeichen haben !!

gruß Jens
<:: XING-Gruppe Tricktresor::>
Die deutsche Rechtschreibung ist Freeware, du darfst sie kostenlos nutzen –
Aber sie ist nicht Open Source, d. h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

Seite 1 von 1

Vergleichbare Themen

2
Antw.
2018
Views
Massenänderung des Mitarbeiterkreises
von ginotico » 15.04.2006 13:10 • Verfasst in Human Resources
0
Antw.
1359
Views
Massenänderung von Rabattkonditionen
von fbo » 02.07.2010 12:18 • Verfasst in Sales and Distribution
6
Antw.
5158
Views
Massenänderung Belegkopf
von bungalow-bill » 21.04.2008 16:15 • Verfasst in Financials
3
Antw.
2464
Views
Massenänderung IT2006
von BlueMC » 22.04.2008 11:46 • Verfasst in Human Resources
3
Antw.
6275
Views
Massenänderung Materialtext
von Beginner014 » 04.09.2014 09:35 • Verfasst in SAP - Allgemeines

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

PDF-Anzeige unter EDGE
vor 4 Tagen von jocoder 2 / 71
Etikettendruck mit SmartForms
vor einer Woche von a-dead-trousers 2 / 71

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

PDF-Anzeige unter EDGE
vor 4 Tagen von jocoder 2 / 71
Etikettendruck mit SmartForms
vor einer Woche von a-dead-trousers 2 / 71

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Wochen von Lucyalison 1 / 130
Group Items auf einer Filterbar
vor 4 Wochen von Bright4.5 1 / 166