FTP Script

I'm putting this VB code into a DTS package in MS SQL Server 2000.  I pieced it together from other thing I found on the net, but I don't know VB code and am getting an error:

Object Required FTP.

Also other than the fix for that does the rest of the code look ok for doing a transfer from a local file to a ftp server?
ftp.Hostname = "ftp.test.com"
	ftp.Username = "User"
	ftp.Password = "Pass"
 
	' The default data transfer mode is "Active" as opposed to "Passive".
	' Change it to Passive by setting the Passive property:
	ftp.Passive = 1
 
	'  Establish an AUTH SSL secure channel after connection
	'  on the standard FTP port 21.
	ftp.AuthTls = 1
 
	'  The Ssl property is for establishing an implicit SSL connection
	'  on port 990.  Do not set it.
	ftp.Ssl = 0
	'  Connect and login to the FTP server.
	connectStatus = ftp.Connect()
	If (connectStatus <> 1) Then
		'MsgBox ftp.LastErrorText
		'WScript.Quit
		Main = DTSTaskExecResult_Failure
	Else
		dirStatus = ftp.ChangeRemoteDir("RMed")
		If (dirStatus <> 1) Then
		    'MsgBox ftp.LastErrorText
		    'WScript.Quit
		Main = DTSTaskExecResult_Failure
	End If		
	
	
	
	'MsgBox ftp.getCurrentRemoteDir()
		
	'specify the file path and name on the local machine
	localInvoiceFile = "C:\Documents and Settings\Nathan\My Documents\2\dRMed\Invoice_RMed.txt"
	localPatientFile = "C:\Documents and Settings\Nathan\My Documents\2\dRMed\Patient_RMed.txt"
		
	'specify the file path and name on the remote machine
	remoteInvoiceFile = "C:\Clients\Strat\File Uploads\Customer Uploads\RMed\Invoice_RMed.txt"
	remotePatientFile = "C:\Clients\Strat\File Uploads\Customer Uploads\RMed\Patient_RMed.txt"
	'MsgBox remoteInvoiceFile 
	'MsgBox remotePatientFile
		
		'download the files from the remote server
		transferStatus = ftp.getFile(remoteInvoiceFile, localInvoiceFile)
		if (transferStatus <> 1) then
			'MsgBox ftp.LastErrorText
			Main = DTSTaskExecResult_Failure
		else
			Main = DTSTaskExecResult_Success
		end if
		
		transferStatus = ftp.GetFile(remotePatientFile, localPatientFile)
		if (transferStatus <> 1) then
			'MsgBox ftp.LastErrorText
			Main = DTSTaskExecResult_Failure
		else
			Main = DTSTaskExecResult_Success
		end if
	
	END IF
	ftp.Disconnect 	
 
End Function

Open in new window

LVL 12
Nathan RileyFounder/CTOAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
Dudge669Connect With a Mentor Commented:
Yes, you will need to install the chillkat object on whatever machine your script runs on.
0
 
Dudge669Commented:
You need to download an FTP object activex to be able to use it.  As far as your syntax goes, it depends on which object the syntax was coded for.  Check out this link:

http://www.robvanderwoude.com/vbstech_internet_ftp.html
0
 
Dudge669Commented:
Here's another link showing how you create the Chilkat ftp object and use it...

http://www.example-code.com/vbscript/ftp_asyncDownload.asp
0
 
Nathan RileyFounder/CTOAuthor Commented:
ok I see this in the code I took it from:

set ftp = CreateObject("Chilkat.Ftp2")

That's off my production server, so I assume that the FTP object is loaded on it.  However I'm going to be running this on my dev server so I guess I need to get it for it as well?
0
All Courses

From novice to tech pro — start learning today.