嵌套重复记录的BizTalk2013r2平面文件架构向导

时间:2017-01-04 09:14:23

标签: biztalk

我需要从具有重复行的.csv文件中创建一个Flat文件架构:

#Constant

#Date:1.1.1999

类型1; XXX; YYY; ZZZ; AAA; BBB

2型; XXX; YYY; ZZZ; AAA; BBB

的Type3; XXX; YYY; ZZZ; AAA; BBB

0; 123; 222; 333; 444

1; 1; 22; 333; 2; 22

1; 2; 33; 22; 2; 22

1 ;;; 33; 3; 33

2; 100; 22; 1; 222; 11; 22

0; 23; 22; 33; 44

1; 2; 11; 22; 11; 22

1; 22; 11; 22; 22; 33

0; 23; 22; 55; 66

1; 22; 11; 22; 66; 77

正如您所看到的,0,1和2类型的行正在重复。

我尝试创建平面文件,考虑#Constant直到Type3为字段元素,0,1,2行作为重复记录及其各自的标记标识符。但由于这些行重复,我在验证模式实例时遇到错误。

1 个答案:

答案 0 :(得分:0)

您可以使用平面文件架构向导和一些手动修改来创建架构。

从向导开始。

首先为重复部分创建模式:选择第一个行0,1,1,1,2,块,将分隔符留空(删除默认值)并将元素类型设置为“重复记录”。默认名称为Root_Child1

将其解析为以CRLF为分隔符的子节点。将第0行的元素类型,第1行和第2行设置为“重复记录”,并将第2行和第3行设置为“忽略”。最终将有三个子记录(Root_Child1_Child1Root_Child1_Child2Root_Child1_Child5)。

继续使用分号作为分隔符将这些子记录解析为字段,并将标记标识符分别设置为0, 1 and 2。最后,在表示第2行(Root_Child1_Child5)的记录节点上,修改Min发生到0

现在在Root_Child1之前手动添加同级记录节点以表示常量块。右键单击它并选择"Define Record from Flat File Instance"。选择前五行,将分隔符留空,并将元素类型设置为Record。继续将记录解析为5个子记录,并将CRLF作为分隔符。然后,如果愿意,您可以使用分号分隔符将这些子记录解析为字段节点。