<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Question Re: CPI IDoc processing EOIO in Technology Q&amp;A</title>
    <link>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516788#M4691340</link>
    <description>&lt;P&gt;Hi Anthony,&lt;/P&gt;&lt;P&gt;We have tried to customise EOIO technique, generic, not specifically for sending IDOCS but if you wish you could give it a try.&lt;/P&gt;&lt;P&gt;It is currently working for us, however there are few performance level issues with tenant as we have to store the payloads. The performance issues are very specific to high-volume failures.&lt;/P&gt;&lt;P&gt;&lt;IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/attachments/storage/7/attachments/2008101-image.png" /&gt;&lt;/P&gt;&lt;P&gt;First Flow:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;As message arrives from Sender the message is stored in 2 data store instances.&lt;OL&gt;&lt;LI&gt;DS1 :: Stores GUID and Payload&lt;/LI&gt;&lt;LI&gt;DS2 :: Stores GUID and Timestamp&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Second Flow:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;A timer event will keep checking the DS2 datastore for entries.&lt;/LI&gt;&lt;LI&gt;One the entries are read for that time those will be passed-on to a stylesheet mapping (XSLT) for sorting. (two level sorting is in consideration - current solution is available with only one sorting based on TimeStamp)&lt;OL&gt;&lt;LI&gt;Sorting on ObjectUnique ID &lt;/LI&gt;&lt;LI&gt;Sorting on TimeStamp &lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;After sorting Chronologically (on GUID), another "get" call will be done on DS1 datastore to fetch the payload for processing.&lt;/LI&gt;&lt;LI&gt;These will be done sequentially 1 by 1. (To achieve "Exactly Once In Order") .&lt;/LI&gt;&lt;LI&gt;On successful sent to target system the entry from data store (DS1 and DS2) would be deleted.&lt;/LI&gt;&lt;LI&gt;In case of failure the process fails and we leverage OOTB feature of DataStore. &lt;EM&gt;&lt;STRONG&gt;"The message doesn't get deleted till it is successfully deleted from Datastore" &lt;/STRONG&gt;&lt;/EM&gt;hence it is available for re-processing.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Let me know if you wish to see the sample iflow and I will try to send the template.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ash&lt;/P&gt;</description>
    <pubDate>Mon, 10 Jan 2022 00:47:54 GMT</pubDate>
    <dc:creator>former_member786787</dc:creator>
    <dc:date>2022-01-10T00:47:54Z</dc:date>
    <item>
      <title>CPI IDoc processing EOIO</title>
      <link>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaq-p/12516787</link>
      <description>&lt;P&gt;I'm faced with a requirement to implement an EOIO queue for inbound IDocs from CPI to an R/3 system. I am experienced with PI/PO and know how to do it in that environment, but not with CPI. I haven't been able to find anything on the internet that explains how to do this.&lt;BR /&gt;&lt;BR /&gt;Has anybody done this, or knows of a blog where this has been done? Ideally, I would like to route the IDocs to a bgRFC queue.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Dec 2021 10:20:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaq-p/12516787</guid>
      <dc:creator>anthony_bateman3</dc:creator>
      <dc:date>2021-12-15T10:20:39Z</dc:date>
    </item>
    <item>
      <title>Re: CPI IDoc processing EOIO</title>
      <link>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516788#M4691340</link>
      <description>&lt;P&gt;Hi Anthony,&lt;/P&gt;&lt;P&gt;We have tried to customise EOIO technique, generic, not specifically for sending IDOCS but if you wish you could give it a try.&lt;/P&gt;&lt;P&gt;It is currently working for us, however there are few performance level issues with tenant as we have to store the payloads. The performance issues are very specific to high-volume failures.&lt;/P&gt;&lt;P&gt;&lt;IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/attachments/storage/7/attachments/2008101-image.png" /&gt;&lt;/P&gt;&lt;P&gt;First Flow:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;As message arrives from Sender the message is stored in 2 data store instances.&lt;OL&gt;&lt;LI&gt;DS1 :: Stores GUID and Payload&lt;/LI&gt;&lt;LI&gt;DS2 :: Stores GUID and Timestamp&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Second Flow:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;A timer event will keep checking the DS2 datastore for entries.&lt;/LI&gt;&lt;LI&gt;One the entries are read for that time those will be passed-on to a stylesheet mapping (XSLT) for sorting. (two level sorting is in consideration - current solution is available with only one sorting based on TimeStamp)&lt;OL&gt;&lt;LI&gt;Sorting on ObjectUnique ID &lt;/LI&gt;&lt;LI&gt;Sorting on TimeStamp &lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;After sorting Chronologically (on GUID), another "get" call will be done on DS1 datastore to fetch the payload for processing.&lt;/LI&gt;&lt;LI&gt;These will be done sequentially 1 by 1. (To achieve "Exactly Once In Order") .&lt;/LI&gt;&lt;LI&gt;On successful sent to target system the entry from data store (DS1 and DS2) would be deleted.&lt;/LI&gt;&lt;LI&gt;In case of failure the process fails and we leverage OOTB feature of DataStore. &lt;EM&gt;&lt;STRONG&gt;"The message doesn't get deleted till it is successfully deleted from Datastore" &lt;/STRONG&gt;&lt;/EM&gt;hence it is available for re-processing.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Let me know if you wish to see the sample iflow and I will try to send the template.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ash&lt;/P&gt;</description>
      <pubDate>Mon, 10 Jan 2022 00:47:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516788#M4691340</guid>
      <dc:creator>former_member786787</dc:creator>
      <dc:date>2022-01-10T00:47:54Z</dc:date>
    </item>
    <item>
      <title>Re: CPI IDoc processing EOIO</title>
      <link>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516789#M4691341</link>
      <description>&lt;P&gt;Hi Ash,&lt;/P&gt;&lt;P&gt;Thank you, that is a nice solution! I appreciate your reply.&lt;/P&gt;</description>
      <pubDate>Mon, 10 Jan 2022 20:14:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516789#M4691341</guid>
      <dc:creator>anthony_bateman3</dc:creator>
      <dc:date>2022-01-10T20:14:10Z</dc:date>
    </item>
    <item>
      <title>Re: CPI IDoc processing EOIO</title>
      <link>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516790#M4691342</link>
      <description>&lt;P&gt;Hi Ashish,&lt;/P&gt;&lt;P&gt;We have similar requirement. Can you share the template?&lt;/P&gt;&lt;P&gt;For example, we have 10 messages in the Datastore and when the target application is up and running the first 3 messages posted successfully. When posting the 4th message again the application is not reachable due to connectivity issues. Can we still process the messages in the order or the failed message position will get changed in runtime? Please suggest.&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Bhargava krishna&lt;/P&gt;</description>
      <pubDate>Thu, 01 Jun 2023 05:07:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516790#M4691342</guid>
      <dc:creator>Bhargavakrishna</dc:creator>
      <dc:date>2023-06-01T05:07:31Z</dc:date>
    </item>
    <item>
      <title>Re: CPI IDoc processing EOIO</title>
      <link>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516791#M4691343</link>
      <description>&lt;P&gt;Hi &lt;SPAN class="mention-scrubbed"&gt;anthony_bateman&lt;/SPAN&gt; and Ashish,&lt;/P&gt;&lt;P&gt;Currently, CPI does not have native support for EOIO message processing. &lt;/P&gt;&lt;P&gt;Regarding the solution shared by Ashish, it should work as long as your tenant is running with only one worker/runtime node. However, if the number of runtime nodes for your tenant has increased, the interface will fetch messages from the Datastore in parallel with respect to the runtime nodes. &lt;/P&gt;&lt;P&gt;For example, if the tenant has 3 runtime nodes, then 3 messages from the Datastore will be picked and processed simultaneously. As a result, the sequence of messages cannot be guaranteed.&lt;/P&gt;&lt;P&gt;I'm curious to know if this question and solution are still relevant or if you have found any other workaround to achieve your goal.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen&lt;/P&gt;</description>
      <pubDate>Sat, 03 Jun 2023 02:18:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/12516791#M4691343</guid>
      <dc:creator>naveen4796</dc:creator>
      <dc:date>2023-06-03T02:18:16Z</dc:date>
    </item>
    <item>
      <title>Re: CPI IDoc processing EOIO</title>
      <link>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/13624988#M4820383</link>
      <description>Do you have a detailed solution for this?</description>
      <pubDate>Fri, 01 Mar 2024 09:32:18 GMT</pubDate>
      <guid>https://community.sap.com/t5/technology-q-a/cpi-idoc-processing-eoio/qaa-p/13624988#M4820383</guid>
      <dc:creator>lagupta1</dc:creator>
      <dc:date>2024-03-01T09:32:18Z</dc:date>
    </item>
  </channel>
</rss>

