Skip to Content
author's profile photo
Former Member

Scenario

Hello All,

I have a scenario in which an incoming file(fixed file ASCII file). The file has tags which define whether the record is a new one(in create mode) or changes for updation. I am reading the file into XI using file adapter and thinking about using Java mapping to split the each records based on the fixed length [field1 (0-8(position of field in file), field2 (9-14)]...But in proxy is it possible to read a record split it into diff fields based on length and do some mapping transformation on them before posting in R/3??? This is something like splitting each record by its various fields..something like loading an internal table..Using proxy is it possile to define structres and load each record and validate them??

I know BPM can be used but that would be too complex for my scenario...

Any ideas guys..

-Teresa

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

2 Answers

  • author's profile photo
    Former Member
    Posted on Feb 21, 2005 at 08:22 PM

    Hi Teresa,

    your posting was not clear to me. But you can use the file adapter to create a xml structure from a fixed field length file. Then you can use any kind of mapping. You can also specify the number of records for each message. The file adapter will do the message split. It should also be possible, to read each line into one tag and send this to XI and do the split in the mapping (e.g. java).

    I'm not sure, what you mean with proxy. But it's possible to read the file via java or abap and send the message via an abap or java proxy to XI.

    Maybe that helps.

    Regards,

    Christian

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi Christian,

      Apologize for not being clear with the scenario...I have payroll data coming in file format..Based on the field content of the file, the posting Idocs need to be chosen..i.e whether the payroll data is new(in which case create_idoc should be chosen) or its an updated payroll information (in which case the change_idox needs to be chosen)..

      So one inbound interface into XI and 2 outbound interfaces( one for create and another change) need to be created. But my main question, I need to determine the outbound interface based on field content of the incoming file. As you said using Java mapping we can break the file into single records and each field of the record can be broken. So based on the field content I need to determine whether its an create Idoc or change Idoc.

      I am trying to make the outbound receiver determination call in the java mapping..is it possible?? or I have to create a BPM..or by using a proxy is it possible to deterimine which receiver needs to be calles?

      Any ideas...Let me know if I am still not clear..

      -Teresa

  • author's profile photo
    Former Member
    Posted on Feb 24, 2005 at 03:40 PM

    Hi Teresa,

    What you want is content based routing, you don't need a Java mapping for that. In the receiver determination or interface determination step you can do content based routing. with the condition editor you can read the content of a field (Xpath) and based on this field you send it to the interface for create Idoc and otherwise to Change Idoc.

    Cheers,

    Frank

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Hi Teresa,

      first I would try to find out if the requirements of the solution are correct. Why should the same file be send to the same destination, if nothing changed? The target application could save the data and use it until new data is send. I don't see any advantage of sending the same file again.

      I think there is no XI functionality for your scenario. The BPM needs a message as a trigger. There is no pull functionality, as far as I know.

      Maybe you can use a script on your operating system to copy the file from the archive to the send directory for the file adapter, if the sender hasn't send a new file.

      Regards

      Christian