COMMIT WORK AND WAIT Thema ist als GELÖST markiert

Getting started ... Alles für einen gelungenen Start.
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

COMMIT WORK AND WAIT

Beitrag von Barney (Specialist / 104 / 20 / 9 ) »
Hallo zusammen,

ich habe folgende Herausforderung: Ein Palette im WE kann zwei Bestellungen und damit zwei externe Lieferscheinnummer beinhalten. Weil es zwei externe Lieferscheine sind, muss ich auch zwei Wareneingänge machen. Das ist so gesetzt. Also mache ich einen Loop über die Lieferscheine und buche dann mit "BAPI_GOODSMVT_CREATE" den WE. Dann kommt der CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' EXPORTING wait = 'X' (was einem COMMIT WORK AND WAIT entspricht). Und dann käme der zweite Durchlauf. Nur dann kommt es zu einer Fehlermeldung, weil ich zufälligerweise auf der zweiten Lieferung das gleiche Material wie in der ersten Lieferung habe und nun die Werksdaten von mir noch gesperrt sind.

1. Sollte der COMMIT WORK AND WAIT nicht warten, bis alles erledigt ist, und damit sollten auch Sperreinträge entfernt worden sein? Wenn ich falsch liege, auf was wartet das WAIT?
2. Wie kann ich dieses Problem elegant lösen - ohne irgendwelchen DO x TIMES-Schleifen, wo ich nachprüfe, ob ich weiter machen kann und ohne WAIT UP x seconds?

Danke und Tot ziens

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


Re: COMMIT WORK AND WAIT

Beitrag von ewx (Top Expert / 4918 / 332 / 655 ) »

Code: Alles auswählen.

Set update task local.
Vor Aufruf des BAPI.

Eigentlich solltest du beide BAPIS nacheinander OHNE BAPI_COMMIT ausführen können.
So ist gewährleistet, dass beide BAPIS verbucht werden, wenn auch beide fehlerfrei sind.

Folgende Benutzer bedankten sich beim Autor ewx für den Beitrag:
Barney


Re: COMMIT WORK AND WAIT

Beitrag von Barney (Specialist / 104 / 20 / 9 ) »
danke, der Tipp mit dem Set update task local hat geholfen.

Aber ohne zwischenzeitiges Commit läuft der Fuba nicht im Loop... :(
The function module MB_CREATE_GOODS_MOVEMENT is called up for the second time. After it was called up the first time, the function module MB_POST_GOODS_MOVEMENT was called, but a COMMIT WORK was not carried out in the calling program.

Seite 1 von 1

Über diesen Beitrag


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

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.

Vergleichbare Themen

COMMIT WORK AND WAIT im Batch-Betrieb
von Bitfummler » 13.02.2009 12:59
COMMIT WORK
von retsch » 25.05.2023 07:40
COMMIT WORK bei 2 BAPI
von autohandel7 » 11.11.2020 11:16
Nachrichtenfindung und COMMIT WORK
von schmitzandreas » 21.01.2008 13:25
Wie benutze ich COMMIT WORK richtig
von ABAPlerv » 18.04.2024 22:18