点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)如何仅对每个客户进行一次交易? ...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)如何仅对每个客户进行一次交易? ...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
如何仅对每个客户进行一次交易? 例如,我的内部表需要显示客户的第一笔订单和第二笔订单的日期。 所以我的内部表详细信息是这样的:
但是我的动态Alv的结果是这样的:
例如在客户编号中 " 0001011111"行。 是否可以像这样将其排成一行:
客户编号 1stOrder LITERS1 2ndOrder LITERS2 0001011111 20180811 11 20180814 6
我的代码是这样的:
DATA:new_table TYPE REF TO数据,
new_line TYPE REF TO数据,
alv_layout TYPE lvc_s_layo,
alv类型参考cl_gui_alv_grid。
FIELD-SYMBOLS: TYPE表,
TYPE任意,
TYPE任意。
调用方法cl_alv_table_create => create_dynamic_table
出口
it_fieldcatalog = it_fieldcat
输入
ep_table = new_table。
ASSIGN new_table-> * TO 。
创建数据new_line像的行。
ASSIGN new_line-> * TO 。
对it_main2进行排序(按kunnr)。
DATA(cpy_it_main)= it_main2。
DATA(replicate_it_main)= it_main2。
通过kunnr erdat1 vbeln排序SORTplicate_it_main。
从copy_it_main COMPARING kunnr中删除相邻的重复项。
SORT cpy_it_main由kunnr vbeln提供。
从cpy_it_main比较vbeln中删除相邻的重复项。
循环AT copy_it_main INTO DATA(wa_replicate)。
dateflag = wa_replicate-erdat1。
DATA(cust)= wa_replicate-kunnr。
DATA(x)= 0。
DATA(y)= 0。
在it_main2处进入wa_main2,在其中kunnr = cust。
做2次。
dateflag2 = wa_main2-erdat1。
ENDDO。
将结构的组件" KUNNR"分配给。
= wa_main2-kunnr。
将结构的组件'NAME1'分配到。
= wa_main2-name1。
将结构的组件"文本"分配给。
= wa_main2-ktext。
将结构的组件"月"分配给。
= wa_main2个月。
将结构的组件'CGRP2'分配到。
= wa_main2-cgrp2。
如果dateflag = dateflag2。
将结构的组件'ERDAT1'分配到。
= wa_main2-erdat1。
将结构的组件"品牌1"分配给。
= wa_main2-brand1。
将结构的组件" LITER1"分配给。
= wa_main2-liter1。
将结构的组件'VOLUM1A'分配给。
= wa_main2-volum1a。
将结构的组件'VOLUM2A'分配给。
= wa_main2-volum2a。
将结构的组件'VOLUM3A'分配到。
= wa_main2-volum3a。
x = 1。
其他。
将结构的组件'ERDAT2'分配到。
= wa_main2-erdat1。
将结构的组件"品牌2"分配给。
= wa_main2-brand1。
将结构的组件" LITER2"分配给。
= wa_main2-liter1。
将结构的组件'VOLUM1B'分配到。
= wa_main2-volum1a。
将结构的组件'VOLUM2B'分配到。
= wa_main2-volum2a。
将结构的组件'VOLUM3B'分配到。
= wa_main2-volum3a。
y = 1。
万一。
dateflag3 = wa_main2-erdat。
插入到表中。
清除:,wa_main2。
ENDLOOP。
1st.jpg (133.4 kB)
从OP对问题的第二次尝试中删除了数据,现在已将其删除:
详细表
输出表应该是这样的。
例如,详细表中的1号客户有3笔交易。 在输出表的第一行中是客户1,然后第一行的第二列是明细表中客户的第一笔订单日期,即" 01/01/18",以及该日期的价格和价格。 并且在第二订单日期列中是明细表中客户的第二订单日期,即" 02/02/18",第二订单的价格和价格也如下。 下一行将仍然是客户1,因为他还有另一笔交易发生在第一个订单日期,因此价格和matGrp如下。 但是由于她已经没有第二阶了,所以它只能是空白。 第三行是客户编号。 2,其第一笔订单将成为明细表中交易的第一笔订单,然后第二笔订单也将是明细表中客户2的第二笔订单。
关于如何从明细表中获取输出表,您有任何示例逻辑吗?
一周热门 更多>