Hi Vipin
Why do you want to check if the file exists first, if you are using the for each loop then if there are no files that match you criteria [ABC_*.CSV] then the loop would not execute.
If you do need to do this then you can
First create a user variable eg
fileCount
Then add add the script component, remember to make the variable a readwritevariable, in the script component you can make a call to the file system to return a list of all the files that match your criteria.
string[] files = System.IO.Directory.GetFiles(@"c:\", "ABC_*.CSV");
then depending whet you want to do with this value you can store this list or just the count into a variable.
Dts.Variables["User::FileCount"].Value = files.Length;
Remember to make this a readWriteVariable
Then you can build the script and close it.
once you have completed this then drag a constraint from you script task to the forEachLoop, right click on the constraint and select edit, then change the Evaluation operation to Expression and make the expression
@[User::fileCount]>0
now when you run your workflow the foreach loop will only execute when there is a file that will match your criteria.