ich muss in einem BADI nachträglich die Versandbedingugen (SHIPPING) eines Vorgangs anlegen! Ich mache das mit den beiden FBs CRM_SHIPPING_CREATE_OW und CRM_SHIPPING_CHANGE_OW er läuft auch ohne Fehler durch nur schreibt er mir keine Einträge in die Datenbank! Wenn ich am Ende den FB CRM_ORDER_SAVE aufrufe würde es funktionieren, da hab ich nun aber das Problem, dass er wieder in meinen BADI läuft da dieser bei der Übergabe eines Beleges ins R/3 greift, sprich also nach dem Speichern eines Beleges! Hat jemand eine Ahnung wie ich sonst noch die Daten anlegen könnte?
um welchen Badi handelt es sich denn? Evtl. ist es besser, diese Aufgabe nicht über einen Badi zu lösen, sondern über einen callback-Baustein.
Schau Dir mal die Transaktion CRMV_EVENT an. Dort können Bausteine zu verschiedenen Zeitpunkten hinterlegt werden, mit denen man dann ebenfalls z.B. Versandbedingungen anlegen kann.
Dort kannst Du den Zeitpunkt genauer definieren (z.B. beim SAVE).
Wobei es aber auch Badis im CRMD_ORDER_SAVE gibt, die nur dort aufgerufen werden (also kein zweites Mal prozessiert werden), wobei es mich etwas wundert, daß der BADI, den Du verwendest zweimal aufgerufen wird (das sollte eigentlich nicht sein!).
Ich verwende den BADI CRM_DATAEXCHG_BADI und dort die Methode CRM_DATAEXCH_AFTER_BAPI_FILL! Dieser BADI wird vor der Datenüberleitung ins R/3 aufgerufen! Wenn ich also in diesem BADI nochmals einen SAVE des Belegs mache, triggere ich wieder den BADI an! Das mit
was spricht dagegen, den BADI 'ORDER_SAVE' zu nehmen? Dort die Methode CHANGE_BEFORE_UPDATE oder evtl. PREPARE. Dort könntest Du ebenfalls Versandbedingungen anlegen. Die werden dann im SAVE mit angelegt.
Danke, bin mittlerweile bin ich draufgekommen was ich falsch gemacht habe
Nach dem Anlegen mit CRM_SHIPPING_CREATE_OW und ändern mit CRM_SHIPPING_CHANGE_OW! Muss ich die Daten noch aus dem Puffer auf DB bringen und das geht mit dem FB CRM_SHIPPING_SAVE_OB! Gleiches für die Links da gibts den FB CRM_LINK_SAVE_OB! Danach noch ein BAPI_TRANSACTION_COMMIT, schon funktioniert's!
Trotzdem danke für deine Hilfe!