Execute Process Task - How to output command?

Hello everyone,
I'm currently running an SSIS package that reaches out to a remove SFTP server and pulls files to my local server.  I've recently run into a problem where it's not properly pulling a list of the files on the remote server (so that I can pull them each
one at a time and log the transfer).  Part of the solution is utilizing an execute process task object to call the SFTP client (in this case WinSCP) and issue a command to connect to the remote server and request a list of the files in the remote folder:
Executable
C:\WinSCP\WinSCP.com
Arguments
/command "open sftp://user:[email protected]:10022/folder" "option confirm off" "ls files*.csv" "exit"
The arguments line is put together via an expression, the file group query (ls files*.csv) changes to different types of files as I loop through them to get grouped lists (ls files*.txt, ls files*.gz, etc.).  Now what I'm trying to look for is a way
to have the actual command executed outputted to the output window, variable, or file so that I can see what's actually being put together via expression.  I imagine this is just an option somewhere that I can toggle on but I haven't been able to find
it in BIDS.  Any help is appreciated.
Thanks,
Glen

Hi Tom,
I went ahead and did that, it now exits but I still don't have a log file.  I did check the online documentation at the link you provided and it looks like it's in order.  Currently the command looks like this:
WinSCP.com /command "open sftp://user:[email protected]:10022/folder" "option confirm off"
"ls files*.csv" exit "/log "C:\MyWinSCPSession.log""
I've tried a couple other variations, playing around with moving around the quotes but no dice.  I don't even get an error message.  I can confirm that there are files with
the exact file mask I'm looking for on the target server and that the command works when I type it manually (without the logging).  Any additional help is appreciated.
Thanks,
Glen
*Note: I should add that when I execute the command above, it does all other tasks successfully...search and connect to host, authenticate username/password, start session, output
file list, etc. and it's all printed out in the command window.  It just doesn't seem to want to log anything.

Similar Messages

  • SSIS - How to run command line to copy files with User Variables within a Execute Process Task

    Hello,
    I'm am having syntax issues within the Arguments when trying to copy a file with cmd.exe using User Variables.
    It works when I hard code the arguments : /c copy /b  "\\folder1\file.txt" "\\folder2\file.txt"
    However, it's failing when I try using User Variables to replace the directory and file.
    User::FILES = \\folder1\file.txt
    User::FILE_NAME = file.txt
    "/c copy /b + @[User::FILES] + \" \\\\folder2\\" + @[User::FILE_NAME]"
    Does anybody know what's wrong with my syntax?
    Thanks!

    Hi SSISBeginner,
    Assuming the source file is "C:\Temp\Source\file.txt", the destination folder is "C:\Temp\Destination", the expression of FILES variable is "C:\Temp\Source\file.txt", and the expression of FILE_NAME variable is file.txt. Then, we can use the following
    expression for the Argument property of the Execute Process Task:
    "/C COPY /B "  +  @[User::FILES] + " C:\\Temp\\Destination\\" +   @[User::FILE_NAME]
    Note: Pay attention to the spaces in the double quotes in the expression.
    Regards,
    Mike Yin
    TechNet Community Support

  • Execute Process Task :Executing DOS Command lines in Execute Process Task

    Hi All,
    I am trying to sftp files using Tectia Client from my local system. For that I have used the Execute Process Task in SSIS. First I open DOS command and try to instantiate the sftp3.exe.
    Then I write down the below command
    binary
    open username@hostname
    lcd C:\Test
    cd <Destination Path name>
    put test.txt
    How to execute the command in execute process task ?
    help is appreciated
    Thanks

    Hi ConnectDebz,
    According to your description and script example, do you use WinSCP.exe to perform the SFTP files transfer? If so, you should set the Executable of the Execute Process Task to the path of the WinSCP.exe, save the script in a .txt file and set the Argument
    of the Execute Process Task like “/script=C:\Temp\sftploader.txt” (without quotes).
    References:
    http://www.sqlservergeeks.com/blogs/raunak.jhawar/sql-server-bi/395/sql-server-sftp-with-ssis-execute-process-task 
    http://gregcaporale.wordpress.com/2012/02/23/using-sftp-in-sql-server-ssis/ 
    Regards,
    Mike Yin
    If you have any feedback on our support, please click
    here
    Mike Yin
    TechNet Community Support

  • How to execute SQOOP.cmd file from SSIS execute process task?

    How to execute SQOOP.cmd file from SSIS execute process task?
    What is argument need to be prefixed in the arguments property
    Executable: C:\Hadoop\sqoop-1.4.2\bin\sqoop.cmd
    Arguments: /C "sqoop import -connect "jdbc:sqlserver://mysystem:1433;database=test;username=myuser;password=mypwd;" -table emp  -target-dir /user/emptable -m 1"
    Thanks
    Durga

    Hi Durga,
    SQOOP.cmd must be no different than any other .cmd/.bat I assume, your question is more about setting the parameters up I guessed.
    So unless the arguments change dynamically you can call SQOOP.cmd from yet another .cmd that has its parameters passed to it and the former you simply set to run without the arguments in Execute Process Task.
    Otherwise, in general to set a bat/cmd file to run in SSIS one needs to do this:
    PS: It is a good idea to populate the working directory with the path to the .cmd
    Arthur My Blog

  • Passing Argument from Execute Process Task (SSIS) to an .exe file

    Hi,
    I am developing a SSIS package, where I want to execute exe file using Execute Process Task. The parameter for the ,exe file is the output of the SQL query from database.
    I am not knowing how to pass the output of the SQL query to the parameter of the Exe file. Can you please let me know how to pass the sql output data as parameter to the exe.
    Many Thanks, Thirumalai M

    Hi,
    you can use the following tutorial fr more information.
    http://www.sqlis.com/post/The-Execute-SQL-Task.aspx
    After getting the data in the variable, you can easily pass the variable in as a parameter for the "Execute process task".
    -Jens
    Jens K. Suessmeyer http://blogs.msdn.com/Jenss

  • Execute Process Task - Error :The process exit code was "2" while the expected was "0".

    I am designing a utility which will keep two similar databases in sync. In other words, copying the new data from db1 to db2  and updating the old data from db1 to db2.
    For this I am making use of the 'Tablediff' utility which when provided with server name, database, table info will generate .sql file which can be used to keep the target table in sync with the source table.
    I am using the Execute Process Task  and the process parameters I am providing are:
    WorkingDirectory : C:\Program Files (x86)\Microsoft SQL Server\90\COM
    Executable :      C:\SQL_bat_Files\SQL5\TC_CTI\customer.bat
    The customer.bat file will have the following code:
    tablediff -sourceserver "LV-SQL5" -sourcedatabase "TC_CTI" -sourcetable "CUSTOMER_1" -destinationserver "LV-SQL2" -destinationdatabase "TC_CTI" -destinationtable "CUSTOMER"  -f "c:\SQL_bat_Files\sql5\TC_CTI\sql_files\customer1" 
    the .sql file will be generated at:  C:\SQL_bat_Files\sql5\TC_CTI\sql_files\customer1.
    The Problem:
    The Execute Process Task is working fine, ie., the tables are being compared correctly and the .SQL file is being generated as desired. But the task as such is reporting faliure with the following error :
    [Execute Process Task] Error: In Executing "C:\SQL_bat_Files\SQL5\TC_CTI\package_occurrence.bat" "" at "C:\Program Files (x86)\Microsoft SQL Server\90\COM", The process exit code was "2" while the expected was "0". ]
    Some of you may suggest to just set the ForceExecutionResult = Success (infact this is what I am doing now just to get the program working), but, this is not what I desire.
    Can anyone help ?

    Jwelch,
    Thanks for the input,
    "Change the SuccessValue property of the Execute Process task from 0 to 2 (which means that you will get a failure if there are no differences, since TableDiff returns 0 in that case)."
               -- Not possible b'coz if there is no difference in the tables, which is also a possiblility, the job will fail.
    "FailTaskIfReturnCodeIsNotSuccessValue to FALSE (which means it won't fail regardless of the code returned)."
              -- Does this mean the job will never fail? Lets say the target table doesnt exist, then, by setting "FailTaskIfReturnCodeIsNotSuccessValue to FALSE " will the job fail? I guess my question is, how is what you've suggested different from setting "ForceExecutionResult = Success". Both the cases will show the task status "Success" even if there is an error.
    Is there a way to keep the property of job 'Failure' if there is any generic errors like target table not found or say, the path given for .sql file output is not valid etc.
    Thanks again,
    Little_Birdie.

  • Execute Process task Error

    Hi All
    when i am using the Process execute task in ssis it is failing with the fallowing error
    [Execute Process Task] Error: In Executing "C:\Program Files\PuTTY\pscp.exe" "echo y | pscp -sftp -pw Password
    [email protected]:/opt/DSC_6_0_R5/logs/metrics.csv C:\Users\Public\Documents\SurendraData\DRA\PSCPTest\server1A_metrics_SSIS.csv" at "C:\Program Files\PuTTY", The process
    exit code was "1" while the expected was "0".
    when i run the same command from cmd promt is succesful
    The command is
    echo y | pscp -sftp -pw Passwprd
    [email protected]:/opt/DSC_6_0_R5/logs/metrics.csv C:\Users\Public\Documents\SurendraData\DRA\PSCPTest\server1A_metrics_SSIS.csv
    In Execute Process task i have set the fallowing value
    Executeable  = C:\Program Files\PuTTY\pscp.exe
    Arguments  = echo y | pscp -sftp -pw Passwprd
    [email protected]:/opt/DSC_6_0_R5/logs/metrics.csv C:\Users\Public\Documents\SurendraData\DRA\PSCPTest\server1A_metrics_SSIS.csv
    Working directory = C:\Program Files\PuTTY
    what is the issue ? how to solve that
    Surendra Thota

    The " are necessary to pass in a path with spaces1 st try it in a script. See if that works. If not see this good tutorial: https://sqlserverrider.wordpress.com/tag/execute-process-task/
    or
    http://blogs.msdn.com/b/dataaccesstechnologies/archive/2013/03/04/integration-services-packages-using-execute-process-task-with-winzip32-exe-fails-intermittently-when-run-under-a-sql-server-agent-job.aspx
    Arthur My Blog

  • Error while calling pscp.exe through a batch file which is called in SSIS Execute Process Task

    Hi,
    I am using Windows Server 2012 R2 Standard, SSIS 2012. I am trying to copy files from a remote location by calling pscp.exe through a batch file (FileCopy.bat at location M:\bin\) which is referenced in a SSIS Execute Process Task. My batch file content
    is,
    ECHO OFF
    echo. >> M:\Prod\bin\SourceFile_FileLog.txt
    echo %date% - %time% - Copy Start (XYZ_a201211155952avx0_69999.NOR.gz) >> M:\Prod\bin\SourceFile_FileLog.txt
    M:\ProdFiles\bin\pscp.exe -unsafe -scp -pw aaaaa myuser@sourceserver:/ABC_data/*.NOR.gz M:\Prod\FromMediation\
    echo %date% - %time% - Copy Complete >> M:\Prod\bin\SourceFile_FileLog.txt
    The error I am getting is 
    [Execute Process Task] Error: In Executing "M:\bin\FileCopy.bat" "" at "", The process exit code was "1" while the expected was "0".
    Exactly same setup but using Windows Server 2003 R2 Enterprise and SSIS 2005, this works fine and copies the files successfully.
    Please provide some guidance on this.
    Thank you!
    'In Persuit of Happiness' and ..... learning SQL.

    Hi,
    This is what I am getting while running the batch file from command prompt
    M:\bin\mttrb1>CDR_FileCopy
    M:\bin\mttrb1>ECHO OFF
    The system cannot find the path specified.
    The system cannot find the path specified.
    scp: M:\Prod\FromMediation\: Cannot create file
    scp: M:\Prod\FromMediation\: Cannot create file
    scp: M:\Prod\FromMediation\: Cannot create file
    The system cannot find the path specified.
    'In Persuit of Happiness' and ..... learning SQL.

  • Execute process task argument is not working for sph file and ogr2ogr.exe

    Hi All,
    I am trying to load shape file into a sql spatial table. A execution process task is used to run the ogr2ogr.exe program.
    This is how the process tab looks like .
    Executable : C:\gdal_ogr2ogr\bin\gdal\apps\ogr2ogr.exe
    Argument :  -f MSSQLSpatial   MSSQL:server=SQL-ABC-DEV;database=MYSIMPLE_Dev;Trusted_Connection=True;\\mypath\files\shares\Data\www.mypage.htm\my_sample_file.shp
    Success value : 1 (I am not sure why I need to change this value from 0 to 1.
    For above settings, package runs fine. However the spatial table is not created always. It is created once in a while after switching Success value from 1 to 0 and 0 to 1 again. (After the spatial table is created, it is dropped using a execute sql statement). 
    I am running this in VS 2012.I saw in an article that we need to convert shp file to csv before we load it into sql server.I even tried to convert shp to csv using execute sql task and ogr2ogr.exe. Still the package runs successfully after changing Success
    value from 0 to 1 but no csv file is created. If the success value is 0, it throws the following error.
    [Execute Process Task] Error: In Executing "C:\gdal_ogr2ogr\bin\gdal\apps\ogr2ogr.exe" " -f CSV \\xxxxxxxxr.rdn\files\shares\xxx_Data\ImportData\www.xxxxxxx.hapepage.htm\xxxxxx\Watches\Warnings\myfile\CSV \\xxxxxxxxr.rdn\files\shares\xxx_Data\ImportData\www.xxxxxxx.hapepage.htm\xxxxxx\Watches\Warnings\myfiles\www.shp"
    at "", The process exit code was "1" while the expected was "0".
    Could long file name be a problem too?
    Thanks for your help in advance..
    shamen

    Hello shamen,
    Seems to me you are missing a step to check if the shape is there and purge it before loading if so.
    Arthur My Blog

  • SSIS Execute Process Task DDE/OLE

    I have a package that executes an executable via Execute Process task, and that executable needs Adobe Reader to work.  It sends PDF faxes to Adobe which converts them to tiff.  This is a third party executable that is part of an enterprise Fax
    Server so I have no control over changing the process at all.  This being said, for whatever reason, it wont run as a SQL job.  When the executable runs, it is passed a file name.  It (the EXE) opens Adobe via DDE/OLE, not sure, it just launches
    it, and covnverts/sends the fax.
    It runs under BIDS with my authority, it runs under BIDS with SQLADMIN authority
    It runs as a "deployed" package (right click choose run job) under the same authority as the SQL job is (SQLADMIN)
    It runs from the command line with DTEXEC
    When executed as a JOB, calling the DTSX from the catalog, it does not throw an error, but through debugging, we've found it stops at the executable, because the executable can't launch the Adobe instance. It continues to run and never fail, but not do
    anything.
    Is there something in SSIS (2012) that I need to configure to allow this to work?.
    Thanks!!

    Unfortunately, the Proxy didn't help.  I had made one before, but I followed the article just in case I had done something incorrect.  To summarize, the package calls an execute process task which runs a program called SendFax,exe and passes it
    a filename.  SendFax.exe internally instantates Adobe Reader and uses it for conversion from PDF to TIF.  Outside of the SQL Agent job it runs fine.  When launched by the Agent, it fails to instantate Adobe.
    Also, when the dtsx is run from the command line using DTEXEC it runs fine.  Putting the command line in a batch file and double clicking it, it runs fine.  Executing that same batch file with "Highest permissions" in Windows Task Manager, it fails
    as well.
    Finally, I made a simple SSIS to launch AcroReader32 (in a 32 bit instance) in SSIS but putting out an execute process task that does nothing but launch Adobe, it fails.  I remove Adobe 11 and installed 10.1, it still fails. I turned off all the security
    in Adobe reader I could find, and it still fails.
    This is making me crazy.....

  • Pass Passord Variable to a Batch File using Execute Process Task

    I have an FTP batch file that I want to execute using Execute Process Task. The content of the ftp (ftpscript.cmd) is as below:
    open ftpsite
    UserName
    Password
    ASCII
    get file  c:\temp\test.txt
    bye
    Using SSIS Execute process task, I was able to download data. I configured the Execute Process task as follows:
    Executable: ftp.exe
    Arguments: -s:"c:\temp\ftpscript.cmd"
    The above works fine. But the problem is that I don't want to store the password value in the batch file for security/policy reasons. Please, is there a way I can pass the password value to the ftp executable or the batch file at run time?
    I know how to get and store variables in SSIS but I don't know how to pass this kind of variable to the batch file just before execution.
    Any suggestions will be appreciated. Thanks.

    you can dynamically generate the source (CMD) for the FTP and delete after the execution. The password can be stored in a secure database for example, not 100 % secure, but the best you can do.
    Another option I did was an encrypted VBScript (also quite easy to open in plain text to some people).
    Finally it can be a binary e.g. an EXE with the FTP called as process in it.
    Arthur My Blog

  • Ssis execute process task error: process exit code was 1 while the expected was 0

    Hi Sir,
    in my SSIS Package(2012) i am using Execute Process Task which will call bat file.  bat file is located on UNC Path.i am having  the below script in the batch file.
     del \\servername\foldername\name.txt
     rcmd \\servername D:\name1.bat
     del \\servername\foldername\name2.txt
    xcopy \\servername\foldername\file.txt   \\server\foldername\outfilefolder
    i am getting the below error message:
    ssis execute process task error:  process exit code was 1 while the expected was 0
    i want know at what cases error exit code was 1?
    Thanks for your time.

    Hi prasad.alm,
    The error is generic and can be caused by various factors. Here are some suggestions for your reference:
    Manually run the executable to execute the batch file so that we can check whether the command lines in the batch file are correct or not.
    Check there are no duplicate/existing files in the destination folder.
    Try to run the package in 32-bit or 64-bit runtime mode.
    If the issue occurs when running a job, try to create a CmdExec type job step to call the excutable. If this job also fails, it might be an issue between executable and SQL Server Agent rather than the SSIS package itself.
    If the issue persists, enable logging for the package, and check if we can obtain more detailed error message for further analysis.
    Regards,
    Mike Yin
    TechNet Community Support

  • SSIS Execute Process Task to Unzip Remote Files

    I have created an SSIS Execute Process Task to unzip files on a remote server.
    Executable: \\servername\c$\Program Files (x86)\7-Zip\7z.exe
    Arguments: -o\\servername\d$\DBFiles\ -y x \\servername\d$\DBFiles\somefile.zip
    The zip file size is about 40MB.
    The SSIS task runs very slowly, close to 5 minutes. I know it should not take this long. When I remote logon to the server and run the 7z program to unzip the same file, it unzips in less than 10 seconds.
    It seems that the way it is set up now, it constantly sending instructions back and forth from my PC to the server when I run the SSIS package on my PC.  
    I have 50 files of varying sizes that need to be processed daily. The SSIS unzip task takes 2 hours just to unzip these files.
    How should I set up the SSIS Execute Process Task so that it can unzip files on remote server efficiently?
    Many thanks in advance

    The reason is that the files contain data that need to be loaded to the database. So, the zipped data files are copied to the server where the database lives. The SSIS package unzips the files and loads the database. The SSIS package is stored on the same
    server. The server lives in the remote data centre.
    My team run the SSIS package using Managament Studio running their PCs in the office, which is a different location to the data centre.
    Since the package and files live on the same remote server, I would have thought that that would not be an issue. But the fact that we run the package locally means that the package is executed locally.
    My goal is to put the zipped data files on the server, unzip the files, load data to a database on a remote server. I need to allow my team of 4 to be able to use Management Studio to run the SSIS packages to do the above. Would I be better off Remote
    Desktop connecting to the server and execute the package there?
    I will check out the PowerShell option.

  • SSIS-Execute Process task Error in 2012 version _File/Process "\\Servername\Foldername\batfile.bat" is not in path

    Hi Sir,
    I have develop the SSIS Package in 2012 version and i am calling the SSIS Package using Stored Procedure according to my requirement and that stored procedure will be using in my SSRS report Datasource.
    once after the SSIS Pacakge has design and develop and deploy into the server as Project Deployment model..when i run the ssis Package ,calling through the SP it is working fine...
    even when i design a SSRS report  using SSDT(sql server data tools),  in the SSRS reprot calling the above SP in Dataset.when i execute the SSRS report it is wroking fine...
    once SSRS report has been deployed into the  remote Server.. when i Execute the SSRS report i am getting the below Error message:
    SSIS-Execute Process task Error  _File/Process "\\Servername\Foldername\batfile.bat" is not in path
    belo is the SP for calling the SSIS package.
    DECLARE @EXECUTION_ID BIGINT,
            @PKG_RESULT INT
    EXEC [SSISDB].[CATALOG].[CREATE_EXECUTION] @PACKAGE_NAME=N'abc.DTSX',
                                               @EXECUTION_ID=@EXECUTION_ID
    OUTPUT,
                                               @FOLDER_NAME=N'aa',
                                               @PROJECT_NAME=N'xxx',
                                               @USE32BITRUNTIME=FALSE,
                                               @REFERENCE_ID=29 --unique identifier for environment
    EXEC [SSISDB].[CATALOG].[START_EXECUTION] @EXECUTION_ID

    Where the BAT part is ?
    It looks like a security issue.
    The account running has no permission apparently over "\\Servername\Foldername\batfile.bat"
    Arthur My Blog

  • SSIS-Execute Process task Error _File/Process "\\Servername\Foldername\batfile.bat" is not in path

    Hi Sir,
    I have designed the SSIS Package in 2012 Version. and i have deployed into the Integration Server,using Project Deployment Model.
    In the SSIS Pacakge we are calling the batch file using Execute Process task.
    when i am Executing the SSIS pacakge using Visual Studio(Sql Server Data tools) which is working fine.
    When i Execute the Pacakge uisng Sql server Management Studio,after the Deployment i am getting the below Error message.
    ExecProcess task:Error: File/Process "\\Servername\Foldername\batfile.bat" is not in path.
    Thanks for your time.
    Regards
    Prasad

    Hi Prasad,
    When you say executing the package in SSMS, I think you right click on the package and execute it manually rather than execute it through SQL Server Agent job, right? How did you execute the package from the SSMS on DEV server? Have your also deployed the
    SSIS project to the SSISDB catalog on DEV server or you used SSMS tool on DEV to connect to the QA server to execute the package?
    When you log into the Database Engine instance, make sure the credentials you used has access on the shared folder which hosts the .bat file. Besides, I think the issue may be caused by the Windows UAC feature which may lower the permissions level of an
    administrator to a standard user. So, I suggest that you run the SSMS as administrator to see if it works.
    Regards,
    Mike Yin
    TechNet Community Support

Maybe you are looking for

  • Bapi_acc_document_post: how to populate dmbtr

    hi experts, I m posting AR Transaction data using bapi_acc_document_post. I populated all the fields in bapi except two fields, one is amount in local currency(DMBTR) and the other one is tax amount in local currency (MWSTS). The reason is, those two

  • Empty file, java mapping issue

    Hello, does anyone have an ide how to create java mapping to create empty file on FTP? Why this code always send NUL character = 1byte and not 0 byte as needed? public void execute(InputStream in, OutputStream out) throws StreamTransformationExceptio

  • Dynamic JSlider tick spacing

    I run several times into the situation where I needed to hardcode a JSlider tick spacing into my program. I always found it difficult to define the tick spacing because a good looking tick spacing depends on the current size of the JSlider on screen

  • UploadCollection Issue

    Hi All, I am using UploadCollection for file upload. After the file is uploaded successfully, I click the attachment link to download the file. However, the downloaded file is always named like empty.pdf, empty.png, etc. Why isn't the downloaded file

  • Issue with AQ notification callback.

    Hi, I'm using OCCI API to subscribe for event notification. I was able to open subscription and the callback is triggered when the messages are enqueued from DB. I'm having issues with extracting the data in the callback. From the oracle doc, I see t