Solved

Delete folders based on values from recordset using File System Task

Posted on 2011-09-19
5
400 Views
Last Modified: 2013-11-10
Hi,

I'm relatively new to SSISs.

What I currently have is a dataflow task which loads up my folder names into an ADO variable using an OLE DB Source to a record set.

I have a predefined path of where these folder names sit. e.g - "\\myServer\store\"

What I need to do is loop through my recordset and append each folder name to my path and delete that folder using File System Task? e.g. delete "\\myServer\store\Folder1FromAdoVariable", "\\myServer\store\Folder2FromAdoVariable" etc

I have had a look at a ForEach loop container but no success.

0
Comment
Question by:Eamon
  • 2
  • 2
5 Comments
 
LVL 21

Accepted Solution

by:
Alpesh Patel earned 500 total points
ID: 36560261
1. Path i sfixed, right?
2. Get Folder name from REcordset.
3. Assign reecordset to Foreach loop
4. Assign field value to variable.
5. Use variable in Folder Connection (Create dynamic connection using expression)
6. delete folder using File System Task.

0
 
LVL 1

Author Comment

by:Eamon
ID: 36560542
I think I have followed your instructions.

I now get an error:
Error: Failed to lock variable "\\myServer\store\1471470" for read access with error 0xC0010001 "The variable cannot be found. This occurs when an attempt is made to retrieve a variable from the Variables collection on a container during execution of the package, and the variable is not there. The variable name may have changed or the variable is not being created.".

Folder "1471470" is coming from my recordset which is good.
0
 
LVL 16

Expert Comment

by:carsRST
ID: 36561640
Could be a scope issue on the variable.

See image (left side).  There's a "scope" section under variables.  Try setting to "Package" if it's not already.


 ssis-script-01.jpg
0
 
LVL 21

Expert Comment

by:Alpesh Patel
ID: 36564812
Please make sure the scope of variable at PAckage level not to be at specific task level otherwise you will not get access of those variables define at task level and want to use at other task.
0
 
LVL 1

Author Comment

by:Eamon
ID: 36565301
I was putting the file path into the variable name rather than the variable value for my source connection.

All appears to be working okay now.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Connect to an SQL server ActiveX 10 29
HTML <font style="color:red"> 9 32
job schedule 8 20
Loops in SQL server code 4 22
In this article we will get to know that how can we recover deleted data if it happens accidently. We really can recover deleted rows if we know the time when data is deleted by using the transaction log.
JSON is being used more and more, besides XML, and you surely wanted to parse the data out into SQL instead of doing it in some Javascript. The below function in SQL Server can do the job for you, returning a quick table with the parsed data.
Via a live example, show how to extract information from SQL Server on Database, Connection and Server properties
Viewers will learn how the fundamental information of how to create a table.

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question