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
| Public Sub Main()
Dim FTPConnectionManager As ConnectionManager
Dim folders() As String
Dim files() As String
Dim file As String
Dim TimeOut As Integer
Dim fileIsHere As Boolean
Dim i As Integer
If Dts.Variables.Contains("WaitTime") Then
TimeOut = CInt(Dts.Variables("WaitTime").Value)
Else
TimeOut = 1
End If
Dim fileToWatch As String = Dts.Variables("FileToWatch").Value.ToString.ToUpper()
FTPConnectionManager = Dts.Connections("FTP Bloomberg Payant")
FTPConnectionManager.Properties("ServerUserName").SetValue(FTPConnectionManager, Dts.Variables("FTPLogin").Value)
FTPConnectionManager.Properties("ServerPassword").SetValue(FTPConnectionManager, Dts.Variables("FTPPassword").Value)
FTPConnectionManager.Properties("ServerName").SetValue(FTPConnectionManager, Dts.Variables("FTPServer").Value)
Dim ftp As FtpClientConnection = New FtpClientConnection(FTPConnectionManager.AcquireConnection(Nothing))
fileIsHere = False
While Not fileIsHere
System.Threading.Thread.Sleep(TimeOut * 1000 * 60) 'en millisecondes, 3000 = 3 secondes
ftp.Connect()
ftp.GetListing(folders, files)
i = 0
While i <= UBound(files)-1 And Not fileIsHere
file = files(i).ToUpper()
If file = fileToWatch Then
fileIsHere = True
End If
i += 1
End While
ftp.Close()
End While
Dts.TaskResult = Dts.Results.Success
End Sub |
Partager