MV45AFZZ UserExists

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
18 Beiträge • Seite 1 von 2 (current) Nächste
18 Beiträge Seite 1 von 2 (current) Nächste

MV45AFZZ UserExists

Beitrag von the-FoX (ForumUser / 87 / 0 / 0 ) »
Hallo alle zusammen!

Ich habe folgendes Problem:
In dem Programm SAPMV45A
möchte ich vor dem Speichern eines Beleges einen Wert ändern, zum Beispiel:
vbap-mvgr1
Wenn ich den Wert in der FORM userexit_save_document_prepare setze, ist es soweit auch ok. Aber gespeichetr wird der Wert nicht. Ich habe ihn auch testweise in der entsprechenden Zeile in der xvbap eingetragen, aber das wird auch ignoriert.
:roll: Hat jemand eine Idee oder besser: Ahnung, wie man solche Werte ändert bevor sie gespeichert werden ? Oder ob es noch andere Variablen gibt ? Ist die Form die falsche ?

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


Beitrag von ewx (Top Expert / 4854 / 313 / 644 ) »
XVBAP-UPDKZ = 'U'. "!!

Gruß,
Enno

Beitrag von Gast ( / / 0 / 3 ) »
öhm..was ist XVBAP-UPDKZ ?

Beitrag von ewx (Top Expert / 4854 / 313 / 644 ) »
Anonymous hat geschrieben:öhm..was ist XVBAP-UPDKZ ?
Das ist das Feld UPDKZ in der Struktur XVBAP.

Da du die Änderungen im Userexit_Save_Document_Prepare machst, nehme ich an, dass dein Coding etwa so aussieht:

Code: Alles auswählen.

loop at xvbap.
xvbap-mvgr1 = 'ABC'.
modify xvbap.
endloop.
Und da muss eben auch noch

Code: Alles auswählen.

XVBAP-UPDKZ = 'X'. 
rein.

Gruß,
Enno.

Beitrag von Gast ( / / 0 / 3 ) »
In allen Releases, in denen ich bisher mit SD zu tun hatte, war XVBAP-UPDKZ nie 'X'.
Sondern space, 'I', 'U' oder 'D'.
UPDKZ muss also auf 'U' gesetzt werden, aber nur, wenn es zuvor space war, nicht bei 'I' oder 'D'!

Außerdem muss sichergestellt sein, dass man den richtigen XVBAP-Eintrag trifft.
(Zu einer Position können durchaus mehrere Einträge existieren.
Ich glaube die itab ivbap bestimmt, welche XVBAP-Einträge relevant sind.)

Beitrag von ewx (Top Expert / 4854 / 313 / 644 ) »
Mein ich doch: "U"!

Tschuldigung!
Gruß
Enno.

Beitrag von ewx (Top Expert / 4854 / 313 / 644 ) »
Anonymous hat geschrieben:(Zu einer Position können durchaus mehrere Einträge existieren.
Ich glaube die itab ivbap bestimmt, welche XVBAP-Einträge relevant sind.)
Das wiederum habe ich bisher noch nicht erlebt!

Beitrag von Gast ( / / 0 / 3 ) »
Wenn ich es auf U setze, bekomme ich die Meldung Position xyz fehlt in YVBAP :-/

the-FoX

Beitrag von ewx (Top Expert / 4854 / 313 / 644 ) »
Denn pack halt einen Eintrag rein! Die X-Tabellen enthalten die aktuellen Daten. Die Y-Tabellen den alten Stand. So können die Änderungsbelege geschrieben werden.

Code: Alles auswählen.

loop at xvbap.
  read table yvbap with key 
    vbeln = xvbap-vbeln
    posnr = xvbap-posnr transporting no fields.
  if sy-subrc > 0.
    append xvbap to yvbap.
  endif.
  xvbap-mvgr1 = 'ABC'.
  modify xvbap.
endloop.
Gruß, Enno

Beitrag von Gast ( / / 0 / 3 ) »
ewx hat geschrieben:
Anonymous hat geschrieben:(Zu einer Position können durchaus mehrere Einträge existieren.
Ich glaube die itab ivbap bestimmt, welche XVBAP-Einträge relevant sind.)
Das wiederum habe ich bisher noch nicht erlebt!
Dann lege eine neue Position an, lösche sie, lege sie noch mal an, lösche sie wieder, und lege sie noch mal an und prüfe dann die XVBAP.
Früher gab es dann 3 XVBAP-Einträge, davon 2 mit UPDKZ = 'D'.
Kann aber sein, dass SAP die Logik inzwischen geändert hat, habe gerade kein System, in dem SD verwendet wird.

Beitrag von Gast ( / / 0 / 3 ) »
Danke! Das wars

Beitrag von Gast ( / / 0 / 3 ) »
ewx hat geschrieben:Denn pack halt einen Eintrag rein! Die X-Tabellen enthalten die aktuellen Daten. Die Y-

Code: Alles auswählen.

    append xvbap to yvbap.
Das ist nicht Dein Ernst, oder?

Wenn der Eintrag in XVBAP steht und UPDKZ nicht 'D' ist, er aber in YVBAP fehlt, heißt das, der Eintrag ist neu, wird im Dynpro angezeigt, und UPDKZ wurde vom Standard auf 'I' gesetzt.
Der User-Exit muss dann UPDKZ zerschossen haben.
Also Fehler in einem dr Userexits suchen!

Beitrag von ewx (Top Expert / 4854 / 313 / 644 ) »
Anonymous hat geschrieben: Wenn der Eintrag in XVBAP steht und UPDKZ nicht 'D' ist, er aber in YVBAP fehlt, heißt das, der Eintrag ist neu, wird im Dynpro angezeigt, und UPDKZ wurde vom Standard auf 'I' gesetzt.
Der User-Exit muss dann UPDKZ zerschossen haben.
Also Fehler in einem dr Userexits suchen!
Das ist zwar ziemlich wirr umrissen, aber im Prinzip hast du recht. Der Modify mit XVBAP-UPDKZ = "U" darf natürlich nur gemacht werden, wenn XVBAP-UPDKZ <> "I" und <> "D" ist.
Enno.

Beitrag von Gast ( / / 0 / 3 ) »
öhm noch was kleines:
wie kann ich die Preisfindung aufrufen, um die Konditionen zu aktualisieren ? Gibt es dazu einen Funktionsbaustein ?

the-FoX

Beitrag von Matthias_L. (Specialist / 226 / 0 / 0 ) »
Anonymous hat geschrieben:öhm noch was kleines:
wie kann ich die Preisfindung aufrufen, um die Konditionen zu aktualisieren ? Gibt es dazu einen Funktionsbaustein ?

the-FoX
Hab gerade kein System da, aber ich glaub, das geht im Userexit MV45AFZB. Da kann man irgendwo "new_pricing" mit einem Wert versehen.

Ich schau morgen mal im System nach und schreib dann hier noch mal....

Vergleichbare Themen

0
Antw.
4373
Views
MV45AFZZ USEREXIT_SAVE_DOCUMENT_PREPARE
von Marcoo » 13.05.2005 13:37 • Verfasst in Sales and Distribution
6
Antw.
6689
Views
MV45AFZZ Move_Field_to_VBAP
von Prego » 05.05.2017 08:12 • Verfasst in ABAP® Core
2
Antw.
7973
Views
Userexit MV45AFZZ - Kopftexte setzen
von waldner » 16.10.2006 14:03 • Verfasst in Sales and Distribution

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Nach MESSAGE TYPE E Felder entsperren
vor 54 Minuten von a-dead-trousers gelöst 6 / 6002
ABAP - Mail so10 Text
vor 2 Stunden von retsch 6 / 108
selection-screen comment mit icon
vor 10 Stunden von DeathAndPain 9 / 1154

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

Nach MESSAGE TYPE E Felder entsperren
vor 54 Minuten von a-dead-trousers gelöst 6 / 6002
ABAP - Mail so10 Text
vor 2 Stunden von retsch 6 / 108
selection-screen comment mit icon
vor 10 Stunden von DeathAndPain 9 / 1154

Unbeantwortete Forenbeiträge

SD_PRINT_TERMS_OF_PAYMENT
vor 5 Tagen von Manfred K. 1 / 927
BUSOBJEKT zu CMIS PHIO ermitteln
vor 3 Wochen von snooga87 1 / 2733