How to restart correctly processed XML messages

Folks,
Is there a way to resend already successfully processed message in XI (SXMB_MONI shows checkered flag). The requirement is to re-send PO or Invoice due to the customer demand.
All inputs deeply appreciated.
Thank you.

Sandeep,
Is there a way to resend already successfully processed message in XI (SXMB_MONI shows checkered flag).
Go through this blog from Michal -
/people/michal.krawczyk2/blog/2005/11/09/xi-restarting-successfully-processed-messages
You can perform this even in PRD, but it is not at all recommended ... ideally, such messages should be sent from the source.
Hope this helps.
Regards,
Neetesh

Similar Messages

  • No show message in monitor for processed XML messages

    Hi,
    I get the document 'VALIDANTING A CONNECTION BETWEEN SAP R/3 AND SAP XI WITH RFC' and following the steps until step 9 it's ok but I can execute the step 10 I get 2 problem:
    First Problem - I dont know where see the ABAP code STFC_CONNECTION, How do you know?
    The Second Problem is the step 11 the system not show message and the documentation show message.
    Please Help-me.
    Any Ideas ?
    Regards.
    Mattos.

    Hi, Ashish thanks for anwser my doubt.
    So, the step 10 is "10. Refer to the following ABAP code snippet for executing the STFC_CONNECTION programmatically
    instead of using the user interface shown above.
    Call STFC_CONNECTION to send/receive request/response to/from XI***
    DATA: v_msg_text(80) TYPE C. "Message text
    CLEAR v_msg_text.
    CALL FUNCTION 'STFC_CONNECTION'
    DESTINATION 'XI'
    EXPORTING
    requtext = 'REQUEST_TEXT'
    EXCEPTIONS
    communication_failure = 1 MESSAGE v_msg_text
    system_failure = 2 MESSAGE v_msg_text.
    IF SY-SUBRC NE 0.
    **Write your code here**
    ELSE.
    **Write your code here**
    ENDIF."
    and the setep eleven is "11. Check the Integration Engine monitor for the processed XML messages (SXMB_MONI):
    Shows Sender Interface:"
    But I not see messege in my Monitor.
    Other doubt in step 5 the document order to create the RFC_Sender Communication Channel, this configuration have the parameters PROGRAM ID (mandatory), we dont have any idea what input there, Can you Help-me? How can find this parameters? in document we have the exemple INTEGRATION_SERVER.
    Thanks.
    Regards,
    Mattos.

  • What is the payload structure has to be used for AQ to process XML messages.

    Hi Experts,
    We have an IBM MQ and Oracle AQ has to be be linked to that.
    MQ always contains XML messages and same message will come to AQ.
    Now I want to create AQ. What is the payload structure(object) has to be used for AQ to process XML messages.
    Please help me.
    Thanks.

    Hello,
    using XML type data in AQ you have to define a special AQ payload type
    (corresponding to MQ):  QUEUE_PAYLOAD_TYPE = 'SYS.MGW_BASIC_MSG_T'.
    An example template for enqueueing looks like (you have to transform
    from XMLTYPE to the MGW payload type):
    DECLARE    
       queue_options      DBMS_AQ.ENQUEUE_OPTIONS_T; 
       message_properties DBMS_AQ.MESSAGE_PROPERTIES_T;  
       message_id         RAW(16);  
       v_message          SYS.XMLType;   
       v_clob             CLOB;
       v_payload          SYS.MGW_BASIC_MSG_T;
       v_text_body       
    SYS.MGW_TEXT_VALUE_T;
    BEGIN
       v_message      := SYS.XMLType.createXML('<SAMPLE>hello world</SAMPLE>'); 
       v_clob         := v_message.GETCLOBVAL();
       v_text_body    := SYS.MGW_TEXT_VALUE_T( NULL, v_clob );
       v_payload      := SYS.MGW_BASIC_MSG_T( v_header, v_text_body, NULL );
       DBMS_AQ.ENQUEUE( queue_name         => 'my_queue',
                        enqueue_options    => queue_options,
                        message_properties => message_properties,
                        payload            => v_payload,
                        msgid              => message_id);
    END;
    Kind regards,
    WoG

  • Testcase, how to split up an xml message and call a BPEL process.

    Another question.
    Considering the following XML message.
    <?xml version="1.0" encoding="UTF-8"?>
    <rows>
    <row>
    <id>10</id>
    <naam>A</naam>
    </row>
    <row>
    <id>20</id>
    <naam>B</naam>
    </row>
    </rows>
    An input message can consist of 1 to about 20000 <row></row> elements. I would like to split up this message into individual <row></row> and call a BPEL process for further processing.
    I've tried to use the file adapters feature "Files contain Multiple Messages" Publish Messages in batches of.." This did not work. ( root element expected exceptions ).
    I've also tried to invoke an extra async routing service with a mapping which removes the root element. This also doesn't work as it leaves the following ( incorrect ) xml message at the end.
    <row>
    <id>10</id>
    <naam>A</naam>
    </row>
    <row>
    <id>20</id>
    <naam>B</naam>
    </row>
    Which is logical considering how an XSL transformation works.
    Is there any way to achieve this?
    Any help is appreciated!

    You shoul create a while loop, that loops through XML payload for each row. Than you can process each individual row. See also example:
    C:\orabpel\samples\tutorials\112.Arrays\ArraySample.bpel

  • How to store and retrieve XML messages in AQ using ESB/ BPE

    Hello,
    I am having a requirement which I feel should be fairly common - store and retrieve XML messages in AQ. However, I am struggling to decide which type of queue to use AQ or JMS...Here is the requirement
    1. In an ESB, I want to read different kind of files using file adapter. Different kind as in, having different structure or schema
    2. I want to create a queue that is capable of storing any kind of xml data. To this queue, I want to enqueue the message read in step 1.
    3. In another process, say a BPEL, I want to dequeue the message and write into a file. The filename is retrieved from one of the header properties. I want to dequeue using a stored procedure, not by using a JMS or AQ Adapter (reason being that these adapters poll the queue, and consume a message immediately. However, I want to consume the message only when there is a business need)
    My questions are:
    1. What kind of queue I should create in the DB (What should be its payload type...XMLType? )... I guess the answer would also determine the adapter to be used - JMS or AQ
    2. How I should map the xml data read from the file in step 1 to this adapter
    Any help is highly appreciated.

    You are right in suggesting that I dont need to store my XML data as xml in the DB...I dont want to too :) but its just that, thats the only option I can see at this time (the other track i am exploring is :
    File adapter(XML) -&gt; Convert to opaque (base64binary) -&gt; Enqueue opaque to JMS (aq$_jms_bytes_message) -&gt;Dequeue Opaque -&gt; Write file opaquely.
    In this I have hit the roadblock in trying to convert XML to base64binary...maybe some custom java function is needed...anyway)
    Coming back to this thread, where I am trying the following
    File adapter(XML)  -&gt; Enqueue as XML to queue  -&gt;Dequeue XML -&gt; Write file opaquely.
    PS: I think its important for me to mention that I am using SOA 10.1.3.1.0
    I tried the steps you gave...after creating the queue, I am trying to create a JMS adapter. But the queue I created doesnt show up in the browse window of destinations for the JMS Adapter..That had led me to infer that JMS adapter cant be used
    {color:#99cc00}CREATE OR REPLACE TYPE batchupdate_row_type AS OBJECT
    (update_queue_id NUMBER
    ,upc VARCHAR2(20)
    ,price1 NUMBER);
    {color}
    {color:#99cc00}CREATE OR REPLACE TYPE batchupdate_rec_type AS VARRAY(9999999) OF batchupdate_row_type;
    CREATE OR REPLACE TYPE payload_type AS OBJECT ( payload batchupdate_rec_type);
    EXECUTE DBMS_AQADM.CREATE_QUEUE_TABLE ( queue_table =&gt; 'jmsuser.batch_update_queue_table', queue_payload_type =&gt; 'payload_type');
    EXECUTE DBMS_AQADM.CREATE_QUEUE ( queue_name =&gt; 'batch_update_queue', queue_table =&gt; 'jmsuser.batch_update_queue_table');
    EXECUTE DBMS_AQADM.START_QUEUE ( queue_name =&gt; 'batch_update_queue'); {color}
    I also needed some opinion on whether the last step of my proposed solution ( Dequeue XML -&gt; Write file opaquely) is possible. As I want to develop a service oblivious of the structure of the file, I dont want to create a file adapter based on a particular xsd...so I want to write whatever xml I am getting from the queue....is this step possible

  • Restart a process or message in SXMB_MONI with status "Cancelled Manually"

    SDN Crew,
    This is query regarding the BPM process.
    I have cancelled a process in MONI manually, Now i want to restart the process...
    If i try to restart the process, it throws an error "only messages with error could be restarted and messages already processed or cancelled could not be resatarted".
    How to solve the issue?
    and also i want to restart the process because though i set the Poll interval in the Send Comm Channel as 60 sec,  it processed only one message and that to in error(which i cancelled manually) no furthur processing is done i mean if u check for processed messages only one message is shown but it has to show similar error messages for every 60 sec?
    i am new to BPM so could someone tell lme if i am doin gsomewhere wrong?

    hi,
    its posible,
    take a look of this blog
    /people/michal.krawczyk2/blog/2005/11/09/xi-restarting-successfully-processed-messages
    Thanks
    Rodrigo
    ps:reward points if useful

  • How to loop through many XML messages and parse them ?

    Hi All
    I have been trying very hard to loop through many XML messages and process each of them. Let me first explain the problem -
    Suppose I have the following String -
    <xyz>
    <abc>happy</abc>
    </xyz>
    <xyz>
    <abc>new</abc>
    <xyz>
    <xyz>
    <abc>year</abc>
    </xyz>
    I have to process each message within the <xyz></xyz> tag and find the falue of <abc> element (happy, new and year).
    The extraction of <abc> value is very simple, I am using SAX parser's startElement() method to check every element's name and if the element's name is <abc> pick up the value. But I am not able to loop through the different messages within the <xyz></xyz> tag.
    I am thinking of using another DOM parser -
    DOMParser domParser = new DOMParser();
    StringReader rdr = new StringReader(inputXML);
    InputSource src = new InputSource(rdr);
    domParser.parse(src);
    Document doc = domParser.getDocument();
    NodeList nodeList = doc.getElementsByTagName("xyz");
    Now I can loop through this nodeList, but not able to. Is using the DOM parser and NodeList the preferable way of lopping through the messages, then how I can loop through ? Or is there any other way ?
    I have been trying on this for quite a few days, but not able to. Can you please help me out ?
    Thanking you in advance ....
    Nirmalya Sinha

    Hi,
    Try using the SAX reader from the dom4j package. The document object that you receive contains methods for getting the root elements and with that you can traverse down to the sub elements of it.
    Hope this was of some help.

  • How to HTTP-Post different XML messages to one receiving URL on XI side?

    Hi
    I have a problem with a HTTP => XI => IDoc scenario.
    A client want to send 4 different XML documents to only 1 receiving URL on the XI side. How can I handle this in XI???
    To send XML data via HTTP to XI you have to specify the namespace, interface and service in the URL. But I only can specify 1 namespace, interface and namespace in the URL...
    But how can I define a generic message interface for all 4 messages.
    The solution with 4 receiving URL's is easy, but not workable for the client
    Thx
    manuku

    You can do following:
    Create an interface with an artificial root node like this:
    root
      - structure message 1
      - structure message 2
      - structure message 3
    A simple XSLT/Java mapping adds that root node to every message.
    Create different mappings based on the structure if the different mappings and do routing based on the same.
    Another option: Upgrade to PI 7.1. Here you can simply create a service interface with different operations and routing/mapping based on the operations.
    Regards
    Stefan

  • Table Names of Processed  XML Messages

    Hi ALL,
    We are facing space problem  in PRD box with one of our client, due to increase in large number of Messages  .
    Our basis tryed to do archiving, but endup with no luck.
    Could any one tell us in which tables processed idoc xml messages will get stored.
    .Any help is highly appreciated.
    Kind Regards,
    Vijay

    Hi,
    you should not delete XI Message directely from database table. Please schedule archive or delete jobs. If you never define which interface should be archived, it could NOT be done afterwards. This is also documented clearly on the help.sap.com. What you could do is delete the old messages to free table space. You could configure now interface which should be archived, in this case the message processed in XI in future could be archvied.
    XI message is actually stored in different tables,
    SXMSPMAST, SXMSPMAST2      XML Message master Table,  contains runtime information on XML messages processed by XI; in this table you can find all the information that is visible in SXMB_MONI.
    SXMSCLUP     XI Message Payload Tabelle
    SXMSCLUR     XI Message Payload Tabelle
    SMPPREL3     this table contains information about interfaces; here you can find information on sender (party, service, interface and namespace) and receiver (party, service, interface and namespace) as well as information on maps (their GUID and name as well as namespace).
    SXMSPFRAWH     Performance Head Data, Audit Log,
    SXMSPFRAWD     Performance Data, Audit Log
    There are could be more tables used to store information about XI messages, as I mentioned don't modify database table by your own risk. You will not get support by SAP, it could cause fatal error.
    regards,
    Hai

  • How to map a complex XML message onto a flattened XSD for multi line insert

    Hi Experts.
    I have a webservice in my composite that takes an xml message that contains repeating complex type elements. The XSD is as follows:
    <?xml version= '1.0' encoding= 'UTF-8' ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:XxInt003Stg="http://www.somewhere.co.uk/xxx/integration/int003Stage"
    targetNamespace="http://www.somewhere.co.uk/xxx/integration/int003Stage" elementFormDefault="qualified">
    <xsd:complexType name="InterfaceFileType">
    <xsd:sequence>
    <xsd:element name="FileName" type="xsd:string"/>
    <xsd:element name="FileSource" type="xsd:string"/>
    <xsd:element name="FileIdentifier" type="xsd:integer"/>
    <xsd:element name="InterfaceInvoices" type="XxInt003Stg:InterfaceInvoicesType"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="InterfaceInvoicesType">
    <xsd:sequence>
    <xsd:element name="InterfaceInvoice" type="XxInt003Stg:InterfaceInvoiceType"
    maxOccurs="unbounded"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="InterfaceInvoiceType">
    <xsd:sequence>
    <xsd:element name="SupplierNumber" type="xsd:string"/>
    <xsd:element name="SupplierSite" type="xsd:string"/>
    <xsd:element name="InvoiceNumber" type="xsd:string"/>
    <xsd:element name="InterfaceInvoiceLines">
    <xsd:complexType>
    <xsd:complexContent>
    <xsd:extension base="XxInt003Stg:InterfaceInvoiceLinesType">
    <xsd:sequence>
    <xsd:element name="InterfaceInvoiceLine"
    type="XxInt003Stg:InterfaceInvoiceLineType"
    maxOccurs="unbounded"/>
    </xsd:sequence>
    </xsd:extension>
    </xsd:complexContent>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="InterfaceInvoiceLinesType"/>
    <xsd:complexType name="InterfaceInvoiceLineType">
    <xsd:sequence>
    <xsd:element name="LineAmount" type="xsd:decimal" nillable="false"/>
    <xsd:element name="TaxAmount" type="xsd:decimal"/>
    <xsd:element name="BusinessEntityReference" type="xsd:string"/>
    <xsd:element name="AccountNumber" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:element name="InterfacePayload">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="InterfaceFiles" type="XxInt003Stg:InterfaceFileType"
    maxOccurs="unbounded"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    When I try to push this through the database adapter after mapping the fields it inserts multiple rows but they are all the same values. I have put a for-each XSLT construct based on the lowest element in the XSD (Invoice Line) and allocated that at various places on the target tree structure but with no success.
    The XSLT is as follows:
    <xsl:template match="/">
    <top:XxInt003InterfaceInvoiceStgCollection>
    <top:XxInt003InterfaceInvoiceStg>
    <top:fileName>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:FileName"/>
    </top:fileName>
    <top:fileSource>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:FileSource"/>
    </top:fileSource>
    <top:fileIdentifier>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:FileIdentifier"/>
    </top:fileIdentifier>
    <top:supplierNumber>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:SupplierNumber"/>
    </top:supplierNumber>
    <top:supplierSite>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:SupplierSite"/>
    </top:supplierSite>
    <top:invoiceNumber>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InvoiceNumber"/>
    </top:invoiceNumber>
    <xsl:for-each select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InterfaceInvoiceLines/inp1:InterfaceInvoiceLine">
    <top:lineAmount>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InterfaceInvoiceLines/inp1:InterfaceInvoiceLine/inp1:LineAmount"/>
    </top:lineAmount>
    </xsl:for-each>
    <top:taxAmount>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InterfaceInvoiceLines/inp1:InterfaceInvoiceLine/inp1:TaxAmount"/>
    </top:taxAmount>
    <top:businessEntityReference>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InterfaceInvoiceLines/inp1:InterfaceInvoiceLine/inp1:BusinessEntityReference"/>
    </top:businessEntityReference>
    <top:accountNumber>
    <xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InterfaceInvoiceLines/inp1:InterfaceInvoiceLine/inp1:AccountNumber"/>
    </top:accountNumber>
    </top:XxInt003InterfaceInvoiceStg>
    </top:XxInt003InterfaceInvoiceStgCollection>
    </xsl:template>
    I am sure this is just something fundemantal I am doing, is it something to do with the inp1 bit of the XSLT? I get the feeling this should be looping somehow?
    Thanks
    Keith

    Hi,
    as I understand you try to transform 'InterfacePayload' (your XSD - just easier to read here)
    InterfacePayload (1:1)
    -- InterfaceFiles (1:N)
    ---- FileName (1:1)
    ---- FileSource (1:1)
    ---- FileIdentifier (1:1)
    ---- InterfaceInvoices (1:1)
    ------ InterfaceInvoice (1:N)
    -------- SupplierNumber (1:1)
    -------- SupplierSite (1:1)
    -------- InvoiceNumber (1:1)
    -------- InterfaceInvoiceLines (1:1)
    ---------- InterfaceInvoiceLine (1:N)
    ------------ LineAmount (1:1)
    ------------ TaxAmount (1:1)
    ------------ BusinessEntityReference (1:1)
    ------------ AccountNumber (1:1)
    to 'XxInt003InterfaceInvoiceStgCollection' (extracted from your XSLT)
    XxInt003InterfaceInvoiceStgCollection (1:1)
    -- XxInt003InterfaceInvoiceStg (1:1)
    ---- fileName (1:1)
    ---- fileSource (1:1)
    ---- fileIdentifier (1:1)
    ---- supplierNumber (1:1)
    ---- supplierSite (1:1)
    ---- invoiceNumber (1:1)
    ---- lineAmount (1:N)
    ---- taxAmount (1:1)
    ---- businessEntityReference (1:1)
    ---- accountNumber (1:1)
    In the 'xsl:for-each' construct
    +<xsl:for-each select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InterfaceInvoiceLines/inp1:InterfaceInvoiceLine">+
    +<top:lineAmount>+
    +<xsl:value-of select="/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InterfaceInvoiceLines/inp1:InterfaceInvoiceLine/inp1:LineAmount" />+
    +</top:lineAmount>+
    +</xsl:for-each>+
    - you are asking to iterate through all available 'inp1:InterfaceInvoiceLine' elements in the input XML document
    - the value of the element 'top:lineAmount' (for each iteration) is being calculated as all values of available 'inp1:LineAmount' elements in the input XML document together
    So, if you have ... lets say
    - 4x 'inp1:InterfaceInvoiceLine' element in the input XML document, each containing one 'inp1:LineAmount' element ... with values {1, 2, 3, 4} respectively
    - the output will be something like this
    <top:lineAmount>1234</top:lineAmount>
    <top:lineAmount>1234</top:lineAmount>
    <top:lineAmount>1234</top:lineAmount>
    <top:lineAmount>1234</top:lineAmount>
    Why are you always querying from +/inp1:InterfacePayload/inp1:InterfaceFiles/...+ ?
    I think ... all Xpath queries in your XSLT are wrong (they query something else than you think).
    e.g.
    - putting all file names together into one element (+/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:FileName+)
    - putting all file sources together into one element (+/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:FileSource+)
    - putting all invoice numbers together into one element (+/inp1:InterfacePayload/inp1:InterfaceFiles/inp1:InterfaceInvoices/inp1:InterfaceInvoice/inp1:InvoiceNumber+)
    Best regards,
    Martin.

  • How to hide "Correct" & "Incorrect" feedback message boxes  in CP4

    I have a quiz with 60 question slides. I want to hide"Correct" & "Incorrect" feedback message boxes  in CP4.
    After a user has selected the answer, when "Submit" button is pressed, only the marks should be recorded but feedback is not displayed.
    On clicking "Next"  goes to next question slide.
    Thanks and regards
    Rajan

    Can't you just double-click the feedback boxes and delete them?
    Or edit each quiz question and delete all feedback from each?
    Erik

  • Monitor for processed xml messages

    Hi all experts,
    I'm a newbie. My work duty is PI/XI trouble shooting, and it's difficult for me currently.
    I input tcode:sxmb_moni, and list all errors. After I double click a Interface, I see any xml. Although  I have some programmer experience, but I can't understand what it mean yet.
    Who can tech me, or give me a reference link to study?
    Thanks  a lot

    Hi,
    For XI monitoring and Troubleshooting you should go through the couple documents available on SDN.
    That will help to give the corrective direction.
    In SXMB_MONI, when you will double click on the failed messages, you will see 4 sections.
    1. Left-top section indicates the Request /Response of message
    2. Left-bottom section will drilled down the reqest/Response tree to further indepth details.
    3. Right-top section indicates the processing log of the message along with trace details.
    4. Right-bottom section will be based on the left side topic selected from the tree structure.
    (Initally you will get error details in case of failures.)
    XI Production Errors -- Steps to refer it in SXMB_MONI.
    /people/prashanth.azharuddin/blog/2006/11/24/some-errors-in-an-xi-production-environment
    /people/michal.krawczyk2/blog/2006/01/02/xi-sxmbmoni--controlling-access-to-message-display
    /people/sukumar.natarajan/blog/2007/06/05/message-monitoring-overview-in-xi-with-sp20-sp12-in-70
    Troubleshooting
    Search various blogs for the troubleshooting based on the scenarios - file/soap/http/proxy etc.
    THanks
    Swarup

  • Use of BPM for processing XML message

    I have got a requirement for updating X-number and X- status into the SAP system from a non SAP system. I am getting the message which contains both these values in the form of xml and using HTTP and should be posted as 2 different IDOCs at the SAP system.
    But the requirement is to post the X-number first and once it is updated X-status should be posted based on the number.
    Assuming that X-number is available first and the status next in the non SAP system can we use BPM and if so how what needs to be done to make sure status doesnt update before number.

    Hi,
    Proceed as follows:
    1) Receive the X-message
    2) have  a transformation step....and map only the x-number into the target IDOC
    3) have a synchronous send step....why a sync send....because in that you can get the confirmation for success/failure of your x-number upload....this is only if you want a confirmation...this will make sure that your x-number is updated first.....
    4) now if you do not want to have a response back then...have a transformation step to map the x-status to your IDOC...then have a async send step...
    5)
    a)If sync send used: then you can have a condition like check the status of upload of x-number and if successful then send the x-status.
    b) if failure then you can resend the x-number message.
    c) if async send then you can directly send your x-status message.
    Steps 3, 5(a), 5(b) can be avoided if async commn is used. If you want that your BPM runs somewhat faster then you can avoid the transformation steps....instead you can use the mappings in the respective interface detemination.
    Regards,
    Abhishek.

  • MonitorFor Processed XML Messages

    Hi Eveybody,
    I have a little problem with my message. I uploaded my xml with Transaction CG3Z from my directory to SAP system. I saw the xml in AL1. After a few minute it disappears and when I go to SXMB_MONI and I execute for check the process.
    The status is in Red Flag, the error is Transaction IDX1: Port ER6, client, RFC
                                                                            destination contains errors.
    Could you help me please?
    In advance thank you,
    Mohamed R.

    Hi,
    I did also that.
    I receive now another error: Runtime error RFC_NO_AUTHORITY has occurred
    Anybody know this runtime ?
    Thank you,
    Mohamed R.
    Edited by: rahhaoui mohamed on Feb 6, 2009 3:15 PM

  • Restart not possible (Xml message)

    Hi All,
    I am facing the following error in SXMB_MONI , restart is not possible & unable to check the payload.
    can any one please let me know what is the cause for it & how to resolve it.
    INTEGRATION_SERVER_PIP  - -
    Sender Component     
    urn:wssprocessorWsd/wssprocessorVi/document -
    sender name space     
    wssprocessorVi_Document----
    Sender Interface                         
    "Current Status"----
    >Version     
    Synchronous----
    >Type
    BE -
    >QOS          
    PROXY----
    Outbound Proxy
    & The Receiver components are Blank.
    Message Status is System Error RESTART NOT POSSIBLE(RED colour Round Button)

    Have you configured Receiver Determination with the appropriate target system and interfaces?  Looks like your target system is down or connectivity errror...
    Go to SXMB_MONI and pick that message and navigate pipeline steps and see where it fails.. Also the steps it fails you check the payload or response mesg and you will see the details of error.
    Also go to RWB and check your communication channel monitoring  area. See any help you get.
    Also go to RWB and go to message monitoring. See the inbound side of the interface and see what is the reason for the error.. Sometime if the receiver comm channel or target system has issue you mesg stop.
    Check SMQ1 and SMQ2 and see any locks for those mesgs. If so remove locks and activate again.

Maybe you are looking for