如何在SAP NW BPM中按循环计数收集和分组记录

2020-08-27 21:40发布

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

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


专家您好,

具有Synchronous的自动化活动,其中来自Source的记录需要与Target中的" 7 "记录分组,然后依次作为输入传递给Next自动化活动。

示例

从源头开始," 基人"出现多次(0 ...无界),说出 28条记录,在"目标"中应分组并发送,每条仅7条记录并通过 转到下一个自动化活动。 进程继续适当增加循环计数( 7条记录X触发4条消息)。 如果有29条记录,则第5条消息应保留一条记录。

请提出您的宝贵意见。 提前谢谢!

好的问候-Rajesh PS

(154.9 kB)

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

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


专家您好,

具有Synchronous的自动化活动,其中来自Source的记录需要与Target中的" 7 "记录分组,然后依次作为输入传递给Next自动化活动。

示例

从源头开始," 基人"出现多次(0 ...无界),说出 28条记录,在"目标"中应分组并发送,每条仅7条记录并通过 转到下一个自动化活动。 进程继续适当增加循环计数( 7条记录X触发4条消息)。 如果有29条记录,则第5条消息应保留一条记录。

请提出您的宝贵意见。 提前谢谢!

好的问候-Rajesh PS

(154.9 kB)
付费偷看设置
发送
6条回答
d56caomao
1楼-- · 2020-08-27 22:20

不确定,但是:

1。 初始化变量说我

2。 循环活动->迭代并根据需要收集/附加目标结构

3。 在每次迭代中,i的增量值为1。

4。 如果我的mod 7 = 0或i = count,则发送消息,否则收集味精

5。 在i =计数时,退出循环

我只是立即输入了这个内容,因此只需检查一下逻辑即可。 不要陷入无限循环,因此要进行适当的检查。

Haoba3210
2楼-- · 2020-08-27 22:28

您好,专家

请在该线程上为您提供输入。

太Q了
3楼-- · 2020-08-27 22:40

您好,Rajesh,

我想您需要在此处使用条件开始,如果记录为7,则进一步处理记录 否则使用聚合来保存来自源的消息...可能将消息拆分为7个记录n,然后传递给nwbpm帮助...。

-Rashmi

梦想连接
4楼-- · 2020-08-27 22:20

<一个 =" nofollow" hraf=" https://answers.sap.com/users/16208/ravicarpenter.html"> Ravi Carpenter

非常感谢您回复Ravi。

我知道了,我使用的是属性" batchNum"(假设7records为bacthNum为1,接下来的7条记录为其2)和" batchTotalCount"(不提供消息)从PI到BPM。 基于此我们可以进行循环和过滤。

例如:

'1'被映射到DO_Count

用于获取批处理记录:get(filter(MT_object/result/baseperson," batchNum = DO_Count"))并将其映射到增量映射。

用于循环(增量):DO_Count + 1,并映射到不受控制的合并。

让我知道是否有任何疏忽。 欢迎您提出其他更好的建议。

stephen xue

谢谢-Rajesh PS

nice_wp
5楼-- · 2020-08-27 22:17

嗨Rajesh,

是的,我建议在SAP PI中使用多重映射创建具有7条记录的文件...

并使用NWBPM合并小包文件,例如2条记录,3条记录...使用merge创建新文件...。您可以在NWBPM中将counter用作工件,以了解是否存在。 传入文件中的记录数量...

PI-> NWPMB->使用计数器不读取记录- >消息映射->在此处拆分消息->如果记录数= 7->结束进程(-> PI->目标); 如果记录数少于7,请使用collect然后结束此分支(-> PI-> Target)

-Rashmi

Aaron 3364
6楼-- · 2020-08-27 22:34

嗨< =" nofollow" hraf=" https://answers.sap.com/users/9422/rashmijoshi4.html"> Rashmi Joshi ,

非常感谢您的答复。

您的意思是在SAP PI本身中适当拆分消息,然后传递给NW BPM? 那么循环计数和总计数呢?

Record_count是静态值,即始终为7,因此在一条消息中,它应仅包含7条记录。

一周热门 更多>