https://raw.githubusercontent.com/ajmaradiaga/feeds/main/scmt/topics/SAP-Process-Integration-blog-posts.xml SAP Community - SAP Process Integration 2024-05-20T20:01:17.806858+00:00 python-feedgen SAP Process Integration blog posts in SAP Community https://community.sap.com/t5/technology-blogs-by-members/b2b-tpm-on-sap-btp-integration-suite-migration-sap-po-boomi-edi-providers/ba-p/13578709 B2B/TPM on SAP BTP Integration Suite migration (SAP PO, Boomi, EDI Providers and home-grown apps) 2023-12-12T11:54:48+01:00 MichalKrawczyk https://community.sap.com/t5/user/viewprofilepage/user-id/45785 <H2 id="toc-hId-964077932"><STRONG>Summary</STRONG></H2><BR /> SAP BTP Integration Suite has matured in the B2B/EDI space over the years and a much broader adoption is currently happening but what to consider for this type of migration? In this article I will try to answer why does it make sense to move to SAP BTP Integration Suite B2B functionality, when to take this step, what is it made of and how to do it without disrupting the most important integration flows for many companies, responsible for selling, buying, and shipping most of the products.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/migration.png" /></P><BR /> Figure - SAP PO, Boomi, EDI provider (OpenText) migration to SAP BTP Integration Suite TPM/B2B.<BR /> <H2 id="toc-hId-767564427"><STRONG>WHY - why move your EDI integration to SAP BTP Integration Suite B2B/TPM? </STRONG></H2><BR /> There are two aspects of that question. The first one is related to the fact why move at all if the old system is working and without any doubts it will be a challenging process. Because the cost of doing nothing can be very high and maybe it’s time to think about it:<BR /> <UL><BR /> <LI>How many CR (change requests) were not implemented or implemented with a big delay on the current landscape?</LI><BR /> <LI>How much does it cost to run the EDI on-premise?</LI><BR /> <LI>Where there any scalability issues that required additional cost?</LI><BR /> <LI>Was there any downtime caused by the old integration platform?</LI><BR /> <LI>Is the current integration platform ready for new EDI types of connections?</LI><BR /> <LI>Is the company bound to use a single Service Integrator (SI) or vendor resources as no one else can operate the current EDI solution?</LI><BR /> <LI>What is the employee productivity with the current integration platform?</LI><BR /> <LI>Is there any technical debt related to using the current integration platform?</LI><BR /> </UL><BR /> <BLOCKQUOTE><BR /> <H1 id="toc-hId-441968203">"In the realm of innovation preparations, one must question how does the cost of inaction can be confidently calculated - Michal Krawczyk"</H1><BR /> </BLOCKQUOTE><BR /> Once you answer the first question on the cost of doing nothing then you might get into some more detailed questions depending on the type of your current EDI/B2B integration solution:<BR /> <H3 id="toc-hId-503620136">SAP Process Orchestration B2B addon (SAP PO)</H3><BR /> <UL><BR /> <LI>Does it make sense to stay on the on-premises solution with an end of life in 2027?</LI><BR /> <LI>How quickly can you do the changes without the Integration Advisor?</LI><BR /> </UL><BR /> <H3 id="toc-hId-307106631">Boomi, other iPaaS solutions</H3><BR /> <UL><BR /> <LI>Does it make sense to use nonSAP solution in case all your business processed using EDI are running on SAP?</LI><BR /> <LI>Is the topic of skill consolidation important at your company or do you prepare to have different teams/vendors for each part of your internal business processes?</LI><BR /> </UL><BR /> <H3 id="toc-hId-110593126">EDI providers like OpenText</H3><BR /> <UL><BR /> <LI>What is more important for you at the current stage of your SAP program: EDI/B2B integration delivery speed and accountability of the whole process or cost of EDI transactions?</LI><BR /> <LI>Are you fine with outsourcing parts of the most important processes of your company (selling, buying, shipping) to a middleman?</LI><BR /> </UL><BR /> <H3 id="toc-hId--85920379">Home grown applications</H3><BR /> <UL><BR /> <LI>Do you have and will continue to have a very strong internal development team who will always be there to support you?</LI><BR /> <LI>What is the cost of adding new functions to the home grown application?</LI><BR /> <LI>Is the topic of skill consolidation important at your company or do you prepare to have different teams/vendors for each part of your internal business processes?</LI><BR /> </UL><BR /> <H2 id="toc-hId--411516603"><STRONG>WHEN – when is the time to plan and the move to SAP BTP Integration Suite? </STRONG></H2><BR /> Best way to find out when is to have a look at the Roadmap explorer and put in the “<A href="https://roadmaps.sap.com/board?PRODUCT=000D3A47875C1EDB98A8A910864AC24B&amp;range=CURRENT-LAST&amp;BC=42F2E964F4E71EDA9FF9F6612D71E0E3#Q4%202023" target="_blank" rel="noopener noreferrer">B2B Integration</A>” phrase but the number of new B2B features is overwhelming.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/roadmap.png" height="392" width="592" /></P><BR /> Figure - B2B integration feature roadmap in SAP BTP Integration Suite<BR /> <H2 id="toc-hId--608030108"><STRONG>HOW – how to simplify the move to SAP BTP Integration Suite?</STRONG></H2><BR /> <H3 id="toc-hId--675460894">First thing first - learn!</H3><BR /> You need to learn how to work with SAP BTP Integration Suite and the best way to do it is to use SAP community knowledge:<BR /> <UL><BR /> <LI>openSAP course “<A href="https://open.sap.com/courses/btp4" target="_blank" rel="noopener noreferrer">Manage B2B Scenarios Effectively with SAP Integration Suite</A>”</LI><BR /> <LI style="overflow: hidden"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/learn1.png" height="321" width="504" /></LI><BR /> <LI>An amazing blog series by Bhavesh Kantilal (link in the reference section)</LI><BR /> </UL><BR /> &nbsp;<BR /> <H3 id="toc-hId--947205768">Automate testing</H3><BR /> Testing is 65% of your EDI migration project. If you want to move to SAP BTP Integration Suite, it may be worth making sure your EDI/B2B flows will continue working after the migration so it might be useful to run automated testing for this program. Int4 Shield is not only recommended solution by SAP for this type of programs, but it’s also used by SAP for RiseWithSAP service called “SAP BTP Integration Suite testing” and used by SAP consulting for SAP BTP Integration Suite EDI/B2B migration projects. With Int4 Shield you can easily model the whole EDI message exchange (made of multiple iflows – sender, transformation, and receiver) in a single testable unit and run it as often as you wish as shown in the figures below:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/combine_iflows.png" /></P><BR /> Figure - Combine all iflows of a typical B2B/EDI scenario (sender, transformation and receiver) in one test using Int4 Shield<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/filecompare.png" height="534" width="585" /></P><BR /> <P style="overflow: hidden;margin-bottom: 0px">Figure - results of a EDI file comparison using Int4 Shield</P><BR /> &nbsp;<BR /> <H3 id="toc-hId--1143719273">Simulate EDI partners</H3><BR /> Do you want to engage your EDI partners a lot for this migration program and literally make the project stop or would you like to simulate your EDI partners and have complete control of the program? If you want to control the speed of this migration project I’d advice to have a look at Unit 2: Simulating EDI partners based on historical transactions and Unit 3: How to virtualize messages from B2B partners and external applications of openSAP course “Avoid SAP S/4HANA Project Delays with Third-Party Systems Service Virtualization”.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/simulate_ed-1.png" /></P><BR /> Figure - Simulate EDI partners with Int4 Shield<BR /> <BR /> &nbsp;<BR /> <H3 id="toc-hId--1340232778">Last but not least - what about the new mappings?</H3><BR /> What to do if you migrate from non-SAP system to SAP BTP Integration Suite and you cannot reuse the mappings? Why not automatically generate them from historical messages? Have a look a this video explaining the concept of how generative Test Driven Development can help you generate the mappings automatically with Int4 Shield as per the video from SAP Devtoberfest 2023 below:<BR /> <BR /> <IFRAME width="560" height="315" src="https://www.youtube.com/embed/oVNRs2bJtcA&amp;ab_channel=SAPDevelopers" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen=""></IFRAME><BR /> <BR /> &nbsp;<BR /> <BR /> Wish you all the best with your SAP BTP Integration Suite B2B migrations!<BR /> <BR /> &nbsp;<BR /> <H2 id="toc-hId--1243343276">References</H2><BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-1-idoc-to-edi-flows/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 1 – IDoc to EDI Flow(s)</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-2-edi-to-idoc-flowss/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 2 – EDI to IDoc Flows(s)</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-3-edi-over-as2-to-idoc-flowss/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 3 – EDI over AS2 to IDoc Flows(s)</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-4-idoc-to-edi-over-as2-flows/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 4 – IDoc to EDI over AS2 Flow(s)</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-5-custom-idoc-flow/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 5 – Custom IDoc Flow</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-6-custom-search-attributes/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 6 – Custom Search Attributes</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-7-edi-functional-acknowledgements-for-inbound-edi-messages/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 7 – EDI Functional Acknowledgements for Inbound EDI Messages</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-8-edi-functional-acknowledgements-for-outbound-edi-messages/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 8 – EDI Functional Acknowledgements for Outbound EDI Messages</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-9-outgoing-idoc-bundling/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 9 – Outgoing IDoc Bundling</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-10-outgoing-idoc-bundling-with-edi-bundling/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 10 – Outgoing IDoc Bundling With EDI Bundling</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-11-handling-parameters/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 11 – Handling Parameters</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-part-12-migrating-sap-pi-po-b2b-mappings-without-tpm/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – Part 12 – Migrating SAP PI / PO B2B Mappings without TPM</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-13-migrating-sap-pi-po-b2b-mappings-with-tpm/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 13 – Migrating SAP PI / PO B2B Mappings with TPM</A><BR /> <BR /> <A href="https://www.sprintegrate.com/cpi/b2b-on-sap-integration-suite-cloud-integration-cpi-using-trading-partner-management-part-14-handling-bundled-incoming-edis/" target="_blank" rel="nofollow noopener noreferrer">B2B on SAP Integration Suite – Cloud Integration – CPI – using Trading Partner Management – Part 14 – Handling Bundled Incoming EDIs</A><BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp; 2023-12-12T11:54:48+01:00 https://community.sap.com/t5/technology-blogs-by-sap/frequently-asked-questions-faq-on-edge-integration-cell/ba-p/13571636 Frequently Asked Questions (FAQ) on Edge Integration Cell 2023-12-14T21:21:29+01:00 finny_babu https://community.sap.com/t5/user/viewprofilepage/user-id/184977 <P><STRONG>Background</STRONG><BR />With so much anticipation after the release of Edge Integration Cell in SAP Integration Suite, I realise that there are many questions that needs to be addressed specifically. Hence giving it a shot to create this Frequently Asked Questions for Edge Integration Cell, hoping that it answers most of the burning questions.<BR /><BR />&nbsp;<BR /><STRONG>What is Edge Integration Cell?</STRONG><BR />“Edge Integration Cell” is the new flexible hybrid integration <STRONG>runtime</STRONG>, offered as an <STRONG>optional</STRONG> extension to SAP Integration Suite, enabling customers to manage APIs and run their integration scenarios within customer-managed private landscapes.<BR /><BR />&nbsp;<BR /><STRONG>What are the key features of Edge Integration Cell?</STRONG></P><UL><LI>Flexible deployment option in customer managed private kubernetes environments (Azure AKS, Amazon EKS, SUSE Rancher)</LI></UL><UL><LI>Design, configure and monitor integrations and APIs in the cloud but run them within your private landscape</LI></UL><UL><LI>Configure and manage multiple Edge Integration Cells with an SAP Integration Suite cloud tenant</LI></UL><UL><LI>Offers a migration path for PI/PO customers, to move to SAP Integration Suite, and still be able to run scenarios within their private landscape</LI></UL><P><BR /><STRONG>What are the main use cases and when should I use Edge Integration Cell?</STRONG></P><UL><LI>Supports data compliance and governance by processing data locally</LI></UL><UL><LI>Elevate the transformation journey for SAP PI/PO customers</LI></UL><UL><LI>Suitable for on-premise to on-premise integrations</LI></UL><UL><LI>Leverage it for API-led and event-driven integrations in your private landscape</LI></UL><UL><LI>Business continuity during temporary connectivity loss (<EM>part of 2024 roadmap</EM>)</LI></UL><UL><LI>High Availability setup for backup with multiple Edge Integration Cells in different clusters</LI></UL><P>&nbsp;<BR /><STRONG>Which Kubernetes containerised platforms are currently supported and which other containerised platforms support is planned?</STRONG><BR />As of now, the supported Kubernetes platforms are Microsoft Azure AKS, Amazon EKS and SUSE Rancher. We plan to support RedHat OpenShift as additional K8s platform as part of the roadmap.<BR /><BR />&nbsp;<BR /><STRONG>How do I install and set it up?</STRONG><BR />You can find the detailed steps to setup and install Edge Integration Cell in this <A href="https://blogs.sap.com/2023/11/16/next-gen-hybrid-integration-with-sap-integration-suite-edge-integration-cell-introduction-setup/" target="_blank" rel="noopener noreferrer">blog</A>.<BR /><BR /><BR /><STRONG>Why there is no "Runtime" tab under Settings even though I have the SAP Integration Suite license which is eligible for Edge Integration Cell?</STRONG><BR />You need to configure entitlements in the SAP BTP cockpit and then you will see this available in your SAP Integration Suite tenant. Please check this blog on <A href="https://blogs.sap.com/2023/11/16/next-gen-hybrid-integration-with-sap-integration-suite-edge-integration-cell-introduction-setup/" target="_blank" rel="noopener noreferrer">setup and installation</A> for more details.<BR />&nbsp;</P><P><STRONG>What is the licensing model?</STRONG></P><UL><LI>Every SAP Integration Suite licensed tenant (via standard edition, premium edition, CPEA and PAYG) gets one entitlement of Edge Integration Cell included.</LI></UL><UL><LI>Additional Edge Integration Cell entitlements can be acquired through a separate add-on SKU.</LI></UL><UL><LI>Messages flowing through Edge Integration Cell(s) will be metered but only 50% of them are chargeable.</LI></UL><P>&nbsp;<BR /><STRONG>How much does the additional Edge Integration Cell cost?</STRONG><BR />You can find the pricing details here in the <A href="https://discovery-center.cloud.sap/serviceCatalog/integration-suite?tab=service_plan&amp;region=all" target="_blank" rel="noopener nofollow noreferrer">SAP Discovery Center</A>.<BR /><BR />&nbsp;<BR /><STRONG>Can I buy Edge Integration Cell with SAP Integration Suite Basic Edition?</STRONG><BR />No, Edge Integration Cell is available only with these SAP Integration Suite licenses (standard edition, premium edition, CPEA and PAYG).<BR /><BR />&nbsp;<BR /><STRONG>If a message flow from an integration flow deployed on Edge Integration Cell to another integration flow deployed on SAP Integration Suite, will it still be considered as one message or two?</STRONG><BR />Depends. If the message is flowing through unmodified SAP to SAP standard content in both the runtimes, then the message count will be 0. But if the message is flowing through modified standard content or custom content in both runtimes, then 1.5, since according to the licensing model of Edge Integration Cell only 50% messages are chargeable.<BR /><BR /><BR /><STRONG>Does it have all the features of Cloud Integration supported?</STRONG><BR />Not yet. We plan to provide feature parity between Edge Integration Cell and Cloud Integration. You can check the currently supported features and limitations in the<A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/supported-features-and-limitations-of-edge-integration-cell" target="_blank" rel="noopener noreferrer"> runtime scope</A>. Then later in addition, we plan to offer additional on-premise specific features and adapters. You can follow the progress of these feature deliveries via the <A href="https://roadmaps.sap.com/board?BC=5D0B020D64611EEE9CC93CB2AAD82BEB&amp;q=Edge%20Integration%20cell&amp;range=CURRENT-LAST&amp;PRODUCT=73555000100800003553#Q4%202023" target="_blank" rel="noopener noreferrer">roadmap</A> explorer.<BR /><BR />&nbsp;<BR /><STRONG>How do we size Edge Integration Cell?</STRONG><BR />We have published a <A href="https://help.sap.com/doc/b4d0660095654e2789de3d1e3ab1c199/CLOUD/en-US/Sizing_Guide_Edge_Integration_Cell.pdf" target="_blank" rel="noopener noreferrer">sizing guide</A> for Edge Integration Cell as a recommendation.<BR /><BR /></P><P><STRONG>Is there a way to have both runtime and design time deployed within a private landscape?</STRONG><BR />No, this is not possible. Edge Integration Cell is a runtime, which can be deployed in your private landscape. It uses the design time and monitoring of SAP Integration Suite in the cloud for designing, deploying and monitoring integrations and APIs but have the flexibility to run them on Edge Integration Cell.<BR /><BR />&nbsp;<BR /><STRONG>What will be the frequency of updates to Edge Integration Cell and how will it be applied? </STRONG><BR />Edge Integration Cell will also receive updates at "cloud" speed, that is, every 4 weeks, like we ship updates for SAP Integration Suite. Customers can check the Operate -&gt; Status Information to check the version details.</P><P><IMG src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/operate.jpg" border="0" /></P><P><BR />Or check if there is a the "warning" icon in Edge Lifecycle Management cockpit, which means that the software version is outdated and a newer version is available. Then click on the three dots next to Edge Integration Cell solution to upgrade to the latest version.</P><P><IMG src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/ELM.jpg" border="0" /></P><P><BR /><BR /><STRONG>Will there be support for older versions of Edge Integration Cell and for how many past versions?</STRONG><BR />Like mentioned above, there will be updates for Edge Integration Cell every 4 weeks. We recommend you to apply these updates as soon as they are available. But customers will have an option to delay the software update of Edge Integration Cell for additional 4 weeks from the time the update is available. So that means, that SAP will support the latest version (n) and one older version (n-1) than the latest version.&nbsp;We also plan to restrict deployment of new content to any older version of Edge Integration Cell beyond n-1 version. This is to ensure that you are on the latest version of the software and are consuming the latest innovations.<BR /><BR />&nbsp;<BR /><STRONG>How long does the update of Edge Integration Cell solution take?</STRONG><BR />Depends upon the network connectivity but it is usually quite fast.<BR /><BR />&nbsp;<BR /><STRONG>How is the responsibilities split between SAP and customer for Edge Integration Cell?</STRONG><BR />Here you can check out the roles and responsibilities of the customer split across 3 main personas - System Admin, Tenant Admin and Integration / API Developer.</P><P><IMG src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/persona.jpg" border="0" />Similar information is presented in a different perspective as the <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/operating-model" target="_blank" rel="noopener noreferrer">Operating Model</A> for Edge Integration Cell in the documentation.<BR /><BR /><BR /><STRONG>Will the monitoring data or payload get pulled to the cloud from Edge Integration Cell?</STRONG><BR />All the message processing and payload data is persisted on the Edge Integration Cell into the external database within the customers private landscape. The monitoring UI in the cloud pulls only the monitoring metadata using the APIs and displays this information to the end-user. But the payload data can move to the cloud only if "trace" log level is switched on in the monitoring.<BR /><BR /></P><P><STRONG>Is there a plan to support monitoring of Edge Integration Cell in SAP Cloud ALM?</STRONG><BR />Yes. The plan is to provide remote OData APIs for monitoring and operations of Edge Integration Cell and with this you will be able to integrate it to SAP Cloud ALM or SAP Focussed Run or any other 3rd party monitoring tools.<BR /><BR />&nbsp;<BR /><STRONG>Are there plans to support access policies at integration flow level for Edge Integration Cell?&nbsp;</STRONG><BR />Yes, this is planned and part of the roadmap.<BR /><BR />&nbsp;<BR /><STRONG>Are there plans to support offline mode for Edge Integration Cell?</STRONG><BR />Yes, we do plan to support offline mode for Edge Integration Cell, to ensure business continuity during temporary connectivity loss (for up to 4 hours).<BR /><BR />&nbsp;<BR /><STRONG>Will Edge Integration Cell have the features that are currently offered in SAP PI/PO?</STRONG><BR />SAP Integration Suite is the logical successor of SAP PI/PO. We have the Migration Assessment, Migration Tooling, Regression Test Tools from partners, and now Edge Integration Cell, to support this transformation journey from SAP PI/PO to SAP Integration Suite. Edge Integration Cell plays an important role in this whole journey, as it gives the customers an option to continue running specific scenarios on-prem or within their private landscape. There are also plans to provide on-prem specific adapters like RFC Sender, File, OFTP2, and X400 adapter on Edge Integration Cell.<BR /><BR />&nbsp;<BR /><STRONG>Is Edge Integration Cell available as part of RISE with SAP?</STRONG><BR />RISE with SAP comes with SAP BTP/CPEA entitlements which can be used to subscribe to SAP Integration Suite and this gives you entitlement to use Edge Integration Cell. You can install and setup Edge Integration Cell in your private landscape on one of the supported K8s platforms. But Edge Integration Cell is not available as a service hosted and managed by SAP within the RISE context.&nbsp;<BR /><BR /><BR /><STRONG>How many Edge Integration Cells can be managed by one SAP Integration Suite tenant?</STRONG><BR />You can assign up to 20 Edge Integration Cells to a Keystore and hence manage the same number of Edge Integration Cells with one SAP Integration Suite tenant.<BR /><BR />&nbsp;<BR /><STRONG>Which all regions is Edge Integration Cell available? If not available in a particular region, how can we request for it?</STRONG><BR />You can check for the available and planned regions for Edge Integration Cell in the <A href="https://me.sap.com/notes/3379690/E" target="_blank" rel="noopener noreferrer">SAP note</A>. Some regions are available on demand and can be enabled based on customer request.<BR /><BR />&nbsp;<BR /><STRONG>How to setup High Availability for Edge Integration Cell?</STRONG><BR />You can check the recommendations on HA setup for Edge Integration Cell in the <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/high-availability" target="_blank" rel="noopener noreferrer">documentation.</A><BR /><BR />&nbsp;<BR /><STRONG>Can I use the internal persistence (PostgreSQL &amp; Redis) of Edge Integration Cell for productive scenarios?</STRONG><BR />No, the internal persistence of Edge Integration Cell can be used only for test and demo purposes as these built-in services aren't highly available, nor scalable as required for a production environment. For a production environment, you need to use an external PostgreSQL database and a Redis data store outside the Edge Integration Cell deployment.<BR /><BR /><BR /><STRONG>Can the Cloud Connector which is part of Edge Lifecycle Management be used for other applications other than Edge Integration Cell?</STRONG><BR />The Cloud Connector as part of Edge Lifecycle Management is inbuilt and cannot be used separately for any other applications. Refer to the <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/technical-landscape-edge?q=Technical" target="_blank" rel="noopener noreferrer">technical landscape</A> of Edge Integration Cell for more details.<BR /><BR /><BR /><STRONG>Can the Kubernetes Cluster be shared with other applications?&nbsp;</STRONG><BR />It is strongly recommended to use dedicated K8s cluster for Edge Integration Cell and not share it with any other applications which has higher resource requirements.<BR /><BR /><BR /><STRONG>Can one Kubernetes cluster host multiple Edge Integration Cell deployments?</STRONG><BR />The <SPAN class="">Edge Integration Cell</SPAN> deployment uses a fixed K8s namespace (edge-icell). Therefore, multiple deployments in the same cluster is not possible.<BR />&nbsp;</P><P><STRONG>Conclusion</STRONG><BR />Hope this blog helped you get most of your questions answered. If you still have questions, feel free to add them in the comments section and we will respond to them.</P> 2023-12-14T21:21:29+01:00 https://community.sap.com/t5/technology-blogs-by-members/enabling-pagination-in-sap-po/ba-p/13579571 Enabling Pagination in SAP PO 2023-12-19T02:39:12+01:00 vijender_p https://community.sap.com/t5/user/viewprofilepage/user-id/226033 <P style="text-align: left"><SPAN style="text-decoration: underline"><B>How to enable pagination in SAP PO</B></SPAN></P><BR /> <P style="text-align: left">We have a requirement where we need to call the api’s to get the data but there is a limitation where we can retrieve only 50 records per one call, hence we need to come up with an approach where we can do multiple calls and get all the open items. API is providing an offset parameter that can help us to control the pagination part.</P><BR /> <SPAN style="text-decoration: underline"><B>Approach</B></SPAN><BR /> <BR /> <SPAN style="font-weight: 400">Configure REST Polling option on the REST adapter and configure the GET call</SPAN><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/Capture-2.png" /></P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/Capture-3.png" /></P><BR /> &nbsp;<BR /> <BR /> <SPAN style="font-weight: 400">Once the data is retrieved, we can have 2 Routing rules in ICO which would send the data to SAP and other to get the next 50 records from the API URL.</SPAN><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/Capture-4.png" /></P><BR /> &nbsp;<BR /> <BR /> <SPAN style="font-weight: 400">When calling the API to get the next 50 we have made the offset parameter dynamic and that value is controlled from message mapping level.</SPAN><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/Capture-5.png" /></P><BR /> &nbsp;<BR /> <BR /> <SPAN style="font-weight: 400">Here is the tricky part where we need to delegate the response of the GET call to another ICO through the virtual receiver concept.</SPAN><BR /> <BR /> <SPAN style="font-weight: 400">We need to configure a series of standard adapter modules that would help us to trigger the second virtual ICO which would have the identical mappings of the main ICO. This virtual ICO will be executed multiple times until all the records are retrieved from API.</SPAN><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/Capture-6.png" /></P><BR /> &nbsp;<BR /> <BR /> <SPAN style="font-size: 1rem">Here DynamicConfigurationBean is used to pass the offset value to the virtual ICO to ensure duplicate calls are not made, this will ensure offset values are properly propagated .</SPAN><BR /> <BR /> <SPAN style="font-weight: 400">RequestResponseBean and ResponseOnewayBean are used to ensure data is directed to the appropriate virtual ICO.</SPAN><BR /> <BR /> <SPAN style="font-weight: 400">Through this approach we could see that we are able to efficiently handle the pagination part, another approach would be where SAP could be the trigger point and ABAP proxy can control the offset variable and execute the looping of the service interface so multiple calls are made to the API. </SPAN> 2023-12-19T02:39:12+01:00 https://community.sap.com/t5/technology-blogs-by-members/sap-po-message-download-tool/ba-p/13572048 SAP PO Message Download tool 2023-12-26T23:34:57+01:00 platinumicef https://community.sap.com/t5/user/viewprofilepage/user-id/353185 <H2 id="toc-hId-963892582">Introduction</H2><BR /> Integration support activities often require communication with support team for third-party systems. If there are any problems with inbound or outbound messages it is most useful to obtain message payloads for futher inspection. This inspection may be done internally or forwarded to a third party. This means exporting some messages directly from SAP PO Message Monitor (Java stack). Downloading 5, 10, 20 or even 50 messages may be manageable. However when number of messages does higher than 100 it is not possible to proceed without a tool.<BR /> <BR /> In order to download and package messages efficiently I have developed a specialized tool -- <STRONG>SAP PO Message Download tool</STRONG>. This command-line tool allows you to download messages directly from SAP PO system given a list of message IDs (stored in one text file). Files are downloaded and put into ZIP archive file for easy handling. Tool supports multi-threading, message grouping and saving raw data as returned by SAP PO.<BR /> <H2 id="toc-hId-767379077">Example use case</H2><BR /> Minimal required options are as follows:<BR /> <UL><BR /> <LI>(<EM>-ids &lt;file.txt&gt;</EM>) — text file containing list of message IDs to download</LI><BR /> <LI>(<EM>-connection &lt;file.txt&gt;</EM>) — text file containing connection data for SAP PO</LI><BR /> </UL><BR /> Below is an example run of the tool:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-27-010621.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">PO message are sucessfully downloaded</P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-27-010827-1.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Folder structure inside created ZIP archive</P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-27-010901.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Message payloads</P><BR /> I would recommand also specifying <STRONG>-log</STRONG> option and <STRONG>-stage</STRONG> options. They allow to specify which LOG and STAGE versions respectively must be saved.<BR /> <BR /> All available options (can be accessed by running <STRONG>downloader --help</STRONG>)<BR /> <PRE class="language-abap"><CODE>Usage of downloader.exe:<BR /> -connection string<BR /> Required. Path to connection file (contains systems address, username and password)<BR /> -groupby string<BR /> Group payloads by message ID, message version or both (default "version")<BR /> -ids string<BR /> Required. Path to a list of message IDs to download, one message per line.<BR /> -log string<BR /> Comma-separated list of log versions which must be exported. Supports standard version names (BI, MS, etc) and special values (all, none, json, jsonsend, jsonrecv). See details in documentation. (default "all")<BR /> -nocomment<BR /> If specified, no text comment will be added to ZIP file (applies to -zip all).<BR /> -opendir<BR /> Open destination folder in Explorer when download process ends<BR /> -output string<BR /> Destination folder to save exported payloads (default "./export/")<BR /> -raw<BR /> If specified, raw contents (multipart message format) be saved as payload<BR /> -stage string<BR /> Comma-separated list of staging version numbers (0, 1, 2, ...) which must be exported. Special values (all, last, none) are acceptable. See details in documentation. (default "all")<BR /> -statsonly<BR /> If specified, only statistics on available message versions will be displayed. No actual download will happen.<BR /> -threads int<BR /> Number of parallel HTTP download threads (default 2)<BR /> -xiheader<BR /> If specified, XI header will be saved as payload<BR /> -zip string<BR /> Mode of compression for exported payloads. Available options are: (n)one, (f)ile, (a)ll (default "all")</CODE></PRE><BR /> Please refer to full documentation for detailed description of each option.<BR /> <H2 id="toc-hId-570865572">Useful resources</H2><BR /> Full documentation with all avialable command-line options is available at <A href="https://github.com/platinumICE/sap-po-tools/tree/main/downloader#readme" target="_blank" rel="nofollow noopener noreferrer">Github repository</A><BR /> <BR /> Released binaries are available at&nbsp;<A href="https://github.com/platinumICE/sap-po-tools/releases" target="_blank" rel="nofollow noopener noreferrer">Github repository releases</A>.<BR /> <BR /> Any comments and suggestions are welcome here and at Github repository.<BR /> <H3 id="toc-hId-503434786">Thank you</H3><BR /> &nbsp; 2023-12-26T23:34:57+01:00 https://community.sap.com/t5/technology-blogs-by-members/test-scenerio-processdirect/ba-p/13573089 Test Scenerio - ProcessDirect 2024-01-02T09:06:07+01:00 Dushyant_Garg https://community.sap.com/t5/user/viewprofilepage/user-id/879140 <STRONG><U>Scenerio:</U></STRONG><BR /> <BR /> Customer Order data is coming from sender using SOAP adaptor. CPI should generate order_no acc. to the given format. After generating order_no we need to add a field company_name. After this we need to check the action is Pending/Not_Available/Delivered.<BR /> <BR /> If its pending then its end the flow, if its delivered then it direct to another IFlow using Process Direct in which we are generating TransactionId according to the given format. One its generated it should send the mail to the customer and the company admin mail, if its Not_Available it should end and send the mail to the customer and admin that your order is not available.<BR /> <PRE class="language-abap"><CODE>Order_no: random alphanumeric string of length 6 and concat it with quantity and Item as below.<BR /> <BR /> Example: Item:- xyz, Quantity: 1 =&gt; Order_no = AB12CDxyz1<BR /> <BR /> TransactionId:- Random alpha character string of length 10 and concat it with the Order_no.<BR /> <BR /> Example: ABCDEFGHIJAB12CD1xyz</CODE></PRE><BR /> <STRONG><U>Steps:</U></STRONG><BR /> <OL><BR /> <LI>Create an IFlow connect with sender using SOAP 1x adaptor as it is one way communication.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/1-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/3-1.png" /></LI><BR /> <LI>Add message mapping pallete and add source and target xsd as per the data.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/2-1.png" /></LI><BR /> </OL><BR /> <STRONG><U>Source XSD:</U></STRONG><BR /> <PRE class="language-abap"><CODE>&lt;?xml version="1.0" encoding="utf-8"?&gt;<BR /> <BR /> &lt;!-- Created with Liquid Technologies Online Tools 1.0 (https://www.liquid-technologies.com) --&gt;<BR /> <BR /> &lt;xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"&gt;<BR /> <BR /> &lt;xs:element name="Order_root"&gt;<BR /> <BR /> &lt;xs:complexType&gt;<BR /> <BR /> &lt;xs:sequence&gt;<BR /> <BR /> &lt;xs:element maxOccurs="unbounded" name="Order"&gt;<BR /> <BR /> &lt;xs:complexType&gt;<BR /> <BR /> &lt;xs:sequence&gt;<BR /> <BR /> &lt;xs:element name="Orderno" /&gt;<BR /> <BR /> &lt;xs:element name="Cust_Name" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Cust_Add" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Item" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Action" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Quantity" type="xs:unsignedByte" /&gt;<BR /> <BR /> &lt;xs:element name="Email" type="xs:string" /&gt;<BR /> <BR /> &lt;/xs:sequence&gt;<BR /> <BR /> &lt;/xs:complexType&gt;<BR /> <BR /> &lt;/xs:element&gt;<BR /> <BR /> &lt;/xs:sequence&gt;<BR /> <BR /> &lt;/xs:complexType&gt;<BR /> <BR /> &lt;/xs:element&gt;<BR /> <BR /> &lt;/xs:schema&gt;</CODE></PRE><BR /> <STRONG><U>Target&nbsp; XSD:</U></STRONG><BR /> <PRE class="language-abap"><CODE>&lt;?xml version="1.0" encoding="utf-8"?&gt;<BR /> <BR /> &lt;!-- Created with Liquid Technologies Online Tools 1.0 (https://www.liquid-technologies.com) --&gt;<BR /> <BR /> &lt;xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"&gt;<BR /> <BR /> &lt;xs:element name="Order_root"&gt;<BR /> <BR /> &lt;xs:complexType&gt;<BR /> <BR /> &lt;xs:sequence&gt;<BR /> <BR /> &lt;xs:element maxOccurs="unbounded" name="Order"&gt;<BR /> <BR /> &lt;xs:complexType&gt;<BR /> <BR /> &lt;xs:sequence&gt;<BR /> <BR /> &lt;xs:element name="Orderno" /&gt;<BR /> <BR /> &lt;xs:element name="Cust_Name" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Cust_Add" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Item" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Action" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Quantity" type="xs:unsignedByte" /&gt;<BR /> <BR /> &lt;xs:element name="Company" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Email" type="xs:string" /&gt;<BR /> <BR /> &lt;/xs:sequence&gt;<BR /> <BR /> &lt;/xs:complexType&gt;<BR /> <BR /> &lt;/xs:element&gt;<BR /> <BR /> &lt;/xs:sequence&gt;<BR /> <BR /> &lt;/xs:complexType&gt;<BR /> <BR /> &lt;/xs:element&gt;<BR /> <BR /> &lt;/xs:schema&gt;</CODE></PRE><BR /> <OL start="3"><BR /> <LI>Configure Message Mapping.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/4-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/5-1.png" /></LI><BR /> </OL><BR /> <STRONG><U>Custom Function Script:</U></STRONG><BR /> <PRE class="language-abap"><CODE>import com.sap.it.api.mapping.*;<BR /> def String customFunc(String arg1){<BR /> def chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";<BR /> def random = new Random();<BR /> def sb = new StringBuilder(6);<BR /> for (int i = 0; i &lt; 6; i++) {<BR /> sb.append(chars.charAt(random.nextInt(chars.length())));<BR /> }<BR /> return sb.toString();<BR /> }</CODE></PRE><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/6-1.png" /></P><BR /> <BR /> <OL start="4"><BR /> <LI>Add Splitter to split the XML record and send to router.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/7-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/8-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/9-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/10-1.png" /></LI><BR /> </OL><BR /> Route 2 is ending as it is for Action Pending.<BR /> <BR /> Route 3 is connecting to receiver using process direct adaptor.<BR /> <BR /> Route 4 is connecting content modifier as we need customer mail id from the respective data.<BR /> <BR /> Route 5 is default if the action not defined it should end the flow.<BR /> <OL start="5"><BR /> <LI>Configuring route 4 as below.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/11-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/12-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/13-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/14-1.png" /></LI><BR /> <LI>Configure Process-Direct.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/16-2.png" /></LI><BR /> <LI>Save and deploy this IFlow and create another IFlow for processdirect.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/15-1.png" /></LI><BR /> <LI>Configure Process Direct, give the same address as you give in previous flow.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/16-2.png" /></LI><BR /> <LI>Add mapping pallete and source and target xsd.</LI><BR /> </OL><BR /> <STRONG>Source xsd should be same as the previous IFLOW Target xsd.</STRONG><BR /> <PRE class="language-abap"><CODE>&lt;?xml version="1.0" encoding="utf-8"?&gt;<BR /> <BR /> &lt;!-- Created with Liquid Technologies Online Tools 1.0 (https://www.liquid-technologies.com) --&gt;<BR /> <BR /> &lt;xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"&gt;<BR /> <BR /> &lt;xs:element name="Order_root"&gt;<BR /> <BR /> &lt;xs:complexType&gt;<BR /> <BR /> &lt;xs:sequence&gt;<BR /> <BR /> &lt;xs:element maxOccurs="unbounded" name="Order"&gt;<BR /> <BR /> &lt;xs:complexType&gt;<BR /> <BR /> &lt;xs:sequence&gt;<BR /> <BR /> &lt;xs:element name="Orderno" /&gt;<BR /> <BR /> &lt;xs:element name="Cust_Name" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Cust_Add" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Item" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Action" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Quantity" type="xs:unsignedByte" /&gt;<BR /> <BR /> &lt;xs:element name="Company" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Email" type="xs:string" /&gt;<BR /> <BR /> &lt;/xs:sequence&gt;<BR /> <BR /> &lt;/xs:complexType&gt;<BR /> <BR /> &lt;/xs:element&gt;<BR /> <BR /> &lt;/xs:sequence&gt;<BR /> <BR /> &lt;/xs:complexType&gt;<BR /> <BR /> &lt;/xs:element&gt;<BR /> <BR /> &lt;/xs:schema&gt;</CODE></PRE><BR /> <STRONG><U>Target XSD:</U></STRONG><BR /> <PRE class="language-abap"><CODE>&lt;?xml version="1.0" encoding="utf-8"?&gt;<BR /> <BR /> &lt;!-- Created with Liquid Technologies Online Tools 1.0 (https://www.liquid-technologies.com) --&gt;<BR /> <BR /> &lt;xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"&gt;<BR /> <BR /> &lt;xs:element name="Order_root"&gt;<BR /> <BR /> &lt;xs:complexType&gt;<BR /> <BR /> &lt;xs:sequence&gt;<BR /> <BR /> &lt;xs:element maxOccurs="unbounded" name="Order"&gt;<BR /> <BR /> &lt;xs:complexType&gt;<BR /> <BR /> &lt;xs:sequence&gt;<BR /> <BR /> &lt;xs:element name="Orderno" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Cust_Name" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Cust_Add" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Item" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Action" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Quantity" type="xs:unsignedByte" /&gt;<BR /> <BR /> &lt;xs:element name="Company" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Transition_ID" type="xs:string" /&gt;<BR /> <BR /> &lt;xs:element name="Email" type="xs:string" /&gt;<BR /> <BR /> &lt;/xs:sequence&gt;<BR /> <BR /> &lt;/xs:complexType&gt;<BR /> <BR /> &lt;/xs:element&gt;<BR /> <BR /> &lt;/xs:sequence&gt;<BR /> <BR /> &lt;/xs:complexType&gt;<BR /> <BR /> &lt;/xs:element&gt;<BR /> <BR /> &lt;/xs:schema&gt;</CODE></PRE><BR /> <OL start="10"><BR /> <LI>Configure Mapping.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/17-2.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/18-2.png" /></LI><BR /> </OL><BR /> <STRONG>Custom Function Groovy:</STRONG><BR /> <PRE class="language-abap"><CODE>import com.sap.it.api.mapping.*;<BR /> def String customFunc(String arg1){<BR /> def chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";<BR /> def random = new Random();<BR /> def sb = new StringBuilder(10);<BR /> sb.append(arg1);<BR /> for (int i = 0; i &lt; 8; i++) {<BR /> sb.append(chars.charAt(random.nextInt(chars.length())));<BR /> }<BR /> return sb.toString();<BR /> }</CODE></PRE><BR /> &nbsp;<BR /> <OL start="11"><BR /> <LI>Add Content modifier to store the customer email.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/19-1.png" /></LI><BR /> <LI>Configure XML to CSV convertor.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/20-1.png" /></LI><BR /> <LI>Configure Mail Adaptor.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/21-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/22-1.png" /></LI><BR /> <LI>Save and deploy the IFlow. Change the log of both IFlow to trace in monitoring.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/23-1.png" /></LI><BR /> <LI>Open SOAP UI to trigger the data.</LI><BR /> </OL><BR /> Refer below blog to use SOAP UI<BR /> <STRONG><A href="https://blogs.sap.com/2023/09/21/sending-xml-data-using-soap-adaptor-to-mail-using-message-mapping/" target="_blank" rel="noopener noreferrer">https://blogs.sap.com/2023/09/21/sending-xml-data-using-soap-adaptor-to-mail-using-message-mapping/</A></STRONG><BR /> <OL start="16"><BR /> <LI>Add sample data.</LI><BR /> </OL><BR /> <PRE class="language-abap"><CODE>&lt;Order_root&gt;<BR /> <BR /> &lt;Order&gt;<BR /> <BR /> &lt;Orderno&gt;&lt;/Orderno&gt;<BR /> <BR /> &lt;Cust_Name&gt;Sahil&lt;/Cust_Name&gt;<BR /> <BR /> &lt;Cust_Add&gt;xyz&lt;/Cust_Add&gt;<BR /> <BR /> &lt;Item&gt;Pen&lt;/Item&gt;<BR /> <BR /> &lt;Action&gt;Pending&lt;/Action&gt;<BR /> <BR /> &lt;Quantity&gt;1&lt;/Quantity&gt;<BR /> <BR /> &lt;Email&gt;abc@gmail.com&lt;/Email&gt;<BR /> <BR /> &lt;/Order&gt;<BR /> <BR /> &lt;Order&gt;<BR /> <BR /> &lt;Orderno&gt;&lt;/Orderno&gt;<BR /> <BR /> &lt;Cust_Name&gt;Dushyant&lt;/Cust_Name&gt;<BR /> <BR /> &lt;Cust_Add&gt;xyz&lt;/Cust_Add&gt;<BR /> <BR /> &lt;Item&gt;Notebook&lt;/Item&gt;<BR /> <BR /> &lt;Action&gt;Delivered&lt;/Action&gt;<BR /> <BR /> &lt;Quantity&gt;4&lt;/Quantity&gt;<BR /> <BR /> &lt;Email&gt;efg@gmail.com&lt;/Email&gt;<BR /> <BR /> &lt;/Order&gt;<BR /> <BR /> &lt;Order&gt;<BR /> <BR /> &lt;Orderno&gt;&lt;/Orderno&gt;<BR /> <BR /> &lt;Cust_Name&gt;Aman&lt;/Cust_Name&gt;<BR /> <BR /> &lt;Cust_Add&gt;xyz&lt;/Cust_Add&gt;<BR /> <BR /> &lt;Item&gt;Pencil&lt;/Item&gt;<BR /> <BR /> &lt;Action&gt;Not Available&lt;/Action&gt;<BR /> <BR /> &lt;Quantity&gt;2&lt;/Quantity&gt;<BR /> <BR /> &lt;Email&gt;ijk@gmail.com&lt;/Email&gt;<BR /> <BR /> &lt;/Order&gt;<BR /> <BR /> &lt;/Order_root&gt;</CODE></PRE><BR /> <OL start="17"><BR /> <LI>Check the customer mail.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/24-1.png" /><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2024/01/25-1.png" />I hope this blog helps you, if you have any concern or doubt, drop in the comment section.</LI><BR /> </OL><BR /> Thanks<BR /> <BR /> Dushyant 2024-01-02T09:06:07+01:00 https://community.sap.com/t5/technology-blogs-by-members/self-subcribe-to-specific-integration-scenarios-to-receive-push/ba-p/13601261 Self-subcribe to specific integration scenarios to receive push notification directly to device 2024-02-10T13:19:19.028000+01:00 Deepankar https://community.sap.com/t5/user/viewprofilepage/user-id/130201 <P style=" text-align : justify; "><STRONG><FONT size="6">Introduction</FONT></STRONG></P><P style=" text-align : justify; ">We usually use either SOLMAN, CALM, or in certain situations, even third-party solutions to notify responders of different error scenarios. The most common method of notifications is emails, the creation of work tickets, or direct posting to MS Teams channels. All these methods rely on the owners of these applications to configure the responder emails.</P><P style=" text-align : justify; ">In this blog, we showcase the capacity of&nbsp;<STRONG>push notification&nbsp;</STRONG>that directly gives power to the end-users to <EM><STRONG>subscribe themselves</STRONG></EM> to either the&nbsp;<STRONG>completion&nbsp;</STRONG>or <STRONG>failure&nbsp;</STRONG>of integration scenarios - circumventing the entire approval and delegation process. Push notifications are also non-invasive in nature as they do not flood the inbox with emails. This tool also facilitates subscribers to view the error that has simply occurred in the transactions.</P><P style=" text-align : justify; ">The intention of this tool is obviously not to replace CALM/SOLMAN, but rather complimenting those products with another added flexibility (of self-subcription).</P><P style=" text-align : justify; "><U><FONT size="4">Advantage of push-notification:</FONT></U></P><P style=" text-align : justify; ">There are several advantages of push notifications over emails (under obvious specific conditions). Some of them are:</P><UL style=" text-align : justify; "><LI><FONT size="4">Push notification are easy to subscribe.</FONT></LI><LI><FONT size="4">Push notification add urgency to the message.</FONT></LI><LI><FONT size="4">Triggering mechanism can be fully customized.</FONT></LI><LI><FONT size="4">Non-invasive (no spamming).</FONT></LI><LI><FONT size="4">Mandatory interaction required - cannot be ignored.</FONT></LI><LI><FONT size="4">Empowering the end-user to receive information outside the conventional delegation process.</FONT></LI></UL><P><FONT size="4">Tools used to create application: SAP CAP and SAP UI5.</FONT></P><P style=" text-align : justify; "><STRONG><FONT size="6">Architecture</FONT></STRONG></P><P style=" text-align : justify; "><FONT size="4">Comparison of this tool (notification feature only) with SOLMAN, CALM.</FONT></P><P style=" text-align : justify; "><FONT size="4"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Push Notification_2024-01-20_09-16-13 (002).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/63569i8ACF7A655BB2FBC6/image-size/large?v=v2&amp;px=999" role="button" title="Push Notification_2024-01-20_09-16-13 (002).png" alt="Push Notification_2024-01-20_09-16-13 (002).png" /></span></FONT></P><P style=" text-align : justify; ">As we can see above, this tool empowers business users to receive notifications directly to their devices when integration scenarios of interest are completed or fail. They can also view the logs of the message processing to view more details of the execution. However, this tool is not completely devoid of administration - the admin of this tool can view all the subscription that exists, and can also delete user subscriptions if required.</P><P style=" text-align : justify; ">&nbsp;</P><P style=" text-align : justify; "><FONT size="4"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Push notification architecture_2024-01-20_14-06-29 (002).png" style="width: 748px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/63570iB80CF30967928017/image-size/large?v=v2&amp;px=999" role="button" title="Push notification architecture_2024-01-20_14-06-29 (002).png" alt="Push notification architecture_2024-01-20_14-06-29 (002).png" /></span></FONT></P><P style=" text-align : justify; ">Above is the HLL architecture of the tool. This can be easily deployed to cloud foundry in BTP which has HANA cloud. Following are the salient features of the application:</P><UL style=" text-align : justify; "><LI>User can self-subscribe to any integration flow and will get notified in case of completion or errors.</LI><LI>User can self-subscribe different scenarios to different device.</LI><LI>Administrator can delete the subscription of any user.</LI></UL><P style=" text-align : justify; "><FONT size="6"><STRONG>Demo</STRONG></FONT></P><P style=" text-align : justify; "><FONT size="6"><STRONG><div class="video-embed-center video-embed"><iframe class="embedly-embed" src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FjUUDO4fArB0%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DjUUDO4fArB0&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FjUUDO4fArB0%2Fhqdefault.jpg&amp;key=b0d40caa4f094c68be7c29880b16f56e&amp;type=text%2Fhtml&amp;schema=youtube" width="600" height="337" scrolling="no" title="Aarini - SAP IS CI Push Notification" frameborder="0" allow="autoplay; fullscreen; encrypted-media; picture-in-picture;" allowfullscreen="true"></iframe></div></STRONG></FONT></P><P style=" text-align : justify; "><FONT size="6"><STRONG>Conclusion</STRONG></FONT></P><P style=" text-align : justify; ">SAP BTP is all about delivering innovation for the clients. This app coupled with SOLMAN and CALM will further enhance the notification experience for the customers who wants to be informed in the occurence of important events in mission critical interfaces. Now never miss an event.</P><P style=" text-align : justify; ">DM <A href="https://www.linkedin.com/in/deepankar-bhowmick-90619a3b/" target="_blank" rel="noopener nofollow noreferrer">Deepankar Bhowmick</A> to discuss more interesting ideas around integrations and implementation of highly customized solutions.</P> 2024-02-10T13:19:19.028000+01:00 https://community.sap.com/t5/technology-blogs-by-sap/integration-advisor-using-the-pre-transformation-feature-within-a-mapping/ba-p/13606186 Integration Advisor: Using the Pre-Transformation feature within a Mapping Guideline (MAG) 2024-02-15T17:09:35.581000+01:00 mert_oezkan https://community.sap.com/t5/user/viewprofilepage/user-id/142311 <H3 id="toc-hId-1115260052">Introduction</H3><P><SPAN>Hello dear SAP Integration community,</SPAN></P><P><SPAN>In this Blog I want to show how to use one of the powerful features in Integration Advisor - the "<A href="https://community.sap.com/t5/technology-blogs-by-sap/new-feature-in-integration-advisor-reordering-of-source-structure/ba-p/13563089" target="_self">Pre-Transformation</A>". This feature allows to transform the source Message Implementation Guideline (MIG) structure which significantly simplifies the logic between source and target within the Mapping Guideline (MAG).&nbsp;</SPAN></P><P><SPAN>In this case a shipment based advanced shipping notification which is a key document in collaboration between suppliers and customers is exchanged. A SOAP message is send from SAP S/4HANA which must be transformed to UN/EDIFACT and send to the specific Trading Partner.</SPAN></P><P><SPAN>Please note that the scope of this blog does not describe how to create and qualify MIGs. As a starting point you can refer to this blog:&nbsp;</SPAN><A href="https://community.sap.com/t5/technology-blogs-by-sap/integration-content-advisor-create-a-customized-interface-using-mig-editor/ba-p/13354699" target="_self">Create a customized interface using MIG editor</A></P><H3 id="toc-hId-918746547">Real world challenge</H3><P><SPAN>The shipment on the source side consists of multiple item segments, one with the gross details, multiple with package details and multiple with product details. They are all on the same segment level.<BR />However, one package can contain multiple products. And that is how the target side is expecting the content.</SPAN></P><H3 id="toc-hId-722233042"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MicrosoftTeams-image (6).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/65956i164B5847BDD774D6/image-size/large?v=v2&amp;px=999" role="button" title="MicrosoftTeams-image (6).png" alt="MicrosoftTeams-image (6).png" /></span></H3><DIV><DIV class="">Ideally, we should transform the source message in such a way that we group all products together which belong to one package.</DIV><DIV class=""><BR /><H3 id="toc-hId-525719537">Solution</H3><P>Looking at the source payload, for each PRD item an additional segment &lt;HierarchyRelationship&gt; is created pointing to the relevant PKG:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MicrosoftTeams-image (3).png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/65861i87FD8F4BF8824F77/image-size/medium?v=v2&amp;px=400" role="button" title="MicrosoftTeams-image (3).png" alt="MicrosoftTeams-image (3).png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MicrosoftTeams-image (4).png" style="width: 501px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/65862i75718A8010DE17E6/image-size/large?v=v2&amp;px=999" role="button" title="MicrosoftTeams-image (4).png" alt="MicrosoftTeams-image (4).png" /></span></P><P>And that is the information we need to do the Pre-Transformation.</P><P>In this case we have following relationship:</P><TABLE border="1" width="70%"><TBODY><TR><TD width="50%" height="30px"><STRONG>PKG ID</STRONG></TD><TD width="50%" height="30px"><STRONG>PRD ID</STRONG></TD></TR><TR><TD width="50%" height="30px">10</TD><TD width="50%" height="30px">150, 200, 160, 220, 230</TD></TR><TR><TD width="50%" height="30px">70</TD><TD width="50%" height="30px">170</TD></TR><TR><TD width="50%" height="30px">90</TD><TD width="50%" height="30px">180</TD></TR><TR><TD width="50%" height="30px">110</TD><TD width="50%" height="30px">190</TD></TR><TR><TD>130</TD><TD>210</TD></TR></TBODY></TABLE><P>So 5 Packages and 9 Products whereas one of the packages contain 5 products.<BR /><BR />Let's jump into the MAG:<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MicrosoftTeams-image (5).png" style="width: 719px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/65871iB8D86084DC4CCBBC/image-size/large?v=v2&amp;px=999" role="button" title="MicrosoftTeams-image (5).png" alt="MicrosoftTeams-image (5).png" /></span></P><P>What do we want to do exactly?&nbsp;<BR /><STRONG>We want to copy the item segments qualified with PRD into the item segment qualified with PKG where the IDs are matching.<BR /></STRONG>Which can be achieved by the following:</P><P><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="MicrosoftTeams-image (8).png" style="width: 661px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/65972iEE988850A179AC7E/image-dimensions/661x609?v=v2" width="661" height="609" role="button" title="MicrosoftTeams-image (8).png" alt="MicrosoftTeams-image (8).png" /></span></STRONG></P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><H3 id="toc-hId-329206032">Simulation</H3><P>Let's see what the result looks like.&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MicrosoftTeams-image (9).png" style="width: 709px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/65975iB381FF1D42A96691/image-size/large?v=v2&amp;px=999" role="button" title="MicrosoftTeams-image (9).png" alt="MicrosoftTeams-image (9).png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MicrosoftTeams-image (10).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/65993i7037402C073FD593/image-size/large?v=v2&amp;px=999" role="button" title="MicrosoftTeams-image (10).png" alt="MicrosoftTeams-image (10).png" /></span></P><P>Here on the right side (After Pre-Transformation) we can see that inside Item (Package) another node has been created - Item_gq_PRD_Copy. The first package with ID=10 has 5&nbsp;Item_gq_PRD_Copy elements (see the yellow highlighted area). Inside the first package the first product has the ID=150. Now let's look at the second product:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="MicrosoftTeams-image (11).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/65995i767A26036C9D90B0/image-size/large?v=v2&amp;px=999" role="button" title="MicrosoftTeams-image (11).png" alt="MicrosoftTeams-image (11).png" /></span><BR />Here we can see that it has the ID=200. And this matches with the table above.</P><H3 id="toc-hId-132692527">Conclusion</H3><P><SPAN>In this blog article we showed the powerful and easy to use feature of the Pre-Transformation, where we transformed the source structure in such a way that it matches the structure of the target which expects to group all products belonging to one package.&nbsp;<BR />Especially in this case, the Pre-Transformation helps to avoid building complex mapping logics which is also an essential aspect and which will be beneficial for operations.&nbsp;</SPAN></P></DIV></DIV> 2024-02-15T17:09:35.581000+01:00 https://community.sap.com/t5/technology-blogs-by-members/catalyst-for-efficiency-revolutionizing-sap-integration-suite-with-ai-and/ba-p/13608900 Catalyst for Efficiency: Revolutionizing SAP Integration Suite with AI and Automation 2024-02-18T08:38:49.249000+01:00 karthikarjun https://community.sap.com/t5/user/viewprofilepage/user-id/123682 <P><STRONG><U>I) Introduction:</U></STRONG></P><P>While there are already many blogs online about message monitoring reports in the SAP Integration Suite, I want to add my own perspective and share some useful files for developers. In today's world, Artificial Intelligence models (such as Gemini and ChatGPT) and automation are becoming important everywhere, even in SAP.</P><P>Have you ever found yourself in need of checking a daily transactional report at your enterprise business? With the SAP Integration Suite, there's a handy tool called message monitoring for just that. However, here's the snag: after a while, the transaction seems to disappear. Many companies desire these reports emailed (for logs) and seek suggestions for failed messages, especially in cases of failed transactions.</P><P>Picture this: you rely on these reports, but they mysteriously vanish. Frustrating, isn't it? Well, fear not! Artificial Intelligence (AI) and Integration Suite (IS)-API have the solution. They detect transaction issues and offer solutions, alleviating your time and stress burdens.</P><P>In this blog, we'll explore how we can revolutionize SAP Integration Suite reports, making your job simpler and more efficient. Let's dive in!</P><P><STRONG><U>II) Agenda:</U></STRONG></P><OL><LI>Cost Background: Explaining the Financial Aspect</LI><LI>Overview: Exploring the Background Story</LI><LI>Technical Architecture Diagram: Visualizing the System Design</LI><LI>Technical Implementation: Step-by-Step Integration Details</LI><LI>Conclusion: Reflecting on the Key Takeaways and Future Directions</LI><LI>Additional Resources: Providing Research Material Links for Further Exploration</LI></OL><P><STRONG><U>III) Cost Background: Explaining the Financial Aspect</U></STRONG></P><P>While SAP offers a multitude of features including HANADB with Fiori screen report, ALM, SAC, and analytic tools, it's important to note that the solution discussed here is a <STRONG><U>zero-cost option for accessing reports via email</U></STRONG>. The only scenario where additional expenses may arise is if AI suggestions are required for productive use. Apart from that, the daily report functionality is completely free of charge when utilizing the solution outlined below.</P><P><STRONG><U>IV) Overview: Exploring the Background Story </U></STRONG></P><P>Imagine Tamil Selvan, a newly hired SAP Analyst at XYZ organization. One of Tamil's primary responsibilities is to compile and send a daily report of failed transactions to the relevant teams. Each morning at 8 AM, Tamil diligently logs into the SAP Integration Suite to review the list of failed and escalated messages. He then meticulously copies these details into Excel tables, which he shares with the technical team for investigation. Concurrently, the Application Management Services (AMS) team logs a ticket for further action.</P><P>This daily routine consumes a significant amount of Tamil's time, typically ranging from 1 to 1.5 hours. Extrapolating this across a week, Tamil spends approximately 7 to 10.5 hours dedicated solely to this task. Over the course of a year, this translates to a staggering 336 to 504 hours invested in creating these reports.</P><P>&nbsp;</P><TABLE width="630px"><TBODY><TR><TD width="140.694px" height="50px"><P><STRONG><FONT color="#000000">TimeFrame</FONT></STRONG></P></TD><TD width="149.736px" height="50px"><P><STRONG><FONT color="#000000">TimeSpentPerDay</FONT></STRONG></P></TD><TD width="172.847px" height="50px"><P><STRONG><FONT color="#000000">TimeSpentPerWeek</FONT></STRONG></P></TD><TD width="165.833px" height="50px"><P><STRONG><FONT color="#000000">TimeSpentPerYear</FONT></STRONG></P></TD></TR><TR><TD width="140.694px" height="50px"><P><STRONG>Daily</STRONG></P></TD><TD width="149.736px" height="50px"><P>1 - 1.5 hours</P></TD><TD width="172.847px" height="50px"><P>&nbsp;</P></TD><TD width="165.833px" height="50px"><P>&nbsp;</P></TD></TR><TR><TD width="140.694px" height="50px"><P><STRONG>Weekly</STRONG></P></TD><TD width="149.736px" height="50px"><P>&nbsp;</P></TD><TD width="172.847px" height="50px"><P>7 - 10.5 hours</P></TD><TD width="165.833px" height="50px"><P>&nbsp;</P></TD></TR><TR><TD width="140.694px" height="50px"><P><STRONG>Yearly</STRONG></P></TD><TD width="149.736px" height="50px"><P>&nbsp;</P></TD><TD width="172.847px" height="50px"><P>&nbsp;</P></TD><TD width="165.833px" height="50px"><P>336 - 504 hours</P></TD></TR></TBODY></TABLE><P>Considering the broader perspective, Tamil's annual commitment to generating these reports amounts to nearly <STRONG><U>two months of full-time work for individual client</U></STRONG>. Additionally, this is merely the initial step in addressing the identified issues. Following the report creation, the support team invests another 30+ days in diagnosing the problems and implementing solutions, often requiring additional iterations.</P><P>This inefficiency is striking; Tamil alone dedicates nearly 48 days per year solely to report creation, not including the subsequent resolution efforts by the support team. It's evident that the current process is time-consuming and resource-intensive, highlighting the urgent need for optimization.</P><P>The forthcoming blog aims to revolutionize these workflows, promising to <STRONG><U>enhance efficiency by over 98%</U></STRONG>. By implementing the proposed improvements for automation iFlow, the number of days spent on these tasks will be drastically <STRONG><U>reduced to Zero days</U></STRONG>, providing much-needed support to consultants, and expediting issue resolution processes.</P><P><STRONG><U>V) Technical Architecture Diagram: Visualizing the System Design</U></STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_0-1708239233346.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67025iC2D9BBA79BD0E099/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_0-1708239233346.png" alt="karthikarjun_0-1708239233346.png" /></span></P><P><STRONG><U>VI) Technical Implementation: Step-by-Step Integration Details</U></STRONG></P><P><STRONG><EM><U>Before proceeding, please ensure the following prerequisites are met:</U></EM></STRONG></P><OL><LI><EM>Obtain the API key by registering on the ChatGPT website. Please purchase credit for production use.</EM></LI><LI><EM>Enable the Integration Suite API plan within the SAP BTP entitlement.</EM></LI><LI><EM>Obtain the mail server credentials from the respective domains. For educational purposes, Gmail is used in this example.</EM></LI></OL><P><U>Step 1</U>: Establishing an Integration Package with Proper Naming Conventions, Followed by iFlow Creation within the Artifacts.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_1-1708239233353.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67024i78ACA4B681279BAC/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_1-1708239233353.png" alt="karthikarjun_1-1708239233353.png" /></span></P><P><U>Step 2:</U></P><P>Step two has been divided into three sections, each detailed below:</P><OL><LI><EM>Section-A: Setting the Parameters, Creating the Queries, and Calling the APIs</EM></LI><LI><EM>Section-B: Establishing Conditions to Determine the Response Route</EM></LI><LI><EM>Section-C: Iterating Through the Responses</EM></LI></OL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_2-1708239233357.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67023i5A3E760FA14BBD94/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_2-1708239233357.png" alt="karthikarjun_2-1708239233357.png" /></span></P><P><STRONG><EM><U>Section-A: Setting the Parameters, Creating the Queries, and Calling the APIs</U></EM></STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_3-1708239233362.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67028iF94A2B461AA958E6/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_3-1708239233362.png" alt="karthikarjun_3-1708239233362.png" /></span></P><P><EM>Configure the parameters mentioned above in the content modifier. These parameters serve as the initial declarations for the iFlow properties, which will be utilized in later stages within the Groovy scripts.</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_4-1708239233364.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67026i109F20057FE1340D/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_4-1708239233364.png" alt="karthikarjun_4-1708239233364.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_5-1708239233369.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67027iA1774F509AAB242D/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_5-1708239233369.png" alt="karthikarjun_5-1708239233369.png" /></span></P><P><EM>The Groovy script above enhances the query to filter statuses such as failed or escalated. Additionally, it incorporates a manual flag check. For instance, if the manual flag is set to true, the configured value in the iFlow will be used. Conversely, if the manual load flag is set to false, the script will utilize the last successful runtime to retrieve results from the Integration Suite API.</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_6-1708239233373.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67029i5E8271E4B5D943E0/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_6-1708239233373.png" alt="karthikarjun_6-1708239233373.png" /></span></P><P><EM>Utilize the message processing log API to retrieve the pertinent response from the Integration Suite for escalated and failed messages. Refer this link: </EM><A href="https://api.sap.com/api/MessageProcessingLogs/resource/Logs" target="_blank" rel="noopener noreferrer"><EM>https://api.sap.com/api/MessageProcessingLogs/resource/Logs</EM></A></P><P><STRONG><EM><U>Section-B: Establishing Conditions to Determine the Response Route</U></EM></STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_7-1708239233376.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67031i0EC209DD69EF493F/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_7-1708239233376.png" alt="karthikarjun_7-1708239233376.png" /></span></P><P><EM>Verify whether the inbound response contains valid records. If the record count is valid, proceed with further actions. Otherwise, transition it to a completed state with a marker indicating zero records.</EM></P><P><STRONG><EM><U>Section-C: Iterating Through the Responses</U></EM></STRONG></P><P><EM>One of the notable features in the SAP Integration Suite is the Iteration Splitter (IS), which allows us to iterate through messages and obtain their respective IDs. These IDs can then be used to query additional APIs within the Integration Suite using exchange parameters and the XPATH mechanism. Below is an example where we capture the messageGuid to fetch more details from subsequent APIs within the Integration Suite.</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_8-1708239233379.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67030iB1C5787348AB6AE8/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_8-1708239233379.png" alt="karthikarjun_8-1708239233379.png" /></span></P><P><U>Step-3:</U></P><P>Step three is divided into three sections, outlined as follows:</P><OL><LI><EM>Section-D: Utilizing the messageGUID to retrieve the relevant message details.</EM></LI><LI><EM>Section-E: Employing the messageGUID to retrieve the relevant error message from another API.</EM></LI><LI><EM>Section-F: Leveraging Artificial Intelligence (AI) to receive suggestions for errors.</EM></LI></OL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_9-1708239233381.png" style="width: 0px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67035i4CF130577444C40B/image-size/small?v=v2&amp;px=200" width="0" height="0" role="button" title="karthikarjun_9-1708239233381.png" alt="karthikarjun_9-1708239233381.png" /></span></P><P><STRONG><EM><U>Section-D: Utilizing the messageGUID to retrieve the relevant message details.</U></EM></STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_10-1708239233385.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67033iA273CC416065F5DE/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_10-1708239233385.png" alt="karthikarjun_10-1708239233385.png" /></span></P><P><EM>Utilizing the OData protocol to retrieve pertinent details from the Integration Suite server involves accessing artifact information and transaction status. This includes identifying the iFlow name and message GUID, aiding developers in locating transactions within the message monitoring dashboard.</EM></P><UL><LI><STRONG><EM><U>Operation</U></EM></STRONG><EM>: Read (GET)</EM></LI><LI><STRONG><EM><U>Resource Path</U></EM></STRONG><EM>: MessageProcessingLogs(MessageGuid='${property.MessageGuid}')</EM></LI><LI><STRONG><EM><U>Query Option:</U></EM></STRONG><EM> $select=MessageGuid,CorrelationId,IntegrationFlowName,Status,TransactionId,LogStart,LogEnd,Sender,Receiver,CustomStatus,LogLevel,PreviousComponentName,LocalComponentName,OriginComponentName,IntegrationArtifact,ApplicationMessageId,ApplicationMessageType</EM></LI></UL><P><STRONG><EM><U>Section-E: Employing the messageGUID to retrieve the relevant error message from another API.</U></EM></STRONG></P><P><EM>Ensure to utilize the HTTP protocol when accessing error message details through the SAP API, as it currently supports the HTTP protocol for this purpose. While it's possible that this method may transition to being embedded within OData entities in the future, for now, HTTP remains the preferred protocol.</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_11-1708239233388.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67034i8CA79C40DC102C67/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_11-1708239233388.png" alt="karthikarjun_11-1708239233388.png" /></span></P><UL><LI><STRONG><EM><U>Address</U></EM></STRONG>: <A href="https://%3cHOST%3e.it-cpi004.cfapps.ap11.hana.ondemand.com/api/v1/MessageProcessingLogs('$%7bproperty.MessageGuid%7d')/ErrorInformation/$value" target="_blank" rel="noopener nofollow noreferrer">https://&lt;HOST&gt;.it-cpi004.cfapps.ap11.hana.ondemand.com/api/v1/MessageProcessingLogs('${property.MessageGuid}')/ErrorInformation/$value</A></LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_12-1708239233392.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67038i49726E2ABB411C43/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_12-1708239233392.png" alt="karthikarjun_12-1708239233392.png" /></span></P><P><EM>Store the returned message in the "error" property, as indicated above. The subsequent step involves utilizing this property value in the AI models to generate the response.</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_13-1708239233396.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67037iDF1D500DADD3FBB0/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_13-1708239233396.png" alt="karthikarjun_13-1708239233396.png" /></span></P><P><STRONG><EM><U>Section-F: Leveraging Artificial Intelligence (AI) to receive suggestions for errors.</U></EM></STRONG></P><P><EM>In this section, we leverage the openAI models to provide suggestions for the errors encountered in the systems.</EM></P><UL><LI><STRONG><EM><U>Address:</U></EM></STRONG> <SPAN><A href="https://api.openai.com/v1/chat/completions" target="_blank" rel="noopener nofollow noreferrer">https://api.openai.com/v1/chat/completions</A></SPAN></LI><LI><STRONG><EM><U>Protocol:</U></EM></STRONG><EM> Http</EM></LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_14-1708239233397.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67036i32712E7976E8A47F/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_14-1708239233397.png" alt="karthikarjun_14-1708239233397.png" /></span></P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_15-1708239233402.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67040iA84CD75033A3896F/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_15-1708239233402.png" alt="karthikarjun_15-1708239233402.png" /></span></P><P><EM>Utilize the provided script to capture the AI-suggested response and store it in a property named "openAIResponse."</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_16-1708239233405.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67039iC6EC7253F07BA032/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_16-1708239233405.png" alt="karthikarjun_16-1708239233405.png" /></span></P><P><EM>Store the AI response in the “AISuggessionForError” property in the content modifier. And set the below XML format in the Content modified body</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_17-1708239233412.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67041i10D2D14E5D683941/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_17-1708239233412.png" alt="karthikarjun_17-1708239233412.png" /></span></P><P><EM>The XML payload resulting from message processing will be merged with the original payload, facilitating the creation of a consolidated report. This report, presented in a table format, enhances the readability and presentation of the details for email recipients.</EM></P><P><U>Step-4:</U></P><P><EM>Step four is subdivided into two sections, each outlined as follows:</EM></P><OL><LI><EM>Section G: Gather the response, and execute message mapping.</EM></LI><LI><EM>Section H: Generate HTML content for report creation and initiate email dispatch.</EM></LI></OL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_18-1708239233421.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67043i2FD26678882F343D/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_18-1708239233421.png" alt="karthikarjun_18-1708239233421.png" /></span></P><P><STRONG><EM><U>Section G: Gather the response, and execute message mapping.</U></EM></STRONG></P><P><EM>In this section, we are gathering the responses from the respective sources. Since we are utilizing iteration splitter and multicasting, we have collected and halted the loop by employing a gather functionality. </EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_19-1708239233427.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67044i914E0217B97547ED/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_19-1708239233427.png" alt="karthikarjun_19-1708239233427.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_20-1708239233445.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67042iDF410DAD666DB37B/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_20-1708239233445.png" alt="karthikarjun_20-1708239233445.png" /></span></P><P><EM>During this gathering process, additional components may be added, which may not be suitable for message mapping. Therefore, we are using a Groovy Script to remove the unwanted headers using Groovy to remove multi tag script.</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_21-1708239233453.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67047iE507B505A1362C86/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_21-1708239233453.png" alt="karthikarjun_21-1708239233453.png" /></span></P><P><EM>With the message mapping described above, the consolidated report has been formatted in a manner suitable for HTML. This formatted report includes tables, headers, and relevant information, providing a detailed and beautified result set.</EM></P><P><STRONG><EM><U>Section H: Generate HTML content for report creation and initiate email dispatch.</U></EM></STRONG></P><P><EM>Creating an HTML table response with Groovy to include transaction errors, iFlow names, AI suggestions, and job details.</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_22-1708239233454.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67045iF5C96C2A7AF16273/image-size/medium?v=v2&amp;px=400" role="button" title="karthikarjun_22-1708239233454.png" alt="karthikarjun_22-1708239233454.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_23-1708239233461.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67046i0ED0D978D7007570/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_23-1708239233461.png" alt="karthikarjun_23-1708239233461.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_24-1708239233463.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67049i3EE52E2B01AAAF7D/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_24-1708239233463.png" alt="karthikarjun_24-1708239233463.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_25-1708239233464.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67048i3A27714274C44F82/image-size/medium?v=v2&amp;px=400" role="button" title="karthikarjun_25-1708239233464.png" alt="karthikarjun_25-1708239233464.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_26-1708239233471.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67050iCBBA261995504E6C/image-size/large?v=v2&amp;px=999" role="button" title="karthikarjun_26-1708239233471.png" alt="karthikarjun_26-1708239233471.png" /></span></P><P><EM>The HTML content is delivered via the mail adapter from the Integration Suite, providing automated daily reports for failed and escalated transactions, along with Artificial Intelligence (AI) suggestions.</EM></P><P><U>Step-5: </U></P><P>The program <STRONG><U>automatically generates an email containing details of the report</U></STRONG>, including failed and escalated transactions. Additionally, it provides solutions for the failed transactions within the report, facilitated by AI.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="karthikarjun_27-1708239233477.png" style="width: 901px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67051iCB8D3A71F55D2CFC/image-dimensions/901x528?v=v2" width="901" height="528" role="button" title="karthikarjun_27-1708239233477.png" alt="karthikarjun_27-1708239233477.png" /></span></P><P>If you find this information helpful, please consider clicking the "Like" button on this blog and sharing your thoughts in the comments section below. You can also connect with the author on their LinkedIn profile: <A title="Author's LinkedIn Profile" href="https://www.linkedin.com/in/karthik-arjun-a5b4a258/" target="_self" rel="nofollow noopener noreferrer">[Author's LinkedIn Profile]</A></P><P><STRONG><U>VII) Conclusion: Reflecting on the Key Takeaways and Future Directions</U></STRONG></P><OL><LI>Embracing Core Concepts of the Integration Suite</LI><LI>Grasping the Fundamentals of AI and Automation within SAP Integration Suite</LI><LI>Simplifying Error Handling Reports and Utilizing AI for Issue Identification and Resolution</LI><LI>Prioritizing Understanding of Business Problems, Root Cause Analysis, and Storytelling for Accessibility to All, Regardless of Technical Background</LI></OL><P><STRONG><U>VIII) Additional Resources: Providing Research Material Links for Further Exploration </U></STRONG></P><UL><LI><A href="https://community.sap.com/t5/technology-blogs-by-members/sap-cloud-integration-message-monitoring-report-with-error-details/ba-p/13565696" target="_blank">https://community.sap.com/t5/technology-blogs-by-members/sap-cloud-integration-message-monitoring-report-with-error-details/ba-p/13565696</A></LI><LI><A href="https://api.sap.com/api/MessageProcessingLogs/resource/Logs" target="_blank" rel="noopener noreferrer">https://api.sap.com/api/MessageProcessingLogs/resource/Logs</A></LI><LI><A href="https://blogs.sap.com/2021/11/01/sap-cloud-integration-custom-email-notification/" target="_blank" rel="noopener noreferrer">https://blogs.sap.com/2021/11/01/sap-cloud-integration-custom-email-notification/</A></LI><LI><A href="https://community.sap.com/t5/technology-blogs-by-sap/using-integration-suite-piper-commands-in-github-actions-ci-cd-platform/ba-p/13601846" target="_blank">https://community.sap.com/t5/technology-blogs-by-sap/using-integration-suite-piper-commands-in-github-actions-ci-cd-platform/ba-p/13601846</A></LI></UL> 2024-02-18T08:38:49.249000+01:00 https://community.sap.com/t5/technology-blogs-by-sap/duplication-of-target-nodes-in-integration-advisor-group-nodes/ba-p/13589709 Duplication of Target Nodes in Integration Advisor (Group Nodes) 2024-02-20T09:28:19.740000+01:00 stefan_boller https://community.sap.com/t5/user/viewprofilepage/user-id/196798 <H2 id="toc-hId-965031244">Introduction</H2><P>Recently, we have introduced a new feature in Integration Advisor for the <A title="Duplication of Target Nodes" href="https://help.sap.com/docs/cloud-integration/sap-cloud-integration/mapping-source-and-target-nodes?version=Cloud#duplicate-target-nodes" target="_blank" rel="noopener noreferrer">duplication of target nodes</A>. This feature allows the duplication of leaf as well as group nodes of a target Message Implementation Guideline (MIG) in the Message Guideline (MAG) editor. This feature helps in special mapping situations where you have two sources which must be mapped to (multiple instances of) the same target node.</P><P>In this blog post, I will show a scenario which illustrates some of the benefits of this new feature when applying it to the duplication of group nodes. In a follow up article, a scenario with leaf nodes will be presented.</P><H2 id="toc-hId-768517739">Scenario</H2><P>As an example we use the following scenario: Assume you have a source MIG based on UN/EDIFACT message ORDERS (version <SPAN class="">D.21B S3, e.g.)&nbsp;</SPAN>which shall be mapped to an SAP IDoc&nbsp;<SPAN>ORDERS.ORDERS05. Furthermore, you agreed with your partner, which sends the UN/EDIFACT ORDERS message, that they can <STRONG>either</STRONG> use the DTM segment in the header to specify the expected delivery date for all items <STRONG>or</STRONG> the DTM segment of each item separately. However, on your own side you want to have the expected delivery date in segment&nbsp;</SPAN><SPAN>E1EDP03 of each item independent of the decision of your partner.</SPAN></P><H2 id="toc-hId-572004234"><SPAN>Challenge</SPAN></H2><P><SPAN>Now start the mapping design in the following way: You map the child DTM segment of segment group SG29 to E1EDP03. This would give the expected result when your partner sends the DTM segment with each item:</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="stefan_boller_0-1706801021419.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/58591iFD601B6C9D11E08E/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_0-1706801021419.png" alt="stefan_boller_0-1706801021419.png" /></span></P><P>But what happens if the information is contained in the header? Then E1EDP03 will remain empty. Somehow you would like to map the header's DTM segment to&nbsp;E1EDP03 as well, but that was not possible so far.</P><H2 id="toc-hId-375490729">Solution</H2><P>Now, our new feature kicks in: You can duplicate the&nbsp;E1EDP03 group node at the target side and map both DTM segments to different duplicates. This looks as follows:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="stefan_boller_157-1706802290993.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/58684i1D813E77FB6D97F0/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_157-1706802290993.png" alt="stefan_boller_157-1706802290993.png" /></span></P><P>Now, you can map the header's DTM segment to the new duplicate and you are done. On message level both duplicates look the same, there are only distinguished in the MAG editor:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="stefan_boller_158-1706802827341.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/58710i303A9CE39AA21DCE/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_158-1706802827341.png" alt="stefan_boller_158-1706802827341.png" /></span></P><H2 id="toc-hId-178977224">How to do it on your own?</H2><P>Create a MIG based on&nbsp;UN/EDIFACT message ORDERS version <SPAN class="">D.21B S3 as source MIG (see&nbsp;<A title="Creation of MIG" href="https://help.sap.com/docs/cloud-integration/sap-cloud-integration/creating-new-message-implementation-guideline" target="_blank" rel="noopener noreferrer">Creating a New Message Implementation Guideline</A>). Then select segment group SG29, the child DTM of SG29, and the 2380 fields of both DTM segments (header and line item). As last step you qualify both DTM segments with qualifier 2005 and value 2 (Delivery date/time, requested), see also&nbsp;<A title="Qualifying Nodes" href="https://help.sap.com/docs/cloud-integration/sap-cloud-integration/qualifying-nodes" target="_blank" rel="noopener noreferrer">Qualifying Nodes</A>.This should look similar to the source MIG shown in the screenshots above. Then create a second MIG based on&nbsp;SAP IDoc&nbsp;<SPAN>ORDERS.ORDERS05 (version <SPAN class="">1809_FPS02)&nbsp;</SPAN>as target MIG. Select nodes E1EDP01 and E1EDP03 and all child nodes of E1EDP03. Similar to the source MIG qualify the E1EDP03 node with qualifier IDDAT and value 002 (Requested delivery date (customer)). The resulting MIG shall look like the target MIG in the screenshots above.</SPAN></SPAN></P><P><SPAN class=""><SPAN>Now you can create a MAG using both MIGs (see&nbsp;<A title="Creation of MAG" href="https://help.sap.com/docs/cloud-integration/sap-cloud-integration/creating-new-mapping-guideline" target="_blank" rel="noopener noreferrer">Creating a New Mapping Guideline</A>). Before you can draw the mapping lines you can now duplicate the node E1EDP03 of your target MIG: In Edit mode hover over the E1EDP03 node, press the overflow button, and select "Duplicate":</SPAN></SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="stefan_boller_0-1707127840456.png" style="width: 288px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60309i9BC7EE0A0E28BE05/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_0-1707127840456.png" alt="stefan_boller_0-1707127840456.png" /></span></P><P>In the duplicate editor add one duplicate by pressing the "Add" button and give the new duplicate a speaking name so that you can recognize it later:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="stefan_boller_1-1707128037298.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60310i696D7316D41473CD/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_1-1707128037298.png" alt="stefan_boller_1-1707128037298.png" /></span></P><P>After pressing the "Apply" button you can use the new duplicate and design your mapping:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="stefan_boller_2-1707128199945.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60311i18ADA7F7FEA6D72F/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_2-1707128199945.png" alt="stefan_boller_2-1707128199945.png" /></span></P><P>Note that we also used the date time mapping feature of Integration Advisor in this example (see&nbsp;<A title="Date Time Conversion" href="https://help.sap.com/docs/cloud-integration/sap-cloud-integration/date-time-conversion" target="_blank" rel="noopener noreferrer">Date Time Conversion</A>). Now you can simulate the mapping with the attached example payloads:&nbsp;</P><DIV class=""><OL><LI><A title="Line items example" href="https://community.sap.com/t5/blogs/blogworkflowpage/blog-id/technology-blog-sap/article-id/168558?attachment-id=693492" target="_self"><SPAN class="">example with DTM segment of line items filled</SPAN></A><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="stefan_boller_0-1707128946919.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60323i5B81BB87CC425083/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_0-1707128946919.png" alt="stefan_boller_0-1707128946919.png" /></span></LI><LI><A title="Header Example" href="https://community.sap.com/t5/blogs/blogworkflowpage/blog-id/technology-blog-sap/article-id/168558?attachment-id=693493" target="_self"><SPAN>example with DTM segment of header filled</SPAN></A><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="stefan_boller_1-1707129157348.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60336i26FEA485F43B5C1F/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_1-1707129157348.png" alt="stefan_boller_1-1707129157348.png" /></span></LI></OL><DIV class=""><DIV class=""><DIV class=""><P>&nbsp;</P><H2 id="toc-hId--17536281">Summary</H2><P><SPAN>In this blog article we showed how we can use the new duplicate target nodes feature for solving a mapping challenge which previously was not possible. In a follow up article we will present another use case where in contrast to this example leaf nodes instead of group nodes are involved. We also would be happy to know more about your use cases for this new feature.</SPAN><BR /><SPAN>Please, share your ideas and feedback in a comment. Furthermore, you can follow the&nbsp;</SPAN><A href="https://community.sap.com/topics/integration-suite" target="_blank">SAP Integration Suite topic page</A><SPAN>&nbsp;to get to know more about Integration Suite in general, or read other posts on&nbsp;</SPAN><A href="https://blogs.sap.com/tag/integration-advisor/" target="_blank" rel="noopener noreferrer">Integration Advisor</A><SPAN>. You can also follow my profile if you want to read similar content in the future.</SPAN></P><H2 id="toc-hId--214049786"><SPAN>Appendix</SPAN></H2><P>In case you agreed with your partner that&nbsp;they can use the DTM segment in the header to specify the expected delivery date as default for all items but can override that date<STRONG>&nbsp;</STRONG>via the&nbsp;DTM segment of single items, the situation becomes a little bit more complex but can still be solved with Integration Advisor:&nbsp; Just use the&nbsp;<A title="Conditional Mapping" href="https://help.sap.com/docs/cloud-integration/sap-cloud-integration/mapping-source-and-target-nodes#conditional-mapping" target="_blank" rel="noopener noreferrer">conditional mapping</A>, delete the mapping line between the groups DTM [2005 = 2] in the header (source) and E1EDP03 [IDDAT = 002] [1] (duplicated target node), and add a new mapping line between the groups SG29 (source) and&nbsp;E1EDP03 [IDDAT = 002] [1] (target). Then you can use the field 2005 of the line item as a conditional node for the new group-to-group mapping by drawing a line from it to the same target node&nbsp;E1EDP03 [IDDAT = 002] [1]:</P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="stefan_boller_0-1708336696979.png" style="width: 958px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67411i0AE793075C46CD5F/image-size/large?v=v2&amp;px=999" role="button" title="stefan_boller_0-1708336696979.png" alt="stefan_boller_0-1708336696979.png" /></span><P>Finally, enter&nbsp;</P></DIV></DIV></DIV></DIV><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-markup"><code>not(boolean($nodes_in/D_2005))</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>as a condition. This will create the target node instance only if the DTM segment of the line item is not available in the corresponding line item. I attached a&nbsp;<A title="Combined Header and Line Item" href="https://community.sap.com/t5/blogs/blogworkflowpage/blog-id/technology-blog-sap/article-id/168558?attachment-id=693699" target="_self">sample payload</A>&nbsp;also for this case.</P> 2024-02-20T09:28:19.740000+01:00 https://community.sap.com/t5/technology-blogs-by-members/pgp-encryption-decryption-using-java-code-inside-payload/ba-p/13620956 PGP Encryption/Decryption using Java code inside payload 2024-03-01T10:51:37.554000+01:00 Ajith_Nair https://community.sap.com/t5/user/viewprofilepage/user-id/615390 <P>In this blog, I will retrace the steps that I have used to encrypt and decrypt payload coming inside message tags using PGP encryption/decryption. After many searches and tries, I was able to find a blog by Sandeep using Bouncy Castle,<BR /><A href="https://community.sap.com/t5/additional-blogs-by-members/pgp-encryption-decryption-using-java-code/ba-p/12912768" target="_blank">https://community.sap.com/t5/additional-blogs-by-members/pgp-encryption-decryption-using-java-code/ba-p/12912768</A><BR />This is an update to the same blog where I have worked around the mentioned trick without using Bouncy Castle to add the encrypted payload within the messages.<BR /><BR />For OpenPGP encryption and decryption, the requirement that I had was to convert the generated message through <STRONG>BCM(Bank Communication Management)&nbsp;</STRONG>by first encrypting&nbsp;with PGP encryption and then converting to base64 while having this within the payload.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="INBOUND flow" style="width: 595px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72470i66D20601E16A597C/image-size/large?v=v2&amp;px=999" role="button" title="inbound flow.jpg" alt="INBOUND flow" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">INBOUND flow</span></span></P><P>&nbsp;</P><OL><LI>Download the necessary libraries required.<BR /><STRONG>bcpg-lw-jdk15on-1.70.jar</STRONG><BR /><STRONG>bcprov-lw-jdk15on-1.70.jar</STRONG><BR /><STRONG>pgplib-3.2.3.jar</STRONG><BR /><STRONG>com.sap.xi.mapping.tool.lib_api.jar</STRONG><BR /><STRONG>com.sap.xpi.ib.mapping.lib.jar</STRONG><BR /><BR />You can get the first 3 libraries from the below link<BR /><A href="https://didisoft.com/java-openpgp/" target="_blank" rel="noopener nofollow noreferrer">https://didisoft.com/java-openpgp/</A><BR />The other 2 libraries are sap standard libraries used in Java mapping or any UDF concerned, if required I will also try to attach the same on edit.<BR /><BR /></LI><LI>Next step, you have to generate your keys, I have used <STRONG>GPG4WIN 3.1.9 </STRONG>to generate&nbsp;keys<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="keys.jpg" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/71943i9524A8ADB4FFFA81/image-size/large?v=v2&amp;px=999" role="button" title="keys.jpg" alt="keys.jpg" /></span><BR /><BR />Post your keys generation, you will have 3 keys, one public key from the bank and 2 keys generated at your end, one public and one private.<BR /><BR /></LI><LI>You have to store the keys in the OS folder such that your Java code can access the keys, I have mentioned the path in which I have stored them for your reference. <STRONG>You have to use SKR for private keys and PKR extension for public keys.</STRONG><BR /><PRE><STRONG>/usr/sap/XXX/X00/&lt;your_custom_folder&gt;/privatekey.skr<BR /></STRONG></PRE></LI><LI>I have used Eclipse for my Java code development, as currently NWDS is not available. Below is the reference path of the package I have used, I have inserted keys within the package and reference libraries which I have uploaded.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="package content" style="width: 256px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/71990i3B9E56682FAE67AD/image-size/large?v=v2&amp;px=999" role="button" title="folder path 2.jpg" alt="package content" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">package content</span></span><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="reference libraries" style="width: 315px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/71989i2987AD6CB512E8E0/image-size/large?v=v2&amp;px=999" role="button" title="folder path.jpg" alt="reference libraries" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">reference libraries</span></span><BR /><BR /></LI><LI>Below is the encryption Java code that I have used, I have used many "getTrace" code which is for my reference, you can remove them or add additional ones based on what you prefer during testing.</LI></OL><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-java"><code>package z001; import java.io.InputStream; import java.io.OutputStream; import com.sap.aii.mapping.api.*; import java.io.*; import java.util.Base64; import com.didisoft.pgp.PGPLib; public class encrypt extends AbstractTransformation { @Override public void transform(TransformationInput transformationInput, TransformationOutput transformationOutput) throws StreamTransformationException { try{ PGPLib pgp = new PGPLib(); String privateKeyFile = "/usr/sap/XXX/X00/&lt;your_custom_folder&gt;/privatekey.skr"; String privateKeyPassword = "&lt;your_key_password&gt;"; String publicEncryptionKeyFile = "/usr/sap/XXX/X00/&lt;your_custom_folder&gt;/bankkey.pkr"; InputStream inputStream = transformationInput.getInputPayload().getInputStream(); BufferedReader inpxml = new BufferedReader(new InputStreamReader(inputStream)); getTrace().addInfo("input received"); StringBuffer buffer = new StringBuffer(); String line=""; while ((line = inpxml.readLine()) != null) { buffer.append(line); } String org_msg=buffer.toString(); OutputStream outputstream = transformationOutput.getOutputPayload().getOutputStream(); getTrace().addInfo("encrypt"); String signedAndEncryptedString = pgp.signAndEncryptString(org_msg, privateKeyFile, privateKeyPassword, publicEncryptionKeyFile); getTrace().addInfo("encode"); byte[] bytes = signedAndEncryptedString.getBytes(); String encodedString = Base64.getEncoder().encodeToString(bytes); // int msg_length = org_msg.length(); getTrace().addInfo("finalstructure"); String target_msg = "&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;"+"&lt;ns0:MT_bank_Pay_Request xmlns:ns0=\"http://x.com/bank_Payment\"&gt;"+"&lt;paymentBase64&gt;"+encodedString+"&lt;/paymentBase64&gt;"+"&lt;/ns0:MT_bank_Pay_Request&gt;"; outputstream.write(target_msg.getBytes()); //this is to get the final target message that we have converted getTrace().addInfo("finalstructure"+target_msg); } catch (Exception ie) { } } }​</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>This will convert the final message below</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-markup"><code>&lt;?xml version="1.0" encoding="UTF-8"&gt; ​&lt;ns0:MT_bank_Pay_Request xmlns:ns0="http://x.com/bank_Payment"&gt; &lt;paymentBase64&gt;"your encoded and encrypted string"&lt;/paymentBase64&gt; &lt;/ns0:MT_bank_Pay_Request&gt;</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="OUTBOUND flow" style="width: 533px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72471i44174C7D0387DAB6/image-size/large?v=v2&amp;px=999" role="button" title="outbound flow.jpg" alt="OUTBOUND flow" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">OUTBOUND flow</span></span><BR />This is the response from the bank side that I was receiving, here in responsebase64 I had the original file content response, which needed to be decoded and decrypted.</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-markup"><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;ns0:MT_Vendor_Pay_Response xmlns:ns0="http://x.com/bank_Payment"&gt; &lt;referenceId&gt;1&lt;/referenceId&gt; &lt;profileId&gt;2&lt;/profileId&gt; &lt;statusCode&gt;3&lt;/statusCode&gt; &lt;statusDesc&gt;5&lt;/statusDesc&gt; &lt;responseBase64&gt;6&lt;/responseBase64&gt; &lt;/ns0:MT_Vendor_Pay_Response&gt;</code></pre><P>&nbsp;</P><P>&nbsp;</P><P><BR />For decryption, in the below Java code, you can see the original content (which is encrypted and encoded) is within the responsebase64 tag, if blank I am generating a different XML response, but if non-blank I will be consuming the payload within SAP PO. Integration response will be generally provided by the bank side, you can add the dummy payload as same as the response you are having from the bank.</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-java"><code>package z001; import com.sap.aii.mapping.api.*; import java.io.*; import java.util.Base64; import com.didisoft.pgp.PGPLib; public class decrypt extends AbstractTransformation { @Override public void transform(TransformationInput transformationInput, TransformationOutput transformationOutput) throws StreamTransformationException { try { PGPLib pgp = new PGPLib(); String privateKeyFile = "/usr/sap/XXX/X00/&lt;your_custom_folder&gt;/privatekey.skr"; String privateKeyPassword = "&lt;your_key_password&gt;"; InputStream inputStream = transformationInput.getInputPayload().getInputStream(); OutputStream outputstream = transformationOutput.getOutputPayload().getOutputStream(); BufferedReader inpxml = new BufferedReader(new InputStreamReader(inputStream)); getTrace().addInfo("input received"); String originalFileName = ""; StringBuffer buffer = new StringBuffer(); String line = ""; while ((line = inpxml.readLine()) != null) { buffer.append(line); } String org_msg = buffer.toString(); String s3 = org_msg; String isFound = ""; String headerstatus = ""; String headerdesc = ""; String responsebase64 ; headerstatus = s3; headerdesc = s3; responsebase64 = s3; //I have used index here as my response was having status code and message //which i have capture in local variable. headerstatus = headerstatus.substring(headerstatus.indexOf("&lt;statusCode&gt;") + 12); headerstatus = headerstatus.substring(0, headerstatus.indexOf("&lt;/statusCode&gt;")); getTrace().addInfo(headerstatus); headerdesc = headerdesc.substring(headerdesc.indexOf("&lt;statusDesc&gt;") + 12); headerdesc = headerdesc.substring(0, headerdesc.indexOf("&lt;/statusDesc&gt;")); getTrace().addInfo(headerdesc); //orginal response was coming after &lt;responseBase64&gt; tag which is capture here responsebase64 = responsebase64.substring(responsebase64.indexOf("&lt;responseBase64&gt;") + 16); getTrace().addInfo(responsebase64); //I am checking here if response is there or not, if not i am making a custom xml if ( responsebase64.indexOf("&lt;/responseBase64&gt;") == 0) { isFound = "N"; } else { responsebase64 = responsebase64.substring(0, responsebase64.indexOf("&lt;/responseBase64&gt;")); isFound = "Y"; } getTrace().addInfo("truecheck" + isFound + responsebase64); if ( isFound == "Y" ) { getTrace().addInfo("ifcheck"); org_msg = org_msg.substring(org_msg.indexOf("&lt;responseBase64&gt;") + 16); org_msg = org_msg.substring(0, org_msg.indexOf("&lt;/responseBase64&gt;")); getTrace().addInfo("beforedecoding" + org_msg); byte[] decodedBytes = Base64.getDecoder().decode(org_msg); getTrace().addInfo("decoded"); String decodedString = null; // Get the string of decoded byte array String s = new String(decodedBytes); // String encrypted = ""; decodedString = s; getTrace().addInfo("beforedecryption"); //this is the decryption code, you can use it based on ur use case originalFileName = pgp.decryptString(decodedString, privateKeyFile, privateKeyPassword); //end of decryption code getTrace().addInfo("decrypted" + originalFileName); } else { getTrace().addInfo("elsecheck"); String so = originalFileName; if (so == "") { ///if the code is blank originalFileName = "&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\r\n" + "&lt;ns0:Document xmlns:ns0=\"urn:http://x.com\"&gt;\r\n" + "&lt;paymentresponseBase64&gt;"+"FAILED"+"&lt;/paymentresponseBase64&gt;" + "&lt;/ns0:Document&gt;"; } } String target_msg = originalFileName; getTrace().addInfo("finalstructure" + target_msg); outputstream.write(target_msg.getBytes()); } catch (Exception ie) { } } }​</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>Note:<BR />I have used the above code based on my use case, you can play around with the Didisoft libraries and choose what fits best. For the adapter level, many modules and blogs are available that can be used to do the encryption and decryption.<BR />Keep track of the expiry of keys, would be helpful for you as a change in year-end activity.<BR /><BR /></P><P>&nbsp;</P> 2024-03-01T10:51:37.554000+01:00 https://community.sap.com/t5/technology-blogs-by-members/move-sap-cloud-integration-cpi-artifact-app-content-through-sap-cloud/ba-p/13626135 Move SAP Cloud Integration (CPI) Artifact/app content through SAP Cloud Transport Management 2024-03-03T09:20:43.232000+01:00 brijesh_tripath https://community.sap.com/t5/user/viewprofilepage/user-id/139546 <P><STRONG>Overview-</STRONG></P><P><SPAN>SAP Cloud Transport Management is a multi-tenant-aware application that guarantees tenant separation while streamlining the management of application-specific content and development artifacts. This means that you can use SAP BTP to effectively manage software deliverables across accounts in different environments (such Neo and Cloud Foundry), safely transferring them across different runtimes while keeping tenants unique from one another.</SPAN></P><P><STRONG>Pre-requisites-</STRONG><BR /><BR />Subaccount -<BR /><BR />Integration Suite Subaccount (Alias DEV, QAS and PRD/ DEV and PRD) respectively<BR /><BR />1.&nbsp; Enable Cloud Foundry environment<BR /><BR />2.&nbsp; Entitlement Access:<BR /><BR />a. Integration Suite<BR /><BR />b. Process Integration Runtime<BR /><BR />Cloud Transport Management Subaccount<BR /><BR />3. Entitlement Access:<BR /><BR />a. Cloud Transport Management<BR /><BR />b. Content Agent Service</P><P><STRONG>Set-up details-</STRONG></P><P>Login to the Cloud Transport Management</P><P>Navigate to the option Transport Node-</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74600i665E98303A5BDCC4/image-size/large?v=v2&amp;px=999" role="button" title="1.png" alt="1.png" /></span></P><P>Check transport node description and set-up-</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74601iF4876AE817687904/image-size/large?v=v2&amp;px=999" role="button" title="2.png" alt="2.png" /></span></P><P>Navigate to the transport route-</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="3.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74602i8759C39DB3301466/image-size/large?v=v2&amp;px=999" role="button" title="3.png" alt="3.png" /></span></P><P>Navigate it to Landscape visualization-</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="4.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74603i362EE3218F47B068/image-size/large?v=v2&amp;px=999" role="button" title="4.png" alt="4.png" /></span></P><P><STRONG>Steps to move Artifact:</STRONG></P><P>Go to cloud integration-</P><P>To transport the desired package, click on button Transport –</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="5.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74604i35832333F26C1ABB/image-size/large?v=v2&amp;px=999" role="button" title="5.png" alt="5.png" /></span></P><P>Fill in the comment in the space and click on Transport-</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="6.png" style="width: 856px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74605i347570FB09B90F2D/image-size/large?v=v2&amp;px=999" role="button" title="6.png" alt="6.png" /></span></P><P>If the export of the package content is successful, then the below message will be popped up-</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="7.png" style="width: 774px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74606i11D36424EFC6719D/image-size/large?v=v2&amp;px=999" role="button" title="7.png" alt="7.png" /></span></P><P>To import the transport in PRD, Login into the Cloud transport tenant Click on Transport Node.</P><P>Select the PRD Node, then select&nbsp;the transport Request and click on button Import Selected.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="8.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74607iF799DD1A029FCD82/image-size/large?v=v2&amp;px=999" role="button" title="8.png" alt="8.png" /></span></P><P>Status of the transport can be verify from column status.</P><P>Conclusion-</P><P>We discussed how to transport/move the artifacts via CTMS and set-up details.</P><P>Related informations-</P><P><A href="https://help.sap.com/docs/cloud-transport-management" target="_self" rel="noopener noreferrer">https://help.sap.com/docs/cloud-transport-management</A>&nbsp;</P><P><A href="https://help.sap.com/docs/cloud-transport-management/sap-cloud-transport-management/what-is-sap-cloud-transport-management" target="_self" rel="noopener noreferrer">https://help.sap.com/docs/cloud-transport-management/sap-cloud-transport-management/what-is-sap-cloud-transport-management</A>&nbsp;</P><P>Please share your feedback and your thoughts. Write back to me for questions and queries.</P><P>Thank you.</P> 2024-03-03T09:20:43.232000+01:00 https://community.sap.com/t5/technology-blogs-by-members/analyze-your-sap-pi-po-system-before-a-migration-to-integration-suite/ba-p/13628495 Analyze Your SAP PI/PO System Before a Migration to Integration Suite 2024-03-05T14:30:56.817000+01:00 DG https://community.sap.com/t5/user/viewprofilepage/user-id/3313 <P class=""><SPAN>Before you can create any SAP PI/PO migration you need to plan and budget for a migration project. It is not an easy to do task and there are a lot of factors you should consider. </SPAN></P><P class=""><SPAN>SAP has their&nbsp;</SPAN><A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/migration-assessment" target="undefined" rel="noopener noreferrer"><SPAN>migration assessment tool</SPAN></A><SPAN>, that you can trigger to fetch data about your current system and landscape. I strongly encourage you to run it and get the details from it. The more perspectives you have on your integration, the better. </SPAN></P><P class=""><SPAN>At Figaf we also have our report over your landscape. It does not come with any timeline on how long it should take to process each migration. It is something that is up to you to process with your landscape. </SPAN></P><H1 id="toc-hId-859004151"><SPAN>How Figaf collects data</SPAN></H1><P class=""><SPAN>Once you install Figaf and it connect to your SAP PI/PO system it collects a local version of all objects. Then it links all objects to so we got a tree of the objects. This is the same as SAPs tool does. </SPAN></P><P class=""><SPAN>You can use our <A href="https://figaf.com/migrationedition/" target="_self" rel="nofollow noopener noreferrer">free migration edition</A>, which will also help you test the migration and allow you to try our migration tool. You can </SPAN><A href="https://figaf.com/figaf-in-your-migration-project/" target="undefined" rel="nofollow noopener noreferrer"><SPAN>install</SPAN></A><SPAN> Figaf on a laptop for a PoC or on BTP for productive usage. </SPAN></P><H1 id="toc-hId-662490646"><SPAN>Figaf report</SPAN></H1><P class=""><SPAN>Once data is collected, you can generate a report like the following with all data.</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DG_0-1709645080536.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/75803i05DDA2F9EF6BCDE4/image-size/medium?v=v2&amp;px=400" role="button" title="DG_0-1709645080536.png" alt="DG_0-1709645080536.png" /></span><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DG_1-1709645099531.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/75804i3EA5F30D68453110/image-size/medium?v=v2&amp;px=400" role="button" title="DG_1-1709645099531.png" alt="DG_1-1709645099531.png" /></span><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DG_2-1709645116371.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/75805i0BF2180696A4FC8E/image-size/medium?v=v2&amp;px=400" role="button" title="DG_2-1709645116371.png" alt="DG_2-1709645116371.png" /></span></P><P>&nbsp;</P><P class=""><SPAN>You will need to go through and find:</SPAN></P><UL><LI><P class=""><SPAN>The different types of adapters used. It is mainly the first time you connect with an adapter that it will cost you time. </SPAN></P></LI></UL><UL><LI><P class=""><SPAN>Number of different modules you need to support and how critical it is</SPAN></P></LI></UL><UL><LI><P class=""><SPAN>Number of EDI interfaces </SPAN></P></LI></UL><UL><LI><P class=""><SPAN>Find problems that cannot be migrated</SPAN></P></LI></UL><P class=""><SPAN class="">&nbsp;</SPAN></P><P class=""><SPAN>Once you have gone thru the list it becomes easier for you to estimate how many interfaces you need to migrate. </SPAN></P><H1 id="toc-hId-465977141"><SPAN>The small differences</SPAN></H1><P class=""><SPAN>With the projects we have been working with we have found that it is small details that makes or breaks if a migration will work. Some of the recent challenges we have come up with are:</SPAN></P><OL><LI><P class=""><SPAN>Local function in a message mapping that are using Imported Archives</SPAN></P></LI></OL><OL><LI><P class=""><SPAN>Message mapping that links to an Imported Message. Something we have only seen in old mappings.</SPAN></P></LI></OL><P class=""><SPAN class="">&nbsp;And you will probably find a lot of other cases</SPAN></P><P class=""><SPAN>In our latest release (2402) of Figaf we have created a option to callow you to create your own rules via Xpath or Regex. Then it will find all objects in your ESR or Directory that matches this. On a call we should the team in about 5 minutes how to create a new rule to cover checking for the second case. Then we could see less than 10 mappings were affected so no need to automate a workaround. If it was 20-50 we may have considered improving to fix this case. </SPAN></P><P class=""><SPAN>For 1. Figaf allows you to extract the UDF to a groovy script as we do for Function Libraries. This gives you a way to edit and manage the content much more accessible.</SPAN></P><P class=""><SPAN>To create a new rule check the following guide</SPAN></P><P class=""><div class="video-embed-center video-embed"><iframe class="embedly-embed" src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2Ff8bosL9oavk%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3Df8bosL9oavk&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2Ff8bosL9oavk%2Fhqdefault.jpg&amp;key=b0d40caa4f094c68be7c29880b16f56e&amp;type=text%2Fhtml&amp;schema=youtube" width="200" height="112" scrolling="no" title="Qustion Query in your SAP PI landscape for SAP PI migration" frameborder="0" allow="autoplay; fullscreen; encrypted-media; picture-in-picture;" allowfullscreen="true"></iframe></div></P><P class=""><SPAN>I hope this will be a part of your migration toolbox.</SPAN></P><H1 id="toc-hId-269463636"><SPAN>Pilot project</SPAN></H1><P class=""><SPAN>The assessment is not something that can stand alone. Running a pilot project where you migrate some integrations with the different options SAPs, Figafs or manual migration will give you much more data about how to get started. </SPAN></P><P class=""><SPAN>Also consider the effort of moving it into production and all the steps involved, like testing and go live considerations. </SPAN></P><P class=""><SPAN class="">&nbsp;</SPAN></P> 2024-03-05T14:30:56.817000+01:00 https://community.sap.com/t5/technology-blogs-by-sap/what-s-new-for-sap-integration-suite-february-2024/ba-p/13635001 What’s New for SAP Integration Suite – February 2024 2024-03-12T09:22:05.281000+01:00 GabrielaGahse https://community.sap.com/t5/user/viewprofilepage/user-id/4015 <P>Before going into the highlights of our innovations, we are thrilled to inform you that SAP Integration Suite has been recognized as a Leader in the latest Gartner Magic Quadrant for Integration Platform-as-a-Service (iPaaS) for the fourth consecutive time. We are convinced that we have been received this recognition for our commitments to deliver a top-tier customer-centric integration solution, the ability to accelerate business outcomes through prebuilt content, ongoing innovation, the global geographic strategy, and readiness for the future. And a big thanks also goes to you in supporting us with all your great feedback. For more details checkout the <A href="https://community.sap.com/t5/technology-blogs-by-sap/sap-recognized-as-a-leader-in-2024-gartner-magic-quadrant-for-ipaas/ba-p/13623157" target="_blank">blogpost</A> and the <A href="https://news.sap.com/2024/02/sap-named-leader-2024-gartner-magic-quadrant-ipaas/" target="_blank" rel="noopener noreferrer">SAP News article</A>.</P><P>SAP Integration Suite highlights are:</P><UL><LI>JMS receiver adapter: property to identify sending integration flow</LI><LI>Inspect resource consumption through SAP Cloud ALM/SAP Focused Run</LI><LI>Call to action: Upgrade to new version of third-party connectors</LI><LI>Duplicate nodes on target side in a MAG</LI><LI>Definition of more complex code value mapping scenarios</LI><LI>Add metadata for OData-based API artifacts deployed on Edge Integration Cell</LI><LI>Enhancement of security standards in API Management</LI><LI>Policy templates in API Management</LI><LI>Distributed tracing in advanced event mesh</LI><LI>Direct consumption of SAP S/4HANA Cloud events in advanced event mesh</LI></UL><H2 id="toc-hId-988916891">Cloud Integration</H2><H3 id="toc-hId-921486105">JMS receiver adapter: property to identify sending integration flow</H3><P>We have extended the JMS receiver adapter by storing a new <STRONG>SAP_IntegrationFlowID</STRONG> property. It contains the ID of the integration flow that has sent the message through the JMS receiver adapter. The JMS consumer can use this property to define steps depending on the sending integration flow ID. Refer the&nbsp;<A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/headers-and-exchange-properties-provided-by-integration-framework" target="_blank" rel="noopener noreferrer">documentation</A>.&nbsp;</P><H3 id="toc-hId-724972600">Inspect resource consumption through SAP Cloud ALM/SAP Focused Run</H3><P>Inspection of your resource consumption has been available since the middle of last year. Now you may analyze the utilization of database and system resources through the health monitoring application of SAP Cloud ALM and SAP Focused Run. For troubleshooting bottlenecks caused by integration flows you may jump directly to the Inspect section of the Cloud Integration monitor.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="GabrielaGahse_0-1710162608878.png" style="width: 703px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/78583i4DDAA3ACF5EC10BD/image-dimensions/703x262?v=v2" width="703" height="262" role="button" title="GabrielaGahse_0-1710162608878.png" alt="GabrielaGahse_0-1710162608878.png" /></span></P><H3 id="toc-hId-528459095">Call to action: Upgrade to new version of third-party connectors</H3><P>As per <A href="https://me.sap.com/notes/3001980" target="_blank" rel="noopener noreferrer">SAP note 3001980</A> the following previous adapter versions are deprecated since end of 2020: Salesforce, Amazon Web Services, Microsoft Dynamics, SugarCRM. There haven't been any new features or enhancements for these previous adapter versions. After the upcoming Apache Camel upgrade, the adapter versions will no longer run.</P><P>Action is required from the customer's side. Check all your tenants to see whether you have any kind of the above adapters still deployed. Please undeploy and delete the adapters. In case of question reach out to <A href="mailto:annemarie.kiefer@sap.com" target="_blank" rel="noopener nofollow noreferrer">annemarie.kiefer@sap.com</A><SPAN>.</SPAN></P><H2 id="toc-hId-202862871">B2B Integration</H2><P>We have extended the mapping functionality of the Integration Advisor capability to offer you more flexibility.</P><H3 id="toc-hId-135432085">Duplicate nodes on target side in a MAG</H3><P>When designing B2B integration scenarios you may have situations where certain information within the source structure needs to be mapped to only one node in the target structure. Now the mapping guidelines editor of the Integration Advisor capability enables you to duplicate group or leave nodes and map each source alternative to one of the reproductions. Refer to the <A href="https://help.sap.com/docs/cloud-integration/sap-cloud-integration/mapping-source-and-target-nodes#duplicate-target-nodes" target="_blank" rel="noopener noreferrer">documentation</A>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="GabrielaGahse_1-1710156933032.jpeg" style="width: 652px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/78430iB74065749B4DCFAC/image-dimensions/652x259?v=v2" width="652" height="259" role="button" title="GabrielaGahse_1-1710156933032.jpeg" alt="GabrielaGahse_1-1710156933032.jpeg" /></span></P><P>&nbsp;</P><H3 id="toc-hId--61081420">Definition of more complex code value mapping scenarios</H3><P>You are now able to define local or global mappings of multiple code values at the source side to one code value at the target side. The value function now supports N:1 cardinality code value mapping ease e.g., situations where you have to map multiple partners or currencies.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="GabrielaGahse_2-1710156933037.jpeg" style="width: 692px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/78429i302CBE7871F725EB/image-dimensions/692x285?v=v2" width="692" height="285" role="button" title="GabrielaGahse_2-1710156933037.jpeg" alt="GabrielaGahse_2-1710156933037.jpeg" /></span></P><H2 id="toc-hId--386677644">API Management</H2><H3 id="toc-hId--454108430">Add metadata for OData-based API artifacts deployed on Edge Integration Cell</H3><P>You can now supply an EDMX specification for API artifacts (API-led integration flows for deployment on Edge Integration Cell), that are based on OData APIs. This allows you to easily specify additional integration steps based on the resources of this API. See the detailed <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/create-api-artifact-using-url" target="_blank" rel="noopener noreferrer">documentation.</A></P><H3 id="toc-hId--650621935">Enhancement of security standards</H3><P>As always, our intention is to offer the highest security standards to avoid attack vulnerabilities. Therefore, we encourage you to use strong certificates, and will no longer accept uploads to the Trust Store of weak customer-owned self-signed certificates or certificate chains used for mTLS handshakes.&nbsp;Consequently, the OpenSSL security level has been increased to level 2. See a comprehensive definition of security level 2 published on the <A href="https://www.openssl.org/docs/man3.0/man3/SSL_CTX_set_security_level.html#DEFAULT-CALLBACK-BEHAVIOURInformation" target="_blank" rel="noopener nofollow noreferrer">OpenSLL site</A>. For additional details please see <A href="https://me.sap.com/notes/3418201" target="_blank" rel="noopener noreferrer">note -3418201</A>.</P><H3 id="toc-hId--922366809">Policy templates</H3><P>We have filled a small gap when applying policy templates to an API proxy. Default fault&nbsp;rules or post-client flows available within a policy template will now also be appended to the API proxy. Refer to the &nbsp;<A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/apply-policy-template" target="_blank" rel="noopener noreferrer">documentation</A>.</P><H2 id="toc-hId--825477307">Event-driven Integration</H2><P>We have news regarding SAP Integration Suite, advanced event mesh our offering for distributed network of event brokers and sophisticated features.</P><H3 id="toc-hId--1315393819">Distributed tracing</H3><P>We have extended SAP Integration Suite, advanced event mesh with a distributed tracing capability. Now you are able to trace the the lifecycle of events through OpenTelemetry, from the producing application across one or multiple event brokers to the receiving application.</P><H3 id="toc-hId--1511907324">Direct consumption of SAP S/4HANA Cloud events</H3><P>We have an update regarding the event sources. We have enabled the direct consumption of SAP S/4HANA Cloud events into SAP Integration Suite, advanced event mesh without any intermediate hops. SAP S/4HANA Cloud customers may leverage SAP Integration Suite, advanced event mesh for very large projects, where performance is crucial. Read the <A href="https://help.sap.com/docs/SAP_S4HANA_CLOUD/0f69f8fb28ac4bf48d2b57b9637e81fa/9b34c841dfba4f82af0825a2f3196ecf.html?version=2402.500" target="_blank" rel="noopener noreferrer">documentation</A>.</P><H2 id="toc-hId--1415017822">How to stay tuned to recent and upcoming innovations?</H2><P>The SAP Road Map Explorer is your one-stop shop for all&nbsp;<A href="https://roadmaps.sap.com/board?PRODUCT=000D3A47875C1EDB98A8A910864AC24B&amp;range=CURRENT-LAST" target="_blank" rel="noopener noreferrer">SAP Integration Suite</A>&nbsp;innovations. You can easily check out the latest innovations and follow what is planned for the following quarters. All recent innovations also cover under the tab <EM>Features</EM> further links to blogposts or documentation.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="GabrielaGahse_0-1710227126039.png" style="width: 635px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/78987i1CA65BB89053CE1B/image-dimensions/635x237?v=v2" width="635" height="237" role="button" title="GabrielaGahse_0-1710227126039.png" alt="GabrielaGahse_0-1710227126039.png" /></span></P><P>We also refer to the complete list of new releases in our documentation: <A href="https://help.sap.com/whats-new/5793247a5d5741beb0decc5b7dee1160?locale=en-US" target="_blank" rel="noopener noreferrer">What’s New in SAP Integration Suite</A>.</P><P>And if you have not heard of&nbsp;our monthly webinars, I suggest you <A href="https://www.sap.com/cmp/nl/sap-cloud-platform-integration-suite/index.html?sap-outbound-id=6287F912007644D6C49C53EAA9594EE1B4431938&amp;smc_campaign_id=0000032983&amp;source=email-smc" target="_blank" rel="noopener noreferrer">sign up</A> to get an invitation to the upcoming ones. Our team of Product Management experts host these webinars to showcase the latest and greatest updates regarding all SAP Integration Suite capabilities. The webinars are hosted on the last Tuesday of every month and the next one is already scheduled for February 27th.</P><P>In case you have missed our last monthly webinar, don’t worry. Visit <A href="https://webinars.sap.com/sap-user-groups-k4u/en/ifgintegration" target="_blank" rel="noopener noreferrer">2024 Learning Sessions for SAP User Groups on SAP Integration Suite</A> for all recordings, presentations, and Q&amp;As.</P><P>Are you aware of the <A href="https://readiness-at-scale.enable-now.cloud.sap/pub/20230621_ras/index.html?show=book!BO_EC8330B09B97CDBE#SL_120BDFE08096029D" target="_blank" rel="noopener nofollow noreferrer">Release Navigator for SAP BTP</A>? It consolidates release information across SAP BTP products and services easing you the way to find product release related notes, blogposts, and webpages. For your convenience use the direct link to the <A href="https://readiness-at-scale.enable-now.cloud.sap/pub/20230621_ras/index.html?show=book!BO_EC8330B09B97CDBE#slide!SL_83EFB74698B85387" target="_blank" rel="noopener nofollow noreferrer">SAP Integration Suite section of the Release Navigator</A>.</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P> 2024-03-12T09:22:05.281000+01:00 https://community.sap.com/t5/technology-blogs-by-sap/benefit-from-the-new-process-hierarchy-assignments-app-in-sap-cloud-alm-for/ba-p/13643352 Benefit From The New 'Process Hierarchy Assignments' App in SAP Cloud ALM for Implementation 2024-03-19T16:33:41.013000+01:00 Nagar_Megha https://community.sap.com/t5/user/viewprofilepage/user-id/168799 <P><SPAN>'Process Hierarchy' enables users to define common process landscape which is used across SAP Cloud ALM tenant.&nbsp;</SPAN></P><P><SPAN>This blog outlines how to manage and track your process hierarchy assignments in SAP Cloud ALM, with a spotlight on introduction to the new analytics application called '<STRONG>Process Hierarchy Assignments</STRONG>'. This application provides a unified overview of process hierarchy and its assignments across your implementation projects. Before delving into the details of new application, let's briefly recap for managing process hierarchies in SAP Cloud ALM.</SPAN></P><H3 id="toc-hId-1118866588">&nbsp;</H3><H3 id="toc-hId-922353083"><STRONG>Defining Process Hierarchy&nbsp;</STRONG></H3><P><SPAN>A process hierarchy is a structured representation of processes within an organization or system. You can break down complex processes of your organization into smaller components to create multiple levels or layers of nodes. Each level of process hierarchy nodes represents different stages or components of a process. To learn more about Process Hierarchy, you can visit <A href="https://help.sap.com/docs/cloud-alm/applicationhelp/process-hierarchy" target="_self" rel="noopener noreferrer">Help Portal.</A></SPAN></P><P><SPAN>To create or edit process hierarchy in SAP Cloud ALM, admins can assign the role 'Process Hierarchy Author' to themselves or other team members in user management app.&nbsp;</SPAN></P><P>Once you have the role authorizations, you can create the Process Hierarchy structure in the 'Process' app or simply upload via Excel. More information about how to upload process hierarchies via spreadsheet can be found in&nbsp;<A href="https://community.sap.com/t5/technology-blogs-by-sap/simplify-complex-process-create-process-hierarchies-in-sap-cloud-alm-faster/ba-p/13579003" target="_self">this Blog Post.</A>.</P><P>&nbsp;</P><H3 id="toc-hId-725839578"><STRONG>Assigning Project Elements </STRONG></H3><P>Once the process hierarchy structure is created, the assignment of hierarchy nodes is possible in various applications. You can assign hierarchy nodes to your <STRONG>Solution Processes, Requirements, Tasks</STRONG> and <STRONG>Documents</STRONG> in their respective applications. A<SPAN>ssigning these entities to process hierarchy will enable clarity, accountability, and efficient tracking at the hierarchy level in your implementation.</SPAN></P><P>&nbsp;</P><H3 id="toc-hId-529326073"><SPAN><STRONG>Tracking in 'Process Hierarchy Assignments'</STRONG></SPAN></H3><P>Process Hierarchy Assignments is a cross-project report that offers&nbsp;<SPAN>granular structure of process hierarchy nodes, along with the status of its assigned elements allowing for deeper insights into relationships.&nbsp;</SPAN></P><P>Process Hierarchy Assignments can be launched from the 'Cross-Project Overview' page.&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Where to find Process Hierarchy Assignment Apps" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82157i9479956D775E0601/image-size/large?v=v2&amp;px=999" role="button" title="2024-03-18_10-14-04.jpg" alt="Where to find Process Hierarchy Assignment Apps" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">Where to find Process Hierarchy Assignment Apps</span></span></P><P><SPAN>Here you can analyze assignments of your <STRONG>Solution Processes, Requirements, Tasks </STRONG>and <STRONG>Documents</STRONG> that may belong to different implementation projects, to specific process hierarchy node. The first column</SPAN>&nbsp;present the tree structure of your defined process hierarchy nodes and the next columns display number and status of assigned elements.&nbsp;</P><P><SPAN>You can also utilize the expand or collapse functionality on individual node to adjust the view based on the granularity of levels of hierarchy you need or simply use 'Expand All' / 'Collapse All' icons on top right to adjust the view.</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Process Hierarchy Assignments App" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82390i217E40FAE5477AB5/image-size/large?v=v2&amp;px=999" role="button" title="2024-03-18_13-15-32.jpg" alt="Process Hierarchy Assignments App" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">Process Hierarchy Assignments App</span></span></P><P><SPAN>Use the settings to personalize the displayed columns. You can choose the entities you wish to include in the columns and their order as well.&nbsp;</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Use 'Settings' to personalize the columns" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82396i98FDC1CE0CF63051/image-size/large?v=v2&amp;px=999" role="button" title="2024-03-18_13-20-36.jpg" alt="Use 'Settings' to personalize the columns" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">Use 'Settings' to personalize the columns</span></span></P><P><SPAN>To delve deeper, for instance, into a specific node, you can activate the side panel by clicking on the arrow. The side panel will then display the list of assigned elements grouped by projects. You can then navigate through different tabs to view the entity list.</SPAN></P><P><SPAN>For further drill down, the app also provides forward navigation. For instance, in the requirements tab, if you wish to explore requirements in the realization status and check their testing status, you can simply select the requirements and navigate to requirements traceability.</SPAN></P><P><SPAN><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="View details in the side panel to forward naviagte" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82400i088FB3BBE2CFC000/image-size/large?v=v2&amp;px=999" role="button" title="2024-03-18_13-56-41.jpg" alt="View details in the side panel to forward naviagte" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">View details in the side panel to forward naviagte</span></span></SPAN></P><P><SPAN>Here are the upcoming enhancements planned for Process Hierarchy Assignments app. Stay tuned for further updates!</SPAN></P><OL><LI><P>Adding filters to narrow down results for specific Projects, Scopes, and Process Hierarchy Nodes.</P></LI><LI><P>Adding filters to display hierarchy nodes with assigned Solution Processes, Requirements, Documents, and Tasks in specific statuses.</P></LI><LI><P>Adding filters to display hierarchy nodes with specific Document types and Task types assigned.</P></LI><LI><P>Introducing anomaly detection, such as identifying nodes with no assigned project elements.</P></LI></OL><P>&nbsp;</P> 2024-03-19T16:33:41.013000+01:00 https://community.sap.com/t5/technology-blogs-by-members/first-run-of-saps-pipelines-for-integration-suite/ba-p/13655583 First run of SAPs Pipelines for Integration Suite 2024-04-02T11:40:52.518000+02:00 DG https://community.sap.com/t5/user/viewprofilepage/user-id/3313 <P>I saw the<SPAN>&nbsp;</SPAN><A href="https://community.sap.com/t5/technology-blogs-by-sap/introducing-the-new-pipeline-concept-in-cloud-integration/ba-p/13639651" target="_blank">pipeline concept</A><SPAN>&nbsp;</SPAN>for SAP Integration Suite and wanted to explore it.&nbsp;</P><P>It did look fairly complicated to get started with as I saw it but I had to dig in to learn and understand. Hopefully this guide will help you so you can explore it faster.&nbsp;</P><P>There are a lot of positives with the setup and the ability to control systems in such a way. It allows a simpler setup for handling the processing of messages and restarts. Separating mapping logic from retry processing making it easier to build solid integration.&nbsp;</P><P>It adds some complexity to the process and challenges monitoring and handling changes in the setup. You can do it via API calls, which is not ideal. I’m sure it can be automated in some way.</P><P>Once you have processed a message that is being split, you will see the following messages being processed.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image-13" style="width: 818px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89657i198FD44CAC64F04B/image-size/large?v=v2&amp;px=999" role="button" title="image-13" alt="image-13" /></span></P><P>You can follow the guide below to see the vide of the concept.</P><P><div class="video-embed-center video-embed"><iframe class="embedly-embed" src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FDIQDsM95SsU%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DDIQDsM95SsU&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FDIQDsM95SsU%2Fhqdefault.jpg&amp;key=b0d40caa4f094c68be7c29880b16f56e&amp;type=text%2Fhtml&amp;schema=youtube" width="400" height="225" scrolling="no" title="SAP Pipeline for Cloud Integration" frameborder="0" allow="autoplay; fullscreen; encrypted-media; picture-in-picture;" allowfullscreen="true"></iframe></div></P><DIV class=""><DIV class="">&nbsp;</DIV></DIV><H2 id="toc-hId-990768988">&nbsp;How to get started</H2><P style=" padding-left : 30px; "><STRONG>Note:</STRONG> You can run the following example without installing Figaf. But if you are working on a migration project our migration edition will bring a lot of value to your project.&nbsp;</P><P>It is a bit difficult to get started with the platform. You need some flows that can work and handle your scenario. So, hopefully, this guide will simplify the setup so that you can run it on your own system.</P><P>1) In your Integration Suite, go to Discovery and search for Process Integration Pipeline – Generic Integration Flows &amp; Templates.</P><P>Copy and add it to your tenant.</P><P>2) Deploy Script collection and iflow 2-6 no configuration is needed for it</P><P>3) Download the sample package from<SPAN>&nbsp;</SPAN><A href="https://figaf.com/wp-content/uploads/2024/03/Figaf-demo-for-pipeline.zip" target="_blank" rel="noopener nofollow noreferrer"><STRONG>Figaf here</STRONG></A><SPAN>&nbsp;</SPAN>upload and deploy it</P><P>It contains a</P><UL><LI>HTTP endpoint to test with.</LI><LI>Dummy Endpoint a process Direct flow that mocks as an endpoint. You can configure how often it should create errors. You can change how often it should fail.</LI><LI>Two iflows have been migrated via the Figaf tool. Usually Figaf would migrate it with a receiver split but we have instead generated it as two separate iflows and added Process Direct to it. There is still routing in it, which should have been moving to the Receiver or Interface determination.</LI></UL><P>They should all be deployed.</P><P>4) Get the<SPAN>&nbsp;</SPAN><STRONG><A href="https://www.usebruno.com/" target="_blank" rel="noopener nofollow noreferrer">Bruno</A><SPAN>&nbsp;</SPAN></STRONG>to use for HTTP testing</P><P>5) Get our collection<SPAN>&nbsp;</SPAN><STRONG><A href="https://figaf.com/wp-content/uploads/2024/03/Figaf-demo-of-SAP-Pipeline.zip" target="_blank" rel="noopener nofollow noreferrer">here</A>.</STRONG></P><P>Unzip it, and import it into Bruno</P><P>6) Configure the environment with service keys for both API and for Messaging(run) the key for Message Run must have run enabled otherwise you need to change the setup.</P><P>Enter them in the environments page</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image-11" style="width: 619px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89658iE8FCD6B589AFA2FA/image-size/large?v=v2&amp;px=999" role="button" title="image-11" alt="image-11" /></span></P><P>7) Run the PD(partner directory) login</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image-12" style="width: 569px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89660i760993C51AD267E2/image-size/large?v=v2&amp;px=999" role="button" title="image-12" alt="image-12" /></span></P><P><span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:">😎</span>Run the PDInit to initialize the directory with some content</P><P>9) Send messages with the Send Message to see how the flow works</P><P>Hopefully, you should now see all the messages being processed on the monitor. If not then you have some time to process the different steps and learn where the processing fails.</P><P>Note: You can use the 03_PDClean to remove the object created in the process. Check if something is missing.</P><H2 id="toc-hId-794255483">XSLT</H2><P>We have just created some fixed XSLT for the mapping to the receiver and interface. For now there are now queries in it but it should be simple to add such conditions.</P><P>Receiver XSLT</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-markup"><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt; &lt;xsl:template match="/"&gt; &lt;ns0:Receivers xmlns:ns0="http://sap.com/xi/XI/System"&gt; &lt;ReceiverNotDetermined&gt; &lt;Type&gt;Default&lt;/Type&gt; &lt;DefaultReceiver&gt; &lt;Service&gt;RL_Receiver_1&lt;/Service&gt; &lt;/DefaultReceiver&gt; &lt;/ReceiverNotDetermined&gt; &lt;Receiver&gt; &lt;Service&gt;AsyncPartner&lt;/Service&gt; &lt;/Receiver&gt; &lt;Receiver&gt; &lt;Service&gt;ERP&lt;/Service&gt; &lt;/Receiver&gt; &lt;/ns0:Receivers&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>Interface XSLT</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-markup"><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt; &lt;xsl:template match="/"&gt; &lt;ns0:Interfaces xmlns:ns0="http://sap.com/xi/XI/System"&gt; &lt;Interface&gt; &lt;Index&gt;1&lt;/Index&gt; &lt;Service&gt;/pip/Asyncpartner_line&lt;/Service&gt; &lt;/Interface&gt; &lt;/ns0:Interfaces&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;Note: This was orginal posted at <A href="https://figaf.com/getting-with-saps-pipelines-for-integration-suite/" target="_self" rel="nofollow noopener noreferrer">figaf.com</A></P> 2024-04-02T11:40:52.518000+02:00 https://community.sap.com/t5/technology-blogs-by-sap/sap-pi-po-migration-why-you-should-move-to-the-cloud-with-sap-integration/ba-p/13655584 SAP PI/PO migration? Why you should move to the Cloud with SAP Integration Suite! 2024-04-02T11:57:06.272000+02:00 thomas_volmering https://community.sap.com/t5/user/viewprofilepage/user-id/189303 <P><STRONG>Are you among the thousands SAP customers using <A href="https://www.sap.com/products/technology-platform/process-orchestration.html" target="_blank" rel="noopener noreferrer">SAP Process Integration / SAP Process Orchestration</A>?</STRONG></P><P>If yes, you’re aware that this product is impacted by SAP NetWeaver 7.5 maintenance strategy, as explained in <A href="https://community.sap.com/t5/technology-blogs-by-sap/maintenance-strategy-for-sap-netweaver-7-5-fully-aligned-with-sap-business/ba-p/13456253" target="_blank">this blog post</A>: indeed, the maintenance of SAP Process Integration and SAP Process Orchestration will be extended in accordance with SAP NetWeaver 7.5, with mainstream maintenance until end of 2027 with option of extended maintenance until end of 2030.</P><P>Let’s consider that it typically takes a year to get business case approvals and then it takes time to convince stakeholders and cooperate in development and productive cycles: you should start your move to SAP Integration Suite in 2024 to be sure to have the migration completed by 2027. That’s why I’m happy to guide you on the path that will let you adopt SAP Integration Suite, the modern way of integrating your SAP and non-SAP systems for the best business outcomes.</P><H2 id="toc-hId-990768989">What is SAP Integration Suite?</H2><P>SAP Integration Suite is an integration platform-as-a-service – iPaaS – that helps you quickly integrate on-premises and cloud-based processes, services, applications, events, and data. With SAP Integration Suite, you accelerate innovation, automate more processes, and realize a faster time to value.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="sap-integration-suite-device-intrgrflw.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89732i56C50364B2F76BE2/image-size/large?v=v2&amp;px=999" role="button" title="sap-integration-suite-device-intrgrflw.png" alt="sap-integration-suite-device-intrgrflw.png" /></span></P><P>SAP Integration Suite helps you quickly connect systems, automate business processes, and harmonize experiences across the extended enterprise. It comes with:</P><UL><LI>Prebuilt integrations managed and updated by SAP and by our valued partners</LI><LI>Harmonized access to popular third-party cloud applications</LI><LI>Tools for designing, publishing, and managing APIs</LI><LI>AI-assisted development and integration optimization</LI><LI>Tools-based, guided approach to define, document, and govern you&gt;<A href="https://www.sap.com/services-support/integration-solution-advisory-methodology.html" target="_blank" rel="noopener noreferrer">integration strategy</A></LI></UL><P>To get an overview, watch our 4 minutes video&nbsp; <A href="https://www.sap.com/products/technology-platform/integration-suite.html?video=8e86c54f-d07d-0010-87a3-c30de2ffd8ff&amp;source=community-blog-TV%20" target="_self" rel="noopener noreferrer"><STRONG>What is SAP Integration Suite</STRONG></A></P><P>To delve deeper into SAP Integration Suite, read our <STRONG><A href="https://help.sap.com/doc/e50e61e7b66c4b60ae5e88c00c01486a/CLOUD/en-US/FSD_IntegrationSuite.pdf" target="_blank" rel="noopener noreferrer">44 pages Feature Scope Description</A></STRONG>.</P><P>With SAP Integration Suite comes <STRONG>SAP Integration Solution Advisory Methodology</STRONG>, which defines your proven path toward integration excellence to successfully move from SAP Process Integration / SAP Process Orchestration.</P><H2 id="toc-hId-794255484">What is SAP Integration Solution Advisory Methodology</H2><P><A href="https://www.sap.com/services-support/integration-solution-advisory-methodology.html" target="_blank" rel="noopener noreferrer">SAP Integration Solution Advisory Methodology</A> has been created by our experts to provide a standardized approach to integration. With SAP ISA-M, you can accelerate your digital transformation and become an integrated intelligent enterprise.</P><P>Our methodology offers <STRONG>a comprehensive framework</STRONG> that helps accelerate hybrid integration platform design, safeguard integration projects based on SAP best practices, and enable an agile integration practice across your organization. As you answer the assessment questions, you’ll learn more about the five levels of maturity and gain insight into where your business stands – and what to do next.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="SAP ISAM 5 levels.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89733i2DB71FF01E6A9AE9/image-size/large?v=v2&amp;px=999" role="button" title="SAP ISAM 5 levels.png" alt="SAP ISAM 5 levels.png" /></span></P><P>With SAP ISA-M you raise your organization's integration maturity level, moving from ad hoc integration to a systematic approach based on well-defined integration standards:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="SAP Integration Solution Advisory Methodology.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89734i8902DE6E14F96889/image-size/large?v=v2&amp;px=999" role="button" title="SAP Integration Solution Advisory Methodology.png" alt="SAP Integration Solution Advisory Methodology.png" /></span></P><P>You will find all the links to resources related to this methodology in <A href="https://community.sap.com/t5/sap-business-technology-platform-partner-knowledge/sap-integration-solution-advisory-methodology/ta-p/125013" target="_blank">Katrin von Ahsen’s blog post</A>.</P><H2 id="toc-hId-597741979">What is Event Driven Architecture?</H2><P>Event Driven Architecture is more and more popular simply because the world is more and more real-time.</P><P>Let me share just 2 business examples of this</P><UL><LI>Inventories must be updated as soon as sales happen</LI><LI>Maintenance teams need to know of breakdown as soon as possible</LI></UL><P>Let me go back to the very basics to quickly introduce Event Driven Architecture aka EDA:</P><UL><LI>An <STRONG>event </STRONG>is a significant <STRONG>change in the state of a system</STRONG>.</LI><LI><STRONG>Notification events</STRONG> or <STRONG>data events</STRONG> can be sent from the <STRONG>event source</STRONG> to inform other counterparts of the change.</LI><LI>A message holding the event description in an encoded format is sent through an <STRONG>event broker, </STRONG>in charge of properly distributing the events.</LI><LI><STRONG>Event consumers</STRONG> have registered with the event broker and are informed of the event, so they can appropriately react to it.</LI></UL><P>From a business perspective, with EDA you take advantage of</P><UL><LI>Improved reaction time and lower costs through full automation of real-time business processes</LI></UL><UL><LI>Smarter business decisions based on up-to-date information</LI><LI>Open ecosystem across vendor boundaries</LI><LI>Organizational empowerment through social-media communication style&nbsp;</LI></UL><P>From a technology perspective, you benefit of</P><UL><LI>Loose coupling for flexibility and scalability</LI><LI>Improved fault tolerance using suitable patterns</LI><LI>Incremental growth and higher-quality operations through step-by-step addition of event consumers and event sources</LI><LI>Real-time technical integrations and extensions</LI></UL><P>In SAP event-driven ecosystem as it is today, <STRONG>Event Sources</STRONG> can be</P><UL><LI>SAP S/4HANA</LI><LI>SAP S/4HANA Cloud</LI><LI>SAP ERP</LI><LI>SAP SuccessFactors solutions</LI><LI>SAP Marketing Cloud</LI><LI>SAP Data Intelligence</LI><LI>SAP CPQ</LI><LI>other SAP solutions</LI><LI>third-party solutions</LI></UL><P>and <STRONG>Event Consumers</STRONG> can be&nbsp;</P><UL><LI>SAP Integration Suite</LI><LI>SAP Build</LI><LI>SAP BTP services and apps</LI><LI>SAP S/4HANA</LI><LI>SAP S/4HANA Cloud</LI><LI>SAP ECC using add-on</LI><LI>SAP BTP, Kyma runtime</LI><LI>SAP Data Intelligence</LI><LI>other SAP solutions</LI><LI>third-party solutions</LI></UL><P>And as the most powerful and reliable event broker, we bring <STRONG>Advanced Event Mesh</STRONG>.;/p&gt;</P><H2 id="toc-hId-401228474">What is Advanced Event Mesh?</H2><P>Advanced Event Mesh for SAP Integration Suite is a complete event streaming, event management, and monitoring platform that makes software event brokers available as a service. With advanced event mesh you can create event broker services in minutes, build a model of your event mesh to design and help implement it, and monitor your services and event mesh to ensure everything runs smoothly.</P><P>Learn more on Advanced Event Mesh technical concepts in <A href="https://community.sap.com/t5/technology-blogs-by-sap/advanced-event-mesh-basic-concepts/ba-p/13572050" target="_blank">this blog post</A> from <A href="https://community.sap.com/t5/user/viewprofilepage/user-id/157315" target="_blank">Luiz Guilherme Cerqueira Campos</A>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Advanced Event Mesh architecture.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89736i6DC1B646F5617042/image-size/large?v=v2&amp;px=999" role="button" title="Advanced Event Mesh architecture.png" alt="Advanced Event Mesh architecture.png" /></span></P><P>This cloud platform incorporates best practices, expertise, and technology for event-driven architecture (EDA) on a single platform. As a SaaS solution, it provides:</P><UL><LI>everything you need to accelerate your organization’s EDA adoption, allowing you to fulfill modern use cases that demand real-time, intelligent event streaming</LI><LI>an intuitive, unified interface to design, deploy, manage, monitor, and govern your event streaming infrastructure (including the events that flow over it) in the <A href="https://help.pubsub.em.services.cloud.sap/Cloud/Security/cloud-security-overview.htm" target="_blank" rel="noopener nofollow noreferrer">most secure manner</A>.</LI></UL><P><div class="video-embed-center video-embed"><iframe class="embedly-embed" src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FbELEDGLixvM%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DbELEDGLixvM&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FbELEDGLixvM%2Fhqdefault.jpg&amp;key=b0d40caa4f094c68be7c29880b16f56e&amp;type=text%2Fhtml&amp;schema=youtube" width="600" height="337" scrolling="no" title="🔴 Combine event driven programming and EDA with SAP S/4HANA and Advanced Event Mesh" frameborder="0" allow="autoplay; fullscreen; encrypted-media; picture-in-picture;" allowfullscreen="true"></iframe></div></P><P>To delve deeper on Advanced Event Mesh, browse our Help Portal content on <A href="https://help.pubsub.em.services.cloud.sap/" target="_blank" rel="noopener nofollow noreferrer">SAP Integration Suite, Advanced Event Mesh</A> and learn with the missions available in <A href="https://discovery-center.cloud.sap/serviceCatalog/advanced-event-mesh" target="_blank" rel="noopener nofollow noreferrer">SAP Discovery Center</A>.</P><H2 id="toc-hId-204714969">What about Edge Integration Cell?</H2><P>Edge Integration Cell is an optional hybrid integration runtime offered as part of SAP Integration Suite, which enables you to manage APIs and run integration scenarios within your private landscape.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Slide1-5" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/90309i47D1C9E665D128BC/image-size/large?v=v2&amp;px=999" role="button" title="Slide1-5" alt="Slide1-5" /></span></P><P>&nbsp;The hybrid deployment model of Edge Integration Cell enables you to:</P><UL><LI>Design and monitor your integration content in the cloud.</LI><LI>Deploy and run your integration content in your private landscape.</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Edge Integration Cell overview.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89737iC9DBEA5EBAF10CD9/image-size/large?v=v2&amp;px=999" role="button" title="Edge Integration Cell overview.png" alt="Edge Integration Cell overview.png" /></span></P><P>To learn more about how hybrid deployment works using Edge Integration Cell, see <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/hybrid-deployment-using-edge-integration-cell" target="_blank" rel="noopener noreferrer">Hybrid Deployment Using Edge Integration Cell</A>.&nbsp;</P><P>To compare hybrid deployment with the standard deployment model of SAP Integration Suite, see <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/standard-deployment-in-cloud" target="_blank" rel="noopener noreferrer">Standard Deployment in the Cloud</A>.&nbsp;</P><P>Edge Integration Cell supports the following use cases:&nbsp;</P><UL><LI>Security or compliance use cases</LI></UL><P>In many enterprises, sensitive data must be managed and controlled inside the enterprise's firewall. In addition, there could be strict architectural restrictions and you want to keep your data within your private landscape.</P><UL><LI>Getting a migration path for SAP Process Integration / SAP Process Orchestration customers</LI></UL><P>SAP Process Integration / SAP Process Orchestration is used by many customers for ground-to-ground integration scenarios. Edge Integration Cell allows these customers to benefit from the newest innovations that come with SAP Integration Suite, with the option to design and monitor integration content in the cloud, and deploy and run their scenarios exclusively in their private landscapes.</P><P>In both cases, we recommend using a hybrid integration approach for enterprise-wide connectivity.</P><P>For more information about the supported features and limitations of Edge Integration Cell, see <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/supported-features-and-limitations-of-edge-integration-cell" target="_blank" rel="noopener noreferrer">Edge Integration Cell Runtime Scope</A>. Read more from <A href="https://people.sap.com/piyush.gakhar" target="_blank" rel="noopener noreferrer">Piyush Gakhar</A>, in his blog post “<A href="https://blogs.sap.com/2023/11/05/announcement-hybrid-integrations-with-integration-suite/" target="_blank" rel="noopener noreferrer">Announcement: Hybrid Integrations with Integration Suite</A>”. Read also <A href="https://people.sap.com/finny.babu" target="_blank" rel="noopener noreferrer">Finny Babu</A>’s “<A href="https://blogs.sap.com/2023/11/16/next-gen-hybrid-integration-with-sap-integration-suite-edge-integration-cell-introduction-setup/" target="_blank" rel="noopener noreferrer">Next-gen hybrid integration with SAP Integration Suite &amp; Edge Integration Cell – Introduction &amp; Setup</A>” and <A href="https://people.sap.com/ashutosh.kumar.singh02" target="_blank" rel="noopener noreferrer">Ashutosh Kumar Singh</A>’s “<A href="https://blogs.sap.com/2023/11/15/edge-integration-cell-an-introduction-to-api-artifact/" target="_blank" rel="noopener noreferrer">Edge Integration Cell: Design, deploy and manage APIs</A>”.</P><H2 id="toc-hId-8201464">How to move?</H2><P>To get the latest information on the migration from SAP Process Integration / SAP Process Orchestration to SAP Integration Suite, we prepared <A href="https://www.sap.com/products/technology-platform/integration-suite/migration.html" target="_blank" rel="noopener noreferrer">a dedicated web page</A>. You will learn about SAP Integration Suite capabilities, and evaluate <A href="https://www.sap.com/products/technology-platform/integration-suite/capabilities.html#business-challenges" target="_blank" rel="noopener noreferrer">top business challenges</A> to streamline processes, enhance productivity, and simplify the way people, data, and systems work together. You will also discover <A href="https://api.sap.com/content-type/Integration/integrations/packages" target="_blank" rel="noopener noreferrer">pre-built integrations available on SAP Business Accelerator Hub</A>: indeed, you can connect and integrate applications and business partners with thousands of pre-built integrations, connectors, APIs and more.</P><P>For more information on the new tools and the established services you can also check out this <A href="https://blogs.sap.com/2023/01/30/elevate-from-sap-process-orchestration-and-modernize-your-integration-platform-with-sap-integration-suite/" target="_blank" rel="noopener noreferrer">blog post</A> from our expert <A href="https://community.sap.com/t5/user/viewprofilepage/user-id/46168" target="_blank">Arti Gopalan</A>.</P><P>And to facilitate this move, we bring you a comprehensive <A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/c344b1c395144095834a961699293889.html?locale=en-US" target="_blank" rel="noopener noreferrer"><STRONG>Migration Guide for SAP Process Orchestration</STRONG></A>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="SAP PO migration guide.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/89738i42670779C6C59F9D/image-size/large?v=v2&amp;px=999" role="button" title="SAP PO migration guide.png" alt="SAP PO migration guide.png" /></span></P><P>This online document describes what you need to know when you want to migrate from SAP Process Orchestration to SAP Integration Suite. It covers a variety of topics related to the migration process:</P><UL><LI><A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/f2d8c9c558844cc884fd3f26478b9607.html?locale=en-US&amp;state=PRODUCTION&amp;version=SHIP" target="_blank" rel="noopener noreferrer"><STRONG>Introduction to SAP Integration Suite</STRONG></A>: Before you start your migration, get to know SAP Integration Suite, learn about its advantages, and get an overview of the migration process from SAP Process Orchestration to SAP Integration Suite.</LI><LI><A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/ca24a08bfa024d11a4bb4ada4d25dd01.html?locale=en-US&amp;state=PRODUCTION&amp;version=SHIP" target="_blank" rel="noopener noreferrer"><STRONG>Landscape</STRONG></A>: Assess your existing integration landscape and plan your target landscape.</LI><LI><A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/94ab03007f5d4b5eacec457aa129577a.html?locale=en-US&amp;state=PRODUCTION&amp;version=SHIP" target="_blank" rel="noopener noreferrer"><STRONG>Connectivity</STRONG></A>: Learn how to move your connectivity options to the connectors and adapters of the SAP Integration Suite.</LI><LI><A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/dd0fb21d47c54fff9ccab9667f3b4de7.html?locale=en-US&amp;state=PRODUCTION&amp;version=SHIP" target="_blank" rel="noopener noreferrer"><STRONG>Security</STRONG></A>: Get an overview of the security aspects you must consider while migrating and how to manage them in SAP Integration Suite.</LI><LI><A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/8faa23e5e04e4360ba3b74abd36f53dc.html?locale=en-US&amp;state=PRODUCTION&amp;version=SHIP" target="_blank" rel="noopener noreferrer"><STRONG>Error Handling and Logging Strategy</STRONG></A>: Learn about cloud-based error handling and logging strategies and understand the different approaches available to you.</LI><LI><A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/e8819d7c7ccd45e98552bb7fa736728e.html?locale=en-US&amp;state=PRODUCTION&amp;version=SHIP" target="_blank" rel="noopener noreferrer"><STRONG>Interface Governance</STRONG></A>: Understand how interfaces are governed in the cloud and how to manage them across multiple landscapes.</LI><LI><A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/0cab9f447d944344a400b05a95c75dfe.html?locale=en-US&amp;state=PRODUCTION&amp;version=SHIP" target="_blank" rel="noopener noreferrer"><STRONG>Interface Migration</STRONG></A>: Discover the different aspects involved in moving interfaces from SAP Process Integration and SAP Process Orchestration to SAP Integration Suite, as well as scenario and object assessment and how testing can be automated.</LI></UL><P>We also provide you with&nbsp;&nbsp;</P><UL><LI>12 months <A href="https://community.sap.com/t5/technology-blogs-by-sap/leverage-free-test-automation-tools-to-accelerate-your-migration-from-sap/ba-p/13554274" target="_blank"><STRONG>free regression test</STRONG></A> tool</LI><LI><A href="https://www.sap.com/documents/2022/04/f4e75e48-267e-0010-bca6-c68f7e60039b.html" target="_blank" rel="noopener noreferrer"><STRONG>SAP Migration Factory</STRONG></A> with 2-3 weeks of free service&nbsp;</LI><LI><A href="https://www.sap.com/documents/2022/04/b23e04cf-267e-0010-bca6-c68f7e60039b.html" target="_blank" rel="noopener noreferrer"><STRONG>SAP Services and Support</STRONG></A> offered in our <A href="https://www.sap.com/services-support/service-offerings/preferred-success.html" target="_blank" rel="noopener noreferrer"><STRONG>Preferred Success</STRONG></A> and <A href="https://www.sap.com/services-support/premium-support/maxattention.html" target="_blank" rel="noopener noreferrer"><STRONG>MaxAttention</STRONG></A> programs</LI></UL><P>And our valued partners are bringing powerful migration tools such as <A href="https://blogs.sap.com/2021/08/03/automating-your-sap-pi-to-cpi-migrations/" target="_blank" rel="noopener noreferrer"><STRONG>FIGAF</STRONG></A> and <A href="https://blogs.sap.com/2021/09/09/automate-your-sap-po-to-sap-is-migration-with-int4-iftt-ipaas-migration-edition/" target="_blank" rel="noopener noreferrer"><STRONG>INT4</STRONG></A>.</P><H2 id="toc-hId--188312041">Keep in touch!</H2><P>Now, you should have access to all the information you need to consider your migration from SAP Process Integration / SAP Process Orchestration toward SAP Integration Suite.</P><P>To stay updated throughout the year, regularly browse <A href="https://roadmaps.sap.com/board?range=2024Q1-2025Q1&amp;sap-outbound-id=04E3F10DABBEFCFB1B6214E98A81D79900D76B53&amp;sap-outbound-id=F84338300454061B469DD99EFA855784D1EE0293&amp;smc_campaign_id=0000038009&amp;source=email-smc&amp;PRODUCT=000D3A47875C1EDB98A8A910864AC24B&amp;PRODUCT=73554900100800003241&amp;PRODUCT=73554900100800004463#Q1%202024" target="_blank" rel="noopener noreferrer"><STRONG>our public roadmap for SAP Integration Suite</STRONG></A> and… feel free to follow me <A href="https://community.sap.com/t5/user/viewprofilepage/user-id/189303" target="_blank"><STRONG>here</STRONG></A> and/or <A href="https://www.linkedin.com/in/thomas-volmering-3538b7/" target="_blank" rel="noopener nofollow noreferrer"><STRONG>on LinkedIn</STRONG></A> to be notified of my next blog posts! <span class="lia-unicode-emoji" title=":winking_face:">😉</span>&nbsp;</P> 2024-04-02T11:57:06.272000+02:00 https://community.sap.com/t5/enterprise-resource-planning-blogs-by-members/sap-po-remove-double-quotes-from-sent-request/ba-p/13685558 SAP PO- Remove Double Quotes From Sent Request 2024-04-29T13:14:50.771000+02:00 DenizZilyas https://community.sap.com/t5/user/viewprofilepage/user-id/171723 <H5 id="toc-hId-1380787620"><STRONG>Introduction:</STRONG></H5><P>In this blog, we have a scenario where data sent from SAP to an external system is in the form of Proxy To REST. An external system provides us with a REST API. We will send a request to this API using the POST method. In the request sent according to the API of the external system, there are integer values corresponding to the IDs field. These values, after passing through the XML type at the mapping step and transitioning to the converter step in the adapter, have double quotes added to them by the adapter. Consequently, the service returns a 400 bad request response.</P><P>Typically, these fields within the array correspond to an IDs field. In other words:</P><P>[<BR />"IDs":6913,<BR />"IDs":6915<BR />]</P><P>In contrast, during triggering, they are sending all integer values within an array with commas between them, like so;</P><P>[6913,6915...]</P><P>As a result, the adapter incorrectly interprets them as separate key-value pairs with the key "IDs", leading to the addition of double quotes during JSON conversion.</P><P><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot_3.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103075i2E1511B904FB5F2E/image-size/large?v=v2&amp;px=999" role="button" title="Screenshot_3.png" alt="Screenshot_3.png" /></span></STRONG></P><P>&nbsp;</P><P>Firstly, defining the IDs field as an integer in the adapter did not work because the PO (Process Orchestration) converts this request to a string due to the commas between the values in the sent request.</P><P>When we inspect the logs, we observe that in the step where the adapter converts to JSON, it adds double quotes as follows:</P><P><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Receiver json.png" style="width: 727px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103189iCE8E5ED402B70849/image-dimensions/727x200?v=v2" width="727" height="200" role="button" title="Receiver json.png" alt="Receiver json.png" /></span></STRONG></P><P><STRONG>Step 1. XSLT</STRONG></P><P>I decided not to perform the conversion operation in the adapter because I believe the error stems from that conversion process. By default, the structure outputted from the mapping step is in XML format. If we convert this structure to JSON in the mapping step and specify that this structure is an array, the issue will be resolved. To achieve this, I have written an XSLT.</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-markup"><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt; &lt;xsl:output method="text" encoding="UTF-8"/&gt; &lt;xsl:template match="/"&gt; &lt;xsl:text&gt;[&lt;/xsl:text&gt; &lt;xsl:apply-templates/&gt; &lt;xsl:text&gt;]&lt;/xsl:text&gt; &lt;/xsl:template&gt; &lt;!-- Process the IDs element --&gt; &lt;xsl:template match="IDs"&gt; &lt;!-- Convert XML content directly to JSON --&gt; &lt;xsl:value-of select="."/&gt; &lt;/xsl:template&gt; &lt;!-- Match the delimiters to add commas --&gt; &lt;xsl:template match="IDs[position() &amp;gt; 1]"&gt; &lt;xsl:text&gt;,&lt;/xsl:text&gt; &lt;xsl:value-of select="."/&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P><STRONG>Step 2. XSLT Import in PO</STRONG></P><P>Afterward, I imported this XSLT file into PO as an imported archive.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="xslt.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103206i4B32E6CFE6F32B0A/image-size/large?v=v2&amp;px=999" role="button" title="xslt.png" alt="xslt.png" /></span></P><P>&nbsp;</P><P><STRONG>Step 3. XSLT Mapping</STRONG></P><P>Then, in the operation mapping step, I provided the imported XSLT file to the request mapping.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mapp.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103208i50F8116046973364/image-size/large?v=v2&amp;px=999" role="button" title="mapp.png" alt="mapp.png" /></span></P><P>&nbsp;</P><P><STRONG>Step 4. REST Receiver Adapter</STRONG></P><P>In a default proxy to REST scenario, XML is expected to be output from the after mapping step, so we usually check the option "<STRONG>Convert XML payload to JSON</STRONG>" in the adapter. However, in our scenario, we are sending a JSON structure from the mapping step to the adapter. Therefore, we will not check this option. Instead, we will simply select JSON as the Data Format to indicate that our request is in <STRONG>JSON format</STRONG>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DenizZilyas_0-1714388552783.png" style="width: 750px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103209iC5B18E409F65D9F3/image-dimensions/750x378?v=v2" width="750" height="378" role="button" title="DenizZilyas_0-1714388552783.png" alt="DenizZilyas_0-1714388552783.png" /></span></P><P>&nbsp;</P><P><STRONG>Step 5. Testing</STRONG></P><P>After completing all the PO steps, our service is now ready for testing. We can send a payload from the <STRONG>"Send Message"</STRONG> step to proceed.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="4.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103213iC11429F9B0B0AA86/image-size/large?v=v2&amp;px=999" role="button" title="4.png" alt="4.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="affmap.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103214i380AD9BB8A8E263E/image-size/large?v=v2&amp;px=999" role="button" title="affmap.png" alt="affmap.png" /></span></P><P>&nbsp;</P> 2024-04-29T13:14:50.771000+02:00 https://community.sap.com/t5/enterprise-resource-planning-blogs-by-sap/adding-custom-fields-to-migration-objects-in-sap-s-4hana-cloud-public/ba-p/13686519 Adding Custom Fields to Migration Objects in SAP S/4HANA Cloud Public Edition 2024-05-03T07:51:35.354000+02:00 Dleon https://community.sap.com/t5/user/viewprofilepage/user-id/7142 <P><STRONG>Introduction</STRONG></P><P><SPAN>SAP S/4HANA Cloud Public Edition is a cloud-based Enterprise Resource Planning (ERP) system that is built on the SAP HANA in-memory database platform. It is designed to provide businesses of all sizes with a comprehensive suite of enterprise management applications for their core business processes, such as finance, procurement, manufacturing, sales, and supply chain management, among others.</SPAN></P><P><STRONG>The need of custom fields in Data Migration</STRONG></P><P><SPAN>SAP S/4HANA Cloud Public Edition offers powerful tools for data migration, enabling businesses to seamlessly transition their data to the cloud. However, organizations often require additional custom fields to capture unique information critical to their operations. In this blog post, we'll explore the process of adding custom fields to data migration in S/4HANA Cloud Public Edition. From understanding the data model to configuring custom fields in the migration templates, we'll provide insights and best practices to streamline the migration process and ensure that your business's specific requirements are met. With the flexibility of custom fields, businesses can unlock the full potential of S/4HANA Cloud Public Edition and drive innovation in their digital transformation journey.</SPAN></P><P>&nbsp;</P><P>One of our key priorities within the PSA is to empower partners with proficiency in new technologies. As part of this initiative, we provide a training program known as the Go Live Experience (GLX). This training simulates a rapid implementation scenario for a distribution company. It encompasses various aspects including configuration settings, data migration, and testing scenarios, focusing on critical areas such as procurement, sales, and finance.</P><P>During recent GLX training sessions, participants frequently inquired about managing custom fields within standard migration objects during SAP implementation projects. In response to this demand, I have created this blog to offer a detailed, step-by-step solution. It is our hope that this resource will help you achieve your migration objectives.</P><P><STRONG>Business Case</STRONG></P><P>This simulated scenario requires to add a custom field to the sales order. This field will be included as part of the sales order header, is required to appeared in reporting, will be needed also in the sales order confirmation printout form as well as appear in the billing document. there might be the need to use this field in a potential integration so it will be also available for API usage while working with sales orders.</P><P>For more details see images below:</P><P>Sales order analytics enabled</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_0-1714425166532.png" style="width: 773px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103522iC205D52A25CBC77F/image-dimensions/773x203?v=v2" width="773" height="203" role="button" title="Dleon_0-1714425166532.png" alt="Dleon_0-1714425166532.png" /></span></P><P>Sales order API enabled</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_1-1714425268532.png" style="width: 770px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103525iE30CAD9020E23313/image-dimensions/770x104?v=v2" width="770" height="104" role="button" title="Dleon_1-1714425268532.png" alt="Dleon_1-1714425268532.png" /></span></P><P>Sales order confirmation print form enabled</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_3-1714425382719.png" style="width: 785px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103528i0545E5623AB15045/image-dimensions/785x310?v=v2" width="785" height="310" role="button" title="Dleon_3-1714425382719.png" alt="Dleon_3-1714425382719.png" /></span></P><P>The custom field is enabled for billing documents</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_4-1714425509708.png" style="width: 771px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103529i5D612074CD7ED625/image-dimensions/771x237?v=v2" width="771" height="237" role="button" title="Dleon_4-1714425509708.png" alt="Dleon_4-1714425509708.png" /></span></P><P>Once these changes are published into SAP S/4HANA Cloud Public Edition the field is created and extended into the corresponding places. Now we go into the UI Adaptation mode to select my available field and capture it during the execution of the business transaction. e.g. in this case the sales order creation.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_0-1714425996288.png" style="width: 471px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103530i0968438D4A9770BB/image-dimensions/471x1095?v=v2" width="471" height="1095" role="button" title="Dleon_0-1714425996288.png" alt="Dleon_0-1714425996288.png" /></span></P><P>&nbsp;</P><P>As a result the field appears in the main screen</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_1-1714426077569.png" style="width: 769px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103531i0E9F4E8F74F6B0C4/image-dimensions/769x425?v=v2" width="769" height="425" role="button" title="Dleon_1-1714426077569.png" alt="Dleon_1-1714426077569.png" /></span></P><P>The expectation is to migrate existing sales orders; we proceed to create a migration project using local staging tables&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_2-1714426325112.png" style="width: 775px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103533iEBCA69F275DC41E6/image-dimensions/775x153?v=v2" width="775" height="153" role="button" title="Dleon_2-1714426325112.png" alt="Dleon_2-1714426325112.png" /></span></P><P>To avoid mistakes during migration you need to "Check for Custom Fields" once this operation is run the system will add the custom field to the standard migration template.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_4-1714426606255.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103535i18777D37CC614148/image-size/medium?v=v2&amp;px=400" role="button" title="Dleon_4-1714426606255.png" alt="Dleon_4-1714426606255.png" /></span></P><P>You can see under the History Tab the executed actions/status; as well as the predecessors if any.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_5-1714426735267.png" style="width: 771px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103536iCE73331F6EF9ABF5/image-dimensions/771x318?v=v2" width="771" height="318" role="button" title="Dleon_5-1714426735267.png" alt="Dleon_5-1714426735267.png" /></span></P><P>Proceed to Download this fresh template. Under the title Key user Extensibility Fields you will find the recently created field, in this case ZCustom_Field_DLEON</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_6-1714426939274.png" style="width: 773px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103537i64E368BC4A7E51F5/image-dimensions/773x58?v=v2" width="773" height="58" role="button" title="Dleon_6-1714426939274.png" alt="Dleon_6-1714426939274.png" /></span></P><P>Continue with the standard steps to Upload File, Review Data, Mapping Tasks, Simulation and Migration.&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_7-1714427190417.png" style="width: 769px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103538iF2E4CB036704090E/image-dimensions/769x196?v=v2" width="769" height="196" role="button" title="Dleon_7-1714427190417.png" alt="Dleon_7-1714427190417.png" /></span></P><P>See the migrated info for a particular order if you to the sales document header and then look into the Custom Fields tab.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Dleon_8-1714427407568.png" style="width: 783px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103539i1A844201DE2E2EC9/image-dimensions/783x140?v=v2" width="783" height="140" role="button" title="Dleon_8-1714427407568.png" alt="Dleon_8-1714427407568.png" /></span></P><P>We hope this is useful for your implementation. Please leave your feedback below</P><P>Thanks,&nbsp;</P><P>David Leon</P><P><SPAN>Partner Solution Adoption</SPAN></P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P> 2024-05-03T07:51:35.354000+02:00 https://community.sap.com/t5/technology-blogs-by-members/sap-pipeline-concept-and-b2b-tpm-testing/ba-p/13691706 SAP Pipeline Concept and B2B TPM testing 2024-05-06T07:30:00.023000+02:00 MichalKrawczyk https://community.sap.com/t5/user/viewprofilepage/user-id/45785 <H2 id="toc-hId-994345585">Abstract</H2><P>With the introduction of the <A href="https://help.sap.com/docs/help/90c8ad90cb684ee5979856093efe7462/6e527fb074834af2be2546c6e7e2fa5f.html" target="_self" rel="noopener noreferrer">SAP Pipeline Concept&nbsp;</A>we now have a second large use case apart from B2B-TPM which allows processing different types of messages with a set of predefined generic iflows. This blog will show a few ways how automated testing of such scenarios can be set up of the box with Int4 Shield - SAP Integration Suite testing platform and how SAP Integration Suite customers already use it for such scenarios.</P><H2 id="toc-hId-797832080"><BR />SAP Pipeline Concept and B2B TPM - multiple iflows</H2><P>In the pipeline concept, each step corresponds to an integration flow (generic integration flows and scenario-specific integration flows). The generic integration flows are used across all integration scenarios and must only be deployed once while scenario-specific integration flows handle the scenario-specific message conversions and mappings.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="01_Pipelines (1).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/105886i04E8F60681E158D1/image-size/large?v=v2&amp;px=999" role="button" title="01_Pipelines (1).png" alt="01_Pipelines (1).png" /></span></P><P><FONT size="2">File Source: <A href="https://community.sap.com/t5/technology-blogs-by-sap/introducing-the-new-pipeline-concept-in-cloud-integration/ba-p/13639651" target="_blank">https://community.sap.com/t5/technology-blogs-by-sap/introducing-the-new-pipeline-concept-in-cloud-integration/ba-p/13639651</A></FONT></P><P>Similarly the B2B-TPM the exchange is divided into sender communication iflows, interchange processing and receiver iflows.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="tpm.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/105887i379426ADF6919A86/image-size/large?v=v2&amp;px=999" role="button" title="tpm.png" alt="tpm.png" /></span></P><P><FONT size="2">File source: <A href="https://community.sap.com/t5/technology-blogs-by-sap/use-tpm-ia-ci-to-efficiently-manage-and-run-complex-b2b-transactions/ba-p/13565068" target="_blank">https://community.sap.com/t5/technology-blogs-by-sap/use-tpm-ia-ci-to-efficiently-manage-and-run-complex-b2b-transactions/ba-p/13565068</A></FONT></P><P>Cloud integration is very flexible in terms of modeling and running your integration scenarios allowing the design of a rich variety of integration patterns on the other hand for some types of scenarios we may want to use a more "formal" way or processing and this is there SAP Pipeline Concept and B2B-TPM scenarios come in handy with some of it's common advantages:<BR /><BR />a) Provide commonly used restart capabilities<BR />b) Simplifies operations by separating errors into different generic queues<BR />c) Require lower number of JMS queues to take into account the resource limits<BR />d) Simplify monitoring operations<BR />e) Allow reusability of artifacts across multiple flows by using generic (Pipeline or TPM) iflow concept</P><H2 id="toc-hId-601318575">SAP Pipeline Concept and B2B TPM - testing</H2><P>Since those two frameworks are going to be used more and more and they involve several iflows to be tested<BR />is there any way to automate the testing of such integration processes? With Int4 Shield - SAP Integration Suite testing platform, there out of the box we have several ways to implement automated testing of the SAP Pipeline Concept and B2B TPM. Let me explain, how&nbsp;they work.</P><H3 id="toc-hId-533887789">Step 1</H3><P>In both SAP Pipeline Concept and B2B TPM we're working with multiple iflows so we may want to inject the test messages into a specific iflow. This can be the first iflows but does not have to be as we may want to skip testing the initial iflow in some cases.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="inject_2.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/105888iB8F50A54085F4C96/image-size/large?v=v2&amp;px=999" role="button" title="inject_2.png" alt="inject_2.png" /></span></P><P><FONT size="2">Figure - Int4 Shield inject test message options&nbsp;</FONT></P><H3 id="toc-hId-337374284">Step 2</H3><P>Now we need to decide what do we want to test. What are the options? Basically two:</P><P>a) we can either test the whole framework (SAP Pipeline Concept and B2B TPM ) from start to finish</P><P>b) we may want to test specific iflows of the whole framework (SAP Pipeline Concept and B2B TPM)</P><P>For this purpose Int4 Shield automatically enables Trace monitoring level on tested iFlows to be able to introspect processing inside of these steps.<BR />Thanks to this Int4 Shield can validate payload content at any single execution block of the processing steps.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="both_3.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/105889i10B0D7466D49B7F7/image-size/large?v=v2&amp;px=999" role="button" title="both_3.png" alt="both_3.png" /></span><BR /><FONT size="2">Figure - Int4 Shield inject test message and trace start with validation options&nbsp;</FONT></P><H3 id="toc-hId-140860779">Step 3</H3><P><STRONG>Scenario 1 (single automation object)</STRONG> - for simple black box testing, Int4 Shield injects the message in the initial step and awaits for logs and payload to arrive at the final processing step, capturing the output payload, as it would be sent to a target system. Single test case and single <A href="https://int4support.atlassian.net/wiki/spaces/IUM/pages/2062843993/Automation+Objects" target="_self" rel="nofollow noopener noreferrer">automation object</A> is sufficient for test and validation.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="single_4.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/105890i9FCFA739C4957037/image-size/large?v=v2&amp;px=999" role="button" title="single_4.png" alt="single_4.png" /></span></P><P><FONT size="2">Figure - Int4 Shield validation option with a single automation object&nbsp;</FONT></P><P><STRONG>Scenario 2 (combination of automation objects - API workflows testing)</STRONG> - thorough testing is made possible with more test cases that execute more validation steps. In a typical scenario there is separate validation of Step 2 - to check if payload input was properly processed by Step 1 logic, and for Step 3 - to validate the output payload after mapping is correct and routed to the expected channel.<BR /><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="double_5.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/105891i352C96B56E571214/image-size/large?v=v2&amp;px=999" role="button" title="double_5.png" alt="double_5.png" /></span><BR /><FONT size="2">Figure - Int4 Shield validation option with a a combination of automation objects - API workflow testing&nbsp;</FONT><BR /><BR /></P><H3 id="toc-hId--55652726">SAP Pipeline Concept and B2B TPM - framework support</H3><P>Int4 Shied testing concept for SAP Pipeline Concept and B2B TPM supports:</P><P>a) Multiple adapter types : SFTP, JMS, HTTP, IDOC, ProcessDirect, SOAP<BR />b) Enabling unit testing of specific flow components<BR />c) Testing business flows with Inputs and Outputs from different iFlows<BR />d) Test complete SAP Pipeline Concept and B2B TPM execution with one test case<BR />e) Capture and test intermediate results from specific iFlow steps<BR />f) Test complete SAP Pipeline Concept and B2B TPM execution, validating document flow through the iFlows<BR />g) Massive and automated test case creation<BR />h) Test case loader - mass load of test files<BR />i) Robotic crawler - automatic capture of historical data from another integration platform<BR />j) Test scenario builder - linking multiple test cases into test scenarios automatically based on message content (e.g. document numbers)</P><H2 id="toc-hId--381248950">Additional resources</H2><P><A href="https://community.sap.com/t5/technology-blogs-by-members/b2b-tpm-on-sap-btp-integration-suite-migration-sap-po-boomi-edi-providers/ba-p/13578709" target="_self">B2B/TPM on SAP BTP Integration Suite migration (SAP PO, Boomi, EDI Providers and home-grown apps)</A></P><P><A href="https://community.sap.com/t5/technology-blogs-by-members/int4-suite-for-sap-btp-integration-suite-testing-fully-integrated-with-sap/ba-p/13554430" target="_self">Int4 Suite for SAP BTP Integration Suite testing fully integrated with SAP Cloud ALM</A>&nbsp;</P><P><A href="https://community.sap.com/t5/enterprise-resource-planning-blogs-by-members/4-big-waves-for-api-led-strategies-and-sap-btp-integration-suite-explosive/ba-p/13629867" target="_self">4 big waves for API led strategies and SAP BTP Integration Suite explosive growth</A>&nbsp;</P><P><A href="https://community.sap.com/t5/enterprise-resource-planning-blogs-by-members/there-is-no-ai-without-api-integration-is-the-backbone-of-digital/ba-p/13626331" target="_self">There is no AI without API - Integration is the backbone of digital transformations</A>&nbsp;</P> 2024-05-06T07:30:00.023000+02:00 https://community.sap.com/t5/enterprise-resource-planning-blogs-by-members/how-do-we-adapt-the-patch-method-in-sap-po/ba-p/13699267 How do we adapt the PATCH method in SAP PO 2024-05-13T12:54:11.101000+02:00 DenizZilyas https://community.sap.com/t5/user/viewprofilepage/user-id/171723 <P>Hello everyone,</P><P>I will explain how to adapt a REST service called with the PATCH method for use in SAP PO.</P><P>In an integration scenario triggered from SAP, if we have a REST link on the receiver side and this link is called with the PATCH method in Postman, we can easily adapt it in PO. This is because not all methods may be available in every PO system. If the PATCH method is not available in your PO system, you can follow the steps below.</P><P>&nbsp;</P><P><STRONG>1- When configuring, first, we create a Rest receiver adapter.</STRONG></P><P>If there is no authorization in our Rest link, we do not select Basic Authentication. However, if our service authenticates with a username and password, we must specify it in this section.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/109462iCCB93BD12DA363FE/image-size/large?v=v2&amp;px=999" role="button" title="1.png" alt="1.png" /></span></P><P>&nbsp;</P><P><STRONG>2- We use our link in the Target URL section in the REST URL tab.</STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DenizZilyas_0-1715597364975.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/109464i04840CE2CD74AC23/image-size/large?v=v2&amp;px=999" role="button" title="DenizZilyas_0-1715597364975.png" alt="DenizZilyas_0-1715597364975.png" /></span></P><P>&nbsp;</P><P><STRONG>3- We should select POST as the Static Value for our Rest Operation.</STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DenizZilyas_1-1715597403696.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/109465iFD90A8BE34C100F7/image-size/large?v=v2&amp;px=999" role="button" title="DenizZilyas_1-1715597403696.png" alt="DenizZilyas_1-1715597403696.png" /></span></P><P>To send a service from SAP using the PATCH method through the adapter, we need to add two module configurations in the Module section of the adapter.</P><P>&nbsp;</P><P><STRONG>4- Module Configuration:</STRONG></P><P><EM>overrideHttpMethod - PATCH</EM></P><P><EM>useSAPHttpLibrary - apache</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DenizZilyas_2-1715597466085.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/109469iC570D0D1BD425239/image-size/large?v=v2&amp;px=999" role="button" title="DenizZilyas_2-1715597466085.png" alt="DenizZilyas_2-1715597466085.png" /></span></P><P>After adding these modules, we can complete the Integrated Configuration steps of the service and trigger it from SAP.</P><P>We can easily adapt a REST service triggered as PATCH in Postman to be used in the adapter with the POST method in SAP PO.</P><P>&nbsp;</P> 2024-05-13T12:54:11.101000+02:00