JMS to IDOC

Hi,
I'm working on JMS to Idoc scenario, this is going to be a huge volume scenario( may be 50K messages at a time from legacy). So SAP folks needed the maximum records in a Idoc would be "10000" and should processed for 5 times something like that.
How can I achieve the same in XI. Please help me out.
-Xavier

First of all you have to create an external definition in which you have to change the occurrence of IDOC as 1...unbounded. Then use the UDF as mentioned below to create a context change after 5000 records for example. And then map the UDF to "IDOC" segment.
While creating the UDF select the Cache as "Queue".
int count = 0;
for (int i = 0; i<input.length; i++)
count = count + 1;
if(count == 5000)
result.addValue(" ");
result.addValue(ResultList.CC);
Count = 0;
//if at any time records are less then 5000 then also an idoc should be created
if(input.length < 5000)
result.addValue(" ");
While doing the mapping you have to set the context of source node at higher level or use removeContext. e.g.
SourceNode -
>RemoveContext -
>UDF -
> IDOC.
To change the occurrence of IDOC follow step1 to 4 from below mentioned blog...
/people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
Regards,
Sarvesh

Similar Messages

  • How to implement this Scenario(JMS to IDOC)

    Hi Frnds,
    I am working on one scenario JMS to IDOC .based on JMS Message my XSLT Mapping will genarate Multiple Idocs(max 3) or 2 or one.
       I have to send this IDOCS based on some conditions,the conditions mentioned below.
    xslt mapping genarats one message ,but this contains 3 IDOCS or 2 or 1.(Order Create , Order Change and Order Response),
    what is the best approach to implement this scenario
    1)f Order Create  segment exists (new PO), first check SAP to see if PO does actually exist using RFC Z_BBPR46_GET_PO_FROM_FPA ,If it does not exist, pass Order Create idoc to SAP to create new purchase order
    If it does exist, retrieve PO details from RFC and pass Order Change idoc to SAP to update existing purchase order
    2)If Order Change segment exists (change PO), retrieve PO details using RFC Z_BBPR46_GET_PO_FROM_FPA and pass Order Change idoc to SAP to update existing purchase order
    3)If Order Response segment exists (goods movement), retrieve PO details using RFC Z_BBPR46_GET_PO_FROM_FPA and pass Order Response idoc to SAP to create goods movement.
    Above logic i implemented in one mesage mapping Source is XSLT Mapping Output and Receiver message in message mapping is Multimapping selected 3 IDOCS.
    Regards,
    raj

    thanks

  • How to reduce processing time  in case of jms to idoc scenario

    hi all,
    i am doing jms to idoc scenario.
    in this i'm using xslt and graphical mapping.
    while perfroming E2E testing the messages are taking lot of time to get processed.
    please tell me as how can i reduce this processing time or in short how can i overcome this problem.this is a critical issue in production.
    regards
    madhu

    Hi,
    1. To reduce the processing time for JMS -> IDOC scenario, try to get the Average processing time taken by JMS adapter, IE, IDOC adapter for the messages that are processed so far by going thro the Adapter Audit logs, SXMB_MONI race and Time in WE02 in R/3 system. Calculate this for 5 - 10 messages at different time to get the clear idea of which step is consuming more time. Then it will be helpful to focus on tuning that specific step.  If you are using BPM, check the processing time taken by PE.
    2. Check the Inbound and Outbound queues used by this interface, if required try to configure Prioritized Queue with more time allocated for this interface in Integration Engine.
    3. Check the load on the Integration Server when this Interface messages are getting processed, to understand/ isolate the interfaces which are consuming more processing time and system resources.
    4. If this is not in Production try to perform the Mapping/ transformation in graphical mapping itself, it will be helpful to minimise use of XSLT mapping to get better performance.
    5. Check if the Archive and Delete jobs are running successfully in the Integration Server, since this will free up the occupied resources in the system.
    6. If possible post seperate Forum questions for issues in different Interface scenarios, it will be easy to understand the problem for all of us.
    Hope this will be helpful,
    Regards,
    S.Santhosh Kumar

  • JMS - PI - IDoc scenario: possible to disable check for duplicate JMS message ID?

    Dear all,
    we have a scenario JMS - PI - IDoc. We are on 7.4 SP 7 AEX.
    Once and again we get this error in PI Logs
    com.sap.aii.adapter.jms.core.channel.filter.InboundDuplicateCheckFilter.filter(MessageFilterContext filterCtx)
    Duplicated and already processed JMS message with JMSMessageID ID:414d512053415050523120202020202053f0f4852000fb39 and XI message id b0beffdbcee64c2605779eaacf27b335 detected.
    We are currently investigating the error and it seems that the duplicate message IDs already exist on the JMS (MQ) side. The messages with the same ID reside in the same queue but have different payloads, so really are different messages
    While it's certainly true that we need to get rid of those duplicate IDs in the long run, I'd like to ask if it is possible to tackle the problem from both sides.
    My sender JMS Adapter looks like this:
    Transactional JMS Session = Checked
    Set PI Message ID (MessageID) to = GUID
    Set PI conversation ID (ConversationID) to = No Value
    Enable Duplicate Handling = Unchecked
    Prefix Channel ID = Unchecked
    --> Is there any way to tell PI to just ignore the duplicate JMS ID and continue processing?
    Many thanks
    Kind regards
    Jens

    Hi Jens - Please have a look at the below note if it helps.
    If you want the duplicate messages received from different channels (that is JMS Messages with the same Message ID) to be processed as a distinct JMS messages and not as duplicate messages, select Prefix Channel ID to JMS Message ID
    Reference :
    Configuring the Sender JMS Adapter - Advanced Adapter Engine - SAP Library

  • JMS -- PI -- IDOC Party Communication

    Hi,
    I have a scenario JMS --> PI --> IDOC and vice-versa. JMS is an external system, so using PARTY communication. SAP System is within customer landspace.
    My doubt is - I have to import a Business System in ID for the IDOC (SAP system). Now where should I import this Business System? Should I import the SAP Business System under Party or under Without Party?
    If I am not wrong Business Component for JMS will come under the Party; have a doubt about the Business System.
    Thank you,
    Pankaj.

    If this is in another landscape then use Party..
    Ok. So nowI have imported the Business System (SAP ECC) under Without Party and will create the Business Component for JMS under Party.
    Thank you,
    Pankaj.

  • JMS to IDOC error

    I am doing a JMS to IDOC scenario...
    i am getting an error:
    com.sap.aii.utilxi.misc.api.BaseRuntimeException
    thrown during application mapping
    com/sap/xi/tf/_ECC_TTG_CREATE_:
    RuntimeException in Message-Mapping transformatio~
    Before it was working fine...
    i dont why this is happening...

    Hi PSRK,
      It looks like it is a message mapping error.
    take the raw payload from SXMB_MONI and run in the test tab of the message mapping. To know the exact issue.
    Regards,
    ravi

  • IDOC to JMS and JMS to IDOC.

    Hi All,
       I read most of the thread and found also some good link . But failed to get the exact thing that i need to carry out for this implementation. So , i am looking forward for your valuable help to get a clear understanding on this.
    Scenerio : IDOC to JMS.
    1. What need to carry out for configuring the JMS adapter as the receiver.
       I know the configuration side from SAP[IDOC] to XI side. But dont have any idea on configuring the JMS adapter.
    2. What drivers that i need to instal on ? & how can i know which driver should i use for my scenerio ?
    3. What details do i need from the client ?
    Scenerio : JMS to IDOC.
    1. I have the same thing to configure from JMS to SAP[IDOC], SO for this what else do i need to configure?
    2. What need to carry out for configuring the JMS adapter as sender?
    Can anyone, please provide me the details on this..
    Thanks in advance.
    Jay.

    Hi,
    Check the links
    http://help.sap.com/saphelp_nw2004s/helpdata/en/c1/739c4186c2a409e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/65/52693cab05e079e10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/f8/24ee41c334c717e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/f4/2d6189f0e27a4894ad517961762db7/frameset.htm
    Thanks!

  • JMS to IDOC xslt mapping

    Hi,
    We have a JMS to IDOC scenario. We are using PI7.1.  We are currently using XSLT Mapping . This needs to be replaced by Graphical mapping as XSLT mapping  is consuming more memory.
    If we remove the XSLT Mapping between source and target would we need content conversion for the soruce file  ?
    Please advice.
    Thanks,
    Teresa

    Hi Teresa,
    File Content conversion(fcc) is used to convert Any format file to XML format, while sending the data into PI.
    & XML format to Any required output format, while sending data out of PI.
    B'cos, PI only understands XML language.
    So, this has nothing to do with XSLT mapping in your case.
    change XSLT mapping to Graphical mapping. that should accomplish your task.
    -santosh.

  • JMS to IDOC scenario...

    Hi,
    I am doing an JMS to IDOC scenario...
    where will i mention saying there is a logical system in R3(Partner profile).The IDoc should reach that Logical system only.I have a doubt on this....Because we are disabling the IDOC EDIDC segemnt in Recever segment.so.
    Please guide me.

    You fill the mandt field like SNDRPRT, RCVRPRT and others in the mapping and you can take care of rest in the R/3 side.
    You could fill up it in mapping and apply the Check box as mark for considering the control record from Payload in communication channel. Just pass the mandatory fields as you have used the details to configure the prtner profile and port.
    You could also specify the Adapter specific attributes with the same logical system name in Busines system or service that could fill-up the control records internally.
    Refer
    http://help.sap.com/saphelp_nw04/helpdata/en/13/95244269625633e10000000a155106/frameset.htm
    SAP Network Blog: Manipulating Idoc Control Records from Payload
    Manipulating Idoc Control Records from Payload
    changing IDOC control record by XSL Mapping

  • Multi Mapping without BPM (JMS 2 IDoc)

    Hi,
    i have a JMS-Query where it is necessary to map the given data to two different IDoc Types.
    Therefore i have to mappings in two different namespaces. Is it possible to use these insde of the interface Mapping?! Or does the target types have to be in one mapping and one namespace?!
    Can i use context objects?!
    Please guide me! br, Jens

    HI,
    Ingeneral multi mapping in IM , we can use , to do it it should satisfies accordingly .. i mean see the below link
    /people/michal.krawczyk2/blog/2005/11/01/xi-xml-node-into-a-string-with-graphical-mapping
    Multiple message mappings in one integration scenario
    With context object , we can route based on condition , this will be used in interface determination with condition , to this condition , we can use Context object, but it should be configured in MI.
    Regards
    Chilla

  • How to convert IDOC-PI-JMS to IDOC-PI-File with exsting mapping?

    I have a scenario,  ECC-PI-Message broker. ECC sending IDOC to  PI, PI execute mapping and  sends data to Message borker(thru JMS channel).(with almost one to one mapping)., IDOC(AAE)-PI-JMS. Now my requirement is., from PI  after mapping we need to create file with same data what ever send to Message broker and put the file in SAP folder without touching mapping. Is it possible? Please advise with the steps. We are using the ICO for this senario. Quick response is appriciated.

    Hello,
    U can add one more receiver for file and reuse the same message mapping
    Thanks
    Amit Srivastava

  • JMS - Different IDOC's

    Hi,
    I'm new to XI and I'm trying to integrate an existing application with an R/3 backend system.
    The applications puts messages on an MQSeries Queue in XML format.  These messages should be mapped to IDOC-structures.
    What I've done so far :
    I succesfully created a JMS connection and got a perticular message mapped to an IDOC and even got it into R/3.
    The problem :
    There are different types of messages that get onto the queue and the other messages fail because of the mapping of course.
    I hear you thinking "why not give every type of message it's own queue ?" ... The thing is that the order of the messages is important, so I really should be able to process the messages in sequence.
    Is there a way to determine the Sender Agreement at runtime ?  Based on the message content ?  Or even let te Sender Agreement be filled in by the application ?
    Tx in advance
    Tom

    hi,
    have a look at this approach:
    /people/sravya.talanki2/blog/2006/01/10/re-usable-frame-work-in-xi
    in one of my projects we did the same
    JMS with many messages by creating a java proxy
    and we did the routing based on a web page
    configuration for all of those messages
    so once they reached the XI they where with
    good namespaces etc. - it was also a generic approach
    as now every new message can be added very easily
    Regards,
    michal

  • Jms-xi-idoc scenario

    Hi
    As ECC system is going to receive idoc's we got to set partner profiles in this sytem. If I am not wrong  in ECC system we are going to set the partner profiles of XI system ?? or partner profiles of ECC system itself ?? Meanwhile whether we got to set for outbound or inbound ??
    Thanks
    kumar

    hi,
    Please go through these liks it will be very usefull.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
    /people/michal.krawczyk2/blog/2006/10/11/xi-new-book-mastering-idoc-business-scenarios-with-sap-xi
    provide me the points if it is useful.
    thak's
    prabhakar.

  • Complex scenario JMS(multiple)-PI-IDOC( multiple)

    Hi,
    My scenario is JMS-XI-IDOC.
    We have 10 legacy systems and one MQ-Series Queue for each system is setup.
    Each legacy system will send multiple types of data to its respective queue. (i.e. single queue for multiple types of data).
    XI side I am configuring 10 sender JMS adapters to pick from these 10 Queues.
    I have 3 types of IDOCu2019s which I imported to XI.
    Depending on the content of the data ( may be first two characters) XI need to map the data to respective IDOC and post it to R/3.
    How to achieve this????? Can we do this without BPM?

    My issue is not only dynamic interface determination.
    As each queue will have different transactions , so the structure for each transaction will be different.
    how to do dynamic sender aegrement.
    Is it possible in XI.
    I am planningto read everything into a string and then map to the different structures. Is it advisable.
    I am torally confused with this scenario.
    Please suggest the correct method.

  • Change of Encoding in Sender JMS Adapter

    Hi,
       My scenario is like that:-
    FTP->MQ Queue->JMS Queue->XI->R/3
    From JMS Queue IDOC xml is coming in UTF-8 encoding to XI. In that IDOC xml certain special characters are there, say, some Latin or European character. But for the scenario XI->R/3, data are not getting posted to R/3. In XI side, it is not giving any error, but it is giving a flag (in QRFC Monitor) which is “ Error between two Character Sets”.
    I am unable to rectify this error. One solution I have guessed that is, it will be possible to resolve this issue if I can change the encoding in XI to ISO-8859-1. But I don’t know how to change the encoding in Sender JMS Adapter in XI. Could you please help me to resolve this issue?
    BR
    Soumya B

    Hi,
    Check following:
    1. In SXMB_MONI, what is the XML structure generated for inbound and outbound message. Check the encoding used in both. This could be checked by looking at the first line of XML generated. For UTF encoding, usually, the first line should look as follows:
    <?xml version="1.0" encoding="UTF-8" ?>
    2. If the encoding for both is different, try to figure out which encoding is used for Message Type in XI. For matching the encodings, you could change the XSD used for creating message type in XI. This way, the character encoding could be changed. And this solution should suffice if the problem has occured between XI to R3 scenario.
    Also, for learning more about character encodings, you could visit following link:
    http://www.cs.tut.fi/~jkorpela/chars.html
    Hope it helps.
    Bhavish.
    Reward points if comments found useful:-)

Maybe you are looking for