cancel
Showing results for 
Search instead for 
Did you mean: 

Data Services Script to move excel file

Former Member
0 Kudos

Hi All,

I'm new to Data Services and need some help in creating a script that will sit at the end of a workflow which will move an excel file (.xls) from one folder location to an archive folder. The file move needs to complete so that when the workflow is executed the following day, the dataflow before the script picks up the new file (hence the wildcard * in the file name)


exec('cmd.exe','Move \\FAS2050N1\Groups\Reports\Business Intelligence\Excel Based Feeds\AACC\Warehouse Feed\Daily CDN Export*.xls \\FAS2050N1\Groups\Reports\Business Intelligence\Excel Based Feeds\AACC\Warehouse Feed\Archive',1);

The workflow validates and executes but I get error 50306.

I don't want to go down the route of creating a .bat file on the server

Kind Regards
Wardie

Accepted Solutions (0)

Answers (5)

Answers (5)

former_member187605
Active Contributor

You don't need a script. Simply use the file_move built-in fundtion. From the SAP Data Services Reference Guide:

"

Moves an existing file to a different location using the same file name or a different file name. Moves a group of files indicated by a wildcard to a different existing directory. Overwrites any existing target file(s) when overwrite flag is set to 1. Original file does not exist in the original location after file_move.

"

There are a couple of examples in that guide, too.

Former Member
0 Kudos

TRy exec('cmd','Move \\FAS2050N1\Groups\Reports\Business Intelligence\Excel Based Feeds\AACC\Warehouse Feed\Daily CDN Export*.xls \\FAS2050N1\Groups\Reports\Business Intelligence\Excel Based Feeds\AACC\Warehouse Feed\Archive',8) should work..

Former Member
0 Kudos

Has anyone successfully setup a file move script before? If so, could you send me step by step instructions with screenshots please?

Your help would be much appreciated

Kind Regards

Wardie

Former Member
0 Kudos

Below shell script should help.

$Variable = exec('sh',' -c "mv <FilePath>/<FileName> <ArchicePath>"',8);

former_member241220
Participant
0 Kudos

Hi Gavin,

with out flat we can move file from one location to another location,I have been implemented in my job and successfully moved file. try with print function using flag

print(exec('cmd','Move \\FAS2050N1\Groups\Reports\Business Intelligence\Excel Based Feeds\AACC\Warehouse Feed\Daily CDN Export*.xls \\FAS2050N1\Groups\Reports\Business Intelligence\Excel Based Feeds\AACC\Warehouse Feed\Archive',8));

Hope it should be work and if it get's error, the error will be print.

Thanks,Murali

former_member241220
Participant
0 Kudos

try this

exec('cmd','Move \\FAS2050N1\Groups\Reports\Business Intelligence\Excel Based Feeds\AACC\Warehouse Feed\Daily CDN Export*.xls \\FAS2050N1\Groups\Reports\Business Intelligence\Excel Based Feeds\AACC\Warehouse Feed\Archive');

Thanks

Murali

Former Member
0 Kudos

Thanks for the input Murali put unfortunately your suggestion didn't work.

The exec function requires a Flag integer at the end of the statement. I've also tried the Flag integer 8 which does validate and states that its run successfully but it hasn't moved the file at all. The Flag integer 8 basically overrides an error code if ones occurred or not