SSIS Ftp Script Task using C#

have a requirement in SSIS to connect to a remote ftp site and  move  files from my local machine to remote ftp file  and then move the local files to a local archives folder. The file names will be different each time.

How to script that using SSIS script task  and C#

Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

Reza RadConnect With a Mentor Commented:
sorry, I meant valid physical file address
Reza RadCommented:
you don't need scripting for this case,
you can use FTP Task in ssis , to move files from local to ftp address,
and use File system Task to move local files to archives folder.
you should use Foreach Loop Container to loop through source local directory and move files appropriately. don't worry about different file names, foreach loop will loop and get file names iteratively, and you can fill result of this into variables, and use variables in file system task and ftp task.

there are lots of details in this solution.
please let me know where you need more details?
Reza RadCommented:
I'm explain in details solution:

1-create a ssis package
2- add a variable of type string, scope package, name it SourceFile
3- add a foreach loop container
double click on it
set enumerator as Foreach File enumerator
set folder with source folder on your local
set Retrieve file name as Fully qualified

go to variable mapping tab,
set varaible as User::SourceFile , and Index as 0

4- add a FTP task inside foreach loop container
set ftp connection,
in file transfer tab, set IsLocalPathVariable as True,
and set LocalVariable as User::SourceFile
set operation as Send files
set remote path appropriately to a remote folder as you want

5- add a File System Task inside foreach loop container
set operation as copy file
set destination folder as you want
set IsSourcePathVariable as true,
set SourceVariable as User::SourceFile

That's all,
now run the package.

Never miss a deadline with

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

FatehbourghoudAuthor Commented:
Hi Raza ;
 how to  fill result of this into variables ?
FatehbourghoudAuthor Commented:
ok sorry I just see your second post , I will try to follow the steps and let you know

Reza RadCommented:
let me know if you have problem on implementation
FatehbourghoudAuthor Commented:
Hi raza;

I followed the steps , the FTP tasks works fine , but I have an error as follow :

variable "SourceFile" is used as source  or distination and is empty

FordistinationConnection I create a new connection as Existing folder and gave it my Archives Folder .

Any thing missing or not Correct ?

FatehbourghoudAuthor Commented:
sorry the error is whent I Try to create a file system task to move the files to the Archive folder
Reza RadCommented:
you need to set a default value for SourceFile variable
this default value should be a valid physical value exactly.
don't worry about this default value, this is just for SSIS validation phase, and will not act on runtime.
FatehbourghoudAuthor Commented:
Thank's raza , it's works fine now
FatehbourghoudAuthor Commented:
Reza_rad Is verry the best Expert
Reza RadCommented:
Glad to help,
All Courses

From novice to tech pro — start learning today.