2010-10-08 81 views
4

在我的SSIS 2005包中,我需要通过表达式提供FTP连接字符串,因为我需要从dtsConfig文件为用户保持配置。在SSIS中使用表达式的FTP连接字符串

在我试图给出以下表达式的时刻:

的connectionString = @ [用户::的FTPServer] + “” + @ [User :: FTPUser] +“。” + @ [用户:: FTPPass]

对于这种独特的语法,我把指针从讨论在http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/3713e9a5-343a-4c5b-ac5d-1508cd5ab8be

我的FTPServer的变量也已在格式MYSERVERNAME端口信息:21。

但我得到的错误“530用户匿名未知”

任何想法,我该如何解决这个问题?

回答

4

我认为你的变量应该有两个::不是一个。

@[User::FTPServer] + "." + @[User::FTPUser] + "." + @[User::FTPPass]

编辑:

你可能会遇到一些麻烦,由于password being cleared

我会做的是通过脚本任务预先设置这些细节。运行脚本,然后运行FTP任务 - 我认为应该这样做。

Public Class ScriptMain 

Public Sub Main() 

Dim FTPConnectionManager As ConnectionManager 

'Set variable to an existing connection manager 
' Replace "FTP Server" with the name of your existing FTP Connection Manager 
FTPConnectionManager = Dts.Connections("FTP Server") 


FTPConnectionManager.Properties("ServerName").SetValue(FTPConnectionManager, Dts.Variables("FTPServer").Value) 

FTPConnectionManager.Properties("ServerPort").SetValue(FTPConnectionManager, Dts.Variables("FTPPort").Value) 

FTPConnectionManager.Properties("ServerUserName").SetValue(FTPConnectionManager, Dts.Variables("FTPUserName").Value) 

FTPConnectionManager.Properties("ServerPassword").SetValue(FTPConnectionManager, Dts.Variables("FTPPassword").Value) 


Dts.TaskResult = Dts.Results.Success 

End Sub 

End Class 
+0

对不起,那是我的问题一个错字..固定我的问题 – 2010-10-08 06:50:13

+0

@Saurabh - 我已经更新了我的答案 – codingbadger 2010-10-08 07:19:17

相关问题