Mapping SoftwareAG webMethods EDI映射问题:如何将一个记录映射到多个记录

Mapping SoftwareAG webMethods EDI映射问题:如何将一个记录映射到多个记录,mapping,edi,webmethods,Mapping,Edi,Webmethods,我正在尝试使用webMethods Designer流服务将一个记录映射到多个记录。 将1行转换为多行。 请帮助我使用循环、重复、映射等连接WebMethods流服务来映射以下内容 SourceRecord 日期字段TargetRecord DT(记录发起人)(1..1)DTM(记录发起人)(1..多次) 订单日期DTM\U 01 销售日期DTM_02 过期的 Sample Input data ( element delimiter "," and segment term

我正在尝试使用webMethods Designer流服务将一个记录映射到多个记录。 将1行转换为多行。 请帮助我使用循环、重复、映射等连接WebMethods流服务来映射以下内容

SourceRecord
日期字段TargetRecord
DT(记录发起人)(1..1)DTM(记录发起人)(1..多次) 订单日期DTM\U 01 销售日期DTM_02 过期的

Sample Input data ( element delimiter "," and segment terminator newline)

DT,20200914,20200916,20230913   <-- where DT is record initiator "," is element separator 
                                    and orderDate = 20200914
                                        SalesDate = 20200916
                                        ExpireDate = 20230913

Desired Output Data ( multiple rows)  ( DTM is record initiator element delimiter "*" and segment terminator newline)
DTM*002*20200914   <-- 002 is qualifier for OrderDate
DTM*007*20200916   <-- 007 is the qualifier for SalesDate
DTM*036*20230913   <-- 036 is the qulifier for ExpireDate
示例输入数据(元素分隔符“,”和段终止符换行符)

DT,2020091420200091620230913没有足够的信息。您是否有一个字符串和一条输入数据记录?您有字符串列表还是文档列表?最有可能的记录来自平面文件? 输出是字符串列表还是文档列表

无论如何,问题的简单解决方案(假设有一条记录)是标记化(使用pub.string:tokenize)输入字符串,并使用索引将其与预设限定符连接起来,将其映射到输出对象:

现在,您可以使用pub.string:makeString从该字符串列表中构建字符串,并使用新行作为分隔符(请注意,光标位于第二行):

谢谢您的回答。我想做edi映射一个记录输入到多个记录输出我有一个csv输入文件,一行内容,如DT,2020091420200091620230913,我希望看到输出文件包含3行内容,如DTM*002*20200914 DTM*007*20200916 DTM*036*20230913,在这种情况下,我的示例或多或少是您想要的,因为它需要输入一个字符串(1行),并在输出上生成一个字符串(3行)。只需使用内置或自定义服务将该字符串写入文件即可。