2012-07-09 161 views
0

我有2个excel文件中的源数据。来自这两个excel文件的数据应该加载到同一个事实表中。 excel文件和表中的列名不相同。我有一个引用表,其中有excel和Fact Table之间的列映射。 我必须引用此参考表格作为列映射,另外我必须添加一些派生列(Created_Date)来加载Fact_Table。动态列映射

我已经给下方的样本数据结构:

源数据

Excel1_Order.xls 
OrderNumber  OrderQuantity  OrderDate 
Order10001  100  01-01-2011 

Excel2_Customer.xls 
CustomerNumber  CustomerName  CustomerAddress 
Customer0001  CCPrivateLtd  India 

ReferenceTable 
Category  DestinationColumn  SourceColumn 
Order   Disp_Col_1    OrderNumber 
Order   Disp_Col_2    OrderQuantity 
Order   Disp_Col_3    OrderDate 
Customer  Disp_Col_1    CustomerNumber 
Customer  Disp_Col_2    CustomerName 
Customer  Disp_Col_3    CustomerAddress 

DestinationTable 
Category  Disp_Col_1  Disp_Col_2  Disp_Col_3 Created_Date 
Order   Order10001  100   01-01-2011 getdate() 
Customer  Customer0001 CCPrivateLtd India   getdate() 

有没有办法在SSIS来处理呢?

+0

我是否正确,列总是在相同的顺序?因此,即Excel1_Order.xls列第一列将始终位于DestinationTable Disp_col_1中,第二列将位于Disp_col_2中.. – stb 2012-07-09 13:54:32

回答

0

通常我会创建两个数据流并让文件名决定使用哪一个。