ABAP 物料单位、副单位、转换率

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

此文关于物料单位、副单位及BAPI录入,单位转换率的计算等。

一、前台位置

基础试图-->附加数据:(一件等于10包)

二、BAPI录入及转换比例计算

1.BAPI录入

BAPIE1MARM-MATERIAL_LONG  = 物料编码
BAPIE1MARMX-MATERIAL_LONG = 物料编码
BAPIE1MARM-ALT_UNIT       = 副单位
BAPIE1MARMX-ALT_UNIT      = 副单位
BAPIE1MARM-DENOMINATR     = 转换分母
BAPIE1MARMX-DENOMINATR    = X
BAPIE1MARM-NUMERATOR      = 转换分子
BAPIE1MARMX-NUMERATOR     = X
APPEND BAPIE1MARM TO BAPIE1MARM.
APPEND BAPIE1MARMX TO BAPIE1MARMX.

2.单位转换比例计算

底表取值计算:

  SELECT
    mara~matnr,  " 物料编码 
    mara~meins,  " 单位
    marm~meinh,  " 副单位
    marm~umrez,  " 转换分子
    marm~umren   " 转换分母
    FROM mara
    LEFT JOIN marm ON marm~matnr = mara~matnr AND marm~umrez <> marm~umren
    WHERE marc~werks IN @s_werks
      AND mara~matnr IN @s_matnr
      AND mara~mtart IN @s_mtart
      AND mara~matkl IN @s_matkl
      AND mara~ersda IN @s_ersda
    INTO TABLE @DATA(lt_data).

LOOP AT lt_data ASSIGNING FIELD-SYMBOL(<fs_data>).

*  转换比例计算
   <fs_alv>-zhl =  <fs_data>-umren / <fs_data>-umrez.

ENDLOOP.

函数计算:MD_CONVERT_MATERIAL_UNIT

  CALL FUNCTION 'MD_CONVERT_MATERIAL_UNIT'
    EXPORTING
      i_matnr              = 物料编码
      i_in_me              = 单位
      i_out_me             = 副单位
      i_menge              = 1
    importing
      e_menge              = 转换比例
    exceptions
      error_in_application = 1
      error                = 2
      others               = 3.
  IF sy-subrc <> 0.
*   Implement suitable error handling here
  ENDIF.

总结

关于MARM物料主数据单位、副单位相关。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值