根据物料或公司代码获取数据

2020-09-01 03:11发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我将物料和公司代码作为参数保留在...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我将物料和公司代码作为参数保留在选择屏幕上。

现在,我想根据物料或公司代码获取数据。

如果在选择屏幕上提供了物料,则应显示所有可用公司代码的物料。

如果提供了公司代码,则应显示该公司代码下的所有材料。

如果仅给出两者,则应显示物料和公司代码。

请引导我完成这个过程。

6条回答
黑丝骑士
2020-09-01 03:32

您好,Akshay,您可以使用此功能 下面的代码;

表格:marc,t001k。
 类型:
 tt_bukrs的开始,
   bukrs TYPE t001k-bukrs,
   tt_bukrs的结尾,
 开始于tt_matnr,
     matnr TYPE marc-matnr,
 tt_matnr的结尾。

 数据:tt_bukrs的lt_burks类型标准表,
       tt_matnr的lt_matnr类型标准表。


 带有标题标题text-001的b1块的选择屏幕开始。
 选择屏幕行的开始。
 SELECTION-SCREEN COMMENT(10)text-002 FOR FIELD p_mat。
 选择选项:p_mat用于marc-matnr没有间隔。
 SELECTION-SCREEN COMMENT 50(15)text-003 FOR FIELD p_code。
 选择选项:t001k-bukrs的p_code没有间隔。
 选择屏幕行尾。
 块b的选择屏幕结束。


 选择开始。
 如果p_matnr不是INITIAL,而p_code是INITIAL。
 SELECT DISTINCT a〜bukrs
       进入表lt_bukrs
       从t001k开始
       内部联接t001w作为b〜a〜bwkey上的b
       b〜werks = c〜werks的内部联接对象
       在p_matnr中的c〜matnr中。
 ELSEIF p_code-low不是INITIAL,而p_mat-low是INITIAL。
 选择一个〜
       进入表lt_matnr
       来自marc AS a
       内部联接t001w AS b在a〜werks上等于b〜werks
       内部联接t001k AScON b〜bwkey = c〜bwkey
       在p_code中的c〜bukrs中。
 ELSEIF p_mat-low不是INITIAL和p_code-low不是INITIAL。
 "将代码和材料都打印到表格中
 万一。
 

一周热门 更多>