BAPI_SALESORDER_CHANGE Preisdatum in der Position ändern. Thema ist als GELÖST markiert

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

BAPI_SALESORDER_CHANGE Preisdatum in der Position ändern.

Beitrag von swonny (ForumUser / 79 / 4 / 0 ) » 4. Jul 2019 14:09

Hallo Zusammen,
hab folgendes Problem:

Ich möchte über den Funktionsbaustein
BAPI_SALESORDER_CHANGE bei einer bestimmten Position das Preisdatum
ändern.

Die Tabelle lt_return gibt folgenden Text aus:
"Der Vertriebsbeleg 410005426 ist nicht auf der Datenbank oder er ist archiviert"
Was ist damit gemeint?

Code: Alles auswählen.

REPORT ZTEST1.

TABLES: bapivbeln, bapisdh1, bapisdh1x, bapisdls.

DATA: i_item      TYPE TABLE OF bapisditm,
      lt_item     TYPE TABLE OF bapisditm,
      ls_item     LIKE LINE OF i_item,
      lt_item_inx TYPE TABLE OF bapisditmx,
      ls_item_inx LIKE LINE OF lt_item_inx,
      lt_return   TYPE TABLE OF bapiret2,
      ls_return   LIKE LINE OF lt_return,
      ls_head_inx TYPE bapisdh1x.

ls_head_inx-updateflag = 'U'.
bapisdls-pricing       = 'C'.
ls_item-itm_number     = '70'.
ls_item-price_date     = '20190101'.
APPEND ls_item TO lt_item.

ls_item_inx-itm_number = '70'.
ls_item_inx-updateflag = 'U'.
ls_item_inx-price_date = 'X'.
APPEND ls_item_inx TO lt_item_inx.

CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
 salesdocument       = '410005425'
 order_header_inx    = ls_head_inx
 logic_switch        = bapisdls
TABLES
 return              = lt_return
 order_item_in       = lt_item
 order_item_inx      = lt_item_inx.


  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
* EXPORTING
*   WAIT          =
* IMPORTING
*   RETUR
.

Viele Grüße
swonny


Re: BAPI_SALESORDER_CHANGE Preisdatum in der Position ändern.

Beitrag von Tron (Top Expert / 1087 / 17 / 236 ) » 4. Jul 2019 14:22

Moin.
Soll heissen, das der Beleg 410005426 nicht existiert, oder aber archiviert ist.
Ich würde also mit va03 mal nachschauen, ob das der Grund ist, oder
0410005426 mal versuchen, denn VBAK-VBELN is 10-stellig.
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: BAPI_SALESORDER_CHANGE Preisdatum in der Position ändern.

Beitrag von abuma (ForumUser / 99 / 31 / 13 ) » 4. Jul 2019 14:23

huhu,

ich tippe auf fehlende führende Nullen bei "salesdocument".

Liebe Grüße
abuma

Re: BAPI_SALESORDER_CHANGE Preisdatum in der Position ändern.

Beitrag von qyurryus (ForumUser / 39 / 28 / 10 ) » 4. Jul 2019 14:27

Falls die Ursache tatsächlich an der führenden Null liegt, ein Beispiel wie man einfach in die interne Darstellung konvertiert:

Code: Alles auswählen.

data(order) = conv vbeln( |{ '410005426' alpha = in }| ).

Folgende Benutzer bedankten sich beim Autor qyurryus für den Beitrag:
abuma (4. Jul 2019 14:44)


Re: BAPI_SALESORDER_CHANGE Preisdatum in der Position ändern.

Beitrag von swonny (ForumUser / 79 / 4 / 0 ) » 4. Jul 2019 14:34

Ihr habt recht,
es ist der Klassiker, die führende Nullen vergessen.


Tron hat geschrieben:
4. Jul 2019 14:22
versuchen, denn VBAK-VBELN is 10-stellig.
gruß Jens
abuma hat geschrieben:
4. Jul 2019 14:23
huhu,

ich tippe auf fehlende führende Nullen bei "salesdocument".

Liebe Grüße
abuma
Danke für die schnelle Hilfe.

LG
swonny

Seite 1 von 1