Quality of service in Receiver file/ftp adapter (SAP PI 7.1)?

Hi,
    We are building an IDoc to File scenario in SAP PI 7.1, where a single incoming idoc will create three different output files. Also files must be created in target server in a specific order.
    Our first idea to ensure that files would be created following a specific order was that Message mapping (in Java) build target payload with all three files following expected sequence.
    In addition, receiver file/ftp adapter is setup with a dynamic variable to create each file with a different filename adding also timestamp.
    Testing the scenario, we see that three files are created in target server but when we sort them by creation date, it seems they don't follow always same sequence.
    Sometimes adapter creates File1, File2, File3; next time it created File2, File1, File3 and so on.
    Our problem is that files must be created always with a specific order and we cannot use BPM. Does anyone know if a receiver file/ftp adapter can be setup to create files following specific sequence (EOIO)?
    I know that sender file/ftp adapter can be setup with a quality of service, but I didn't find anything similar for Receiver file/ftp adapter.
    Suggestions will be welcome.
Kind Regards,
Aitor

Hi,
     First, thanks all of you for your quick answers. They were helpful because we learnt a new configuration setting.
     We tried your suggestions but they didn't really fix our problem.
     Finally interface has been re-designed and we will not have to apply this logic, so no issue from our side.
     However, let me continue with this topic in case that somebody else will have the same issue, then it will be able to review this thread.
     When adapter created the files in the target directory (windows server), files had the expected timestamp in each filename. However, if we sorted windows directory contents by "Date Creation", files were sorted different that timestamp shows in the filename.
     For example, adapter created following files:
File1_20090325-115117-169
File2_20090325-115117-174
File3_20090325-115117-180
     But when we sorted windows folder contents, files were sorted as follows:
File2_20090325-115117-174
File1_20090325-115117-169
File3_20090325-115117-180
     It seems that timestamp was pre-assigned by the adapter, but when adapter created the files, it did it with a temporary name and finally assigns the filename. If a file size was bigger than other, maybe it takes more time and windows creation date is higher.
     If so, it means that adapter is not following same instructions as itu2019s indicated in "maintain order at runtime" checkbox.
     Do you know if there is any way where we can push also the order in the adapter as we did in interface determination?
Regards,
Aitor

Similar Messages

  • Configuring the Receiver File/FTP Adapter !!

    Hi
    I am trying to configure the Receiver file adapter using the J2SE adapter engine(Please note , NOT the J2EE adapter engine).I see a prerequisite for configuring as below
    "The address (HTTP port and URL) where the adapter can be contacted from the Integration Engine".
    What values are to be specified and how can they be validated ?
    I could see an example given in the Docs saying below,
    If i specify , say for example,
    "XI.httpPort=1234 and
    XI.httpService=/file/Receiver, the end point address of the file/FTP adapter in the Integration Engine must be specified as follows:
    http://<fileadapterhost>:1234/file/Receiver"
    Can anyone explain what exactly is this endpoint address and where should it be specified/referred to ?
    Thanks
    Saravana

    Hi,
    "http://<fileadapterhost>:1234/file/Receiver"
    this adress refers to an end point with the end point type "xi-connectivity" in the integration directory (ID)which refers to the settings in the file adapter (httpPort=1234 and XI.httpService=/file/Receiver)
    1. you specify these adress in the file adapter (outbound)
    2. you refer to these adress in the ID (Receiver System End points)
    every file adapter should have an own port, because you can not specify two identical ports in two fileadapters.
    hope I could help you,
    michele
    Message was edited by: Michele Mangieri
    Message was edited by: Michele Mangieri

  • How to give a dynamic File Name for Receiver File/FTP Adapter.

    Hi Experts,
        I have one scenario in which we are creating a flat file of IDOC which is coming from R/3 & sending it to FTP location. For this we have configured Receiver FTP adapter with File Name Scheme as "NT.out"  & in File Consturction mode i have given as "Add Time Stamp".
        therfore while creating a file it is creating as NTyyyyMMdd-HHmmss-SSS.out
    where as my requirement is only to to add Time & not the Date. (NThhmmss.out)
        How to do this ?
        for your info we are using ABAP Mapping.
        Pl help me
    Regards,
    Umesh

    Hi Umesh,
          Add one more field to your target structure for your file name and populate that field as per your requirement like NTyyyyMMdd.out. In receiver communication channel use Variable subtiution option and give the refrence of Payload and file construction mode set as create.
    And refer the below weblogs for Variable Subtiutuion File Name Scheme
    /people/jayakrishnan.nair/blog/2005/06/20/dynamic-file-name-using-xi-30-sp12-part--i - Dynamic File Name Part 1
    /people/jayakrishnan.nair/blog/2005/06/28/dynamic-file-namexslt-mapping-with-java-enhancement-using-xi-30-sp12-part-ii - Dynamic File Name Part 2
    Hope this way would be solve u r problem.
    Cheers
    Veera
    >>>Reward points, if it is needful

  • Receiver File/FTP Adapter

    Hi,
    I want to take in a message packet and output it to a file.
    You can dump the XML out by simply choosing the "File" message prototcol. However, I don't want the XML. I want the data. For example if the inbound interface message type is: 
    <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:MT_BalanceExtractHAPS_ForFTP xmlns:ns0="http://gcc.access.com/360ToHaps">
      - <Body>
           <Reference>PCN123456</Reference>
           <Balance>65.50</Balance>
           <BalanceSign>+</BalanceSign>
        </Body>
    </ns0:MT_BalanceExtractHAPS_ForFTP>
    I want an output file with 1 record as follows:
    PCN123456,65.50,+
    Fairly sure you have to use the FIle Content Conversion message protocol but I have a couple of questions:
    1. What do you put in File Name Scheme ?
    2. Would the following Content Conversion paramaters be used to give me comma separated output ?
    Body.fieldSeparator has a value of ","
    Body.fieldName has a value of "Reference,Balance,BalanceSign"
    Any help would be much appreciated.
    Cheers,
    PaulC.

    For File Naming Scheme, put *
    For parameters:
    .fieldSeparator = ','
    .endSeparator = u2018nlu2019
    .fieldNames     =  list of field names in each record
    All values are including quotes.

  • File/FTP adapter, outbound channel, content conversion, UTF-8 (Unicode)?

    We would like to send "delimited" files to another application (tab-delimited, CSV, ... - the other application does not support XML-based interfaces). Obviously we will have an outbound channel that uses the file/FTP adapter and the data will be subjected to "content conversion".
    The data contains names in many languages; not all of this can be represented in ISO Latin-1, much less in US-ASCII. I suppose UTF-8 would work. The question is: how is this handled by the FTP protocol? (considering that the FTP client is part of the SAP PI file/FTP adapter and the FTP server is something on the "other" machine)

    Hi Peter,
    you can maintain the file encoding in the outbound adapter. See [Configuring the Receiver File/FTP Adapter|http://help.sap.com/saphelp_nw2004s/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm]
    For your requirements "utf-8" sounds pretty fitting.
    Regards,
    Udo

  • Receiver File/FTP, SFTP, binary, endSeparator for CRLF ?

    We are planning an interface using the Receiver File/FTP Adapter, using SFTP in binary mode.
    The SAP PI runs on Unix, the other applications runs on Windows.
    Can NameA.endSeparator be used to ensure that every line in this file ends on CRLF?
    (As you know, Windows has the habit of ending lines in text files with CRLF - carriagereturn-linefeed, whereas Unix uses a singe LF - linefeed, also known as newline or nl).

    Yes it can be done with '0x0D''0x0A' value which represents the CR and LF respectively...
    which has been implemented succesfully in our interface...
    HTH
    Rajesh

  • Process TIFF file from FTP server using File/FTP adapter

    Hi,
    I have a requirement to process a scanned document TIFF file from a directory on an FTP server using the File/FTP adapter and process through XI into a Web Service via a receiver SOAP adapter.
    My question is can the file/FTP adapter be used to process the TIFF file into XI from an FTP server ? Also, what settings need to be made on the file adapter to allow this file to be processed into XI ?
    Thanks in advance
    Colin

    hi colin,
    TIFF is type of image file, it can be converted to binary using java mapping
    refer this pdf
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/10dd67dd-a42b-2a10-2785-91c40ee56c0b
    regards
    Ramesh P

  • "Message Rejection Handler" for the file/ftp adapter using fault policy

    Hi guys,
    We are trying to implement "Message Rejection Handler" for the file/ftp adapter using following fault policy configuration.
    Fault Policy:
    `````````````
    <?xml version='1.0' encoding='UTF-8'?>
    <faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy">
    <faultPolicy version="2.0.1" id="ProcessNameGenericPolicy"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Conditions>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:remoteFault">
    <condition>
    <action ref="ora-retry"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:bindingFault">
    <condition>
    <action ref="ora-rethrow-fault"/>
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="ora-retry">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-rethrow-fault"/>
    </retry>
    </Action>
    <Action id="ora-rethrow-fault">
    <rethrowFault/>
    </Action>
    <Action id="ora-human-intervention">
    <humanIntervention/>
    </Action>
    <Action id="ora-terminate">
    <abort/>
    </Action>
    </Actions>
    </faultPolicy>
    <faultPolicy version="2.0.1" id="ProcessNameHumanInterventionPolicy"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Conditions>
    <faultName xmlns:medns="http://schemas.oracle.com/mediator/faults"
    name="medns:mediatorFault">
    <condition>
    <test>contains($fault.mediatorErrorCode, "TYPE_TRANSIENT")</test>
    <action ref="ora-retry-with-intervention"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:remoteFault">
    <condition>
    <action ref="ora-retry-with-intervention"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:bindingFault">
    <condition>
    <action ref="ora-rethrow-fault"/>
    <!--<action ref="ora-retry-with-intervention"/>-->
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="ora-retry-with-intervention">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-human-intervention"/>
    </retry>
    </Action>
    <Action id="ora-retry">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-rethrow-fault"/>
    </retry>
    </Action>
    <Action id="ora-rethrow-fault">
    <rethrowFault/>
    </Action>
    <Action id="ora-human-intervention">
    <humanIntervention/>
    </Action>
    <Action id="ora-terminate">
    <abort/>
    </Action>
    </Actions>
    </faultPolicy>
    <faultPolicy version="2.0.1" id="RejectedMessages">
    <Conditions> <!-- All the fault conditions are defined here -->
    <faultName xmlns:rjm="http://schemas.oracle.com/sca/rejectedmessages" name="rjm:PartnerLinkName">
    <!-- local part of fault name should be the service name-->
    <condition>
    <action ref="writeToFile"/> <!-- action to be taken, refer to Actions section for the details of the action -->
    </condition>
    </faultName>
    </Conditions>
    <Actions> <!-- All the actions are defined here -->
    <Action id="writeToFile">
    <fileAction>
    <location>Server/Loc/path</location>
    <fileName>Rejected_AJBFile_%ID%_%TIMESTAMP%.xml</fileName>
    </fileAction>
    </Action>
    </Actions>
    </faultPolicy>
    </faultPolicies>
    Fault Binding:
    ``````````````
    <?xml version='1.0' encoding='UTF-8'?>
    <faultPolicyBindings version="2.0.1"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <composite faultPolicy="ProcessNameGenericPolicy"/>
    <service faultPolicy="RejectedMessages">
    <name>PartnerLinkName</name>
    </service>
    <reference faultPolicy="RejectedMessages">
    <name>PartnerLinkName</name>
    </reference>
    </faultPolicyBindings>
    We have SyncFileRead partner link.
    The expectation is: when the message read by SyncFileRead partner link is rejected,
    that rejected message should come to particular directory in the server.
    Could you please help us fixing this.
    TIA.

    HI..
    Have a look at this blog :
    3) Error: HTTP_RESP_STATUS_CODE_NOT_OK 401 Unauthorized
    Description: The request requires user authentication
    Possible Tips:
    u2022 Check XIAPPLUSER is having this Role -SAP_XI_APPL_SERV_USER
    u2022 If the error is in XI Adapter, then your port entry should J2EE port 5<System no>
    u2022 If the error is in Adapter Engine
    u2013then have a look into SAP note- 821026, Delete the Adapter Engine cache in transaction SXI_CACHE Goto --> Cache.
    u2022 May be wrong password for user XIISUSER
    u2022 May be wrong password for user XIAFUSER
    u2013 for this Check the Exchange Profile and transaction SU01, try to reset the password -Restart the J2EE Engine to activate changes in the Exchange Profile After doing this, you can restart the message
    Http* Errors in XI
    Thanks,
    Pooja

  • In my SOA Composite, Can I use file/FTP adapter to get the EDI X12 850

    Our requirement is to build a SOA Composite to dump all the details in a EDI X12 850 ( Purchase order ) document in to a database table. In my SOA Composite, Can I use file/FTP adapter to get the EDI X12 850 element details to map them to a base base columns.

    Drop the File Adapter to the left lane of the composite i.e., Services lane...
    Go to Step 2, give a meaningful name....
    Step 3, select "define from operation and schema"
    Step 4, select the operation type as "read"
    Step 5, select physical path and give the folder path in the "Directory for incoming files" field.,
    Step 6, select wildcards and give the expression depending on the file name it would be at run time...
    Step 7, select the polling frequency as required....
    Step 8, in the URL field, adjacent to that , select "browse for schema file" and select the XSD which you have exported from B2B Editor.
    say next and finish, you will be good to go.
    Hope this helps,
    Thanks,
    N

  • How to assign directory path of File/FTP adapter into a variable insideBPEL

    Hi,
    i need to get the directory path given to file/Ftp adapter (write/PUT) into a variable while invoking, which will be later used in some other BPEL service for processing.
    i am able to get the directory path easily using "jca.file.filename/jca.ftp.filename" in case of invokin Read\GET adapter but am struggling to get these details while invoking a file/Ftp adapter (write/PUT).
    kindly tell me is it possible to get these properties in case of file/Ftp adapter (write/PUT) !!!!
    Thanks
    Siva

    These documents may be helpful in discovering the functionality/use of variables to capture some of the file adapter properties.
    How to Manipulate SOA 11g Adapter Headers Using Oracle Mediator (Doc ID 1352248.1)
    How to Create an Outbound File with the Same Name as the Inbound File with FTP/FILE Adapter (Doc ID 745587.1)
    Hope it helps!
    Amy

  • Sender File/FTP Adapter - Matching Input to Message Type

    Hi,
    I have a sender file/ftp adapter which is using content conversion to generate an XML document from the contents of a text file. This works fine and when I go into the SXI Monitor I can see the XML document I expect:
    <ns:DN_360BalanceExtract xmlns:ns="http://xxx">
    <ns:RN_360BalanceExtract xmlns:ns="http://xxx">
    <BalanceRecord>
       <SerialNo>xx10000780</SerialNo>
       <RegNo>A1</RegNo>
       <LocationTicketIssued>ALBERT ROAD SOUTH</LocationTicketIssued>
       <DateOfOffence>2008-02-15</DateOfOffence>
       <TimeOfOffence>13:38</TimeOfOffence>
       <OffenceDescription>xxx</OffenceDescription>
       <CurrentStateOfCase>RE-OPENED; CLOSED IN ERROR</CurrentStateOfCase>
       <OutstandingBalance>70.00</OutstandingBalance>
       </BalanceRecord
    <BalanceRecord>
       <SerialNo>xx90001245</SerialNo>
       <RegNo>S849KMR</RegNo>
       <LocationTicketIssued>ALBION PLACE</LocationTicketIssued>
       <DateOfOffence>2011-03-01</DateOfOffence>
       <TimeOfOffence>10:59</TimeOfOffence>
       <OffenceDescription>xxx1</OffenceDescription>
       <CurrentStateOfCase>xxx</CurrentStateOfCase>
       <OutstandingBalance>60.00</OutstandingBalance>
    </BalanceRecord>
    </ns:RN_360BalanceExtract>
    </ns:DN_360BalanceExtract>
    Having created the XML document from a text file I now wish to use the XML as input to a web service. This will of course involve mapping the XML document to a message in the inbound interface. Question is how do  associate the XML generated with a Message Type in the outbound interface. Do I need to make sure the Document or Recordset names match that of a Message Type ?
    Cheers,
    PaulC.

    Hi Paul
    The content conversion will create a document like that if you insert DN_360BalanceExtract as Document name, "http://xxx" as namespace.
    RN_360BalanceExtract will probably be your recordset, with its namespace.
    More information about content conversion on sender file adapter:
    http://help.sap.com/saphelp_nw04/helpdata/EN/ae/d03341771b4c0de10000000a1550b0/frameset.htm
    I'm not sure what you mean by bound. If you mean that PI has to execute mapping you created for that DN_360BalanceExtract message type, you need to associate DN_360BalanceExtract to a message interface and then create all configuration objects and choose that message mapping when you create the interface determination object.
    Regards,
    Giuseppe

  • Using relative path for in file/ftp adapter

    Hi All,
    How to have a relative path for file/ ftp adapter's inbound/outbound operation?
    Example: Consider $ORA_HOME = /home/oracle --> This environment variable can be different on different machines
    i want to drop a file in to $ORA_HOME/folder1/folder2 (Or poll for a file).
    <partnerLinkBinding name="FTP">
    <property name="wsdlLocation">FTP.wsdl</property>
    <property name="out_dir" type="LogicalDirectory">What do i write here???</property>
    <property name="retryInterval">60</property>
    </partnerLinkBinding>
    if i cant configure this in partner link section or in activation agent sction, how else do i achieve this?
    i am using 10.1.3.* version.
    Thanks in advance.
    Roshan.

    You can achive it using the deployment scripts if the directory is changing on the basis of the environment
    If you want to change at run time than you can use the jca properties to set using the variables at runtime.
    Regards,
    Ajay

  • Dynamic file naming with File/FTP adapter

    Hi all,
    I have a requirement for writing files with names of the files based on a customer ID.... a dynamic name based on a value retrieved from the customer DB.
    I have already tried using the dynamic file naming suggestion in the bpel dev guide, it does not work. I followed the instructions, the process fails to compile and throws "part" and "undefined variables" errors etc.
    Has anyone succesfully used file/ftp adapter to write files with dynamic file names (using a varibale), not %SEQ% or %datetime% formats?
    Thanks,
    Hasan

    You can create a header variable that will allow you to set the outbound file name inside the process. This variable is a message type. From the type chooser select:
    Message Types
    Partner Links
    Outbound Partner Link
    Outbound wsdl
    Message Types
    Imported WSDL
    fileAdapterOutboundHeader.wsdl
    OutboundHeader_msg
    This variable will have a part filename.
    Set this part to whatever you wish your file to be named.
    Select the invoke to your outbound file/ftp partnerlink. Move to the adapters tab and select the header variable you created as the Input Header Variable.

  • SeeBurger Receiver VAN/FTP Adapter: where to mention the target path

    Hi,
    I am using SeeBurger VAN/FTP adapter for IDOC-XI-EDI scenario.
    In seeburger receiver VAN/FTP adapter, where I have to set the target path. My target path is very long (15 characters).
    I am able to configure Host, Port, User id and password.
    Please suggest where to put the path name in seeburger receiver VAN/FTP adapter.
    Thanks,
    Madan Agrawal

    HI Madan,
    Can you please tell me which VAN provider you are meant to use? It is the same question which Prateek asked above 'which protocol' without this it is hard to help dude.
    I just checked and half of them don't want you to use this field 'host path;
    Also the error is different ...
    1) Are you doing FTP or FTPS?
    2) which VAN/Protocol
    regards,

  • Performance File/FTP adapter

    Hello all,
    I've got the following problem.
    For a lot of interfaces I use the file/ftp adapter.
    One of them processes periodically a lot of files in a short time period, for example 3000 files in 20 minutes.
    This interfaces consists of 6 message types. Each message type has it's own communication channel (ftp).
    The messages are appended into one file (plain text) on the FTP server with a fixed file naam. One file for each message type.
    The processing of a lot of these files takes a lot of time, for example 90 minutes for one message.
    They are waiting a lot of time in the adapter queue (messaging system) before they are processed by the ftp adapter..
    I think this is caused by the 'append step' wthin ftp.
    Question (problem) is how I can increase the performance.
    I already know you can change (raise) the parameter 'Maximum Concurrency' in the communication channel. For example value 2 in stead of 1. Only I'm afraid this causes locking problems because the files have to be appended one by one. But I'm not sure about this.
    My questions are:
    - can I use the parameter Maximum Concurrency in this case? If yes, what value should it have to increase the performance substantially?
    - what other options do I have to increase the performance of the file/ftp adapter? (adding an extra server node is no option)
    I hope anyone can help me with this.
    Thanks
    Regards,
    Marco

    Hi Ivan,
    Sorry for my late reply I had to leave yesterday.
    Thanks a lot for your help so far!!
    I still have a question about the Maximum Concurrecy parameter in the communication channel.
    The interface appends file to one file on the FTP server.
    When I  raise this parameter (1->2) to 'activate' parallel processing then I'm afraid theere will be a locking problem, because in one interface there are now two parallel  FTP connections that append to the same file on the FTP server.
    Is this a risk or not?
    Other question: are there any guidelines on how to set the parameter Maximum Concurrency? For example technical limitations.
    Regards,
    Marco

Maybe you are looking for

  • Excessive Data from un-opened attachments on POP iPhone Mail

    Hi there, This is my first post so any help would be much appreciated. I am  having problems with the data usage on my iPhone 4S. Using the Dataman app, I have been able tp pinpoint why my data (again today) jumpes 30mb in one go. I think its to do w

  • Page rotate script not working(not allowed error security settings prevent access to this property)

    HI, I am using a script to rotate each pages in pdf file when clicking a button. I have added a script to rotate file in the rotate button's click event as a javascript.It is working in acrobat but not in adobe reader. Pleae see the script nStart = 0

  • Optical audio out & 5.1

    Hi, I wonder if the optical audio out of the ATV 2G is handling 5.1 audio signal. Thanks.

  • Dropping Signal On xbox

    I have a WRT160n wireless router, hooked up to 2 laptops(wireless) 1 disktop (My computers do not lose thier connection), and I use VOIP.  The phone adapter is a Linksys spa2102 and the modem is a ADSL2x Bridge/Router, I believe its made by Zone. My

  • Trex: Unable to find name server

    We are in process of upgrading our portals from EP6sp2 to EP6SP9 and we have trex 6.0 server. Recently we have upgraded our dev portal to EP6SP9 and trying to configure trex fails. I have specified name server in J2EE engine but still I cant create i