SAP S/4HANA使用ABAP獲得生產訂單的狀態

i042416發表於2019-01-08

在S/4HANA裡,我們如何根據一個銷售訂單的行專案,檢視對應的生產訂單狀態?

雙擊行專案:

SAP S/4HANA使用ABAP獲得生產訂單的狀態

點選Schedule line:

SAP S/4HANA使用ABAP獲得生產訂單的狀態

這裡就能看到生產訂單的ID和狀態了。

SAP S/4HANA使用ABAP獲得生產訂單的狀態

其中訂單的狀態儲存在表vsaufk裡,注意訂單和狀態可以是1對多的關係。
狀態的ID和描述資訊儲存在表tj02t裡,所以有了下面的程式碼:

METHOD get_prod_order_status.
DATA: lt_status TYPE TABLE OF j_status,
lt_text   TYPE TABLE OF tj02t,
lv_id     LIKE iv_prod_order_id,
ls_result LIKE LINE OF rt_status_in_s4_format.
lv_id = iv_prod_order_id.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input  = lv_id
IMPORTING
output = lv_id.
SELECT stat INTO TABLE lt_status FROM vsaufk WHERE inact = space AND
aufnr = lv_id.
CHECK sy-subrc = 0.
SELECT * INTO TABLE lt_text FROM tj02t FOR ALL ENTRIES IN lt_status
WHERE istat = lt_status-table_line AND spras = 'EN'.
LOOP AT lt_text ASSIGNING FIELD-SYMBOL(<text>).
CLEAR: ls_result.
ls_result-status_id = <text>-istat.
ls_result-status_code = <text>-txt04.
ls_result-status_text = <text>-txt30.
APPEND ls_result TO rt_status_in_s4_format.
ENDLOOP.
ENDMETHOD.

測試一下,成功拿到所有狀態,和事務碼CO03裡看到的一樣。

SAP S/4HANA使用ABAP獲得生產訂單的狀態

要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":

SAP S/4HANA使用ABAP獲得生產訂單的狀態


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2375014/,如需轉載,請註明出處,否則將追究法律責任。

相關文章