Reading Multiple lines using File Adapter in PI 7.1

Hi Friends,
We are using PI 7.1 Service pack 4, scenario is File to IDOC .
I am using  Sender File Adapter with File content conversion for fixed lengths to read file from FTP XI-SAP.
   File Format :
  EDI_DC40 , A, B, C, D, E
  E1WPU01, F, G,H, I
  E1WPU02 , J,K,L
  E1WPU02 , J,K,L
I have maintained Fcc parameters . I am able to read files for mulitple rows when manually set the count in recorset structure
like :
Recordset Structure : EDI_DC40,1, E1WPU01,1, E1WPU02,2...
Problem is when I set * in  Recorset Structure  : EDI_DC40,1, E1WPU01,,E1WPU02,
Nothing is coming .
Could anyone help me how to resolve this issue.
Regards,
Vijay

Hi Vijay,
As u mentioned in earlier post...
keyfieldName = TABNAM
EDI_DC40.fieldNames :
EDI_DC40. fieldFixedLengths:
EDI_DC40.keyFieldValue :
E1WPU01.fieldNames :
E1WPU01.fieldFixedLengths:
E1WPU01.keyFieldValue
E1WPU02.fieldNames :
E1WPU02.fieldFixedLengths:
E1WPU02.keyFieldValue
Here actually you are trying to get the key field value even from EDI_DC40 and E1WPU01 also....
So obviously u dnt have those values in that rows so.. it cannot get the rows....
So please u try this one..... The same FCC but remove the 2 lines.... for EDI_DC40 and  E1WPU01
keyfieldName = TABNAM
EDI_DC40.fieldNames :
EDI_DC40. fieldFixedLengths:
E1WPU01.fieldNames :
E1WPU01.fieldFixedLengths:
E1WPU02.fieldNames :
E1WPU02.fieldFixedLengths:
E1WPU02.keyFieldValue
I hope this wil solve ur problem..
Lemme know if any issues...
Thanks & Regards,
H.L.Babu

Similar Messages

  • File Read and Write using File Adapter in Bpel

    In Bpel Process i am using File Adapter ( Schema is Opaque) for read and write the file contents. i am able do successful deployment and read, write function in first time deployment, after that again i tired to run the application, its not going to write the content of file, its only writing the file with out data's or content in that file.
    Please help me...
    Saravanan

    Hi Eric
    In my domain.log file having the following details. In this file im unable to find out what the exact problem. Please look at this and help me.
    <2008-01-22 18:25:42,024> <INFO> <default.collaxa.cube.compiler> validating "C:\product\10.1.3.1\OracleAS_1\bpel\domains\default\tmp\.bpel_BPELProcess2_1.1_298e83988d77b6640c33dfeec11ed31b.tmp\BPELProcess2.bpel" ...
    <2008-01-22 18:25:49,850> <INFO> <default.collaxa.cube.engine.deployment> <CubeProcessFactory::generateProcessClass>
    Process "BPELProcess2" (revision "1.1") successfully compiled.
    <2008-01-22 18:25:49,914> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Loading JCAActivationAgent for {portType=Read_ptt}
    <2008-01-22 18:25:49,914> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::load - Locating Adapter Framework instance: OraBPEL
    <2008-01-22 18:25:49,930> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::load - Done loading JCAActivationAgent for processId='bpel://localhost/default/BPELProcess2~1.1/
    <2008-01-22 18:25:49,930> <INFO> <default.collaxa.cube.engine.deployment> Process "BPELProcess2" (revision "1.1") successfully loaded.
    <2008-01-22 18:26:02,698> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::uninit Shutting down the JCA activation agent, processId='bpel://localhost/default/BPELProcess2~1.0/', activation properties={portType=Read_ptt}
    <2008-01-22 18:26:02,698> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - performing endpointDeactivation for portType=Read_ptt, operation=Read
    <2008-01-22 18:26:02,698> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Endpoint De-activation called in adapter for endpoint : D:\MAXIMUS_Project_Softwares\jdevstudiobase10132\jdev\mywork\MyLabs\BPELProcess2\in
    <2008-01-22 18:26:02,698> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::init - Initializing the JCA activation agent, processId='bpel://localhost/default/BPELProcess2~1.1/
    <2008-01-22 18:26:02,698> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::initiateInboundJcaEndpoint - Creating and initializing inbound JCA endpoint for:
    process='bpel://localhost/default/BPELProcess2~1.1/'
    domain='default'
    WSDL location='rd.wsdl'
    portType='Read_ptt'
    operation='Read'
    activation properties={portType=Read_ptt}
    <2008-01-22 18:26:02,698> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - endpointActivation for portType=Read_ptt, operation=Read
    <2008-01-22 18:26:02,730> <INFO> <default.collaxa.cube.activation> <File Adapter::Inbound> Endpoint Activation called in File Adapter for endpoint: D:\MAXIMUS_Project_Softwares\jdevstudiobase10132\jdev\mywork\MyLabs\BPELProcess2\in
    <2008-01-22 18:26:02,730> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - successfully completed endpointActivation for portType=Read_ptt, operation=Read
    <2008-01-22 18:26:02,890> <WARN> <default.collaxa.cube.activation> <File Adapter::Inbound> PollWork::run exiting, Worker thread will die
    <2008-01-22 18:26:04,171> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Managed Connection Created
    <2008-01-22 18:26:04,171> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> Connection Created
    <2008-01-22 18:26:04,171> <INFO> <default.collaxa.cube.ws> <File Adapter::Outbound> FileInteraction Created

  • How to read multiple lines using 'REUSE_ALV_GRID_DISPLAY'

    Hi,
    In ALV report the FM 'REUSE_ALV_GRID_DISPLAY' used.
    EXPORTING
    I_CALLBACK_PROGRAM = W_REPID
    I_CALLBACK_PF_STATUS_SET = 'PF_STATUS'
    I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
    How to read multiple lines in the following dynamic subroutine ?
    I am able to read single value through p_selfld.
    Nut the requirement is to change the values in more than 1 row for a fld (edit mode)
    FORM USER_COMMAND USING P_UCOMM TYPE SY-UCOMM
    P_SELFLD TYPE SLIS_SELFIELD.
    endform
    Thanks in advance

    You can get the reference by a dirty assign, but this is not offcially supported...
    But if you have some limitations.
    FORM user_command  USING fuw_ucomm LIKE sy-ucomm
                                       fuw_selfield TYPE slis_selfield.
      FIELD-SYMBOLS: <lfs_grid>  type ref to cl_gui_alv_grid,
                                   <lfs_row> type LVC_S_ROW.
      data: li_rows type lvc_t_row.
          assign ('(SAPLSLVC_FULLSCREEN)GT_GRID-GRID') to <lfs_grid>.
          check sy-subrc is initial.
          call method <lfs_grid>->get_selected_rows
            IMPORTING
              et_index_rows = li_rows.
    endform.                    "user_command

  • How to read an excel file which contains multiple tabs using File adapter

    Hi BPEL gurus,
    I have a requirement where i need to read an EXCEL file, which has three tabs inside the file. All the three tabs has data in it. I have seen few examples where file adapter reads an excel file with data present inside a single tab but not with multiple tabs.
    If anyone has worked on this scenario, please provide your suggestions/inputs/links etc.
    Thanks in advance

    hi Sathish,
    this might help
    PI/XI: Reading MS Excel's XLSX and XLSM files with standard PI modules - easily...
    thanks and regards,
    Praveen T

  • Multiple lines in File adapter

    Hi Friends ,
    I am using a file to Idoc scenerio,I had to write the tdline field , which is multiple lines in idoc to a field in file .
    My file structre is simple :  No hierchries in the fields . Assume f is long text field .
    I have defined field f as 0:unbounded .
    In content conversion parameters :
    Recordset :  row, *
    My structure is :
    a
    b
      row
       e
       f(long text field)
       g
       h
    Now what happens is , if the TDLINE has multiple lines , the the data in file appears with Pipe seperator .
    In my case , I have used Pipe as field seperator .
    Please suggest .
    Chan

    Hi Vijay,
    As u mentioned in earlier post...
    keyfieldName = TABNAM
    EDI_DC40.fieldNames :
    EDI_DC40. fieldFixedLengths:
    EDI_DC40.keyFieldValue :
    E1WPU01.fieldNames :
    E1WPU01.fieldFixedLengths:
    E1WPU01.keyFieldValue
    E1WPU02.fieldNames :
    E1WPU02.fieldFixedLengths:
    E1WPU02.keyFieldValue
    Here actually you are trying to get the key field value even from EDI_DC40 and E1WPU01 also....
    So obviously u dnt have those values in that rows so.. it cannot get the rows....
    So please u try this one..... The same FCC but remove the 2 lines.... for EDI_DC40 and  E1WPU01
    keyfieldName = TABNAM
    EDI_DC40.fieldNames :
    EDI_DC40. fieldFixedLengths:
    E1WPU01.fieldNames :
    E1WPU01.fieldFixedLengths:
    E1WPU02.fieldNames :
    E1WPU02.fieldFixedLengths:
    E1WPU02.keyFieldValue
    I hope this wil solve ur problem..
    Lemme know if any issues...
    Thanks & Regards,
    H.L.Babu

  • How can I get file from multiple instance using file adapter

    Hi.
    Our system(PI7.1) have three application instances running with each physical servers.
    We use sender file adapter.
    The file data is sent to one of the servers.
    Now, how can I get the file using three file adater?
    Should I put the file "sapmnt(\usr\sap)" .
    Or are there another solution?
    regards,

    Hi Ashutosh
    You will have to use sapcar.zip which contains the utility Sapcar.exe utility for unzipping the files from SAP compressed files. (*.car file)
    Regards
    Gaurav
    PS: Reward points if solved

  • How to post multiple message using file adapter in XI2.0

    We have to post multiple IDOCS.We have scenario as below.
    We will have file structure like as shown below.
    VKORG,VTWEG,SPART,BSART,PARVW,PARTNER,BSTDK,MATNR,MENGE,VSART,BSTZD,POLINE,BSARK
    BE10;10;10;OR;SP;1000033;;M184-ISS01;2;G;131;0002;
    BE10;10;10;OR;SP;1000033;;M184-ISS01;2;G;131;0002;
    BE30;10;10;OR;SP;1000033;;M184-ISS01;2;G;131;0002;
    For this we want that 2
    messages should be created.In first message there will be first 2 records
    with VKORG BE10 and in second message there will be last record with VKORG BE30.
    We can do it through FILE2XMBWITHSTRUCTURECONVERSION and using some options.
    I am sending the configuration that I have done for my adapter.
    classname=com.sap.aii.messaging.adapter.ModuleFile2XMB
    mode=FILE2XMBWITHSTRUCTURECONVERSION
    #mode=FILE2XMB
    XMB.TargetURL=http://20.60.53.36:8000/sap/xi/engine?type=entry
    XMB.ReceiverBusinessSystem=sapdev210
    #XMB.ContentKind=B
    XMB.ContentKind=T
    #XMB.ContentType=application/xml
    XMB.ContentType=text/xml
    #XMB.ContentType=text/plain
    XMB.QualityOfService=EO
    ##xml conversion properties if mode FILE2XMBWITHROWCONVERSION specified (example, see docu)
    xml.recordsetStructure=IDOC,*
    xml.recordsetName=SALESDATA
    xml.recordsetsPerMessage=1
    xml.documentName=SALESDATA
    #xml.fieldFixedLengths=
    xml.IDOC.processFieldNames=fromConfiguration
    xml.IDOC.fieldNames=VKORG,VTWEG,SPART,BSART,PARVW,PARTNER,BSTDK,MATNR,MENGE,VSART,BSTZD,POLINE,BSARK
    xml.keyFieldName=VKORG
    xml.keyFieldType=CaseSensitiveString
    xml.IDOC.keyFieldValue=BE10.
    xml.IDOC.fieldSeparator= ;
    What I have tried is hardcoding 2 in  xml.recordsetStructure=IDOC,2.It works fine
    Since I already knew this.
    Butin real scenario we wont be knowing this that is why I have given * in configuration , and
    given
    xml.keyFieldName=VKORG
    xml.keyFieldType=CaseSensitiveString
    xml.IDOC.keyFieldValue=BE10.
    With this it should identify on key field and its value and put first 2 records in one message
    and last record in second message.
    It is not giving any error when we start adapter but no XML message is created.Can u plz help me
    for the above problem.
    My datatype in repository is like
    SALESDATA
        IDOC
             VKORG
             VTWEG
    and allother remaining fields.
    Is this scenario possible in XI 2.0.If yes then will it  be done through above approach or something else.
    Thanx.
    Rekha.

    Hi,
    I think you can not handle this problem with keyFieldName/keyFieldValue.
    In my opinion with keyFieldName/keyFieldValue you can create different substructures of the same XML, but you can not seperate messages with the same substructure.
    But I don't know how to handle your problem ;-(
    Another point is that I see a dot after xml.IDOC.keyFieldValue=BE10.
    My be this is a problem too.
    Christoph

  • How to change read-directory when using file adapter

    Hi, I'm deploying BPEL process to read files from a directory. I want to change the directory where to read dynamically. This can be achieved by using a file header variable. I know how to do this. But, the problem for me is that I can not find a place to assign this file header variable a correct value. The first step in my BPEL process is the receive-step and this has to be the first step. I wanted to place the assign-step before this step but this makes the BPEL process invalid. First step has to be a receive or a pick-step. So, now I have a dilemma! Anyone an advice on this?
    Thanks in advance.

    Maybe you can use this information :
    http://otndnld.oracle.co.jp/document/products/as10g/1012/doc_v3/integrate.1012/B14448-01/html/app_trblshoot.htm
    A.3.3 Common User Errors explains something about the fileheader messages

  • How to read MS-Excel file by using file Adapter

    hi friends,
    I have an issue on read Operation by using file Adapter.
    It is necessary to read excel file by using file adapter. But in the native format of file adapter there is no option to read excel type of files.
    So friends, please help me how to solve this problem?
    Thanks in Advance..

    See also this post:
    Read Excel File Using FileAdapter in SOA 11g
    It might help you

  • Multiple message through FIle Adapter using XI 2.0

    I have scenario to create multiple message using File adapter .My file structure will be like
    EMPID     NAME     SKILLS
    001     A      ABAP
    001     A      XI
    002     B      JAVA
    Now I want to post first 2 records in one message and last record in other message.
    Can we do it in XI 2.0.Any help appreciated

    Hi Suraj.
    Thank you very mutch for your reply.
    Excuse me...my mapping is done for message type and idoc.
    My problem is that when the interface start, on the sxmb_moni I see an error like this:
    Creating Java mapping com.sap.xi.tf._MM_XmlOrderToIdocMapping_ --- Using MappingResolver with context URL //srvsapdev/sapmnt/CX1/SYS/global/xi/mapping/gestione_magazzini/7fa9c9e15a7811dab710f3e3ac10826e/ --- Load of com/sap/xi/tf/_MM_XmlOrderToIdocMapping_.class from //srvsapdev/sapmnt/CX1/SYS/global/xi/mapping/gestione_magazzini/7fa9c9e15a7811dab710f3e3ac10826e failed. --- Class not found: com.sap.xi.tf._MM_XmlOrderToIdocMapping_ --- java.lang.ClassNotFoundException at RUMappingJava.load(): Could not load class: com.sap.xi.tf._MM_XmlOrderToIdocMapping_ Class not found: com.sap.xi.tf._MM_XmlOrderToIdocMapping_ --- com.sap.aii.ibrun.server.map.MappingRuntimeException: at com.sap.aii.ibrun.server.map.MappingRuntimeException.code_STYLESHEET_OR_CLASS_NOT_FOUND
    ..where 'gestione_magazzini' is my namespace and 'MM_XmlOrderToIdocMapping' is my message mapping.
    Can you help me to undestand the problem?
    Thanks,
    Gianluca

  • Reading Multiple lines in a file Using File Adapter

    Hi All,
    Iam new to this technology.How to read multiple lines in a file using file adapter.Brief me with the methodology.

    I didn't look at anything else but if you want to write more than one line ever to your file you should change this
    out = new FileOutputStream("Calculation.log");to this...
    out = new FileOutputStream("Calculation.log",true);A quick look at the API reveals the follow constructor FileOutputStream(File file, boolean append) append means should I add on the end of the file or over-write what is there.
    By default you over-write. So in our case we say true instead which says add on to what is there.
    At the end of that little snippet you shoudl be closing that stream as well.
    So where you have
    p.close();You should have
    p.close();
    out.close();

  • Remove Line feed at the end of the file while using file adapter

    Hi All,
    I have a requirement. We are sending a file from SAP to FTP using file adapter. we are successful in sending the file to FTP but at the end of the file a extra blank line is created .
    Can anyone please suggest how to remove the extra line feed at the end of the file.
    Thanks and Regards,
    LRK.

    check this:
    http://help.sap.com/saphelp_nw04/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/frameset.htm
    To define an additional string as a separator after the last column in a row, specify it here. The system skips this string when it processes the last column (otherwise the system would treat it as part of the last column).
    Also there are solved threads which deal with same problem....you can even check them out...
    regards,
    Abhishek.

  • How to read a incorrect XML file using file adapter

    Hi',
    I have a XML file which is incorrect,
    example
    <?xml version='1.0' encoding='UTF'?>
    <emp>
    <empid>100</empid>
    <empname123>yatan</empname>
    </emp>
    now we can see that the XML data *<empname123>yatan</empname>* is incorrect,
    so if we have to read this type of XML in BPEL is it possible to read it or can we read it with some work around
    I have tried one way to achieve this,
    I read this XML with file adapter opaque read operation, and inside the BPEL process used Base64Decoder (Java embedding) to decode the
    opaque data to XML, it works to some extend. I am able to see the only the data like,
    100 yatan
    If I read a correct XML with same approach the data is a complete XML like,
    <?xml version='1.0' encoding='UTF-8' ?>
    <emp>
    <empid>100</empid>
    <empname>yatan</empname>
    </emp>
    can some one advice me how to achieve this, or some one has done this before
    thanks
    Yatan

    What initially I have thought is,
    once a incorrect file comes in this failed directory, some BPEL process should get invoked and feed the data to user, for this I thought of designing a BPEL process which will poll this failed directory, so for this we will need a empty BPEL process which will pick the file and then pass the data, the issue is I need to use here a opaque read and I dont know how to convert back the opaque (faulty XML) back to string.
    I have already tried to convert the opaque to XML using java embedding but for faulted XML only the data comes back in the form of string, where as need the complete XML back, can you suggest how to do this.
    thanks
    Yatan

  • Is it possible to read the file using File Adapter which is in client machi

    Is it possible to read the file using file Adapter which is in client machine(on the same network).Then what is thee need of FTP Adapter?

    You can achieve that by exposing your client machine as a drive, then you can go using file adapter.
    FTP adapter will help you to communicate with different machine which is in different network.
    It is considered good etiquette to reward answerers with points (as "helpful" - 5 pts - or "correct" - 10pts).
    Thanks,
    Vijay

  • How to get the read input file name in bpel process using File Adapter.

    Hi,
    I am reading a .txt file from configured directory using File Adapter.
    I had configured file adapter to read file with naming pattern “SalesOrder.*\.txt”.
    Now I had requirement to access the actual file name in bpel process eg: “SalesOrder123.txt”
    How can I get the file name in bpel process.
    Any help is appreciated.
    Vidya.

    1) create a variable of message type. Click on Browse Message type. Here you select Message Type-->Project WSDL Files -->fileAdapterInboundHeader-->Message Types-->Inboundheader_msg. Then click OK
    2)Next dbl Click on teh receive Activity which is receing your File from teh File Adapter. Go to the Adapter Tab. Click on Browse variable and select the variable that you had just created above.
    This would get the File name in the variable declared

Maybe you are looking for

  • Inserting password for airport base graphite network

    I have an iBook G3 500 of seven years vintage, and recently bought an airport card and a graphite airport base on eBay. It's working fine as a domestic network, but it has simply the name of the person who sold me the airport base as its name, and no

  • Measuring Point

    Dear All, We are created Counter for air consumption in that mentioned counter over floew reading 99999999.We are not planning any maintenance paln againtst this counter. we start punching readings like, Our last counter reading before uploading into

  • How to start Windows 7 in safe mode with bootcamp?

    So my computer had a crash this afternoon in Win7 (it happened before, but still...) and tried to reboot my MBP. I pressed Alt, selected my Win7 partition, and that was it... No Safe mode selection screen, no Windows Logo showing it's booting properl

  • HT5868 So how do I "untrust" a trusted computer that I accidentally trusted but still want to use for charging?

    I see that "Trust" a computer on iOS7 is indefinite (learned). How do I undo that on a computer that I want to use for charging but do not want to trust?

  • Agile PLM EBS Integration

    Hello All, Is there any document available which speaks about E-Business Suite integration with Agile PLM. Thanks, Kannan B