当我使用静态ole db> SSIS中的Excel连接管理器我在excel连接管理器中设置要连接的文件,创建数据流excel目的地,将其连接到ole db源并映射字段。
在这种情况下,我想做同样的事情,但我想创建一个新文件并将数据放在那里,而不是链接到现有文件。现在我知道我可以在现有的excel连接中执行SQL任务并创建一个新表(有效地表单),但在这种情况下,我已经创建了一个脚本任务来创建我的新文件将去的完整路径,例如c:\ docs \ mypjt \ fileformarch.xls使用以下代码:
Public Sub Main()
'
' Add your code here
'
Dim strFileName As String
Dim strFolderName As String
Dim strMonthNameShort As String
Dim strFullPath As String
Dim lastMonth As New Date(DateTime.Today.Year, DateTime.Today.Month - 1, 1)
strFileName = Dts.Variables("FileName").Value.ToString
strFolderName = Dts.Variables("FolderName").Value.ToString
strMonthNameShort = MonthName(lastMonth.Month, True)
strFullPath = strFolderName & strFileName.Substring(0, strFileName.IndexOf(".xls")) & strMonthNameShort & ".xls"
Dts.Variables("FullPath").Value = strFullPath
Dts.TaskResult = Dts.Results.Success
End Sub
但是我不明白如何创建我的动态连接和映射,我尝试在我的excel连接管理器等中使用连接字符串,而不是avial,所以我没有全面了解我需要做什么。
我不确定是否需要带有列标题的模板来设置默认映射,但后来我读过很多情况,其中excel连接管理器只需要初始连接到“a”文件然后动态连接字符串proerty接管当你运行它时,如果你正在创建一个新文件,它如何知道映射是什么?
我很感激你能给出的任何建议。
由于
安德鲁