在项目数据的列中不同显示所需的数据

2020-09-24 03:34发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我需要以项...

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

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


嗨,

我需要以项目数据作为列来显示不同的数据:


000031:10:10029->每10个开始应换行
000031:15:SD6430
000031:22:0010/00001->这是订单项
000031:23:I1712
000031:31:17122
000031:41:TR20
000031:31:171224
000031: 41:8792314
000031:31:17122
000031:41:876253
000031:31:17122
000031:41:7659
000031:50:986734
000031 :10:10030->每隔10点开始:应该是一个新行
000031:15:SD6432
000031:22:0010/00002->这是新的 订单项
000031:23:I1713
000031:31:17123
000031:41:TR21
000031:50:89324

任何建议将不胜感激!

最好的问候,
KC

(31.1 kB)
1条回答
哎,真难
2020-09-24 04:28

你好

如果只是显示问题,您可以使用两个带有公共密钥的内部表

类型t_key类型char20。
 类型:tt_header的开头,
 k10类型t_key,
 k15(20),
 k22(20),
 k23(20),
 k50(20),
 t_header的开始。
 类型:tt_item的开头,
 k10类型t_key,
 k31(20),
 k41(20),
 t_item结束。

然后填写这些表:

 LOOP AT t_input分配。
   w_field_type = <输入> +10(2)。  "或者您可以使用SPLIT或正则表达式或..
   w_field_value = <输入> +13。

   案例w_field_type。
   为" 10"时。
     将初始行添加到wt_header ASSIGNING 
-k10 = w_field_value。 为" 15"或" 22"或" 23"或" 50"时。 检查是否已分配
。 将'k'w_field_type连接到w_field_name。 将结构
的(w_field_name)分配给 = w_field_value。 当" 31"。 将初始行添加到wt_item ASSIGNING -k10 = <标题> -k10。 -k31 = w_field_value。 当" 41"。 检查是否已分配 -k41 = w_field_value。 尾箱。 ENDLOOP。

然后使用通用键显示

在wt_header ASSIGNING 
处循环。 写:/
-k10,
-k15,
-k22,
-k23。 READ表wt_item使用键k10 =
-k10分配。 如果sy-subrc是初始的。 写: -k31, -k41。 万一。 写:
-k50。 在wt_item处分配的LOOP,其中k10 =
-k10。 如果sy-tabix> 1.",则忽略已经写入的第一行 写:/80(20)<项目> -k31,<项目> -k41。 万一。 结局。 ENDLOOP。

最好的问候

伯特兰

一周热门 更多>