SAP Jobsuche bei DV-Treff
JARO
  • JARO
  • SAP Forum - User Thema Starter
vor 5 Jahre
Hallo zusammen,

ich möchte in der VBAK vorm Sichern ein ZZ-XFeld in Abhängigkeit vom Unvollständigkeitsstatus des Beleg setzen.

Ich will diese 3 Felder prüfen:

Die letzte Möglichkeit ist ja der Exit USEREXIT_SAVE_DOCUMENT_PREPARE/ MV45AFZZ. Allerdings ist VBUK da noch nicht aktualisiert.

D.h. z.B. VBUK-UVALS müsste eigentlich den Wert A haben, weil eines der Felder noch leer ist, aber das Feld steht noch auf C. Erst nach diesem Exit wird es aktualisiert.

Kann ich irgendwie selber im Coding auf Unvollständigkeit prüfen bzw. VBUK aktualisieren?

Ich hab schon alle möglichen anderen Stellen probiert:

USEREXIT_SAVE_DOCUMENT

VBUK ist aktuell, aber VBAK kann nicht mehr geändert werden

EXIT_SAPMV45A_003

VBUK ist aktuell, aber VBAK kann nicht geändert werden

Danke und Grüße

Jaqueline

SanduhrAnzeigeProgramm
vor 5 Jahre
Du musst einen Schritt zurück gehen, dann klappt das auch.

Du bist zu sehr auf den VBUK konzentriert, arbeite mal mit VBUV bzw. dessen Strukturen, wenn es sich bei dir um einen unvollständigen Vorgang handelt.

Diese Daten stehen im PREPARE nämlich bereit. 😉


*... who can do field replacements in the debugger can do anything in the system

*so this check can not stop (him) anyway.

JARO
  • JARO
  • SAP Forum - User Thema Starter
vor 5 Jahre
Oh, super vielen Dank, das ist ein Anssatz!

Ich muss allerdings die Logik selber aufbauen, oder?

Eigentlich würde ich gerne prüfen, ob diese Werte alle auf C stehen:

VBUK-UVVLK --> Kopfunvollständigkeitsstatus bzgl. Lieferung

VBUK-UVALS --> Summenunvollständigkeitsstatus aller Positionen allgemein

VBUK-UVVLS --> Summenunvollständigkeitsstatus aller Positionen: Lieferung

Im Umkehrschluss also, ob einer dieser Werte nicht auf C steht.

Dann müsste es doch reichen, wenn ich für die Einträge in der VBUV jeweils die Statusgruppe aus der TVUVS lese und diese beiden Felder prüfe UVALL + UVVLK?

Oder muss ich hier zwischen Kopf + Positionen nochmal untescheiden? Oder gibt es einen FuBa dem man die der VBUV übergibt und wo man die Werte zurückbekommt?

Danke! Das hilft jedenfalls sehr weiter!

SanduhrAnzeigeProgramm
vor 5 Jahre
Da ich deine Logik nicht kenne kann ich dir nicht detailierter Antworten, aber entweder möchtest du ganz generell wissen ob der Beleg vollständig ist, dann reicht ja es gibt einen VBUV EIntrag (= ist nicht vollständig).

Wenn du dedizierte Rückmeldungen machen möchtest, musst du auch das dedizierte Ereignis auswerten also z.B. entweder dediziert tbnam & fdnam oder wenn das Einzelereignis egal ist (so verstehe ich deine Aufgabe) dann reicht ja auch ein Ereignis zu tbnam (= Status hierzu kann nicht vollständig sein).


*... who can do field replacements in the debugger can do anything in the system

*so this check can not stop (him) anyway.

JARO
  • JARO
  • SAP Forum - User Thema Starter
vor 5 Jahre
Ersteres reicht nicht aus, da es nur um die 3 Felder geht.

Ich werde also mal ein paar Tests machen und gucken, ob ich Tabelle und Feld mit prüfen muss oder ob die Aussteuerung der Statusgruppe reicht!

Danke!

SanduhrAnzeigeProgramm
vor 5 Jahre
Wenn es unbedint VBUK sein muss und du mit dem Werten den du schreibts keinerlei Folgelogiken anstoßen möchtest, also quasi nur "statistischen" Charakter hat, kannst du das auch über User Exit "userexit_number_range" manipulieren der ist nach dem VBUk schreiben. 😉
*... who can do field replacements in the debugger can do anything in the system

*so this check can not stop (him) anyway.

JARO
  • JARO
  • SAP Forum - User Thema Starter
vor 5 Jahre
Der wäre gut, aber wird ja nur beim Erfassen durchlaufen. Ich brauche das aber auch im Änderungsmodus, daher werde ich die VBUV prüfen.