File Adapter - Sort Input file

Hi There,
   I am trying to process the file I receive in XI for an external system ( Flat File) .
I need to sort the file and then add de-limiters.
Do I do this in the adapter or in during mapping.
Any help is appreciated.

Hi,
<i>This file has many records. Several accounting documents are embedded in it.</i>
>>>SO you need to sort these records right ?
So it is a flat file.
1) first of all you need to pick the file. So as you told file is a flat file right ? What is the delimter for the incoming file ? Based on this , you need to convert this flat file into field details with file content conversion option available in the Sender File Adapter configuration
2) Now you need to sort the records. This you can do in the Mapping.
3) If you want to send mulitple files into your Target system, you can do this in the XI with mapping and Receiver determination.
To feel about flat file scenario in XI-
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
Regards,
Moorthy

Similar Messages

  • File Adapter not writing file when processed from one node in a clustered environment

    In our environment, we have 4 server nodes running. We are using a file adapter to write file to a location in the server. the adapter is writing files when its processing data in all nodes except one.
    Below is the JCA File
    <connection-factory location="eis/FileAdapter" adapterRef=""/>
    <endpoint-interaction portType="Write_ptt" operation="Write">
    <interaction-spec className="oracle.tip.adapter.file.outbound.FileInteractionSpec">
    <property name="PhysicalDirectory" value="/data/prd"/>
    <property name="FileNamingConvention" value="Sample.dat"/>
    <property name="Append" value="true"/>
    </interaction-spec>
    </endpoint-interaction>
    the File Adapter health is running OK. What would be the potential cause

    In our environment, we have 4 server nodes running. We are using a file adapter to write file to a location in the server. the adapter is writing files when its processing data in all nodes except one.
    Below is the JCA File
    <connection-factory location="eis/FileAdapter" adapterRef=""/>
    <endpoint-interaction portType="Write_ptt" operation="Write">
    <interaction-spec className="oracle.tip.adapter.file.outbound.FileInteractionSpec">
    <property name="PhysicalDirectory" value="/data/prd"/>
    <property name="FileNamingConvention" value="Sample.dat"/>
    <property name="Append" value="true"/>
    </interaction-spec>
    </endpoint-interaction>
    the File Adapter health is running OK. What would be the potential cause

  • File adapter with empty files!

    Hi guys,
    My scenario is: File -> XI (BPM) -> JDBC
    Under BPM I have a fork with two parallel receivers correlated and two sender file adapters for that. Those senders also have file conversion (.seq file to XML).
    My problem is: in case of files coming empty, is it possible that senders file adapter generates error during file conversion? And/or generates errors during correlations?
    If so, "I wouldn’t like", because after receive these two files I have a switch to check if the file(s) coming empty and a control step to terminate the process in case of true. But this only works if no errors have occurred on the earlier steps!
    At this moment I can’t test it, so I’m asking If anyone has faced an issue like this one?
    Thanks in advance,
    Ricardo.

    Hi,
    Which SP are you on?
    Before Sp19 on XI 3.0 and SP10 on Pi, Empty Files are ignored by XI. The file adapter picks the file and if it is a empty file ( a zero byets file ) the file does not create a message at all for the file.
    From Sp19, the file adapter has options that allow you to decide how to process the empty file. You can create an error message etc.
    Regards
    Bhavesh

  • File Adapter not processing Files which has COMMA in it

    Hi Experts,
    I am working on Project in SOA 11.1.1.6.
    I am trying to process a file which has comma in it. for eg - XXXXXXX-XX_XX_XXX11,99.pdf
    I am picking the file using file adapter from SOURCE directory and using another file adapter to WRITE to destination directory. Polling processing is working fine.
    I am picking the file from SOURCE directory as ATTACHMENT and WRITING to DESTINATION folder through File Adapter
    While doing file WRITE its failing. While reading the file the values of Content Type, Character Set and Encoding are NULL for the ATTACHMENT as they are optional properties.
    The error I am getting while File WRITE is
    <remoteFault>
    <part name="summary">
    <summary>java.lang.RuntimeException: Failed to decode properties string att.encoding=null,att.charset=null,att.contentId=AReadFile/XXXXXXXX_XX_XXX11,99.pdf_1352184009640,att.contentType=null,att.partName=attach</summary>
    </part>
    <part name="detail">
    <detail>1</detail>
    </part>
    </remoteFault>

    Comma is usually treated as a separator/delimiter and hence it is not really common to have comma in filename. I think because of this reason File adapter does not support it (have to cross-verify). If you really have a requirement to read/write files with comma in filename then better log a SR with Oracle support.
    Regards,
    Anuj

  • File adapter picking up files with wrong content

    Hello, We configured a file adapter to read *.xml files. We also defined the xsd for the files. We expected that the adapter would only pick up files that conform to the xsd. However we found that all *.xml files (even renamed jpeg's) are read. Is this intended behaviour? Or did we miss some configuration setting?
    Richard

    A short follow-up:
    To make matters worse. If I take a completely different file (like the jpeg) and rename it .xml it gets picked up by the file adpater but there is no audit trail of the BPEL process instance. The file is not archived either, so it's completely gone! If I just change one of the elements the file is read and archived. I can also have the file adapter write the file with the wrong content.
    I found a reference to a bug. (bug 5926809 or SR 6327165.994) is this related, is it solved?
    Richard

  • File Adapter : read XML file with data validation and file rejection ?

    Hello,
    In order to read a XML file with the file adapter, I have defined a XSD that I have imported to my project.
    Now the File Adapter reads the file correctly but it does not give an error when:
    - the data types are not valid. Ex: dateTime is expected in a node and a string is provided
    - the XML file has invalid attributes.
    How can I manage error handling for XML files ?
    Should I write my own Java XPath function to validate the file after is processed ? (here is an example for doing this : http://www.experts-exchange.com/Web/Web_Languages/XML/Q_21058568.html)
    Thanks.

    one option is to specify validateXML on the partnerlink (that describes the file adapter endpoint) such as shown here
    <partnerLinkBinding name="StarLoanService">
    <property name="wsdlLocation"> http://<hostname>:9700/orabpel/default/StarLoan/StarLoan?wsdl</property>
    <property name="validateXML">true</property>
    </partnerLinkBinding>
    hth clemens

  • File Adapter Stores temp file?

    I'm assuming a sender file adapter will store a copy of the retrieved file in the OS somewhere.  Does anyone know where this file would be stored and does it only exist until the adapter has completed processing of the file?

    Sorry folks I don't think I was clear in my original question.  All I want to know is when the sender file adapter connects to some remote system to retrieve a file...
    1) Does XI physically move the file to the XI box (regardless of the archive/delete/test setting) or does it simply load it in RAM?  For the adapter to be able to process the file my assumption is that it has to be loaded somewhere on the XI box.
    2) If it physically moves the file to the XI box where does it temporarily place it?
    I'm aware of the archive setting and other options for creating local copies.  I just want to know the "inner workings" of how the sender file adapter moves the files.

  • How to use File Adapter to transport files

    Hi,
    Can i use File Adapter Additional Files settings to Transfer files from one system to other without conversion?
    File Adapter's Additional Files documentation says "additional attachments require a receiver that can process them". In my case receiver is also
    File Adapter.
    Please let me know if there is any other way to achive this.
    Thanks in Advance
    Jayant

    Hi Jayant -
    Here is the link to the documentation related to this:
    http://help.sap.com/saphelp_nw04/helpdata/en/3c/b4a6490a08cd41a8c91759c3d2f401/content.htm
    Notice in "Rules for Additional Files":
    "Messages with additional attachments require a receiver that can process them."
    Currently, the receiver file adapter does not support the processing of attachments.
    Regards,
    Jin

  • File Adapter: Fixed length file read fails when all data not present

    Hi
    We have a BPEL process that reads fixed length data files. It works fine when all the data elements are available in the file but fails with 'rejected:10002' when even a single data is missing.
    How to handle this situation in BPEL file adapter?
    Are we doing something wrong or is this a normal functionality.
    If yes, then is there any work around for this as this is a very usual business condition which may occur, where all data elements are not mandetory.
    fixedLength
    ==========
    2,3,3,2
    Data - Successful
    ============
    1234567890
    2345678901
    3456789012
    Data - Failed
    ===========
    1234567890
    2345678901
    345678901
    Thanks in advance
    Buddhadev

    Hi Naveen,
          Do check the following things,
    >>Note : I have been asked to give the Transport Protocol as "NFS" (Whether this is the problem???) I have summarized the complete details below. Please help me
           1.If your file resides on your local network/local computer give NFS(Network file system). if your file resides on a FTP location give FTP and also give the FTP log on parameters.
    Additional Parameters
    File_MT.fieldFixedLengths 10,10,5
    File_MT.fieldNames VendorNumber,VendorName,City
    File_MT.fieldSeparator
    File_MT..processFieldNames fromConfiguration 
           2.If this structure does not match with the input file structure the file adapter wont pick up the file. So check for the help document provided by SAP in the following path.
    help.sap.com  --> Documentation  --> SAPNetWeaver --> SAPNetWeaver '04 --> English --> process integration --> SAP Exchange Infrastructure --> connectivity --> Adapters --> File Adapter
           Your file contains three records
    V123456789 A123456789 Bosto
    V234567890 B123456789 Atlan
    V334587900 C123456789 Austi
    You have mentioned the fieldSeperator as space but there is no File_MT.endSeparator '/n'  which differentiates between each and every row (record).
            Parameters for Record set Structures mentioned in the sender adapter configuration does not match with the actual file structure .
            Try giving exact structures in the configuration of sender file adapter.
    regards,
    Aravindh.

  • FILE ADAPTER NOT READING FILE.

    HI, GUYS.
    I'M USING A FILE ADAPTER TO READ A FILE THAT HAVE 4 REGISTERS AND EACH REGISTER ONLY HAS ONE FIELD THAT IS NUMBER TYPE.
    I CREATE THE FILE ADAPTER, AND I LET BPEL TO CREATE THE SCHEMA. THE IDE CALLS THES FIELD "C1". I ALSO CONFIGURE THAT THE FILE THAT MUST RAD IS THE PATTERN "*.TXT" AND EVERY 5 SECONDS.
    THEN A CREATE A RECEIVE ACTIVITY THAT RECEIVES WHAT WAS READ FROM THE FILE ADAPTER IN A VARIABLE.
    THEN I CREATE AN ASSIGN ACTIVITY AND I ASSIGN THE VALUE FROM THE RECEIVE ACTIVITY VARIABLE TO A NUMBER VARIABLE THAT IS THE INPUT OF A WEB SERVICE.
    THEN I DEPLOY THE BPEL, AND I INITIATE IT, BUT I GOT AN ERROR THAT SAYS THAT THE FIELD "C1" IS EMPTY. SO LOOKS LIKE THE FILE ADAPTER IS NOT READING THE FILE. I WOULD THANK ANY HELP THAT YOU CAN BRING ME.

    caps off
    You're sure the interface of the fileadapter (client partnerlink) is the same as your data-file which needs to be picked up?
    can you paste the content of the file and the content of the xsd of the process.

  • File Adapter: 2 output files

    Hello,
    we have to implement the following scenario:
    1. File Adapter gets 1 input file ('FileXXX').
    2. A File Adapter Module creates 2 different outputs from the input file
    3. The outputs must be saved in separate files with the names 'FileXXX' and 'FileXXX.par'. The order of file creating is important, e.g. FileXXX must be created first in every case.
    How to achieve this? I read the documentation for Content Conversion, but it seems not to be the right way.
       Thanks and regards, Marina

    Please see the below links for Message split ..
    /people/jin.shin/blog/2006/02/07/multi-mapping-without-bpm--yes-it146s-possible
    Illustration of Multi-Mapping and Message Split using BPM in SAP Exchange Infrastructure
    u have to use FCC and ignore 2 extra header and do your FCC as you do in normal scanario..

  • File adapter problem - xml file

    Is there a way to define in the sender file adapter the document name for a XML file?
    This is the xml file that arrives to XI,
    <?xml version="1.0" encoding="UTF-8" ?>
    <dataroot generated="">
    <Materials1>
      <CODE>FAMILY</CODE>
      <TYPE>A75</TYPE>
      <NAME_EN>LUBRICANT</NAME_EN>
      <NAME_ES>LUBRICANTES</NAME_ES>
      <NAME_DE>LUBRICANT_GERMAN</NAME_DE>
        </Materials1>
      </dataroot>
    I have to define the name of the Message Type as "dataroot" in order to avoid problems at mapping time. The problem is that I get from MDM the same structure begin each time,
    <dataroot generated="">
    Is there a way to define the XML Document Name in the Sender File Adapter?

    Hello Rob,
    FOr ""dataroot" element "generated" is the attribute.... define this attbute in the datatype as well..
    Thanks,
    Himadri

  • Receiver file adapter problem in file to file scenario

    My situation is: I created the scanrios with file adapters, using
    FTP, the sender adapter is picking up the file, but the output file
    is not been created in the path mentioned, both the adapter status
    looks green,  I have no error message in the sxmb_moni for this
    scenario. my adapter status looks as below:
      kris_scenario1_filetofile_receiverCC Receiver Adapter v2112 for
    Party '', Service 'krishna_bussystem01':
    Configured at 2006-05-28 20:14:19 EDT
    No message processing until now
      kris_scenario1_filetofile_senderCC Sender Adapter v2126 for
    Party '', Service 'krishna_bussystem01':
    Configured at 2006-05-28 20:11:35 EDT
    History:
    - 2006-05-28 20:16:25 EDT: Polling interval started. Length: 10.000 s
    - 2006-05-28 20:16:25 EDT: Processing finished successfully
    - 2006-05-28 20:16:25 EDT: Processing started
    - 2006-05-28 20:16:15 EDT: Polling interval started. Length: 10.000 s
    - 2006-05-28 20:16:15 EDT: Processing finished successfully

    Moorthy,
    as you suggested I checked in MDT, FYI I am doing without content coversion. from the below message I dont see any problem, so what could be a problem
    The sender has 'delivered' status but the receiver has 'to be delivered' status
    <b>Receiver audit log:</b>
    2006-05-29 00:07:56 Success The message was successfully received by the messaging system. Profile: XI URL:
    2006-05-29 00:07:56 Success Using connection AFW. Trying to put the message into the receive queue.
    2006-05-29 00:07:56 Success Message successfully put into the queue.
    <b>Sender audit log:</b>
    2006-05-29 00:07:54 Success Send binary file "filetofile.xml" from FTP server "xx.xx.xxx.xxx:/yyyyy", size 221 bytes with QoS EO
    2006-05-29 00:07:54 Success Application attempting to send an XI message asynchronously using connection AFW.
    2006-05-29 00:07:54 Success Trying to put the message into the send queue.
    2006-05-29 00:07:54 Success Message successfully put into the queue.
    2006-05-29 00:07:54 Success The application sent the message asynchronously using connection AFW. Returning to application.
    2006-05-29 00:07:54 Success The message was successfully retrieved from the send queue.
    2006-05-29 00:07:54 Success File "filetofile.xml" deleted after processing
    2006-05-29 00:07:54 Success The message status set to DLNG.
    2006-05-29 00:07:55 Success The message was successfully transmitted to endpoint http://host:port/sap/xi/engine?type=entry using connection AFW.
    2006-05-29 00:07:55 Success The message status set to DLVD.

  • Receiver file adapter creates empty files, Empty-Message Handling SP19

    Hello,
    We have just upgraded the system to SP19.
    One of the new features is that it should be possible to determine how XI messages with an empty main payload are to be handled in the receiver file adapter.
    If the parameter Empty-Message Handling is set to 'Ignore' no file should be created if the main payload is empty. In our case an empty file (size 0 kb) is still created even though the main payload is empty and the flag is set to 'Ignore'.
    Has anybody experienced the same problem?
    //  Best regards  Hans

    This should work:
    Use your own adapter module that parses incoming message and checks if it has any record sets in the document. If it does not have any record sets, then set the message to empty and then give this modified message to File receiver.
    For example, see the example code below:
    Module imports..
    Audit log import..
    DOM imports/SAX imports..
    public ModuleData process(ModuleContext moduleContext, ModuleData inputModuleData) throws ModuleException {
              try {
                   // get the XI message from the environment
                   Message msg = (Message) inputModuleData.getPrincipalData();
                   AuditMessageKey amk = new AuditMessageKey(msg.getMessageId(),AuditDirection.INBOUND);
                   Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS,"RemoveRootTag: Module called");
                   XMLPayload payLoad = msg.getDocument();
                   Document doc = parseXmlFile(payLoad.getInputStream());
                   if(doc != null){
                        if(!doc.getDocumentElement().hasChildNodes()){
                             Audit.addAuditLogEntry(amk, AuditLogStatus.SUCCESS, "Document is empty!!");
                             payLoad.setContent("".getBytes());
                             msg.setDocument(payLoad);
                   // provide the XI message for returning
                   inputModuleData.setPrincipalData(msg);
                   } catch (Exception e) {
                   // raise exception, when an error occurred
                   ModuleException me = new ModuleException(e);
                   throw me;
                   // return XI message
              return inputModuleData;
         private Document parseXmlFile(InputStream xmlpayload) {
              try {
                   DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
                   factory.setValidating(false);
                   //        Create the builder and parse the file
                   Document doc = factory.newDocumentBuilder().parse(xmlpayload);
                   return doc;
              } catch (SAXException e) {
              } catch (ParserConfigurationException e) {
              } catch(IOException e){
              return null;

  • File Adapter - Archive Source Files with Errors.

    Hi All,
    Could you kindly give the steps as to how to configure sender File Adapter to archive source file which result in error ?.
    Cheers,
    Kushi

    Hi Kushi,
    To configure Sender File Adapter what you can do is:
    1. Create one Communication and select the adapter as File.
    2. Select the radio button Sender.
    3. Enter the source directory e.g. /temp
    4.Enter File name e.g. xi_test.xml
    5. Under Processing parameters Chose the processing mode as "Archive" from
    drop down box.
    6. Enter the path where you wnant to archive your file.
    7. Do not forget to enter the poll intervells. e.g. 60 & Quailty of service "Exactly Once".
    8. Enter file type "Binary" if your source file is XML.
    9. Check if Adapter status as "Active".
    Note: Archiving the file is regardless of erorr in file.
    It will archive all the source file.
    Regards,
    Sarvesh
    ****Reward Points, if found helpfull.

Maybe you are looking for

  • Performance degradation since upgrade to 10.10.2

    I've been pretty happy with Yosemite until 10.10.2 - suddenly things have become extremely slow... launching applications, long response time between keyboard input and screen display on input text, tardy application launch. Any obvious clues in the

  • How to insert text from another software?

    In Photoshop, I need some text with a particular font, which Photoshop doesn't have. I can, however, make it in Word, which has that font. The question is: how do I transfer (or export) that text from Word to Photoshop?

  • DW 8 Templates in Dreamweaver CS3

    Greetings, I am currently working with a Dreamweaver template (Version 8) and I have recently installed Dreamweaver CS3 to check it out. I wanted to update several pages with the updated template in CS3, but when I tried, I got an error related to ne

  • Custom List component in Flash builder 4.5

    Hi, Am new to Flash builder 4.5. I want to create a custom list component. In that i have some queries. They are, 1. What are the basic procedures/steps to be followed for Component development in Flash builder 4.5 2. What are the approaches to the c

  • Authorizations for transactions MIR6/MIR4

    Hi All, Need help to setup a security rights for transactions MIR6/MIR4. Here is the situation: We have setup an user profiles which allow the users to access transaction mir6 (provide a list of Invoide Documents(BELNR)which will lead into transactio