在S/4HANA里,咱们如何根据一个销售订单的行项目,查看对应的生产订单状态?测试
双击行项目:spa
点击Schedule line:code
这里就能看到生产订单的ID和状态了。orm
其中订单的状态存储在表vsaufk里,注意订单和状态能够是1对多的关系。 状态的ID和描述信息存储在表tj02t里,因此有了下面的代码:blog
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里看到的同样。事务
要获取更多Jerry的原创文章,请关注公众号"汪子熙":get