Operating system command in file receiver adapter

How to use the Run Operating system command after message processing option in the parameters tab of the file receiver adapter.
I am working on a scenario wherein a batch file needs to be invoked after the file is written on the file system.
So how do i invoke this batch file from the file reciever adapter ( Run Operating system command after message processing ).

did you see this page?
it shows all you need to know
Michal KRawczyk

Similar Messages

  • Is it possible to call operating system command after file receive?

    Hi expert,
    I'm trying to call operating system command after file receive comm.channel receive a txt file.
    operating system command uses txt file name as parameter.
    Is it possible? How?

    It should be possible, actually we have two options that are
    1.RUN OS command before message processing
    2.RUN OS command after message processing.
    So you can give the commands in the RUN OS command after message processing.
    Check this links for more info

  • Using operating system command on file receiver comm.channel

    I pepared a XI 3.0 message generating .txt file.
    I must append content of this file to the and of the file with same name but different extension(.bak extension).
    I know it is achieved with copy name.bak+name.txt it appends txt file to the .bak file.
    My problem is: How can i supply name of .txt file to use as name of .bak file?
    How can i do that?

    Put the java program there.
    Ravi Raman

  • Operating system command in file adaptor

    I am doing file to Idoc scenario, can i use the Operating system command in file adaptor to compress the file at FTP server and decompress the file at IE. I don’t know is it possible and if yes then how or is there any other way to handle the big files as the network speed is very low.
    Any clues!!!!!!!!!!!
    Thanks in advance

    Have a look into these threads - they seem to have the solution u need (i havnt tried it though)
    Unzip file using operating system command in file/ftp receiver adapter
    How to zip and unzip xml files dynamically by XI

  • Unzip file using operating system command in file/ftp receiver adapter

    I'm wonderdering how to unzip a zip-file in the receiver file/ftp adapter. I know it is possible to do it using the 'Operating system command' feature, but somehow the command I use seems to be ignored! (I'm using SP14, unix).
    The command I entered is quite simple: unzip %F (also tried the %f, but i guess it doesn't really matter wich on I use).
    Is it possible that I'm unzipping to another directory than the one i expect? the unzip should be performed to/in the current directory, and assumingly current directory is the one stated in the 'Target Directory', right?
    Hope someone can clearify this issue for me.
    Best regards,

    Hi Daniel,
    It seems to me also, that the files are being unzipped to a different location than what you are expecting. The OS command might getting executed in some default location(i am trying to fnd that out)on the server and not in the target directory of the channel(It seems logical to me)....
    If you have time...pls try this out & see whether this would help...
    Have a shell script written with the following commands in them
    cd <path to target directory>
    unzip $1(filename from the channel)
    and in the OS command in the Channel give....
    <absolute path to the .sh file> %F

  • Operating System Command After File Processing in Sender File Adapter

    Hello guys,
    actually we have different interfaces, and the client to take all the files from only one directory, for example D:/DPI.
    Unitl now we had one adapter for every file with the content conversion, so we didn't have problems with that. Now we have the problem that we sould maintain an order processing files.
    We thougth that an idea could be to execute one file pointing to D:/DPI and at the Operating System Command put like: copy D:/DPI/file.txt D:/DPI/outbound/file.txt, so when file is executed, we move the next file to another directory where is pointing the adapter. Doing this we have an error on the adapter giving us the message: Could not process due to error: java.lang.NullPointerException
    We are using a Windows.
    There is anyway to do in our way, or there is a better solution to resolve this problem?
    Any other idea to do this?
    Many thanks in advance.

    Helo Guys,
    maybe I haven't explained well.
    We have one directory with different files. We have one adapter for every file( we need for the content conversion ) using NFS and all the adapters are pointing to the same directory.
    The problem is that if we have files A.txt, B.txt and C.txt we need to process in an order.
    And the problem we see is that for every file we have one adapter, so for example if we process file A.txt with one adapter, when this part is finished, we want to process file B.txt with another adapter, and the same for the rest of the files.
    So the idea we had is to create another directories, and when A.txt has finished move file B.txt to another directory.
    However this way is not running, if we log on the PI machine and execute cmd, we can do a copy of one file from one directory to another, but when we put this sentence in the adapter in OS command if we see the adapter log we see an error executing the OS command, but we don't know what is the error, there is no more information.
    There is any way to do this or maybe we have to manage in a different way?
    Many thanks in advance.

  • Run Operating Systems command.

    Hi Experts,
    Please provide information on Run Operating Systems commands for File adapter.
    I have gone through t he below mentioned link already:
    Also , please provide links for OS commands whch can be used for windows OS.

    Hi Neha,
    pls do chk this linkfor windows OS commands
    An interesting usage of Variable Substitution in XI
    Solution to the problem encountered using Variable Substitution with XI-SP12
    Copy a file with same filename using XI
    Edited by: venkata sampath on Jul 8, 2008 7:20 AM

  • Run Operating System Commands

    There is an urgent requirement, i want to know about Run Operating System Commands in file adapter. What are all possible commands for windows operating system? and how it works? Kindly send me your suggestions and links at the earliest.
    Your help will be appreciated.

    Run Operating System Command Before/After Message Processing
    &#9679;      Command Line
    An operating system command specified here is executed before or after the message processing of a file that was found in a run. The default value is an empty character string (no command).
    When the operating system command is called, the file name currently being processed can be specified with the following placeholders:
    &#9679;        %f (file name)
    &#9679;        %F(absolute file name including path)
    &#9679;      Timeout (secs)
    This specifies the maximum runtime of the executing program in seconds. When this time interval is exceeded, the adapter continues processing. The executing program continues to run in the background.
    &#9679;      Terminate Program After Timeout
    Set this indicator if the adapter is to terminate the executing program when the timeout is exceeded.
    The adapter writes the output (STDOUT and STDERR) for the operating system command in the system trace.

  • Execute external operating system command

    Hi Friends,
    I have a requirement to run a script file with extention '.PL' on the application server using ABAP.
    i have sample how to run it in XI.
    XI3.0 provides a very simple way of handling this using the "Operating System Command" in the File Adapter.
    I post my output file in the following folder,
    The shell script is available in the following path,
    The figure below explains as to how we call the shell script using "Operating System Command".
    File Acess parameters
          Target Directory      = /usr/sap/sapout/test/
          File Name Scheme = TestOutput.txt
    Processing Parameters
         File Construction Mode          = Add Time Stamp
         File Type                              = Binary
         Operating System Command = /usr/sap/bin/convert.pl %F
    I have to do the same thing in ABAP as it has been done for XI as mentioned in the above example.
    My operating system is UNIX.
    If any one can give me a sample it would be really helpful to me.
    Thanks in advance,

    Hi Arundhati,
    You can run operating system commands from ABAP.
    e.g. If you want to change UNIX right for any file, you can use following code.
    lv_ucomm  = 'chmod a+rwx 123.txt'.
    whatever command you provide in Field parameter ( lv_ucomm in the above case ), ABAP run that command at operating system level.
    In your case, you can provide command in lv_ucomm to run script at operating system level.
    Hope it will help you.

  • File Receiver Adapter:Run Operating System COmmand after message Processig:

    Dear All,
    I have gone through this link
    But i have a problem.
    In the scenario which we have, File name is DYNAMICALLY GENERATED by a UDF
    I want to call the file at run time after message processing via Command Line and execute some os commands.
    But since the file name is Dynamic....How will i call the file at run time in Command Line:
    SYNTAX: %f(FileName)
    How will i specify the file name in the above syntax as the file name is Dynamic and not constatnt.
    Please Advice.

    Dear All,
    Yes just now i got the answer from this thread[OS command line script - Need help;
    Actually i have another doubt now
    when we give Run Operating system Command After Message processing
    does the OS command get executed after the output file is placed in the Receiver folder/server or before its placed in the receiver folder?

  • File Adapter 7.11 - set operating system command line dynamically

    is there any way to set the "Operating System Command Line" in the file adapter as ASMA / dynamic attribute?
    I need to set  a command line exec depending on some XSL mapping values.

    >>>is there any way to set the "Operating System Command Line" in the file adapter as ASMA / dynamic attribute?
    >>>I need to set a command line exec depending on some XSL mapping values.
    think about this approach:
    you put the XSL values into the filename after the real name of the file
    in the batch script you use those values in order to execute a dynamic exe command
    after processing you just change the name of the file in the script by removing the xsl values
    simple ? I think so
    Michal Krawczyk

  • File adapter operating system command exit code

    If you call an operating system command in the file adapter, how is the exit code of the command handled? The documentation says nothing about this.
    If I call 'true', I expect the file adapter to succeed.
    If I call 'false', I expect the file adapter to fail.
    Hope someone can calrify.
    Best regards
    /Otto Frost

    Hi, Yes, you are rigth, it spawns a subprocess, that runs without control.
    In java you use Runtime.exec().
    It returns a process.
    process.exitValue() returns an int.
    The process is already used to terminate the process after timeout I suppose.
    You would like to be able to have the fileadapter succeed or fail depending on this exitValue.
    Depending on the command you execute, the exit code is different. RTFM on unix.
    You would like to define which codes should be treated as success, and which ones that should be treated as failure.
    true typically returns 0 and false not 0
    However, a comparison command could for example return 0 for equal, -1 if the frist argument is smaller and 1 if the first argument is larger.
    For the diff command, Exit status is 0 if inputs are the same, 1 if different, 2 if trouble.

  • External command is not working in File Receiver Adapter

       I have tried to copy the file which is mentioned in my File Adapter (Receiver) to 3 different folders thru OS command. The purpose is to save time. I have created one CC for Source(File) and one CC for target(File). After the target file is created, I want to copy this file in 3 folders. For this I have written one batch file in my system.
    File Name: copy1.bat
    COPY %1 C:\TEST1\arch_t1
    COPY %1 C:\TEST2\arch_t2 
    COPY %1 C:\TEST3\arch_t3
    DEL %1
    The command which I entered in the Receiver CC (File Adatper is)
    Run Operating System Command After Message Processing
    Command Line: C:\FILES\copy1.bat %F %f
    Timeout(secs): 60
    Terminate Program After Timeout - Check box is selected.
    But, this external command is not working. (because the target files are not created in those directories C:\TEST1, C:\TEST2, C:\TEST3)
       I did this scenario by refering the Michael'w weblog:
       In this blog, he has also given how to troubleshoot external command. I tried this also. It is not working.
        I use Windows XP OS. XI 3.0 SP 18.
       Friends, Could you kindly tell why this external command is not working? What could be the problem?
    Thanks in advance.
    Kind Regards,
    Jeg P.

    Hi, Jeg.
    As the note says, please check the java Runtime.exec behavior
    with the proper user.
    If in doubt, check if the command can be successfully run through
    the Java Runtime.exec(...) API. Also note that the command is run
    as user "<sid>adm" (Unix) / "SAPService<SID>" (Windows).
    So, Could you check the following(very dirty one!) Java in your
    XI server and check if it works? For simulating %F, create a test
    file C:\FILES\test.txt whatever the content is.
    import java.util.*;
    import java.io.*;
    public class ExecJava {
      public static void main(String args[]) {
        try {           
          Runtime rt = Runtime.getRuntime();
          Process proc = rt.exec("C:/FILES/copy1.bat C:
        } catch (Exception e) {
    Good Luck.

  • Operating  System commands in FTP adapter

    I have a requirement to use "Operating System Command" option in the Sender/Receiver side File Adapter.
    And in help.sap.com they have brief notes on this.
    When I tried to execute some valid DOS commands like MKDIR,RENAME etc it didn't work at all.
    But process has been sucessfully completed without any error!!!
    System : XI 3.0 SP 11
    Can anyone has any inputs on this ? Pls share me some ideas with example. Is there is any limitations on this feature?
    Note: When I tried to give invalid commands hfjkhfkasdjfh,asdjdhas etc, still it is not giving any error!!. Still my File Adapter as well as entire process is successfully completed.

    A couple of cautionary notes.
    The OS command is executed after the file has been processed, e.g. read successfully by a sender adapter or created successfully by a receiver adapter.
    The file name processed can be accessed using %f in the OS command.
    The OS command must include the full directory path, or XI will assume the current directory which may not be where your command resides.

  • File receive adapter command line error handling

    This is our requirement - After the file receive adapter, we need to run a script. Based on the return code of the script, we need to handle the error handling of the interface (i.e. send an email about the error).
    I have looked at the operating system command line in the file adapter. How does XI handle return codes for the command line? If the command line has a error return code, how to send an email from XI?
    If anyone has ideas on this topic, please respond!!

    I don't think so, it is possible directly. You can not get the Response back to XI pipeline from the shell script.
    But you can think, if you are able to call this from Mapping.
    And one more option is using Transport Acknowledgement ( with BPM) if the file is not able to write into the target directory you can raise an alert-
    Blog on this-

Maybe you are looking for