If you have one or more FTP Connection Manager components in your SSIS package and are using the DtsConfig XML configuration file to set the values for the FTP Connection Manager at execution time, then it will be useful for you to know the connection string property precedence, i.e. which property is given higher priority when SSIS tries to resolved the FTP Connection using the values in the connection properties like ConnnectionString, ServerName and ServerPort. Because knowing this precendence will save you time you spend troubleshooting “wierd” production errors in cases where both ConnectionString and ServerName, ServerPort values are specified and do not match.
Unlike Database connections strings, where the entire connection information is represented by a single string delimited with a semi-colon, the FTP ConnectionString property in SSIS consists of only the FTP Server Name and the Port Number, ex: ftp.yourftpserver.com:21
So what happens if you specify values for both the ConnectionString, as well as the ServerName and ServerPort properties for your FTP Connection Manager in Config File ?
I have tested the 3 separate scenarios and found that the precendence is as follows.
SSIS will use the combination of ServerName and ServerPort values and ignore the ConnectionString property value.
SSIS will use the value in the ConnectionString property.
SSIS will use the value in the ConnectionString property.
So in 2 out of the 3 cases, SSIS uses the ServerName and ServerPort property values. In other words, if the ServerName and ServerPort properties are populated, it is given higher precence than the value in the ConnectionString property (even if populated).