二、SAP 物料主数据增强自定义字段 - 销售组织数据1 视图

各视图自定义字段增强大概步骤,可以参考“SAP 物料主数据增强自定义字段 - 基本数据2 视图”

https://blog.csdn.net/wangjolly/article/details/82496167

以 销售组织数据1 视图  为例,介绍几个不同点

创建完成函数组ZMGD1 里面对应屏幕001的PBO和PAI的MODULE程序

基本数据2 视图中MODULE GET_DATA程序如下


*&---------------------------------------------------------------------*
*&      Module  GET_DATA  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*

MODULE GET_DATA OUTPUT.

  TABLES:ZPARTAPPEND.
  DATA: W_MATNR TYPE MATNR.
  IF SY-TCODE = 'MM02' OR SY-TCODE = 'MM03'.
      GET PARAMETER ID 'MAT' FIELD W_MATNR.
      SELECT SINGLE * FROM ZPARTAPPEND WHERE MATNR = W_MATNR.
    ENDIF.
ENDMODULE.                 " GET_DATA  OUTPUT

如果在 销售组织数据1 视图 增强使用类似的方法,导致除了物料号可以通过取内存的方法正常获取,其他字段的值无法获取

销售组织PID

分销渠道PID

*&---------------------------------------------------------------------*
*&      Module  GET_DATA  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*

MODULE GET_DATA OUTPUT.

  TABLES:ZPARTAPPEND.
  
  IF SY-TCODE = 'MM02' OR SY-TCODE = 'MM03'.
      GET PARAMETER ID 'MAT' FIELD DATA(W_MATNR).
      GET PARAMETER ID 'VKO' FIELD DATA(W_vkorg).
      GET PARAMETER ID 'VTW' FIELD DATA(W_vtweg).
      SELECT SINGLE * FROM ZPARTAPPEND WHERE MATNR = W_MATNR 
                                       AND VKORG = W_VKORG
                                       AND VTWEG = W_VTWEG. 
    ENDIF.
ENDMODULE.                 " GET_DATA  OUTPUT

测试发现,W_VKORG /W_VTWEG无法获取输入的值

改进:

图片中可以发现,对应的程序是SAPLMGMM  工作区RMMG1,通过跨程序读取数据的方式成功解决问题

*&---------------------------------------------------------------------*
*&      Module  GET_DATA  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*

MODULE GET_DATA OUTPUT.

  TABLES:ZPARTAPPEND.
  
  IF SY-TCODE = 'MM02' OR SY-TCODE = 'MM03'.
      ASSIGN ('(SAPLMGMM)RMMG1') TO FIELD-SYMBOL(<fs_rmmg1>).
      CHECK <fs_rmmg1> IS ASSIGNED.
      ASSIGN COMPONENT 'MATNR' OF STRUCTURE <fs_rmmg1> TO FIELD-SYMBOL(<fd_matnr>).
      ASSIGN COMPONENT 'VKORG' OF STRUCTURE <fs_rmmg1> TO FIELD-SYMBOL(<fd_vkorg>).
      ASSIGN COMPONENT 'VTWEG' OF STRUCTURE <fs_rmmg1> TO FIELD-SYMBOL(<fd_vtweg>).

      CHECK <fd_matnr> IS ASSIGNED AND <fd_vkorg> IS ASSIGNED AND <fd_vtweg> IS ASSIGNED.
      SELECT SINGLE * FROM ZPARTAPPEND WHERE MATNR = <fd_matnr> 
                                       AND VKORG = <fd_vkorg>
                                       AND VTWEG = <fd_vtweg>. 
    ENDIF.
ENDMODULE.                 " GET_DATA  OUTPUT

 

 

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王小磊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值