SAP PI映射问题SAP ORDERS IDOC

2020-09-21 14:10发布

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

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


大家好,

我需要您提供有关映射问题的信息。

我的原始消息如下:

OrderLineItems 段与 CouponItems 段处于相同的层次结构级别。 OrderLineItem 段用于为每个段创建E1EDP01段 OrderLineItem 段(在本例中为2)。 这是 OrderLineItem 段的内容:

每个订单项可能有一个或多个折扣。 这是 CouponItem 的内容:

如果 OrderLineItem 中的 ProductId 的内容(位置1:139;位置2:71)与内容中的 Description 的内容匹配 CouponItem 应该在相应的行中创建一个E1EDP05段(E1EDP01的子段)。

在我的示例中,第二个折扣(31.65)属于第一个位置,第一个折扣(8.33)属于第二个位置。

目标消息应如下所示:

E1EDP01(位置1)

E1EDP05(折扣31.65)

E1EDP01(位置2)

E1EDP05(折扣8.33)

有人知道如何正确映射吗?

提前谢谢!

基督徒

same-level.jpg (23.1 kB)

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

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


大家好,

我需要您提供有关映射问题的信息。

我的原始消息如下:

OrderLineItems 段与 CouponItems 段处于相同的层次结构级别。 OrderLineItem 段用于为每个段创建E1EDP01段 OrderLineItem 段(在本例中为2)。 这是 OrderLineItem 段的内容:

每个订单项可能有一个或多个折扣。 这是 CouponItem 的内容:

如果 OrderLineItem 中的 ProductId 的内容(位置1:139;位置2:71)与内容中的 Description 的内容匹配 CouponItem 应该在相应的行中创建一个E1EDP05段(E1EDP01的子段)。

在我的示例中,第二个折扣(31.65)属于第一个位置,第一个折扣(8.33)属于第二个位置。

目标消息应如下所示:

E1EDP01(位置1)

E1EDP05(折扣31.65)

E1EDP01(位置2)

E1EDP05(折扣8.33)

有人知道如何正确映射吗?

提前谢谢!

基督徒

same-level.jpg (23.1 kB)
付费偷看设置
发送
6条回答
一只江湖小虾
1楼-- · 2020-09-21 14:42

如果您不想创建UDF,则只是个想法。 对于类似的请求,我将concat函数与键和值一起使用,然后对sort和splitToIndex使用了值。 如果您对带有产品ID的订单项以及带有描述和金额的优惠券项目执行此操作,则可以使用。

N-Moskvin
2楼-- · 2020-09-21 14:47

嗨,彼得,

感谢您的答复!

您的系统是否提供splitToIndex函数或这是用户定义的函数? 在我的系统中,此功能不可用。

谢谢

Christian

SAP小黑
3楼-- · 2020-09-21 14:32

嗨,Christian,在B2B映射套件中有一些函数库。 为了使它们在您的映射中可用,您必须在"软件组件版本"中的"详细信息"选项卡中将B2B映射添加为底层软件组件版本。
然后,您可以将这些库添加到"已使用函数库"中的消息映射中。 映射。 现在您可以选择这些功能。 我不记得他们是否为此额外上传。 问候彼得

DafaDDDa
4楼-- · 2020-09-21 14:51

嗨,彼得,

我们没有B2B插件的许可证...:-(

致谢

基督徒

木偶小白
5楼-- · 2020-09-21 14:52

嗨,基督徒,

ID是同一级别上的订单和优惠券项目共有的关键字段。 我希望来源按ID排序。 如果没有,请使用XSLT通过ID来按订单来源。

您可以继续以相同的方式从OrderItems映射E1EDP01,但是,在创建E1EDP05时,您可以输入OrderItems和CouponItems的ID并比较这些值,并在它们匹配时创建E1EDP05段。 可以使用相同的逻辑映射E1EDP05中的字段,但可以输出实际的源值。

希望有帮助!

Ambrish

追夢秋陽
6楼-- · 2020-09-21 14:38

嗨,基督徒

总有一个起点。 XSLT为此非常理想。 它是5行XSLT代码,应该可以解决。 如果您愿意,我可以发送一些指针。

干杯!

Ambrish

一周热门 更多>