sap转换成基本订单单位
源碼:
? function?zcf_ut_unit_conversion.
*"----------------------------------------------------------------------
*"*"Local?interface:
*"??IMPORTING
*"?????VALUE(MATNR_IMP)?LIKE??MARA-MATNR?DEFAULT?SPACE
*"?????VALUE(MEINS_IMP)?LIKE??MARA-MEINS?DEFAULT?SPACE
*"?????VALUE(UNIT_NEW_IMP)?LIKE??T006-MSEHI
*"?????VALUE(UNIT_OLD_IMP)?LIKE??T006-MSEHI
*"?????VALUE(VALUE_OLD_IMP)?TYPE??MENGE_D
*"??EXPORTING
*"?????VALUE(VALUE_NEW_EXP)?TYPE??MENGE_D
*"??EXCEPTIONS
*"??????OVERFLOW
*"----------------------------------------------------------------------
*?Lokale?Vereinbarungen
??data?value_meins_tmp?type?f.
??if?matnr_imp?is?initial.
????call?function?'UNIT_CONVERSION_SIMPLE'
?????????exporting
??????????????input????????????????=?value_old_imp
??????????????round_sign???????????=?'X'
??????????????unit_in??????????????=?unit_old_imp
??????????????unit_out?????????????=?unit_new_imp
?????????importing
??????????????output???????????????=?value_new_exp
?????????exceptions
??????????????conversion_not_found?=?01
??????????????division_by_zero?????=?02
??????????????input_invalid????????=?03
??????????????output_invalid???????=?04
??????????????overflow?????????????=?05
??????????????type_invalid?????????=?06
??????????????units_missing????????=?07
??????????????unit_in_not_found????=?08
??????????????unit_out_not_found???=?09.
?????if?sy-subrc?=?5.
???????raise?overflow.
?????endif.
??else.
*???Umrechnung?in?Basismenge
????call?function?'MATERIAL_UNIT_CONVERSION'
?????????exporting
??????????????matnr????????????????=?matnr_imp
??????????????input????????????????=?value_old_imp
??????????????meinh????????????????=?unit_old_imp
??????????????kzmeinh??????????????=?'X'
??????????????meins????????????????=?meins_imp
?????????importing
??????????????output???????????????=?value_meins_tmp
?????????exceptions
??????????????conversion_not_found?=?01
??????????????input_invalid????????=?02
??????????????material_not_found???=?03
??????????????meinh_not_found??????=?04
??????????????meins_missing????????=?05
??????????????no_meinh?????????????=?06
??????????????output_invalid???????=?07
??????????????overflow?????????????=?08.
?????if?sy-subrc?=?8.
???????raise?overflow.
?????endif.
*???Umrechnung?auf?neue?Alternativmengeneinheit
????call?function?'MATERIAL_UNIT_CONVERSION'
?????????exporting
??????????????matnr????????????????=?matnr_imp
??????????????input????????????????=?value_meins_tmp
??????????????meinh????????????????=?unit_new_imp
??????????????kzmeinh??????????????=?space
??????????????meins????????????????=?meins_imp
?????????importing
??????????????output???????????????=?value_new_exp
?????????exceptions
??????????????conversion_not_found?=?01
??????????????input_invalid????????=?02
??????????????material_not_found???=?03
??????????????meinh_not_found??????=?04
??????????????meins_missing????????=?05
??????????????no_meinh?????????????=?06
??????????????output_invalid???????=?07
??????????????overflow?????????????=?08.
?????if?sy-subrc?=?8.
???????raise?overflow.
?????endif.
??endif.
endfunction.
? ?form?frm_changeunit??changing?value(p_1)?value(p_2)?value(p_3)?.
??data?:?ls_mgvgw?type?menge_d."plfh-mgvgw.
??data?:?ls_meins?type?mara-meins.
??data?:?ls_value_new_exp?type?menge_d."LIKE?plfh-mgvgw.
??clear?:?ls_meins,ls_value_new_exp.
??select?single?meins
??into?ls_meins
??from?mara
??where?matnr?=?p_1.
??ls_mgvgw?=?p_2.
??call?function?'ZCF_UT_UNIT_CONVERSION'
????exporting
??????matnr_imp?????=?p_1
??????meins_imp?????=?ls_meins
??????unit_new_imp??=?ls_meins
??????unit_old_imp??=?p_3
??????value_old_imp?=?ls_mgvgw
????importing
??????value_new_exp?=?ls_value_new_exp
????exceptions
??????overflow??????=?1
??????others????????=?2.
??if?sy-subrc?<>?0.
????message?id?sy-msgid?type?sy-msgty?number?sy-msgno
????with?sy-msgv1?sy-msgv2?sy-msgv3?sy-msgv4.
??endif.
??if?not?ls_value_new_exp?is?initial.
????p_2?=?ls_value_new_exp.
??endif.
??p_3?=?ls_meins.
endform.
?
? ?perform?frm_changeunit?changing?wa_mseg-matnr?wa_mseg-menge?wa_mseg-meins?.
總結(jié)
以上是生活随笔為你收集整理的sap转换成基本订单单位的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 透视ERP增强
- 下一篇: IDOC实例, Outbound IDO