Advertisement

11.20.2007 at 06:51AM PST, ID: 22972764
[x]
Attachment Details

FTP files using SSIS script task.

Asked by misdevelopment in SQL Server 2005, .Net Editors & IDEs

Tags: ssis, ftp, task, script

I have a requirement in SSIS to connect to a remote ftp site, download all files to a local drive and then remove only the remote files that I've transferred. The file names will be different each time.

I've got the attached code in a script task in my SSIS package:

Which always gives me the following error:

Exception from HRESULT: 0xC0016031
  at Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSFtpClientConnection90.ReceiveFiles(String[] remoteFileNames, String localPath, Boolean overWrite, Boolean transferASCII)
   at Microsoft.SqlServer.Dts.Runtime.FtpClientConnection.ReceiveFiles(String[] remoteFileNames, String localPath, Boolean overwrite, Boolean isTransferAscii)
   at ScriptTask_613a13b6b4eb4c41bb9ab2fb7e238a98.ScriptMain.Main()


Files exist and the connection appears to be made...

Am I missing something obvious here?

JC

Start Free Trial
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
Imports System
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Runtime
 
Public Class ScriptMain
 
    Public Sub Main()
 
        '  Try
 
 
        Dim cm As ConnectionManager = Dts.Connections.Add("FTP")
 
        cm.Properties("ServerName").SetValue(cm, "******")
 
        cm.Properties("ServerUserName").SetValue(cm, "*******")
 
        cm.Properties("ServerPassword").SetValue(cm, "******")
 
        cm.Properties("ServerPort").SetValue(cm, "21")
 
        cm.Properties("Timeout").SetValue(cm, "0")
 
        cm.Properties("ChunkSize").SetValue(cm, "1000") '1000 kb
 
        cm.Properties("Retries").SetValue(cm, "1")
 
        Dim ftp As FtpClientConnection = New FtpClientConnection(cm.AcquireConnection(Nothing))
 
        ftp.Connect()
 
        Dim fileNames() As String
        Dim folderNames() As String
 
        ftp.GetListing(folderNames, fileNames)
        
 
        ftp.ReceiveFiles(fileNames, "o:\pods\", True, True)
 
        'ftp.DeleteFiles(fileNames)
 
        ftp.Close()
 
 
        'Catch ex As Exception
 
        '    Dts.TaskResult = Dts.Results.Failure
 
        'End Try
 
        'Dts.TaskResult = Dts.Results.Success
 
    End Sub
 
End Class
[+][-]11.20.2007 at 07:11AM PST, ID: 20320241

Often, when Experts are collaborating with members who have asked questions, they will request additional information about the problem. Askers respond with an author comment like this one.

Start your 7-day free trial to view this Author Comment or ask the Experts your question.

 
[+][-]11.20.2007 at 07:23AM PST, ID: 20320356

Often, when Experts are collaborating with members who have asked questions, they will request additional information about the problem. Askers respond with an author comment like this one.

Start your 7-day free trial to view this Author Comment or ask the Experts your question.

 
[+][-]02.23.2008 at 07:56PM PST, ID: 20968430

View this solution now by starting your 7-day free trial. Setting up your free trial is quick, easy, and secure. We will return you to this solution, unlocked, when you're done.

 

About this solution

Zones: SQL Server 2005, .Net Editors & IDEs
Tags: ssis, ftp, task, script
Sign Up Now!
Solution Provided By: EE_AutoDeleter
Participating Experts: 1
Solution Grade: A
 
 
 
Loading Advertisement...
20080716-EE-VQP-32 / EE_QW_2_20070628