SSIS:创建具有不同行格式的平面文件

问题描述 投票:2回答:2

我想创建一个平面文件输出,其中行的格式不同。文件有标题,中间数据行,页脚行。文件将如下所示

H|deptcode123|deptNameXYZ|totalemp300   
E|Sam|Johnson|address1|empCode1|........many other columns
E|Sam2|Johnson2|address2|empCode2|........many other columns
E|Sam4|Johnson3|address3|empCode3|........many other columns
E|Sam5|Johnson4|address4|empCode4|........many other columns         
J|300|250000

如何在SSIS中生成此文件。输入将来自不同的表,我打算编写3个单独的查询/ sp来获取标题,中间行和页脚行记录。

sql-server ssis etl ssis-2012 bids
2个回答
3
投票

如果要创建行具有不同元数据的平面文件。您必须使用单列平面文件连接管理器。使用Dt_WStr数据类型和长度= 4000

使用相同的DataFlow task连续使用3个Flat file destination

第一个写标题,第二个写中间行,第三个写页脚。

您可以从select语句或使用qazxsw poi连接值


3
投票

为此,您需要为每种不同类型的行集提供数据流和连接管理器。例如,要拥有不同的页眉,正文和页脚,您需要3个数据流和3个平面文件连接管理器。每个平面文件连接管理器都指向同一个文件。诀窍是确保未选中平面文件目标中的设置Script Component。这样,每个数据流都会执行并附加到文件中,并且每个数据流都可以具有其离散的列和数据类型。

Overwrite data in the file enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.