KO01内部订单
1、文档说明
本文档介绍内部订单的相关概念,以及通过前台和BAPI实现的方法。
内部订单: 是一个成本对象,用于跟踪特定任务或作业的成本。它不像成本中心那样与一个常设的部门挂钩,而是与一个有始有终的具体活动相关联。
主要用途:
成本归集: 将所有与该活动相关的费用(如物料、人工、外部服务等)收集到这一个订单上。
预算控制: 可以为订单设定总体预算,系统会实时监控实际发生额是否超预算,并可以发出警告或错误。
成本分析: 方便管理者分析该活动的实际成本与计划成本的差异,评估活动效益。
期末结算: 在活动结束后,可以将内部订单上归集的成本结算到最终的成本接收对象,如固定资产、成本中心、物料等。
2、前台操作
事务代码KO01

输入对应数据,保存即可

3、BAPI实现
3.1、创建内部订单
"--------------------@斌将军-------------------- DATA:ls_master_data LIKE bapi2075_7, lv_testrun LIKE bapi0012_gen-testrun, ls_master_datb LIKE bapi2075_7b, ls_e_master_data LIKE bapi2075_2, ls_e_master_datb LIKE bapi2075_7b, lv_orderid LIKE bapi2075_2-order, lt_srules TYPE TABLE OF bapi2075_6, ls_srules TYPE bapi2075_6, lt_return TYPE TABLE OF bapiret2, ls_return TYPE bapiret2, lt_extensionin TYPE TABLE OF bapiparex, ls_extensionin TYPE bapiparex. DATA:lv_check TYPE char1, lv_message TYPE char255. ls_master_data-co_area = '8888'. "控制范围 ls_master_data-order_type = 'ZJGC'."订单类型 ls_master_data-order_name = '订单描述'. "订单描述 ls_master_data-comp_code = '8000'."公司代码 ls_master_data-request_cctr = '80001000'. "请求成本中心 ls_master_data-ext_ord_no = ''."外部订单号 ls_master_datb-invest_profile = '000001'."投资参数文件 CALL FUNCTION 'BAPI_INTERNALORDER_CREATE' EXPORTING i_master_data = ls_master_data * TESTRUN = i_master_datb = ls_master_datb IMPORTING e_master_data = ls_e_master_data e_master_datb = ls_e_master_datb orderid = lv_orderid TABLES srules = lt_srules return = lt_return * EXTENSIONIN = lt_extensionin . CLEAR:lv_check,lv_message. LOOP AT lt_return INTO ls_return WHERE type CA 'AEX'. lv_check = 'E'. lv_message = lv_message && ls_return-message. CLEAR:ls_return. ENDLOOP. IF lv_check = 'E'. CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'. WRITE:lv_message. ELSE. CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' EXPORTING wait = 'X'. WRITE:'SUCCESS'. ENDIF. "--------------------@斌将军--------------------
3.2、修改内部订单
可以使用函数ALE_INTERNALORDER_DB_CHANGE
DATA:lt_aufk_ins TYPE TABLE OF aufk, lt_aufk_upd TYPE TABLE OF aufk, lt_jsto_ins TYPE TABLE OF jsto, lt_jsto_upd TYPE TABLE OF jsto, lt_jest_ins TYPE TABLE OF jest, lt_jest_upd TYPE TABLE OF jest, lt_objnr_del TYPE TABLE OF ionrb. CLEAR:lt_aufk_upd. READ TABLE lt_aufk INTO DATA(ls_aufk) WITH KEY aufnr = ls_input-aufnr BINARY SEARCH. IF sy-subrc EQ 0. IF ls_input-ktext IS NOT INITIAL. ls_aufk-ktext = ls_input-ktext. ENDIF. IF ls_input-akstl IS NOT INITIAL. ls_aufk-akstl = ls_input-akstl. ENDIF. IF ls_input-aufex IS NOT INITIAL. ls_aufk-aufex = ls_input-aufex. ENDIF. IF ls_input-phas1 IS NOT INITIAL OR ls_input-phas2 IS NOT INITIAL. ls_aufk-phas1 = ls_input-phas1. ls_aufk-phas2 = ls_input-phas2. ENDIF. APPEND ls_aufk TO lt_aufk_upd. CALL FUNCTION 'ALE_INTERNALORDER_DB_CHANGE' TABLES t_aufk_ins = lt_aufk_ins t_aufk_upd = lt_aufk_upd t_jsto_ins = lt_jsto_ins t_jsto_upd = lt_jsto_upd t_jest_ins = lt_jest_ins t_jest_upd = lt_jest_upd t_objnr_del = lt_objnr_del. ENDIF.
以上就是关于KO01内部订单的介绍,希望对你有所帮助
定期更文,欢迎关注


浙公网安备 33010602011771号