https://raw.githubusercontent.com/ajmaradiaga/feeds/main/scmt/topics/SAP-NetWeaver-blog-posts.xml SAP Community - SAP NetWeaver 2024-05-20T17:01:27.962029+00:00 python-feedgen SAP NetWeaver blog posts in SAP Community https://community.sap.com/t5/technology-blogs-by-sap/saptune-3-1-on-the-horizon/ba-p/13575167 saptune 3.1 on the Horizon 2023-09-01T14:33:03+02:00 scm https://community.sap.com/t5/user/viewprofilepage/user-id/464770 In a few weeks saptune 3.1 will reach the public repositories of SLES for SAP Applications. Time to talk about the changes and new features.<BR /> <BR /> As always saptune 3.1 will be released for all Service Packs still in support, namely:<BR /> <UL><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 12 SP5</LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP1</LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP2</LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP3</LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP4</LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP5</LI><BR /> </UL><BR /> <H2 id="toc-hId-963982977">Machine-readable Output</H2><BR /> This might be the biggest new feature: optional JSON output<BR /> <BR /> With <CODE>--format json</CODE> the first set of commands<BR /> <UL><BR /> <LI><CODE>saptune [daemon|service] status</CODE></LI><BR /> <LI><CODE>saptune note list|verify|enabled|applied</CODE></LI><BR /> <LI><CODE>saptune solution list|verify|enabled|applied</CODE></LI><BR /> <LI><CODE>saptune status</CODE></LI><BR /> <LI><CODE>saptune version</CODE></LI><BR /> </UL><BR /> will print the output as a JSON string. Further commands will follow.<BR /> <BR /> This does not only paves the way for the upcoming Trento integration, but also simplifies the usage in scripts or configuration management solutions.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/09/saptune-json-example.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Output of: saptune --format json note applied | jq</P><BR /> Do not use <CODE>--format json</CODE> blindly! A command that does not support JSON output yet, will fail if called with the option, even if it would work otherwise!<BR /> <BR /> &nbsp;<BR /> <H2 id="toc-hId-767469472">New Commands, Deprecated Commands</H2><BR /> As requested by a customer, we added a new command: <CODE>saptune solution change</CODE><BR /> <BR /> With only one solution allowed at a time, switching to another was a two step process. First reverting the current solution and afterwards applying the new one. Now this is possible with a single command.<BR /> <BR /> This is not only more convenient, but also minimizes the time when the system is not tuned, since revert and apply are done internally much faster.<BR /> <BR /> With the change being simply a revert followed by an apply, the order is not preserved in case you have additional Notes applied to a Solution.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/09/saptune-solution-change-HANA.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Output of: saptune solution change HANA</P><BR /> &nbsp;<BR /> <H2 id="toc-hId-570955967">Refurbished Status Command</H2><BR /> The command <CODE>saptune status</CODE> got a face-lift and some new additions.<BR /> <BR /> The Solution shows now the list of contained Notes. In all cases Note lists are ordered in the way they are applied.<BR /> <BR /> Newly added are the type of virtualization and, I believe the most welcomed addition, the state of the tuning!<BR /> You don't have to run an additional `saptune verify` anymore, to check if the tuning is in order. This is displayed by the status command already.<BR /> For those who don't want that, the old behavior can be restored by using <CODE>--non-compliance-check</CODE>.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/09/saptune-status.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Output of : saptune status</P><BR /> <BR /> <H2 id="toc-hId-374442462">New Solutions and SAP Notes</H2><BR /> The MAXDB solution has not been just de-deprecated, we also introduced a new Solution `NETWEAVER+MAXDB` for running both SAP application servers and MAXDB on the same host.<BR /> <BR /> SAP Note<EM> "1868829 - Startup Issues Because Number of Active I/O Requests to Queue Exceeds aio-max-nr Limit"</EM> is now available and part of the solutions:<BR /> <UL><BR /> <LI style="list-style-type: none"><BR /> <UL><BR /> <LI><CODE>HANA</CODE></LI><BR /> <LI><CODE>NETWEAVER+HANA</CODE></LI><BR /> <LI><CODE>S4HANA-APP+DB</CODE></LI><BR /> <LI><CODE>S4HANA-DBSERVER</CODE></LI><BR /> </UL><BR /> </LI><BR /> </UL><BR /> <H2 id="toc-hId-177928957">Zebras are here!</H2><BR /> The tables of <CODE>saptune verify</CODE> can become very long. The one for the SAP HANA Solution contain over 50 parameters, depending on the environment. Spotting non-compliant entries can be cumbersome.<BR /> <BR /> With 3.1 you now can either limit the table to non-compliant parameters only:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/09/saptune-note-verify-show-non-compliant.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Output of: saptune note verify --show-non-compliant</P><BR /> or colorize the output:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/09/saptune-note-verify-colorscheme-full-red-noncmpl.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic;font-family: 'SAPRegular', 'Helvetica Neue', Arial, sans-serif">Output of: saptune note verify --colorscheme full-red-noncmpl</P><BR /> That's where the zebras come into the play. You can choose between different color styles:<BR /> <UL><BR /> <LI><CODE>cmpl-blue-zebra</CODE></LI><BR /> <LI><CODE>full-blue-zebra</CODE></LI><BR /> <LI><CODE>full-red-noncmpl</CODE></LI><BR /> <LI><CODE>red-noncmpl</CODE></LI><BR /> <LI><CODE>cmpl-green-zebra</CODE></LI><BR /> <LI><CODE>full-green-zebra</CODE></LI><BR /> <LI><CODE>full-yellow-noncmpl</CODE></LI><BR /> <LI><CODE>yellow-noncmpl</CODE></LI><BR /> </UL><BR /> Play around and choose which zebra you like best!<BR /> <H2 id="toc-hId--18584548">About sysctl</H2><BR /> Since 3.0 saptune reports possible conflicts with <CODE>sysctl</CODE> files. One file almost always caused a debate: <CODE>/boot/sysctl.conf-*</CODE>. Amongst others it sets the defaults of <CODE>kernel.shmmax</CODE> and <CODE>kernel.shmall</CODE> for SLES and therefore always got reported by saptune as possible conflict.<BR /> <BR /> The feedback told us, that part of the users liked it, but a slight majority didn't.<BR /> <BR /> With 3.1 saptune will no longer report both files per default. But those of you who still want it, can simply change the variable <CODE>SKIP_SYSCTL_FILE</CODE> in <CODE>/etc/sysconfig/saptune</CODE>.<BR /> <H2 id="toc-hId--215098053">Anything Else?</H2><BR /> Without being complete, we also have reworked the version definition in the configuration files, which will be interesting for those who use custom Notes and Solutions. We went from the (still supported, but deprecated) comment format to a more clear section format:<BR /> <BR /> <CODE><BR /> [version]<BR /> VERSION=28<BR /> DATE=29.07.2021<BR /> DESCRIPTION=VMware vSphere configuration guidelines<BR /> REFERENCES=<A href="https://launchpad.support.sap.com/#/notes/2161991" target="_blank" rel="noopener noreferrer">https://launchpad.support.sap.com/#/notes/2161991</A><BR /> </CODE><BR /> <BR /> Also it is now possible to use inline comments throughout the Note and Solution files and finally we deprecated the custom Note format from saptune v1, which should not be around anymore.<BR /> <BR /> I think, that covers most of the changes.<BR /> <BR /> Enjoy! 2023-09-01T14:33:03+02:00 https://community.sap.com/t5/technology-blogs-by-members/sap-security-patch-day-september-2023/ba-p/13578389 SAP Security Patch Day – September 2023 2023-09-12T10:14:29+02:00 vahagn1 https://community.sap.com/t5/user/viewprofilepage/user-id/760188 <DIV><BR /> <H3 id="toc-hId-1093157055">SAP Security Patch Day – September 2023</H3><BR /> On September 12, 2023, SAP has once again released a crucial set of security patches to address a myriad of vulnerabilities across its product line. This month's SAP Security Patch Day primarily focuses on rectifying Program errors. Below is a comprehensive rundown of the security notes, sorted by their Common Vulnerability Scoring System (CVSS) scores:<BR /> <H4 id="toc-hId-1025726269">HotNews</H4><BR /> <UL><BR /> <LI><STRONG>BI-BIP-CMC [CVE-2023-25616]</STRONG>: Code Injection vulnerability in SAP Business Objects Business Intelligence Platform (CMC) with a CVSS score of 9.9. First released on 14.03.2023, updated on 12.09.2023.</LI><BR /> <LI><STRONG>BI-BIP-LCM [CVE-2023-40622]</STRONG>: Information Disclosure vulnerability in SAP BusinessObjects Business Intelligence Platform (Promotion Management) with a CVSS score of 9.9. Released on 12.09.2023.</LI><BR /> <LI><STRONG>BC-IAM-SSO-CCL [CVE-2023-40309]</STRONG>: Missing Authorization check in SAP CommonCryptoLib with a CVSS score of 9.8. Released on 12.09.2023.</LI><BR /> <LI><STRONG>BC-FES-BUS-DSK [CVE-2023-40624]</STRONG>: Security updates for the browser control Google Chromium delivered with SAP Business Client with a CVSS score of 10.0. First released on 10.04.2018, updated on 12.09.2023.</LI><BR /> <LI><STRONG>BC-XI-CON-UDS [CVE-2022-41272]</STRONG>: Improper access control in SAP NetWeaver AS Java (User Defined Search) with a CVSS score of 9.9. First released on 13.12.2022, updated on 12.09.2023.</LI><BR /> </UL><BR /> <H4 id="toc-hId-829212764">High Priority</H4><BR /> <UL><BR /> <LI><STRONG>BI-RA-WBI-FE [CVE-2023-42472]</STRONG>: Insufficient File type validation in SAP BusinessObjects Business Intelligence Platform (Web Intelligence HTML interface) with a CVSS score of 8.7. Released on 12.09.2023.</LI><BR /> <LI><STRONG>BC-CCM-HAG [CVE-2023-40308]</STRONG>: Memory Corruption vulnerability in SAP CommonCryptoLib with a CVSS score of 7.5. Released on 12.09.2023.</LI><BR /> </UL><BR /> <H4 id="toc-hId-632699259">Medium Priority</H4><BR /> <UL><BR /> <LI><STRONG>BC-SYB-PD [CVE-2023-40621]</STRONG>: Code Injection vulnerability in SAP PowerDesigner Client with a CVSS score of 6.3. Released on 12.09.2023.</LI><BR /> <LI><STRONG>MM-FIO-PUR-SQ-CON [CVE-2023-40625]</STRONG>: Missing Authorization check in Manage Purchase Contracts App with a CVSS score of 5.4. Released on 12.09.2023.</LI><BR /> <LI><STRONG>BC-GP [CVE-2023-41367]</STRONG>: Missing Authentication check in SAP NetWeaver (Guided Procedures) with a CVSS score of 5.3. Released on 12.09.2023.</LI><BR /> <LI><STRONG>BI-BIP-LCM [CVE-2023-37489]</STRONG>: Information Disclosure vulnerability in SAP BusinessObjects Business Intelligence Platform (Version Management System) with a CVSS score of 5.3. Released on 12.09.2023.</LI><BR /> <LI><STRONG>FS-QUO [CVE-2023-40308]</STRONG>: Denial of service (DOS) vulnerability due to the usage of vulnerable version of Commons FileUpload in SAP Quotation Management Insurance (FS-QUO) with a CVSS score of 5.7. Released on 12.09.2023.</LI><BR /> <LI><STRONG>BC-WD-UR [CVE-2023-40624]</STRONG>: Code Injection vulnerability in SAP NetWeaver AS ABAP (applications based on Unified Rendering) with a CVSS score of 5.5. Released on 12.09.2023.</LI><BR /> <LI><STRONG>BI-BIP-INS [CVE-2023-40623]</STRONG>: Arbitrary File Delete via Directory Junction in SAP BusinessObjects Suite(installer) with a CVSS score of 6.2. Released on 12.09.2023.</LI><BR /> </UL><BR /> <H4 id="toc-hId-436185754">Low Priority</H4><BR /> <UL><BR /> <LI><STRONG>FI-FIO-AP-CHK [CVE-2023-41368]</STRONG>: Insecure Direct Object Reference (IDOR) vulnerability in SAP S/4HANA (Manage checkbook apps) with a CVSS score of 2.7. Released on 12.09.2023.</LI><BR /> <LI><STRONG>FI-FIO-AP [CVE-2023-41369]</STRONG>: External Entity Loop vulnerability in SAP S/4HANA (Create Single Payment application) with a CVSS score of 3.5. Released on 12.09.2023.</LI><BR /> </UL><BR /> <H3 id="toc-hId-110589530">Statistics:</H3><BR /> <H4 id="toc-hId-43158744">Total new SAP notes: 16</H4><BR /> <H4 id="toc-hId--153354761">Total vulnerabilities addressed: 16</H4><BR /> <H4 id="toc-hId--349868266">Highest CVSS Score: 10.0 (HotNews) – Security updates for the browser control Google Chromium delivered with SAP Business Client – [CVE-2023-40624]</H4><BR /> <STRONG>Description</STRONG>: This HotNews-rated note addresses security updates for the browser control Google Chromium delivered with SAP Business Client, with a critical CVSS score of 10.0.<BR /> <H4 id="toc-hId--546381771">Top 2 Critical Bugs:</H4><BR /> <OL><BR /> <LI><STRONG>BI-BIP-CMC [CVE-2023-25616]</STRONG><BR /> <UL><BR /> <LI><STRONG>CVSS Score</STRONG>: 9.9 (CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)</LI><BR /> <LI><STRONG>Description</STRONG>: This high-priority note resolves a Code Injection vulnerability in SAP Business Objects Business Intelligence Platform (CMC) with a CVSS score of 9.9. As this vulnerability allows attackers to compromise system integrity and confidentiality, prompt action is advised to mitigate potential risks.</LI><BR /> </UL><BR /> </LI><BR /> <LI><STRONG>BC-XI-CON-UDS [CVE-2022-41272]</STRONG><BR /> <UL><BR /> <LI><STRONG>CVSS Score</STRONG>: 9.9 (CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:L)</LI><BR /> <LI><STRONG>Description</STRONG>: This high-priority note addresses an Improper access control in SAP NetWeaver AS Java (User Defined Search) with a CVSS score of 9.9. As this vulnerability allows unauthorized access, immediate patching is essential to protect the application and its users.</LI><BR /> </UL><BR /> </LI><BR /> </OL><BR /> </DIV><BR /> <DIV data-id="65ede8c" data-element_type="widget" data-widget_type="ld_icon_box.default"><BR /> <H3 class="LC20lb MBeuO DKV0Md" id="toc-hId--947209364"></H3><BR /> </DIV> 2023-09-12T10:14:29+02:00 https://community.sap.com/t5/technology-blogs-by-sap/saptune-3-1-is-out/ba-p/13574818 saptune 3.1 is out 2023-10-02T13:03:03+02:00 scm https://community.sap.com/t5/user/viewprofilepage/user-id/464770 Last week saptune 3.1 was made available in all official repositories for:<BR /> <UL><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 12 SP5<BR /> <EM>(saptune-3.1.0-4.15.1)</EM></LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP1<BR /> <EM>(saptune-3.1.0-150100.8.27.1)</EM></LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP2<BR /> <EM>(saptune-3.1.0-150100.8.27.1)</EM></LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP3<BR /> <EM>(saptune-3.1.0-150100.8.27.1)</EM></LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP4<BR /> <EM>(saptune-3.1.0-150100.8.27.1)</EM></LI><BR /> <LI>SUSE Linux Enterprise Server for SAP Applications 15 SP5<BR /> <EM>(saptune-3.1.0-150100.8.27.1)</EM></LI><BR /> </UL><BR /> To see, what is new and what has changed, please read my <A href="https://blogs.sap.com/2023/09/01/saptune-3.1-on-the-horizon/" target="_blank" rel="noopener noreferrer">announcement blog post</A>.<BR /> <BR /> As always, after a release is before a release. If you have wishes for the next version, let us know!<BR /> <BR /> &nbsp;<BR /> <BR /> Have a lot of fun! 2023-10-02T13:03:03+02:00 https://community.sap.com/t5/technology-blogs-by-members/single-sign-on-saml-configuration-for-fiori-application-using-azure/ba-p/13578195 Single Sign On - SAML Configuration for Fiori Application using Azure Enterprise 2023-10-11T07:47:45+02:00 syedkamran https://community.sap.com/t5/user/viewprofilepage/user-id/155662 Step-by-step configuration instructions of single sign on for SAP Fiori application with Azure AD<BR /> <BR /> &nbsp;<BR /> <BR /> <B>Pre-requisite:</B><BR /> <BR /> SSL need to be configured first before configuring for SAML2 authentication.<BR /> <BR /> &nbsp;<BR /> <BR /> <B>Configuration Steps:</B><BR /> <BR /> &nbsp;<BR /> <BR /> <B>Activating the Services</B><BR /> <BR /> 1. Goto Transaction SICF, enable below services<BR /> <BR /> <SPAN data-keep-original-tag="false">&nbsp; &nbsp;</SPAN>/sap/bc/saml2/cdc_ext_service<BR /> <BR /> <SPAN data-keep-original-tag="false">&nbsp;&nbsp;&nbsp;</SPAN>/sap/bc/webdynpro/sap/saml2<BR /> <BR /> <SPAN data-keep-original-tag="false">&nbsp;&nbsp;&nbsp;</SPAN>/sap/public/bc/icf/logoff<BR /> <BR /> <SPAN data-keep-original-tag="false">&nbsp;&nbsp;&nbsp;</SPAN>/sap/public/bc/sec/saml2<BR /> <BR /> <SPAN data-keep-original-tag="false">&nbsp;&nbsp;&nbsp;</SPAN>/sap/public/myssocntl<BR /> <BR /> 2.&nbsp;On the Maintain Services page, enter one of the service name from the list.<BR /> <BR /> 3.&nbsp;Right-click the service in the tree menu view, select Activate Service.<BR /> <BR /> 4.&nbsp;Prompt to activate the service, click Yes with tree option.<BR /> <BR /> &nbsp;<BR /> <BR /> <B>Enable SAML2 Local Provider Setting</B><BR /> <BR /> 1. Run the transaction SAML2 or open the URL<BR /> <BR /> <A href="https://&lt;FQDN&gt;:&lt;ICM_HTTPS_PORT&gt;/sap/bc/webdynpro/sap/saml2?sap-client=100&amp;sap-language=EN" target="test_blank" rel="nofollow noopener noreferrer">https://&lt;FQDN&gt;:&lt;ICM_HTTPS_PORT&gt;/sap/bc/webdynpro/sap/saml2?sap-client=100&amp;sap-language=EN</A><BR /> <BR /> <B>Note</B>&nbsp;: If you want to use webdispatcher then open the SAML2 URL through webdispatcher Url<BR /> <BR /> <A href="https://&lt;WEBDISPATCHER_FQDN&gt;:&lt;WEBDISPATCHER_ICM_HTTPS_PORT&gt;/sap/bc/webdynpro/sap/saml2?sap-client=100&amp;sap-language=EN" target="test_blank" rel="nofollow noopener noreferrer">https://&lt;WEBDISPATCHER_FQDN&gt;:&lt;WEBDISPATCHER_ICM_HTTPS_PORT&gt;/sap/bc/webdynpro/sap/saml2?sap-client=100&amp;sap-language=EN</A><BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCioyXrIrEkCrXFa4WQzO1NEwW7mJjaenqbVUyJ-U8QOfi2dWdQgsQ3Xlqg0QDCX6W0r-lT4hGmuyGFUKPo8KU9dPqXSlfgIHVrAZ3QyPlrv7i1LnkJVV9imrE4y5M7wI1LxSOwfSTki4ezUWsXMgxaddufPTrZnevzy62bQII5IoSzVrulm_sN328/s1120/SAML2_1.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCioyXrIrEkCrXFa4WQzO1NEwW7mJjaenqbVUyJ-U8QOfi2dWdQgsQ3Xlqg0QDCX6W0r-lT4hGmuyGFUKPo8KU9dPqXSlfgIHVrAZ3QyPlrv7i1LnkJVV9imrE4y5M7wI1LxSOwfSTki4ezUWsXMgxaddufPTrZnevzy62bQII5IoSzVrulm_sN328/w640-h170/SAML2_1.png" width="640" height="170" border="0" data-original-height="296" data-original-width="1120" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 2.&nbsp; Click on Enable SAML2.0 Support and Select "Create SAML 2.0 Local provider".<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7T_FagcahRF9u2tzraEUYk8y5_7h_h3K7m2LJiJ1DhPWzMlJtSIbLXpSrOjfShq2NmRuVE8t4ZNZwj3lJKSSE7TUOwB6uXC3SVV3sOgr6p0oypbaZuspZNifEMlzEyCkx8RykISnLuVj_mDDbZO34IYOc3nlLSMiDcHYPkd4g7G-pHg718UF6y-eP/s844/SAML2_2.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7T_FagcahRF9u2tzraEUYk8y5_7h_h3K7m2LJiJ1DhPWzMlJtSIbLXpSrOjfShq2NmRuVE8t4ZNZwj3lJKSSE7TUOwB6uXC3SVV3sOgr6p0oypbaZuspZNifEMlzEyCkx8RykISnLuVj_mDDbZO34IYOc3nlLSMiDcHYPkd4g7G-pHg718UF6y-eP/w640-h240/SAML2_2.png" width="640" height="240" border="0" data-original-height="316" data-original-width="844" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 3. Enter the Provider Name <A href="https://&lt;SID&gt;CLNT&lt;CLIENT_NO&gt;" target="test_blank" rel="nofollow noopener noreferrer">https://&lt;SID&gt;CLNT&lt;CLIENT_NO&gt;</A>; on Initial setting screen. Click Next.<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTNGiZB8Mzr1yijax6J_xtyi8MJOBqrGkeDtBuTLUIlfPdbKDox_rxD5AIc8PsUqUUjTGWRXC0OzmOr0knXc-yBg4ikzVGy1AwSBeaDQsQDqP1ZywMMEgoerdi-S632wpeBoT2MGFVkjIAb3zSmo4fxcnGNWKx7_c8sagTXi2-8eZuwjxds8V9DsHi/s883/SAML2_3.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTNGiZB8Mzr1yijax6J_xtyi8MJOBqrGkeDtBuTLUIlfPdbKDox_rxD5AIc8PsUqUUjTGWRXC0OzmOr0knXc-yBg4ikzVGy1AwSBeaDQsQDqP1ZywMMEgoerdi-S632wpeBoT2MGFVkjIAb3zSmo4fxcnGNWKx7_c8sagTXi2-8eZuwjxds8V9DsHi/w640-h278/SAML2_3.png" width="640" height="278" border="0" data-original-height="383" data-original-width="883" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 4. Choose Automatic in Selection Mode on Service Provider Settings and Select Finish.<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2CKE7LdQqpmDZaC1quIYddiZZfcW701Ldhq5iWpBH56ISugHqI3rHELA9pvzTfJ8vlWNtf2c4W8l8D6MhIygLwnYB_QeqfDeAUqAtqTRvOtj-gTZb2nWvuA3p1XXrM_68LD-acZoVdr4137bDH76h_0PZvD0iw2bblsGCh2ykmemKKVaZJigN4g31/s1586/SAML2_4.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2CKE7LdQqpmDZaC1quIYddiZZfcW701Ldhq5iWpBH56ISugHqI3rHELA9pvzTfJ8vlWNtf2c4W8l8D6MhIygLwnYB_QeqfDeAUqAtqTRvOtj-gTZb2nWvuA3p1XXrM_68LD-acZoVdr4137bDH76h_0PZvD0iw2bblsGCh2ykmemKKVaZJigN4g31/w640-h278/SAML2_4.png" width="640" height="278" border="0" data-original-height="687" data-original-width="1586" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 5. After Click on Finish, it will be redirect you to Configuration Page.<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYt8J96xpXYW0SBGnOeaGOjIejEG0iHocs4_vq3XJ0smKuS8MkGBXwoQ5N7gcKwyhyr4Yz43XxNWiWDR9etiMHUVMBNw2otMoRkf_ap09UXnD3qXCAIjLEnw6gQ30ZACeVPfess5NBZm2oexBHl44LLY7VFuErc_z6Mu18rYO3OoT_W0cjDsuDgchB/s897/SAML2_5.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYt8J96xpXYW0SBGnOeaGOjIejEG0iHocs4_vq3XJ0smKuS8MkGBXwoQ5N7gcKwyhyr4Yz43XxNWiWDR9etiMHUVMBNw2otMoRkf_ap09UXnD3qXCAIjLEnw6gQ30ZACeVPfess5NBZm2oexBHl44LLY7VFuErc_z6Mu18rYO3OoT_W0cjDsuDgchB/w640-h500/SAML2_5.png" width="640" height="500" border="0" data-original-height="702" data-original-width="897" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 6.&nbsp; Click on Metadata button to get pop-up for the metadata download, then select Download Metadata.Make sure browser pop-up is allowed.<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicTFJw7aSGufQJBlqqNYZNU_tgoZ11bDkz028YHkTRH-OfJrjw4EIDF5k89nkmcGW9oJclPo-rWmdI7pM_yvIWU6fB7JQsQPpcq76HMggie9ahKi-tAU4HxB_W3wZZdUJJhW2x1qoJkvmUy3vhZPhFyaabOeZSrTtXn0vk14vRdAvutgy0iN4mTqtT/s1152/SAML2_6.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicTFJw7aSGufQJBlqqNYZNU_tgoZ11bDkz028YHkTRH-OfJrjw4EIDF5k89nkmcGW9oJclPo-rWmdI7pM_yvIWU6fB7JQsQPpcq76HMggie9ahKi-tAU4HxB_W3wZZdUJJhW2x1qoJkvmUy3vhZPhFyaabOeZSrTtXn0vk14vRdAvutgy0iN4mTqtT/w640-h370/SAML2_6.png" width="640" height="370" border="0" data-original-height="666" data-original-width="1152" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 7. Now the RPT can be performed at Azure Enterprise Application, by either directly uploading the metadata.xml file or providing the details manually in enterprise application of fiori.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/Screenshot-2023-10-11-075235.png" /></P><BR /> <P style="overflow: hidden;margin-bottom: 0px">8. You can provide the identifier same as it has been created in step 3 in transaction SAML2</P><BR /> &nbsp;<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/2-2.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 9. Provide the fiori sign-on url in the configuration and Click on save.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/3-2.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 8. Configure the following user attributes &amp; claims for application. To manage these attribute values,&nbsp; select Edit and set the Name identifier as<STRONG> Unspecified </STRONG>&amp; source attribute as <STRONG>user.onpremisesamaccountname.</STRONG><BR /> <BR /> &nbsp;<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/4-1.jpg" /></P><BR /> 9. Now the signed certificate and federation can be downloaded from the section SAML Certificates<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/5-1.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 10. As a next step, open the SAML2 and click on Trusted Providers tab.<BR /> <BR /> <A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYt8J96xpXYW0SBGnOeaGOjIejEG0iHocs4_vq3XJ0smKuS8MkGBXwoQ5N7gcKwyhyr4Yz43XxNWiWDR9etiMHUVMBNw2otMoRkf_ap09UXnD3qXCAIjLEnw6gQ30ZACeVPfess5NBZm2oexBHl44LLY7VFuErc_z6Mu18rYO3OoT_W0cjDsuDgchB/s897/SAML2_5.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYt8J96xpXYW0SBGnOeaGOjIejEG0iHocs4_vq3XJ0smKuS8MkGBXwoQ5N7gcKwyhyr4Yz43XxNWiWDR9etiMHUVMBNw2otMoRkf_ap09UXnD3qXCAIjLEnw6gQ30ZACeVPfess5NBZm2oexBHl44LLY7VFuErc_z6Mu18rYO3OoT_W0cjDsuDgchB/w640-h500/SAML2_5.png" width="640" height="500" border="0" data-original-height="702" data-original-width="897" /></A><BR /> <BR /> &nbsp;<BR /> <BR /> 11. Select the the Upload Metadata File.<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3iT7MdVZlL_Zuw0NkwrexJzuC1YjQILtpsnZK9YJ34xg85vjqByh6Gd5S75ck0KtBI_e_536Usy5oNk6yFajI06THJBa_rexkZg1Ii6Kz3WZhXJ9VE_8HSQQBRfHk8pMYAf_L1f_pla2gb_j0Xi9HYR9QR2ydylFXcpFEsoTEp5ltlATVoDGdFFfp/s1080/SAML2_7.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3iT7MdVZlL_Zuw0NkwrexJzuC1YjQILtpsnZK9YJ34xg85vjqByh6Gd5S75ck0KtBI_e_536Usy5oNk6yFajI06THJBa_rexkZg1Ii6Kz3WZhXJ9VE_8HSQQBRfHk8pMYAf_L1f_pla2gb_j0Xi9HYR9QR2ydylFXcpFEsoTEp5ltlATVoDGdFFfp/w640-h226/SAML2_7.png" width="640" height="226" border="0" data-original-height="382" data-original-width="1080" /></A><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3iT7MdVZlL_Zuw0NkwrexJzuC1YjQILtpsnZK9YJ34xg85vjqByh6Gd5S75ck0KtBI_e_536Usy5oNk6yFajI06THJBa_rexkZg1Ii6Kz3WZhXJ9VE_8HSQQBRfHk8pMYAf_L1f_pla2gb_j0Xi9HYR9QR2ydylFXcpFEsoTEp5ltlATVoDGdFFfp/s1080/SAML2_7.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><BR /> </A></DIV><BR /> &nbsp;<BR /> <BR /> 12. Upload the federation metadata xml which was downloaded in step 9<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiex4pyGgyxMhlx0PQZjc4Li3PicNPxvmy1TOHBXYBP0nVyzLKr-QdMnxdiFoIqXANmqUNHCgZUo52saRqqox77m_tO_9Odbe8F3JqBqyIeffIsn34u8Bqiv9-z8jCRcCu-XnMhdCJnVY70WXGtlptXPcIt-BPetX85vLksgaTBhK3evIdK7StLUbY7/s985/SAML2_8.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiex4pyGgyxMhlx0PQZjc4Li3PicNPxvmy1TOHBXYBP0nVyzLKr-QdMnxdiFoIqXANmqUNHCgZUo52saRqqox77m_tO_9Odbe8F3JqBqyIeffIsn34u8Bqiv9-z8jCRcCu-XnMhdCJnVY70WXGtlptXPcIt-BPetX85vLksgaTBhK3evIdK7StLUbY7/w640-h306/SAML2_8.png" width="640" height="306" border="0" data-original-height="471" data-original-width="985" /></A><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiex4pyGgyxMhlx0PQZjc4Li3PicNPxvmy1TOHBXYBP0nVyzLKr-QdMnxdiFoIqXANmqUNHCgZUo52saRqqox77m_tO_9Odbe8F3JqBqyIeffIsn34u8Bqiv9-z8jCRcCu-XnMhdCJnVY70WXGtlptXPcIt-BPetX85vLksgaTBhK3evIdK7StLUbY7/s985/SAML2_8.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><BR /> </A></DIV><BR /> &nbsp;<BR /> <BR /> 13.&nbsp; In the Next Step Metadata Verification, Upload the federation certificate downloaded in Step 9 and Click Next<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWs8NzNTSEQUsat97nlc_2R-cFEm6UWwu95K_FSPPa-_VkfmhLNWPw3fH4qlJnevTtZqllyEaoGY5guIIIx2IvrpknfSRl8c6IfyKcHVF7mXF1yGldEygpTwwZv42ZiGpNrEcA7G7HQNikQdtLnDs1bH1zFzfB846WrBkSw4t52U4-3ZgMgwjgk2rj/s1258/SAML2_9.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWs8NzNTSEQUsat97nlc_2R-cFEm6UWwu95K_FSPPa-_VkfmhLNWPw3fH4qlJnevTtZqllyEaoGY5guIIIx2IvrpknfSRl8c6IfyKcHVF7mXF1yGldEygpTwwZv42ZiGpNrEcA7G7HQNikQdtLnDs1bH1zFzfB846WrBkSw4t52U4-3ZgMgwjgk2rj/w640-h294/SAML2_9.png" width="640" height="294" border="0" data-original-height="576" data-original-width="1258" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 14. In Signature and Encryption Step Choose the Digest Algorithm<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIZ-2vOVeQAdJx7cy3Y281wK_I0mc-FXM8FAhbNqXfSrK-JHCnkW4EAMyW-C8FejjsV14QJYCUdvPXfzln6Oq7Q0zwFf6iJNgSEOFSkRAGOCO6LrmVMH4a9oixTzKbtCBtgOTTG8JTrVztYUII0DdWgjfBuJodqTp08kZd96J-0JktSmi4CvVsMy50/s1491/SAML2_10.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIZ-2vOVeQAdJx7cy3Y281wK_I0mc-FXM8FAhbNqXfSrK-JHCnkW4EAMyW-C8FejjsV14QJYCUdvPXfzln6Oq7Q0zwFf6iJNgSEOFSkRAGOCO6LrmVMH4a9oixTzKbtCBtgOTTG8JTrVztYUII0DdWgjfBuJodqTp08kZd96J-0JktSmi4CvVsMy50/w640-h304/SAML2_10.png" width="640" height="304" border="0" data-original-height="707" data-original-width="1491" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 15. In Authentication Requirements, Choose the shown and Click Finish.<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRzUj_1M3QRr_YBF1IksaZvmBL2Oh8c1w25fcvcLlKcuCg9D4JueUiB2T7v7GCBGrEPj9Do-1hfJVdgrIJNwXp4Y6JC6j_cE233I1gJrcWayXvwaSpT_Mm1JCkxK3gB-78S1dJ2E87RoSMN7YZcd43QOrOPSTbqZehABP7W1er9obnUCxeAtR8nbUW/s1312/SAML2_11.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRzUj_1M3QRr_YBF1IksaZvmBL2Oh8c1w25fcvcLlKcuCg9D4JueUiB2T7v7GCBGrEPj9Do-1hfJVdgrIJNwXp4Y6JC6j_cE233I1gJrcWayXvwaSpT_Mm1JCkxK3gB-78S1dJ2E87RoSMN7YZcd43QOrOPSTbqZehABP7W1er9obnUCxeAtR8nbUW/w640-h338/SAML2_11.png" width="640" height="338" border="0" data-original-height="692" data-original-width="1312" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 16. First Click on Edit and then Add then select the Unspecified and then Save the setting as shown.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/7-1.jpg" /></P><BR /> &nbsp;<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/6-1.jpg" /></DIV><BR /> &nbsp;<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"></DIV><BR /> 17. Then Click on Enable to activate the configuration.<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEia8JaoW5xJwXUFdyHtwiWAyLs8f5VRjc5f-Fd1szudm7F7xj04vkD2r2s7h8k6UTutFQmKzedjVyrBm_fDVQIq89LXSDHGbLGg3g19_Ny0-tdfmgxBDQr_kFziYeop1s_HpGpklnd3jort0TZTJnNjm8KXGOnbdcHR9pMIB9_Tomv1jv_nksyKNKxI/s1043/SAMl2_13.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEia8JaoW5xJwXUFdyHtwiWAyLs8f5VRjc5f-Fd1szudm7F7xj04vkD2r2s7h8k6UTutFQmKzedjVyrBm_fDVQIq89LXSDHGbLGg3g19_Ny0-tdfmgxBDQr_kFziYeop1s_HpGpklnd3jort0TZTJnNjm8KXGOnbdcHR9pMIB9_Tomv1jv_nksyKNKxI/w640-h196/SAMl2_13.png" width="640" height="196" border="0" data-original-height="319" data-original-width="1043" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 18. Goto Transaction SICF , enter the service name or external alias example /sap/bc/ui2/flp and open the service<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWvq-T9EGAx_1mt0Xk7JPCprdYSzOe08NuwH3B9h_C2B_sQb6EmH6hw1F859AQlkirwzkQepg_Mw4F5Ot-gmuJ0tTJSqM85NpljVTRUpn1Cjkqs67nk9SygfpvEtPr2xOB9FeAZyRZcaOYHBfGzeKo7FHYjYypOg6wqHRbPPJhOEiroP7clMCFPyjV/s1051/SAML2_14.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWvq-T9EGAx_1mt0Xk7JPCprdYSzOe08NuwH3B9h_C2B_sQb6EmH6hw1F859AQlkirwzkQepg_Mw4F5Ot-gmuJ0tTJSqM85NpljVTRUpn1Cjkqs67nk9SygfpvEtPr2xOB9FeAZyRZcaOYHBfGzeKo7FHYjYypOg6wqHRbPPJhOEiroP7clMCFPyjV/w640-h136/SAML2_14.png" width="640" height="136" border="0" data-original-height="222" data-original-width="1051" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 19.&nbsp; Select Logon Data Tab. Choose the Alternative Logon Procedure and set SAML Logon at 1 and Save.<BR /> <DIV data-original-attrs="{&quot;style&quot;:&quot;&quot;}"><A href="https://www.blogger.com/blog/post/edit/3508591528695242464/3695948242222520040#" data-original-attrs="{&quot;data-original-href&quot;:&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipZyF-ReYC2pGkgSiwN-Cq59xKjspesvcFHaRFl6BMdxvhe11aetxNfTFMDMHG8Q6TbB4H5t_KB2FPw4BDuzA4_GAYyAc_lBhiVzLsNHT_ns7gC9lMh1RInvEDJI7W5b9HMVV_ebvkAgyMWgOAAXBDBtl76_ImnXIe_R2ny3oURYPvxOJvjWlb6ks4/s987/SAMl2_15.png&quot;,&quot;style&quot;:&quot;&quot;}" target="_blank" rel="nofollow noopener noreferrer"><IMG src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipZyF-ReYC2pGkgSiwN-Cq59xKjspesvcFHaRFl6BMdxvhe11aetxNfTFMDMHG8Q6TbB4H5t_KB2FPw4BDuzA4_GAYyAc_lBhiVzLsNHT_ns7gC9lMh1RInvEDJI7W5b9HMVV_ebvkAgyMWgOAAXBDBtl76_ImnXIe_R2ny3oURYPvxOJvjWlb6ks4/w640-h344/SAMl2_15.png" width="640" height="344" border="0" data-original-height="529" data-original-width="987" /></A></DIV><BR /> &nbsp;<BR /> <BR /> 20 . Test the Service by openeinf the fiori URL in the browser. 2023-10-11T07:47:45+02:00 https://community.sap.com/t5/technology-blogs-by-members/supercharge-sap-workload-on-ibm-cloud-with-powervs/ba-p/13578461 Supercharge SAP workload on IBM Cloud with PowerVS 2023-10-11T18:46:41+02:00 williams_ruter3 https://community.sap.com/t5/user/viewprofilepage/user-id/209456 Few month ago, I released a blog about running <A href="https://blogs.sap.com/2023/04/13/run-sap-on-vmware-in-ibm-cloud/" target="_blank" rel="noopener noreferrer">SAP workload on VMware in IBM Cloud</A> as a unique offer, well today I will talk about another major offer which is the IBM Power Virtual Server as an IaaS (Infrastructure-as-a-Service) offering.<BR /> <BR /> Known as least hidden secret, running IBM Power system for SAP workload is the ideal platform due to their robustness, scalability, and ability to handle high workloads. IBM Power Server is specifically designed for high-performance computing, data-intensive workloads, and mission-critical applications.<BR /> <BR /> Overall, as a powerful virtualization solution, IBM PowerVS can help businesses to run their SAP workloads more efficiently, securely, and cost-effectively.<BR /> <BR /> In this article, I will provide detail around the PowerVS offer on IBM Cloud, design &amp; architecture for SAP workload.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/1-59.png" /></P><BR /> &nbsp;<BR /> <BR /> <EM>Best practice: Before to start anything make sure to read all necessary note relevant to your deployment, read the product guide for each component that you intend to deploy and make sure that you have done the sizing exercise properly.</EM><BR /> <BR /> <EM>Be careful on restriction and what is supported or not, this will avoid unnecessary hiccup.</EM><BR /> <BR /> Again, and always, before to start any action and to guaranty the success of the exercise, it is important to do some reading on our subject. Here is a collection of guides, references and SAP Notes to be reviewed.<BR /> These references differ from the previous article, so take the time to review it<BR /> <H4 id="toc-hId-1222240665"><STRONG>SAP Notes</STRONG></H4><BR /> 2855850 - SAP Applications on IBM Power Virtual Servers<BR /> 2947579 - SAP HANA on IBM Power Virtual Servers<BR /> 2923984 - SAP on IBM Power Virtual Servers: Support prerequisites<BR /> 2414820 - SAP on IBM Cloud: Support prerequisites<BR /> 2932766 - SAP on IBM Power Virtual Servers: Key Monitoring Metrics<BR /> <H4 id="toc-hId-1025727160"><STRONG>Guides</STRONG></H4><BR /> <A href="https://cloud.ibm.com/docs/power-iaas" target="_blank" rel="nofollow noopener noreferrer">IBM Product Guide Power System Virtual Servers</A><BR /> <H4 id="toc-hId-829213655"><STRONG>Knowledge Base</STRONG></H4><BR /> <A href="https://www.ibm.com/cloud/blog/announcements/rhel-for-sap-now-available-on-ibm-power-system-virtual-server" target="_blank" rel="nofollow noopener noreferrer">Run Critical SAP Hana workload using RHEL in Power Virtual Server</A><BR /> <A href="https://cloud.ibm.com/docs/sap?topic=sap-fast-path-site-map-power-vs" target="_blank" rel="nofollow noopener noreferrer">SAP Fast Path of IBM Power Virtual Servers</A><BR /> <A href="https://www.ibm.com/flashsystem" target="_blank" rel="nofollow noopener noreferrer">IBM Storage FlashSystem</A><BR /> <A href="https://community.ibm.com/community/user/power/blogs/pete-heyrman1/2020/06/16/how-does-shared-processor-performance-compare-to-d?CommunityKey=71e6bb8a-5b34-44da-be8b-277834a183b0&amp;tab=recentcommunityblogsdashboard&amp;_gl=1*1hvza9d*_ga*ODg4MDY2MTMzLjE2OTY3MDg2Nzg.*_ga_FYECCCS21D*MTY5NjgxMDQzOS41LjEuMTY5NjgxMjQ1NC4wLjAuMA.." target="_blank" rel="nofollow noopener noreferrer">Shared Processor Performance Compare to Dedicated Processors</A><BR /> <BR /> &nbsp;<BR /> <H2 id="toc-hId-374534712"></H2><BR /> <H2 id="toc-hId-178021207"><STRONG>SAP workload on IBM PowerVS, what does it mean for customers?</STRONG></H2><BR /> Running IBM PowerVS for customers as mentioned in my first paragraph bring significant value for all reasons highlighted, existing customers familiarized with IBM Power on-premise already know how powerful and robust this infrastructure is, but for new customers it’s like traveling on a first-class Rocketship.<BR /> <BR /> Remember the PowerVS is an IaaS offering, so in a context of hybrid architecture, customers can extend their existing on-premise or private DC SAP workload to the cloud without changing anything in terms of tools or operations, which save time and money.<BR /> <BR /> Beyond the fact that customers run their operation as usual, they also can consume and integrate native cloud services with PowerVS.<BR /> <H4 id="toc-hId-239673140">Let’s get started</H4><BR /> Hold on !!! not yet <span class="lia-unicode-emoji" title=":winking_face:">😉</span> … before to put your system on a different solar system you must be informed of few things to clear out nuances with the classic approach of native cloud virtual machine like VPC.<BR /> <BR /> <STRONG>PowerVS Responsibility Assignment Matrix</STRONG><BR /> The first point is the RACI, once your PowerVS is provisioned you must manage the OS, software and data.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/2-28.png" height="413" width="580" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">PowerVS Matrix</P><BR /> &nbsp;<BR /> <P style="overflow: hidden;margin-bottom: 0px">The second thing is the “<STRONG><EM>PowerVS Workspace</EM></STRONG>“, this is the first thing that you need to understand. Consider the Power Systems Virtual Server workspace as a centralized hub that encompasses all Power Systems Virtual Server instances within a designated geographic region</P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/3-21.png" height="412" width="510" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">PowerVS Workspace</P><BR /> <P style="overflow: hidden;margin-bottom: 0px">You can access the Power Systems Virtual Server workspace from the Resource list within the user interface. This workspace has the capacity to accommodate numerous Power Systems Virtual Server instances simultaneously.</P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/4-15.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Cloud Workspace</P><BR /> <P style="overflow: hidden;margin-bottom: 0px">Ok now that you understand this 2 (two) aspect, let’s review the core of this unique infrastructure that makes SAP so special to run on.</P><BR /> &nbsp;<BR /> <H2 id="toc-hId--215005803"></H2><BR /> <H2 style="overflow: hidden;margin-bottom: 0px" id="toc-hId--411519308"><STRONG>Design for the best and even better</STRONG></H2><BR /> <P style="overflow: hidden;margin-bottom: 0px">IBM PowerVS architecture is purposely built to support heavy SAP workload which requires tremendous performance, scalability and uptime.<BR /> The core components below that I will walk you through are designed specially to meet these expectations.</P><BR /> <BR /> <H4 id="toc-hId--349867375"><STRONG>IBM Power Server</STRONG></H4><BR /> Let’s get started with the servers, to operate SAP workload on PowerVS in IBM Cloud two server type will be available<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/5-17.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Power Server Option</P><BR /> &nbsp;<BR /> <H4 id="toc-hId--546380880"><STRONG>IBM Power E980</STRONG></H4><BR /> To run SAP Hana, only this server will be supported operating SLES or RHEL. It brings massive throughput, performance and scalability in a modular high-end system with up to <EM><STRONG>192 POWER9 cores processor</STRONG></EM>. It can go up to <STRONG><EM>64TB memory</EM></STRONG> and is the <EM><STRONG>fastest POWER9 processors</STRONG></EM> in the Power Systems portfolio.<BR /> <H4 id="toc-hId--1240611480"><STRONG>IBM Power S922</STRONG></H4><BR /> On the other side, this server can be used to run SAP NetWeaver and SAP AnyDB workloads on AIX or Linux operating system. At the glance the IBM Power Systems S922 is a mid-range server featuring the POWER9 core processor also, featuring a flexible core configuration ranging from 4 to 20 cores, making it a robust solution for resource-intensive applications and enterprise workloads.<BR /> <H4 id="toc-hId--1437124985"><STRONG>IBM Processor</STRONG></H4><BR /> Let’s continue with the processor, of course, IBM Power will not be named as such without running Power processor <span class="lia-unicode-emoji" title=":smiling_face_with_smiling_eyes:">😊</span>. IBM Power processor permit to run with dedicated and shared configurations, the great thing with IBM PowerVS instance is the ability to <EM>resize virtual servers dynamically</EM> !!! feature that is fully supported by SAP NetWeaver.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/processor-1.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Power Processor</P><BR /> <BR /> <H4 id="toc-hId--1633638490"><STRONG>IBM Storage</STRONG></H4><BR /> The other major point in terms of hardware is the storage, both servers are attached with Block Storage powered by IBM Storage FlashSystem families such 5200/7300/9500. They are connected through fiber channel protocols and provide <STRONG><EM>performance, cyber resiliency, scalability and power efficiency</EM></STRONG>.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/storage-1.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">IBM Storage FlashSystem</P><BR /> Within IBM Power Systems Infrastructure, there are two types of storage available:<BR /> <STRONG>Block Storage Tier 1</STRONG> for mission critical application, e.g. NVMe flash storage. For SAP HANA workloads, Tier 1 of block storage is supported only.<BR /> <STRONG>Block Storage Tier 3</STRONG> default storage type with optimized price/performance, e.g. SSD flash storage.<BR /> <BR /> &nbsp;<BR /> <H2 id="toc-hId--1243345981"><STRONG>IBM PowerVS design for SAP</STRONG></H2><BR /> Now that we see what it consists of from a pure hardware, let’s dive on the specifics to understand how to articulate your choice around the virtual server instance.<BR /> <BR /> Few lines above it talked about the Power Server E980 and S922 usage for SAP Hana or SAP Netweaver with AnyDB, well to make things simple here is a matrix of usage between server, processor core type, and SAP usage.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/matrix-1.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Matrix of usage</P><BR /> I’m sure that some of you are wondering what the meaning of the profile or core type is … Let me give you more explanation around this.<BR /> <H4 id="toc-hId--2026665500"><STRONG>Profiles</STRONG></H4><BR /> Let me start with SAP Hana, when you create your instance from the PowerVS portal, you need to start by selecting the OS and the image associated.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/6-19.png" height="224" width="374" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Operating system</P><BR /> You will have the option to check the box “Use a custom SAP (Hana) profile” or leave it empty, if you leave the default box unchecked the instance profiles to be used will be based on predefine configuration regarding to fix core/memory ratio for production usage<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/7-19.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Default Profile</P><BR /> Note the because of SAP Hana OS usage, E980 server and dedicated core type is selected and can’t be changed, you will find the list of profile available for SAP Hana on the link below.<BR /> <A href="https://cloud.ibm.com/docs/sap?topic=sap-hana-iaas-offerings-profiles-power-vs" target="_blank" rel="nofollow noopener noreferrer">SAP Hana PowerVS Profile Offering</A><BR /> <BR /> Now, what if you select the check box for the boot image?<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/8-15.png" height="210" width="371" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Custom profile</P><BR /> For a non-production system, it is acceptable to run custom profile which will allow you to customize the number to core and memory to your server instance. You will notice that E980 server and dedicated core types are selected and can’t be changed also.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/9-12.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Core / Memory Ratio</P><BR /> Ok now that we understand the SAP Hana matrix let’s talk about Netweaver and AnyDB. As previously mentioned you will need to select your OS combination and image, but unlike SAP Hana the choice of OS has much broader options.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/10-11.png" height="257" width="310" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Netweaver and AnyDB OS option</P><BR /> However, here there is no specific instance profile to select. The same rule as custom profile will apply but with a choice given for the machine and core type.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/11-8.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Netweaver and AnyDB - Core / Memory Ratio</P><BR /> <BR /> <H4 id="toc-hId-2071788291"><STRONG>Core Types</STRONG></H4><BR /> When you run SAP workload on PowerVS obviously you need to be very precise to get maximum benefit from the environment, here the core type allows you to operate the core processor <EM><STRONG>Dedicated</STRONG></EM> or <EM><STRONG>Shared (capped/uncapped)</STRONG></EM>.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/12-7.png" height="189" width="323" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Core types selection</P><BR /> What does it mean? First, there is a correlation between the processor core type and the OS chosen. Indeed, if you want to run SAP Hana, as mentioned previously you will select <STRONG><EM>Linux for SAP (Hana)</EM></STRONG> and de facto because of that the core type processor will be dedicated so as the machine type (E980).<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/13-7.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">SAP Hana dedicated core</P><BR /> If you chose any other OS, then you will have the ability to go with dedicated or shared, ok I see you with “ok, so what ? and ?” … I got you, in other words:<BR /> <H4 id="toc-hId-1875274786"><STRONG>Dedicated</STRONG></H4><BR /> With dedicated core type, you have the SAPS value per cores guaranteed based on the system type (E980/S922) with resources allocated specifically for you.<BR /> <H4 id="toc-hId-1678761281"><STRONG>Shared (Uncapped)</STRONG></H4><BR /> With shared core type the same rule will apply, however you will share the resource with others <span class="lia-unicode-emoji" title=":smiling_face_with_smiling_eyes:">😊</span> Note that If you are using shared processor configurations for SAP NetWeaver, it is recommended using uncapped mode.<BR /> <BR /> &nbsp;<BR /> <H2 id="toc-hId-2069053790"><STRONG>What about integration with cloud service and native components?</STRONG></H2><BR /> Running SAP in IBM cloud native VMs (VPC) is nice because you can consume and integrate cloud native service and components easily.<BR /> Running SAP on IBM PowerVS is awesome for many reasons and I already talked about it above, so for customers who want to leverage this unique offer here is a classic simplified architecture view.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/10/14-5.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">PowerVS Integration</P><BR /> One of the main elements in this picture for the integration with IBM Cloud native service or components is the transit gateway. This specific network component is commonly used in hybrid scenario to interconnect multiple layers in IBM Cloud, here the TG will provide connectivity between IBM PowerVS and the VPC layer to interact with native VM.<BR /> On top of it because of the interaction with the VPC layer, the Cloud Service can be consumed from <EM><STRONG>Virtual Private Endpoint for VPC</STRONG></EM>.<BR /> <BR /> &nbsp;<BR /> <H2 id="toc-hId-1872540285">Conclusion</H2><BR /> Running SAP on IBM PowerVS as mentioned previously has many advantages, to me one of the major benefits is also the fact that customer who runs on-premise Power, can make the move PowerVS seamlessly, and leverage the full power of the technology.<BR /> Moreover, that customers can push to more innovations and transformations by integrating IBM cloud extended native features and specific platform offers for SAP like VPC and more.<BR /> <BR /> In my IBM Cloud PowerVS blog, I will talk how PowerVS help to increase ROI for SAP workload, followed by detail technical migration and automation. 2023-10-11T18:46:41+02:00 https://community.sap.com/t5/enterprise-resource-planning-blogs-by-sap/sap-netweaver-7-5%E3%83%A1%E3%83%B3%E3%83%86%E3%83%8A%E3%83%B3%E3%82%B9%E6%96%B9%E9%87%9D%E3%81%AEsap-business-suite-7%E3%81%B8%E3%81%AE%E5%90%8C%E6%9C%9F%E3%81%A8-sap-bw-4hana%E3%81%AE%E8%A3%BD%E5%93%81%E6%88%A6%E7%95%A5%E3%81%AEsap-s/ba-p/13579122 SAP NetWeaver 7.5メンテナンス方針のSAP Business Suite 7への同期と SAP BW/4HANAの製品戦略のSAP S/4HANAへの同期について 2023-10-13T09:37:24+02:00 former_member182065 https://community.sap.com/t5/user/viewprofilepage/user-id/182065 *このブログは、2020年4月15日にSAPジャパンブログに投稿したものです。弊社プラットフォーム変更により、内容をSAP Community Blogに再投稿しております。<BR /> <BR /> SAPは2020年2月にSAP S/4HANAとSAP Business Suite 7のメンテナンス方針の更新の<A href="https://news.sap.com/japan/2020/02/sap%e3%80%81sap-s-4hana%e3%81%ae%e3%82%a4%e3%83%8e%e3%83%99%e3%83%bc%e3%82%b7%e3%83%a7%e3%83%b3%e3%81%ab%e5%af%be%e3%81%99%e3%82%8b%e3%82%b3%e3%83%9f%e3%83%83%e3%83%88%e3%83%a1%e3%83%b3%e3%83%88/" target="_blank" rel="noopener noreferrer">発表</A>を行いました。それに引続きSAPでは下記関連製品のメンテナンス・製品方針についても2020年4月付けで更新を行いました。<BR /> <BR /> <STRONG>1)SAP S/4HANAへの安全な移行のためSAP NetWeaver 7.5のメンテナンス方針のSAP Business Suite 7への同期化  ⇒ SAP NetWeaver 7.5はメインストリームメンテナンスを2027年末まで、延長保守を2030年末までとします</STRONG><BR /> <BR /> <STRONG>2)SAP BW/4HANAの製品拡張方針をSAP S/4HANAシリーズに同期させます</STRONG><BR /> <BR /> 詳細にはSAP Platform開発部門の<A href="https://blogs.sap.com/2020/04/07/maintenance-strategy-for-sap-netweaver-7.5-fully-aligned-with-sap-business-suite-7.-product-strategy-of-sap-bw-4hana-fully-in-line-with-sap-s-4hana/" target="_blank" rel="noopener noreferrer">Karl Kesslerによるブログ</A>とそのブログで示されている各リンクをご覧いただきたいと思います。ここでは日本のお客様向けに、我々の言葉にて解説・紹介させていただきます。<BR /> <BR /> &nbsp;<BR /> <H3 id="toc-hId-1093184731"><STRONG>SAP NetWeaver&nbsp; 使用パターン別メンテナンス方針解説</STRONG></H3><BR /> <IMG src="https://www.sapjp.com/blog/wp-content/uploads/2020/04/2020-04-14_16-21-52.png" /><BR /> <H5 id="toc-hId-1154836664"><STRONG>図1:SAP ERP 6.0の同一システム・インスタンスに埋め込まれたSAP NetWeaverのサポート</STRONG></H5><BR /> SAP NetWeaver ASが代表的です。これは2020年2月のアナウンス時と変更なく<A href="https://launchpad.support.sap.com/#/notes/1648480" target="_blank" rel="noopener noreferrer">SAP Note1648480</A>に記述されている通りになります。SAP NetWeaver 7.03, 7.31(以上SAP ERP 6.0 EhP6のベース)、SAP NetWeaver 7.4 (SAP ERP 6.0 EhP7のベース)、SAP NetWeaver 7.5(SAP ERP 6.0 EhP8のベース)のSAP NetWeaver ABAP StackはSAP ERP 6.0などのSAP Business Suite 7のメンテナンス方針と同期を取ります。つまり2027年末までのメインストリームメンテナンス、その後2030年までのOptionとしての延長保守です。<BR /> <H5 id="toc-hId-958323159"><STRONG>図2:BW, EP(Enterprise Portal), PI / PO(Process Integration / Process Orchestration)など、単独システム・インスタンスとしてSAP NetWeaverを使う場合</STRONG></H5><BR /> SAP NetWeaver 7.5のメインストリームメンテナンスは従来2024年末でしたが、これが完全にSAP Business Suite 7(SAP ERP 6.0 EhP6~8)と同様になって2027年末となりました。またオプションとしての2030年までの延長保守も提供されます。これは、SAP ERP 6.0などと同期を合わせて、次世代プラットフォームへの移行ロードマップ策定をいただく時間を十分に取って頂くためでもあります。<BR /> <BR /> ちなみにSAP NetWeaver 7.5のJava StackはJava8がベース、SAP NetWeaver 7.4のJava StackはJava6がベースです。単独システム・インスタンスで使うSAP NetWeaver 7.4とそれ以前については、メインストリームメンテナンス期間の変更はありません。<BR /> <BR /> &nbsp;<BR /> <H3 id="toc-hId-503644216"><STRONG>次世代プラットフォームへの移行について</STRONG></H3><BR /> 進化の早いインフラ、DB、UX、UI、セキュリティ技術、機械学習の組込など特にIT基盤系では、一般的に最新の技術の恩恵を得て、ITに関わる自社従業員のより付加価値分野へのリソース配分を図るために、ますますクラウドサービスの活用が浸透してきていると思います。SAPでもSAP Datasphereなどにて次世代のIT基盤の提供は既に早くから始まっています。<BR /> <BR /> BI(Business Intelligence)・Business Warehouse(BW)の分野では、<A href="https://www.sapjp.com/blog/analytics_cloud/" target="_blank" rel="nofollow noopener noreferrer">SAP Analytics Cloud</A>,&nbsp; <A href="https://www.sapjp.com/blog/archives/15336" target="_blank" rel="nofollow noopener noreferrer">SAP BW/4HANA</A>, SAP S/4HANAデータのリアルタイム分析を可能にするCDS Viewや、SAP Fioriの技術も相当浸透してきました。<BR /> <BR /> また、現在のSAP NetWeaver Application Serverに当たるコンポーネントは、オンプレミス・Cloud両方のSAP S/4HANAなどの組込部品ABAP Platformとして今後も進化を続けます。<BR /> <BR /> このように、Cloud化などを切欠に技術革新の速度が速い従来のSAP NetWeaverの領域では、利用シナリオ、目指すプラットフォームにより選択肢も増えより間違いの無い選択・設計が求められていると思います。SAP NetWeaver 7.5のメンテナンス方針修正により、SAP ERP 6.0などと同期を合わせて、あるべき次世代プラットフォームへの移行ロードマップ策定をいただく時間を十分に取って頂くことができればと思います。推奨移行情報については前出のSAP Platform開発部門の<A href="https://blogs.sap.com/2020/04/07/maintenance-strategy-for-sap-netweaver-7.5-fully-aligned-with-sap-business-suite-7.-product-strategy-of-sap-bw-4hana-fully-in-line-with-sap-s-4hana/" target="_blank" rel="noopener noreferrer">Karl Kesslerによるブログ</A> にもございますので是非ご覧ください。 2023-10-13T09:37:24+02:00 https://community.sap.com/t5/enterprise-resource-planning-blogs-by-members/sap-note-captured-in-which-tr-request-in-sap-using-tcode-se03/ba-p/13568307 SAP Note,Captured in which TR Request in SAP using TCODE SE03 2023-10-23T18:33:23+02:00 karanamramu https://community.sap.com/t5/user/viewprofilepage/user-id/385301 <P style="overflow: hidden;margin-bottom: 0px">Hi All,</P><BR /> Hope Every one is well! <span class="lia-unicode-emoji" title=":slightly_smiling_face:">🙂</span><BR /> <BR /> Introduction:<BR /> <BR /> SAP Notes is&nbsp;<B>a set of instructions to remove known errors from the SAP systems</B>. Using the Note Assistant tool, SAP Notes can be applied to the system. You can access the Note Assistant tool using transaction SNOTE.<BR /> <BR /> As we all know, how to implement a note in an SAP system After implementation of OSS Notes, from which Transport the note has been captured and how to identify it I will explain the below steps further.<BR /> <BR /> Step 1.<BR /> <BR /> I implemented an OSS Note a Few Days ago and have to know from which Transport it has been captured.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/07/Electronic-Document-3.png" /><BR /> Step 2:</P><BR /> <P style="overflow: hidden;margin-bottom: 0px">Go to SE03,click on Find objects in Request/Tasks.<BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/07/Findobjects.png" /><BR /> Step 2:Click on Find Objects in Request/Task it will navigate into the below screen.</P><BR /> Step 3:After provided the details as per above and execute it.<BR /> <BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/07/SAP-Note-1.png" /><BR /> <BR /> After providing the details as per the above and pressing execute, we will navigate to the next screen, where we can observe from which transport the note has been captured.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/ROV.png" /><BR /> Conclusion:</P><BR /> <P style="color: #252525">I hope this blog will help you find the released Oss Notes and from which transport they have been captured, which we can identify as per the above steps.</P> 2023-10-23T18:33:23+02:00 https://community.sap.com/t5/technology-blogs-by-sap/ready-for-lama-3-0-sp29/ba-p/13576461 Ready for LaMa 3.0 SP29? 2023-11-07T04:19:28+01:00 jens_rolke https://community.sap.com/t5/user/viewprofilepage/user-id/187079 This year we’re a little bit earlier than the years before – so let me introduce you to our latest <STRONG>Support Package 29</STRONG> of <STRONG>SAP Landscape Management 3.0.</STRONG><BR /> <BR /> As usual in my <A href="https://blogs.sap.com/tag/lama_feature_release_blogs/" target="_blank" rel="noopener noreferrer">feature blog posts</A>, I would like to highlight 3 new capabilities that were released with this feature support pack. All other innovations and improvements can be found in the “What’s New” section on our <A href="https://help.sap.com/docs/SAP_LANDSCAPE_MANAGEMENT_ENTERPRISE?version=3.0.29.0" target="_blank" rel="noopener noreferrer">SAP Help Portal for SAP Landscape Management</A>.<BR /> <BR /> Let me start with the <STRONG>SAP Kernel Update</STRONG>. We continue our end-2-end story for this topic. Now you’re able to <STRONG>restore a backup of a previous release version </STRONG>in case you need to do so (e.g. if the recent update of the SAP Kernel fails). This was requested by several customers and now we’re proud to make this available to you.<BR /> <BR /> Another new topic is the <STRONG>SPAM/SAINT Update</STRONG> that can now directly be executed via LaMa. We also made this available via REST API in case you need to perform it remotely.<BR /> <BR /> Additionally, we <STRONG>optimized</STRONG> the <STRONG>Database Refresh Operations</STRONG>. Let me highlight the following:<BR /> <UL><BR /> <LI>We removed the “User” step where not needed</LI><BR /> <LI>For SNC enabled systems we added more steps to the refresh procedure</LI><BR /> <LI>It is also possible now to skip the SWPM step if required</LI><BR /> <LI>You can pre-import system users into the target system</LI><BR /> </UL><BR /> I hope this little intro to SP29 encourages you to update your LaMa installation.<BR /> <BR /> BTW: If you’re attending <STRONG>ASUG Tech Connect 2023 in New Orleans, LA (Nov 7-9, 2023) </STRONG>and want to hear more about the latest and the future of LaMa as well as are interested to have a meeting with the team =&gt; <STRONG>just reach out to my colleague </STRONG><SPAN class="mention-scrubbed">naeem.maqsud#about</SPAN> for more details).<BR /> <BR /> <U>Further information</U><BR /> <BR /> <A href="https://help.sap.com/whats-new/295fa621c1654bb8add09cbbda28c148?Action=Info%20only%3BRecommended%3BRequired&amp;Type=New%3BChanged%3BDeleted&amp;Version=3.0%20SP%2029&amp;locale=en-US" target="_blank" rel="noopener noreferrer">What’s New in 3.0 SP29 Enterprise Edition</A><BR /> <A href="https://me.sap.com/notes/3316859" target="_blank" rel="noopener noreferrer">SAP Note 3316859 - SAP Landscape Management 3.0 SP29</A> 2023-11-07T04:19:28+01:00 https://community.sap.com/t5/technology-blogs-by-members/calling-custom-abap-function-modules-with-custom-startrfc-c-c-file/ba-p/13571871 Calling custom ABAP function modules with custom startrfc C/C++ file 2023-11-17T23:27:59+01:00 jygogo1 https://community.sap.com/t5/user/viewprofilepage/user-id/168608 Recently we had a requirement to call a custom function module in SAP ECC system from a 3rd party non SAP application using SAP NW RFC SDK. Earlier it was pretty much simple process to call any function module in SAP via the <STRONG>startrfc</STRONG> kernel executable i.e. you can start any SAP function module, that is RFC-enabled. This program is part of SAP application server and of any SAP RFC SDK.<BR /> <H3 id="toc-hId-1092953284"><B>startrfc worked as follows:</B></H3><BR /> <EM>startrfc -3 -h &lt;host&gt; -s &lt;instance number&gt; -c &lt;client&gt; -l &lt;language&gt; -u &lt;user&gt; -p &lt;password&gt; -F &lt;function module&gt; -E &lt;parameter=value&gt;</EM><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/11/1-82.png" /></P><BR /> <P class="image_caption" style="text-align:center;font-style:italic;, Arial, sans-serif">RFC Clients calling Server FM</P><BR /> <P class="image_caption" style="text-align:center;font-style:italic;, Arial, sans-serif"></P><BR /> However in the last few years whenever you tried to call the startrfc to start a function module in backend system, you faced error like "Missing or invalid -F option" and the function module could not be started. This is due to new SAP Security limitations that now only allowed <EM>EDI_DATA_INCOMING</EM> and <EM>EDI_STATUS_INCOMING</EM> to be started by default. More information in the SAP Note <A href="https://me.sap.com/notes/2010749" target="_blank" rel="noopener noreferrer">2010749 - Startrfc -F option restriction in NW RFC SDK&nbsp;</A><BR /> <BR /> Our requirement was such that we had to call the custom FM so we decided on create a custom version of SAP Kernel file STARTRFC so that the original SAP Kernel file is not broken along with calls to standard SAP EDI FM <EM>EDI_DATA_INCOMING</EM> &amp; <EM>EDI_STATUS_INCOMING</EM>. &nbsp;The standard STARTRFC program is designed to handle input parameter PATHNAME &amp; PORT where as the custom FM was designed to accept 3 other parameters (routename, filename, uniqueid) so a copy of the STARTRFC C++ program was modified and recompiled and was placed into the kernel directory with name ZSTASRTRFC.<BR /> <BR /> One challenge which arises from following this approach is that we need to ensure that in future when upgrades (Kernel upgrade, EHP upgrades, S/4 Migration etc.) happens, this custom Z file should not be deleted. Additionally customizing the original STARTRFC program itself was more complicated, error prone plus with every update (Kernel upgrade etc.), this file would be overwritten. So this approach was not taken.<BR /> <H3 id="toc-hId-896439779">Scenario:</H3><BR /> Our custom Function module Z_*_UTILITY accepted 3 import parameters - IP_ROUTENAME, IP_FILENAME &amp; IP_UNIQUEID. This FM was remote enabled<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/11/2-35.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Custom FM</P><BR /> <BR /> <H3 id="toc-hId-699926274">Modification of the startrfc C++ Program</H3><BR /> The standard startrfc c++ program was modified where the import parameters' were added in place of the standard parameters. In addition to this the custom FM module (Z_*_UTILITY) was added to the program. One thing we noted is that the sequence of adding the import parameters in the c++ file should match the import parameter sequence in the function module.<BR /> <PRE class="language-cpp"><CODE>#include "zstartrfc.h"<BR /> <BR /> int mainU (int argc, SAP_UC ** argv)<BR /> {<BR /> OPTIONS options = {};<BR /> if(!parseCommand(argc, argv, &amp;options))<BR /> return 0;<BR /> if(!checkOptions(&amp;options))<BR /> {<BR /> showHelp();<BR /> return 1;<BR /> }<BR /> options-&gt;path = "/sapmnt/&lt;SID&gt;/exe/uc/linuxx86_64";<BR /> RFC_RC SAP_API RfcSetIniPath(options-&gt;path,errorInfo);<BR /> RFC_RC rc = startRfc(&amp;options);<BR /> return rc;<BR /> }<BR /> <BR /> bool parseCommand(int argc, SAP_UC ** argv, OPTIONS* options)<BR /> {<BR /> if( argc &lt; 2 || !strcmpU(argv[1], cU("-help")) || !strcmpU(argv[1], cU("-?")))<BR /> {<BR /> showHelp();<BR /> return false;<BR /> }<BR /> else if(!strcmpU(argv[1], cU("-v")))<BR /> {<BR /> showVersion();<BR /> return false;<BR /> }<BR /> int i = 1;<BR /> const SAP_UC * const IP_FILENAME = cU("IP_FILENAME=");<BR /> const SAP_UC * const IP_ROUTENAME = cU("IP_ROUTENAME=");<BR /> const SAP_UC * const IP_UNIQUEID = cU("IP_UNIQUEID=");<BR /> const size_t FILENAME_LEN = 12;<BR /> const size_t ROUTENAME_LEN = 13;<BR /> const size_t UNIQUEID_LEN = 12;<BR /> <BR /> while(i &lt; argc)<BR /> {<BR /> const SAP_UC ch1 = argv[i][0];<BR /> const SAP_UC ch2 = argv[i++][1];<BR /> if(ch1 == cU('-') &amp;&amp; ch2) // we found an option<BR /> {<BR /> if(ch2 == cU('i'))<BR /> {<BR /> options-&gt;showSysInfo = true;<BR /> continue;<BR /> }<BR /> if(i &gt; argc - 1 || argv[i][0] == cU('-'))<BR /> {<BR /> continue;<BR /> }<BR /> switch (ch2)<BR /> {<BR /> case cU('h'):<BR /> options-&gt;ashost = argv[i++];<BR /> break;<BR /> case cU('s'):<BR /> options-&gt;sysnr = argv[i++];<BR /> break;<BR /> case cU('u'):<BR /> options-&gt;user = argv[i++];<BR /> break;<BR /> case cU('p'):<BR /> options-&gt;passwd = argv[i++];<BR /> break;<BR /> case cU('c'):<BR /> options-&gt;client = argv[i++];<BR /> break;<BR /> case cU('l'):<BR /> options-&gt;language = argv[i++];<BR /> break;<BR /> case cU('D'):<BR /> options-&gt;dest = argv[i++];<BR /> break;<BR /> case cU('F'):<BR /> options-&gt;function = argv[i++];<BR /> break;<BR /> case cU('E'):<BR /> {<BR /> const SAP_UC *param = argv[i++];<BR /> if(!strncmpU(param, IP_FILENAME, FILENAME_LEN))<BR /> {<BR /> options-&gt;filename = param + FILENAME_LEN;<BR /> }<BR /> else if(!strncmpU(param, IP_ROUTENAME, ROUTENAME_LEN))<BR /> {<BR /> options-&gt;routename = param + ROUTENAME_LEN;<BR /> }<BR /> else if(!strncmpU(param, IP_UNIQUEID, UNIQUEID_LEN))<BR /> {<BR /> options-&gt;uniqueid = param + UNIQUEID_LEN;<BR /> }<BR /> }<BR /> break;<BR /> case cU('t'):<BR /> options-&gt;trace = argv[i++];<BR /> break;<BR /> default:<BR /> i++;<BR /> break;<BR /> }<BR /> }<BR /> }<BR /> return true;<BR /> }<BR /> <BR /> bool checkOptions(OPTIONS *options)<BR /> {<BR /> SAP_UC ch = cU('\0');<BR /> const SAP_UC * const EDI_DATA_INCOMING = cU("EDI_DATA_INCOMING");<BR /> const SAP_UC * const Z_*_UTILITY = cU("Z_*_UTILITY");<BR /> const SAP_UC * const EDI_STATUS_INCOMING = cU("EDI_STATUS_INCOMING");<BR /> const unsigned MAX_FILENAME_LEN = 255;<BR /> const unsigned MAX_ROUTENAME_LEN = 50;<BR /> const unsigned MAX_UNIQUEID_LEN = 50;<BR /> <BR /> if(!options-&gt;dest)<BR /> {<BR /> if(!options-&gt;ashost )<BR /> ch = cU('h');<BR /> else if(!options-&gt;sysnr)<BR /> ch = cU('s');<BR /> else if(!options-&gt;user)<BR /> ch = cU('u');<BR /> else if(!options-&gt;passwd)<BR /> ch = cU('p');<BR /> else if(!options-&gt;client)<BR /> ch = cU('c');<BR /> if(ch)<BR /> {<BR /> printfU(cU("Missing or invalid -%c option.\n"), ch);<BR /> return false;<BR /> }<BR /> }<BR /> if(!options-&gt;showSysInfo)<BR /> {<BR /> if((!options-&gt;function) ||<BR /> (strcmpU(options-&gt;function,EDI_DATA_INCOMING) &amp;&amp; <BR /> strcmpU(options-&gt;function,EDI_STATUS_INCOMING) &amp;&amp;<BR /> strcmpU(options-&gt;function,Z_*_UTILITY)))<BR /> {<BR /> printfU(cU("Missing or invalid -F option.\n"));<BR /> return false;<BR /> }<BR /> <BR /> if(!options-&gt;filename || !options-&gt;filename[0])<BR /> {<BR /> printfU(cU("Missing or invalid -E IP_FILENAME= option.\n"));<BR /> return false;<BR /> }<BR /> else if(strlenU(options-&gt;filename) &gt; MAX_FILENAME_LEN)<BR /> {<BR /> printfU(cU("Filename specified by -E IP_FILENAME= excceeds the maximum length of 255. \n"));<BR /> return false;<BR /> }<BR /> if(!options-&gt;routename ||!options-&gt;routename[0] )<BR /> {<BR /> printfU(cU("Missing or invalid -E IP_ROUTENAME= option.\n"));<BR /> return false;<BR /> }<BR /> else if(strlenU(options-&gt;routename) &gt; MAX_ROUTENAME_LEN)<BR /> {<BR /> printfU(cU("Route name specified by -E IP_ROUTENAME= excceeds the maximum length of 50. \n"));<BR /> return false;<BR /> }<BR /> if(!options-&gt;uniqueid ||!options-&gt;uniqueid[0] )<BR /> {<BR /> printfU(cU("Missing or invalid -E IP_UNIQUEID= option.\n"));<BR /> return false;<BR /> }<BR /> else if(strlenU(options-&gt;uniqueid) &gt; MAX_UNIQUEID_LEN)<BR /> {<BR /> printfU(cU("UNIQUEID name specified by -E IP_UNIQUEID= excceeds the maximum length of 50. \n"));<BR /> return false;<BR /> }<BR /> }<BR /> return true;<BR /> }<BR /> <BR /> RFC_RC startRfc(OPTIONS *options)<BR /> {<BR /> RFC_RC rc = RFC_OK;<BR /> RFC_ERROR_INFO error;<BR /> memsetR(&amp;error, 0, sizeofR(RFC_ERROR_INFO));<BR /> RFC_CONNECTION_PARAMETER connParams[] = {<BR /> {cU("ashost"), options-&gt;ashost},<BR /> {cU("sysnr"), options-&gt;sysnr},<BR /> {cU("client"), options-&gt;client},<BR /> {cU("lang"), options-&gt;language ? options-&gt;language : cU("E")},<BR /> {cU("user"), options-&gt;user},<BR /> {cU("passwd"), options-&gt;passwd},<BR /> {cU("dest"), options-&gt;dest ? options-&gt;dest : cU("")},<BR /> {cU("trace"), options-&gt;trace}};<BR /> RFC_CONNECTION_HANDLE connHandle = RfcOpenConnection(connParams, <BR /> sizeofR(connParams) / sizeofR(RFC_CONNECTION_PARAMETER),<BR /> &amp;error);<BR /> if(connHandle)<BR /> {<BR /> if(options-&gt;showSysInfo)<BR /> {<BR /> RFC_ATTRIBUTES attr;<BR /> rc = RfcGetConnectionAttributes(connHandle, &amp;attr, &amp;error);<BR /> showConnAttr(&amp;attr);<BR /> <BR /> }<BR /> else if(options-&gt;function)<BR /> {<BR /> RFC_FUNCTION_DESC_HANDLE funcDesc = getFunctionHandle(options-&gt;function);<BR /> RFC_FUNCTION_HANDLE funcHandle = RfcCreateFunction(funcDesc, 0);<BR /> <BR /> RfcSetChars(funcHandle, cU("IP_ROUTENAME"), options-&gt;routename, (unsigned)strlenU(options-&gt;routename), 0);<BR /> RfcSetChars(funcHandle, cU("IP_FILENAME"), options-&gt;filename, (unsigned)strlenU(options-&gt;filename), 0);<BR /> RfcSetChars(funcHandle, cU("IP_UNIQUEID"), options-&gt;uniqueid, (unsigned)strlenU(options-&gt;uniqueid), 0);<BR /> rc = RfcInvoke(connHandle, funcHandle, &amp;error);<BR /> }<BR /> if(RFC_OK == rc)<BR /> {<BR /> RfcCloseConnection(connHandle, &amp;error);<BR /> return rc;<BR /> }<BR /> }<BR /> printfU(cU("Error: %s\n"), error.message);<BR /> return error.code;<BR /> }<BR /> <BR /> RFC_FUNCTION_DESC_HANDLE getFunctionHandle(const SAP_UC* functionName)<BR /> {<BR /> RFC_PARAMETER_DESC parDescRoutename = { iU("IP_ROUTENAME"), RFCTYPE_CHAR, RFC_IMPORT, 50, 100, 0, 0, 0, 0, 0};<BR /> RFC_PARAMETER_DESC parDescFilename = { iU("IP_FILENAME"), RFCTYPE_CHAR, RFC_IMPORT, 255, 510, 0, 0, 0, 0, 0};<BR /> RFC_PARAMETER_DESC parDescUniqueid = { iU("IP_UNIQUEID"), RFCTYPE_CHAR, RFC_IMPORT, 50, 100, 0, 0, 0, 0, 0};<BR /> RFC_FUNCTION_DESC_HANDLE funcDesc = RfcCreateFunctionDesc(functionName, 0);<BR /> RfcAddParameter(funcDesc, &amp;parDescRoutename, 0);<BR /> RfcAddParameter(funcDesc, &amp;parDescFilename, 0);<BR /> RfcAddParameter(funcDesc, &amp;parDescUniqueid, 0);<BR /> return funcDesc;<BR /> }<BR /> <BR /> <BR /> void showHelp( )<BR /> {<BR /> const SAP_UC * const programName = cU("startrfc");<BR /> printfU( cU("\nUsage: %s [options]\n"), programName );<BR /> printfU( cU("Options:\n") );<BR /> printfU( cU(" -h &lt;ashost&gt; SAP application server to connect to\n") );<BR /> printfU( cU(" -s &lt;sysnr&gt; system number of the target SAP system\n") );<BR /> printfU( cU(" -u &lt;user&gt; user\n") );<BR /> printfU( cU(" -p &lt;passwd&gt; password\n") );<BR /> printfU( cU(" -c &lt;client&gt; client \n") );<BR /> printfU( cU(" -l &lt;language&gt; logon language\n") );<BR /> printfU( cU(" -D &lt;destination&gt; destination defined in RFC config file sapnwrfc.ini\n") );<BR /> printfU( cU(" -F &lt;function&gt; function module to be called, only EDI_DATA_INCOMING\n") );<BR /> printfU( cU(" or EDI_STATUS_INCOMING or Z_MCA_MFT_UTILITY is supported\n") );<BR /> printfU( cU(" -E PATHNAME=&lt;path&gt; path, including file name, to EDI data file or status \n") );<BR /> printfU( cU(" file, with maximum length of 100 charachters\n") );<BR /> printfU( cU(" -E PORT=&lt;port name&gt; port name of the ALE/EDI interface with maximum \n") );<BR /> printfU( cU(" length of 10 charachters\n") );<BR /> printfU( cU(" -t &lt;level&gt; set RFC tracelevel 0(off), 1(brief), 2(verbose) or 3(full)\n") );<BR /> printfU( cU(" -help or -? display this help page\n") );<BR /> printfU( cU(" -v display the version of the NWRFC library, the version\n") );<BR /> printfU( cU(" of the compiler used by SAP to build this program and\n") );<BR /> printfU( cU(" the version of startrfc\n") );<BR /> printfU( cU(" -i connect to the target system and display the system info\n") );<BR /> <BR /> }<BR /> <BR /> void showConnAttr(RFC_ATTRIBUTES *attr)<BR /> {<BR /> if(!attr)<BR /> return;<BR /> printfU(cU("SAP System ID: %s\n"),attr-&gt;sysId);<BR /> printfU(cU("SAP System Number: %s\n"),attr-&gt;sysNumber);<BR /> printfU(cU("Partner Host: %s\n"),attr-&gt;partnerHost);<BR /> printfU(cU("Own Host: %s\n"),attr-&gt;host);<BR /> printfU(cU("Partner System Release: %s\n"),attr-&gt;partnerRel);<BR /> printfU(cU("Partner Kernel Release: %s\n"),attr-&gt;kernelRel);<BR /> printfU(cU("Own Release: %s\n"),attr-&gt;rel);<BR /> printfU(cU("Partner Codepage: %s\n"),attr-&gt;partnerCodepage);<BR /> printfU(cU("Own Codepage: %s\n"),attr-&gt;codepage);<BR /> printfU(cU("User: %s\n"),attr-&gt;user);<BR /> printfU(cU("Client: %s\n"),attr-&gt;client);<BR /> printfU(cU("Language: %s\n"),attr-&gt;language);<BR /> }<BR /> <BR /> <BR /> <BR /> void showVersion()<BR /> {<BR /> printfU (cU("NW RFC Library Version: %s\n"), RfcGetVersion(NULL, NULL, NULL));<BR /> printfU (cU("Compiler Version:\n")<BR /> #if defined SAPonAIX<BR /> cU("%04X (VVRR)\n"), __xlC__<BR /> #elif defined SAPonHP_UX<BR /> cU("%06d (VVRRPP. %s Compiler)\n"), /*yes, decimal here!*/<BR /> #if defined __HP_cc<BR /> __HP_cc, cU("C")<BR /> #elif defined __HP_aCC<BR /> __HP_aCC, cU("C++")<BR /> #else<BR /> 0, cU("Unknown Version")<BR /> #endif<BR /> #elif defined SAPonLINUX<BR /> cU("%s\n"), cU(__VERSION__)<BR /> #elif defined SAPonNT<BR /> cU("%09d (VVRRPPPPP. Microsoft (R) C/C++ Compiler)\n"), _MSC_FULL_VER /*decimal!*/<BR /> #elif defined SAPonSUN<BR /> cU("%03X (VRP. %s Compiler)\n"),<BR /> #if defined __SUNPRO_C<BR /> __SUNPRO_C, cU("C")<BR /> #elif defined __SUNPRO_CC<BR /> __SUNPRO_CC, cU("C++")<BR /> #else<BR /> 0, cU("Unknown Version")<BR /> #endif<BR /> #elif defined SAPonOS390<BR /> cU("%08X (PVRRMMMM)\n"), __COMPILER_VER__<BR /> #else<BR /> cU("%s\n"), cU("Version not available.")<BR /> #endif<BR /> );<BR /> printfU (cU("Startrfc Version: 2018-08-15\n"));<BR /> }<BR /> <BR /> </CODE></PRE><BR /> &nbsp;<BR /> <H3 id="toc-hId-503412769">Compiling &amp; Binding:</H3><BR /> <P style="overflow: hidden;margin-bottom: 0px">Before compiling the custom c++ program, ensure that NW RFC SDK is in kernel folder &amp; GCC rpm is installed for recompiling a new version of the STARTRFC program. Once the pre-requisites were in place, we proceeded with compiling and binding the file with SDK &amp; Kernel with the below commands.</P><BR /> <STRONG>Bind with NW RFC SDK</STRONG><BR /> <UL><BR /> <LI>g++ -o zstartrfc zstartrfc.o nwrfcsdk/lib/libsapnwrfc.so nwrfcsdk/lib/libsapucum.so</LI><BR /> <LI>g++ -std=c++0x -DSAPwithUNICODE -I nwrfcsdk/include -c -o zstartrfc.o zstartrfc.cpp</LI><BR /> </UL><BR /> <STRONG>Bind with Kernel</STRONG><BR /> <UL><BR /> <LI>g++ -std=c++0x -DSAPwithUNICODE -I /sapmnt/SID/exe/uc/linuxx86_64/nwrfcsdk/include -c -o zstartrfc.o zstartrfc.cpp</LI><BR /> <LI>g++ -o zstartrfc zstartrfc.o /sapmnt/SID/exe/uc/linuxx86_64/libsapnwrfc.so /sapmnt/SID/exe/uc/linuxx86_64/libsapucum.so</LI><BR /> </UL><BR /> The above commands created the zstartrfc program which can be now placed in the kernel directory. Finally updated the custom application Java file to call ZSTARTRFC instead of STARTRFC<BR /> <BR /> This process of creating the custom kernel executable now allowed to call the custom function module and bypass the restriction with startrfc.<BR /> <BR /> <STRONG>Reference SAP Notes</STRONG><BR /> <UL><BR /> <LI>2010749 - Startrfc -F option restriction in NW RFC SDK</LI><BR /> <LI>2573953 - Compiling and Linking RFC Programs with the SAP NetWeaver RFC SDK 7.50</LI><BR /> </UL> 2023-11-17T23:27:59+01:00 https://community.sap.com/t5/sap-learning-blog-posts/where-can-i-learn-to-create-business-processes-and-integration-scenarios/ba-p/304969 Where can I learn to create business processes and integration scenarios using the required tools? 2023-11-28T16:38:49.712000+01:00 Margit_Wagner https://community.sap.com/t5/user/viewprofilepage/user-id/491 <P>You can build the skills you need, for free and at your own pace with our Digital Learning Journey.&nbsp;<BR />on&nbsp;&nbsp;our&nbsp;<A title="SAP Learning Site&nbsp;" href="https://learning.sap.com/learning-journey" target="_blank" rel="noopener noreferrer">SAP Learning Site</A></P><DIV><P>I recommend to access our&nbsp;<SPAN><A title="Developing Business Processes with SAP Process Orchestration learning jo..." href="https://learning.sap.com/learning-journey/developing-business-processes-with-sap-process-orchestration" target="_blank" rel="noopener noreferrer">Developing Business Processes with SAP Process Orchestration learning jo...</A></SPAN></P><DIV><DIV class=""><DIV class=""><DIV class=""><DIV class=""><P><STRONG>Overview<BR /></STRONG><SPAN>This learning journey is designed for integration designers and developers with responsibilities for building business processes and integration scenarios with SAP Process Orchestration.</SPAN></P></DIV><DIV class=""><P><STRONG>Learning objectives</STRONG></P><P>After completing this learning journey, developers will be able to create business processes and integration scenarios using the required tools. You will understand how to work with SAP NetWeaver Developer Studio, to create iFlows and business processes and connect iFlows with your business processes.</P></DIV></DIV></DIV></DIV><DIV class="">&nbsp;</DIV><DIV class=""><P><STRONG>Prerequisites<BR /></STRONG><A class="" href="https://learning.sap.com/learning-journey/discovering-sap-process-orchestration" target="_blank" rel="noopener noreferrer">Discovering SAP Process Orchestration</A></P></DIV><DIV><P><SPAN>I hope this is helpful</SPAN></P><DIV><P class=""><STRONG>Please ask a question related&nbsp;to the digital learning journey in the&nbsp;<A title="Q&amp;A area" href="https://groups.community.sap.com/t5/sap-learning/gh-p/learning" target="_blank" rel="noopener noreferrer">Q&amp;A area</A></STRONG></P><P class=""><SPAN>Our SAP Learning Experts will get back to you as soon as possible!&nbsp;We are here to support you.</SPAN></P><DIV><DIV><DIV><P><SPAN>We appreciate your feedback and we will make sure to continue sharing interesting topics.</SPAN></P><P><SPAN>Kind regards<BR />Margit</SPAN></P></DIV></DIV></DIV></DIV></DIV></DIV></DIV> 2023-11-28T16:38:49.712000+01:00 https://community.sap.com/t5/technology-blogs-by-members/sap-security-patch-day-december-2023/ba-p/13578700 SAP Security Patch Day December 2023 2023-12-13T23:03:18+01:00 vahagn1 https://community.sap.com/t5/user/viewprofilepage/user-id/760188 On December 12, 2023, SAP once again demonstrated its commitment to cybersecurity by releasing a crucial set of security patches. These patches are designed to fix various vulnerabilities identified across various SAP products. The focus of this month's SAP Security Patch Day is primarily on fixing program errors that have the potential to pose security risks. We have provided a detailed overview of the security notes released below, organized according to their severity as determined by the Common Vulnerability Scoring System (CVSS) scores:<BR /> <BR /> &nbsp;<BR /> <TABLE><BR /> <THEAD><BR /> <TR><BR /> <TH>Vulnerability ID</TH><BR /> <TH>CVE Number</TH><BR /> <TH>Description</TH><BR /> <TH>CVSS Score</TH><BR /> <TH>Release Date</TH><BR /> <TH>Update Date</TH><BR /> </TR><BR /> </THEAD><BR /> <TBODY><BR /> <TR><BR /> <TD>BI-BIP-CMC</TD><BR /> <TD>CVE-2023-25616</TD><BR /> <TD>Code Injection vulnerability in SAP Business Objects Business Intelligence Platform (CMC)</TD><BR /> <TD>9.9</TD><BR /> <TD>14.03.2023</TD><BR /> <TD>12.09.2023</TD><BR /> </TR><BR /> <TR><BR /> <TD>BI-BIP-LCM</TD><BR /> <TD>CVE-2023-40622</TD><BR /> <TD>Information Disclosure vulnerability in SAP BusinessObjects Business Intelligence Platform (Promotion Management)</TD><BR /> <TD>9.9</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>BC-IAM-SSO-CCL</TD><BR /> <TD>CVE-2023-40309</TD><BR /> <TD>Missing Authorization check in SAP CommonCryptoLib</TD><BR /> <TD>9.8</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>BC-FES-BUS-DSK</TD><BR /> <TD>CVE-2023-40624</TD><BR /> <TD>Security updates for the browser control Google Chromium delivered with SAP Business Client</TD><BR /> <TD>10.0</TD><BR /> <TD>10.04.2018</TD><BR /> <TD>12.09.2023</TD><BR /> </TR><BR /> <TR><BR /> <TD>BC-XI-CON-UDS</TD><BR /> <TD>CVE-2022-41272</TD><BR /> <TD>Improper access control in SAP NetWeaver AS Java (User Defined Search)</TD><BR /> <TD>9.9</TD><BR /> <TD>13.12.2022</TD><BR /> <TD>12.09.2023</TD><BR /> </TR><BR /> <TR><BR /> <TD>BI-RA-WBI-FE</TD><BR /> <TD>CVE-2023-42472</TD><BR /> <TD>Insufficient File type validation in SAP BusinessObjects Business Intelligence Platform (Web Intelligence HTML interface)</TD><BR /> <TD>8.7</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>BC-CCM-HAG</TD><BR /> <TD>CVE-2023-40308</TD><BR /> <TD>Memory Corruption vulnerability in SAP CommonCryptoLib</TD><BR /> <TD>7.5</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>BC-SYB-PD</TD><BR /> <TD>CVE-2023-40621</TD><BR /> <TD>Code Injection vulnerability in SAP PowerDesigner Client</TD><BR /> <TD>6.3</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>MM-FIO-PUR-SQ-CON</TD><BR /> <TD>CVE-2023-40625</TD><BR /> <TD>Missing Authorization check in Manage Purchase Contracts App</TD><BR /> <TD>5.4</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>BC-GP</TD><BR /> <TD>CVE-2023-41367</TD><BR /> <TD>Missing Authentication check in SAP NetWeaver (Guided Procedures)</TD><BR /> <TD>5.3</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>BI-BIP-LCM</TD><BR /> <TD>CVE-2023-37489</TD><BR /> <TD>Information Disclosure vulnerability in SAP BusinessObjects Business Intelligence Platform (Version Management System)</TD><BR /> <TD>5.3</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>FS-QUO</TD><BR /> <TD>CVE-2023-40308</TD><BR /> <TD>Denial of service (DOS) vulnerability in SAP Quotation Management Insurance (FS-QUO)</TD><BR /> <TD>5.7</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>BC-WD-UR</TD><BR /> <TD>CVE-2023-40624</TD><BR /> <TD>Code Injection vulnerability in SAP NetWeaver AS ABAP (applications based on Unified Rendering)</TD><BR /> <TD>5.5</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>BI-BIP-INS</TD><BR /> <TD>CVE-2023-40623</TD><BR /> <TD>Arbitrary File Delete via Directory Junction in SAP BusinessObjects Suite(installer)</TD><BR /> <TD>6.2</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>FI-FIO-AP-CHK</TD><BR /> <TD>CVE-2023-41368</TD><BR /> <TD>Insecure Direct Object Reference (IDOR) vulnerability in SAP S/4HANA (Manage checkbook apps)</TD><BR /> <TD>2.7</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> <TR><BR /> <TD>FI-FIO-AP</TD><BR /> <TD>CVE-2023-41369</TD><BR /> <TD>External Entity Loop vulnerability in SAP S/4HANA (Create Single Payment application)</TD><BR /> <TD>3.5</TD><BR /> <TD>12.09.2023</TD><BR /> <TD>-</TD><BR /> </TR><BR /> </TBODY><BR /> </TABLE><BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <H2 id="toc-hId-964077923">Statistics:</H2><BR /> <UL><BR /> <LI>Total new SAP notes released: 16</LI><BR /> <LI>Total vulnerabilities addressed: 16</LI><BR /> <LI>Highest CVSS Score: 10.0 (HotNews)</LI><BR /> <LI>Security updates for the browser control Google Chromium delivered with SAP Business Client – [CVE-2023-40624]</LI><BR /> </UL><BR /> &nbsp;<BR /> <H2 id="toc-hId-767564418">Top 3 Critical Issues:</H2><BR /> 1. BC-FES-BUS-DSK [CVE-2023-40624]: Security updates for the browser control Google Chromium delivered with SAP Business Client (CVSS Score: 10.0)<BR /> <BR /> This vulnerability could compromise the integrity and confidentiality of the SAP Business Client through the browser control.<BR /> <BR /> &nbsp;<BR /> <BR /> 2. BC-CP-CF-SEC-LIB [Multiple CVEs]: Escalation of Privileges in SAP Business Technology Platform (BTP) Security Services Integration Libraries (CVSS Score: 9.1)<BR /> <BR /> This issue allows unauthorized escalation of privileges, potentially compromising system security.<BR /> <BR /> &nbsp;<BR /> <BR /> 3. IS-OIL-DS-HPM [CVE-2023-36922]: OS command injection vulnerability in SAP ECC and SAP S/4HANA (IS-OIL) (CVSS Score: 9.1)<BR /> <BR /> This vulnerability allows attackers to execute arbitrary OS commands, posing a significant threat to the integrity and availability of the system. 2023-12-13T23:03:18+01:00 https://community.sap.com/t5/enterprise-resource-planning-blogs-by-members/customize-the-abap-editor-theme-in-sap-netweaver/ba-p/13609550 Customize the ABAP Editor Theme in SAP NetWeaver 2024-02-23T09:38:43.214000+01:00 Hamad https://community.sap.com/t5/user/viewprofilepage/user-id/126793 <P><SPAN>ABAPers are you tired of the default appearance of the ABAP Editor in SAP NetWeaver? Do you wish to add a personal touch to your coding environment? With just a few steps, you can customize the theme of your ABAP Editor to suit your taste and make coding sessions more enjoyable.</SPAN></P><P><STRONG>ABAP Editor Dark Theme</STRONG></P><P><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Editor.png" style="width: 997px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/69036iC26FF56E28B8F698/image-size/large?v=v2&amp;px=999" role="button" title="Editor.png" alt="Editor.png" /></span></STRONG></P><P><STRONG>Step 1: Open ABAP Editor Directory</STRONG></P><P>Begin by navigating to the ABAP Editor directory. You can do this by opening the Command Prompt and running the following command:&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-bash"><code>start "" "%APPDATA%\SAP\SAP GUI\ABAP Editor"</code></pre><P>&nbsp;</P><P>Alternatively, you can directly open the folder \AppData\Roaming\SAP\SAP GUI\ABAP Editor.</P><P><STRONG>Step -2 Replace&nbsp;abap_spec.xml File</STRONG></P><P>Once you have accessed the ABAP Editor folder, locate the abap_spec.xml file. This file contains the specifications for the editor's theme. <STRONG>Note:&nbsp;</STRONG>Before making any changes, it's advisable to create a backup of the original abap_spec.xml file.</P><P>Now Replace the source code of <I><STRONG>abap_spec.xml</STRONG></I> with your below code.</P><P>&nbsp;</P><pre class="lia-code-sample language-markup"><code>&lt;?xml version="1.0"?&gt; &lt;?xml-stylesheet type="text/xsl" href="lang_spec.xslt"?&gt; &lt;XMLConfigSettings&gt; &lt;FILEINFO&gt; &lt;Author&gt;Alex Arseniev&lt;/Author&gt; &lt;Type&gt;LangSpec&lt;/Type&gt; &lt;Language&gt;ABAP4&lt;/Language&gt; &lt;Desc&gt;Language specification for ABAP4&lt;/Desc&gt; &lt;/FILEINFO&gt; &lt;SPECIFICATION&gt; &lt;FilePattern&gt;*.ecatt&lt;/FilePattern&gt; &lt;CaseSensitive&gt;0&lt;/CaseSensitive&gt; &lt;OpenClose&gt;()[]''``&lt;/OpenClose&gt; &lt;Delimiters&gt;,.:&lt;/Delimiters&gt; &lt;WrapBy&gt;(),&lt;/WrapBy&gt; &lt;EscapeChar&gt;&lt;/EscapeChar&gt; &lt;LineEnd&gt;.&lt;/LineEnd&gt; &lt;Operators&gt;?-+/&amp;amp;*=&amp;lt;&amp;gt;~&lt;/Operators&gt; &lt;Words&gt;0-9a-Z_/-&amp;lt;&amp;gt;&lt;/Words&gt; &lt;Numbers&gt;-+0-9a-fA-F.xXUL&lt;/Numbers&gt; &lt;HierarchySeparator&gt; &lt;Separator id="1" text="-"/&gt; &lt;Separator id="2" text="-&amp;gt;"/&gt; &lt;Separator id="3" text="=&amp;gt;"/&gt; &lt;/HierarchySeparator&gt; &lt;/SPECIFICATION&gt; &lt;COMPLEX_USING&gt; &lt;Word text="at"/&gt; &lt;Word text="where"/&gt; &lt;Word text="key"/&gt; &lt;/COMPLEX_USING&gt; &lt;STRUCTURES&gt; &lt;Structure open="region" close="endregion" header="0" has_name="1" sent_start="1"/&gt; &lt;Structure open="if" middle="else" close="endif" header="1" sent_start="1"&gt; &lt;Middle name="elseif"/&gt; &lt;/Structure&gt; &lt;Structure open="case" middle="when" close="endcase" header="1" sent_start="1"&gt; &lt;Middle name="others"/&gt; &lt;/Structure&gt; &lt;Structure open="loop" close="endloop" header="1" sent_start="1"/&gt; &lt;Structure open="form" close="endform" has_name="1" separator="1" header="1" sent_start="1"/&gt; &lt;Structure open="while" close="endwhile" header="1" sent_start="1"/&gt; &lt;Structure open="do" close="enddo" header="1" sent_start="1"/&gt; &lt;Structure open="try" middle="catch" close="endtry" header="1" sent_start="1"&gt; &lt;Middle name="cleanup"/&gt; &lt;/Structure&gt; &lt;Structure open="class" close="endclass" has_name="1" separator="1" header="1" sent_start="1"/&gt; &lt;Structure open="method" close="endmethod" has_name="1" separator="1" header="1" sent_start="1"/&gt; &lt;Structure open="function" close="endfunction" has_name="1" separator="1" header="1" sent_start="1"/&gt; &lt;Structure open="module" close="endmodule" has_name="1" separator="1" header="1" sent_start="1"/&gt; &lt;Structure open="interface" close="endinterface" header="1" sent_start="1"/&gt; &lt;Structure open="at" close="endat" header="1" sent_start="1"/&gt; &lt;Structure open="exec" close="endexec" header="0" sent_start="1"/&gt; &lt;Structure open="define" close="end-of-definition" has_name="1" separator="1" header="0" sent_start="1"/&gt; &lt;Structure open="provide" close="endprovide" header="1" sent_start="1"/&gt; &lt;Structure open="select" close="endselect" header="1" sent_start="1"/&gt; &lt;Structure open="begin" close="end" header="0"/&gt; &lt;Structure open="enhancement" close="endenhancement" header="0" has_name="1" separator="1" sent_start="1"/&gt; &lt;Structure open="enhancement-section" close="end-enhancement-section" header="0" has_name="1" separator="1" sent_start="1"/&gt; &lt;/STRUCTURES&gt; &lt;FORMAT&gt; &lt;DefaultIndent&gt;2&lt;/DefaultIndent&gt; &lt;ResetFormatSymbols&gt;,&lt;/ResetFormatSymbols&gt; &lt;FormatWords&gt; &lt;FormatWord word="data" indent="6" next_line="1"/&gt; &lt;FormatWord word="field-symbols" indent="15" next_line="1"/&gt; &lt;FormatWord word="importing" indent="2" next_line="1"/&gt; &lt;FormatWord word="exporting" indent="2" next_line="1"/&gt; &lt;FormatWord word="changing" indent="2" next_line="1"/&gt; &lt;FormatWord word="exceptions" indent="2" next_line="1"/&gt; &lt;FormatWord word="tables" indent="2" next_line="1"/&gt; &lt;FormatWord word="using" indent="6" next_line="1"/&gt; &lt;FormatWord word="elseif" indent="-2"/&gt; &lt;/FormatWords&gt; &lt;/FORMAT&gt; &lt;SYNTAXINFO&gt; &lt;InfoType id="1" name="Compiler error" clr="-1"/&gt; &lt;InfoType id="2" name="Performance tip" clr="-1"/&gt; &lt;InfoType id="3" name="Syntax tip" clr="-1"/&gt; &lt;InfoType id="4" name="Spelling error" clr="-1"/&gt; &lt;/SYNTAXINFO&gt; &lt;COLORSYNTAX&gt; &lt;TextType id="8" name="Breakpoint" dstyle="1" dbkclr="0" clr="16777215" bkclr="139"/&gt; &lt;TextType id="10" name="Changed indicator" dstyle="1" dbkclr="1" clr="139"/&gt; &lt;TextType id="11" name="Changed and saved indicator" dstyle="1" dbkclr="1" clr="12895487"/&gt; &lt;TextType id="5" name="Current line" dstyle="1" dbkclr="0" clr="-1" bkclr="15918553"/&gt; &lt;TextType id="6" name="Erroneous line" dstyle="1" dbkclr="0" clr="65535" bkclr="255"/&gt; &lt;TextType id="7" name="Execution" dstyle="1" dbkclr="0" clr="16777215" bkclr="3329330"/&gt; &lt;TextType id="3" name="Inactive selected text" dstyle="1" dbkclr="0" clr="-1" bkclr="-1"/&gt; &lt;TextType id="4" name="Line number" dstyle="1" dbkclr="1" clr="9342520"/&gt; &lt;TextType id="13" name="Maximum line length" dstyle="1" dbkclr="1" clr="255"/&gt; &lt;TextType id="2" name="Selected text" dstyle="1" dbkclr="0" clr="16777215" bkclr="9922608"/&gt; &lt;TextType id="1" name="Selection margin" dstyle="1" dbkclr="1" clr="14281970"/&gt; &lt;TextType id="21" name="Text highlights" bold="1" italic="0" underline="0" clr="0" bkclr="-1"/&gt; &lt;TextType id="22" name="Text highlights error" bold="1" italic="0" underline="0" clr="255" bkclr="-1"/&gt; &lt;TextType id="30" name="Normal" dstyle="0" dbkclr="0" bold="0" italic="0" underline="0" clr="-1" bkclr="-1"/&gt; &lt;TextType id="9" name="Read-only mode" dstyle="1" dbkclr="1" clr="15789798"/&gt; &lt;TextType id="31" name="Comments" dstyle="0" dbkclr="0" text="1" bold="0" italic="1" underline="0" clr="8421504" bkclr="-1"&gt; &lt;FirstChar&gt;*&lt;/FirstChar&gt; &lt;Conditions&gt; &lt;Condition start="&amp;quot;" end="\n"/&gt; &lt;/Conditions&gt; &lt;/TextType&gt; &lt;TextType id="52" name="Keywords" ImageIdx="13" bold="0" italic="0" underline="0" clr="16711680" bkclr="-1" CaseDisplayMode="0"&gt; &lt;Keywords&gt; &lt;Keyword text="Class-pool"/&gt; &lt;Keyword text="Function-pool"/&gt; &lt;Keyword text="Include"/&gt; &lt;Keyword text="Interface-pool"/&gt; &lt;Keyword text="Program"/&gt; &lt;Keyword text="Report"/&gt; &lt;Keyword text="Type-pool"/&gt; &lt;Keyword text="bound"/&gt; &lt;Keyword text="Class"/&gt; &lt;Keyword text="Class-data"/&gt; &lt;Keyword text="Class-events"/&gt; &lt;Keyword text="Class-methods"/&gt; &lt;Keyword text="Constants"/&gt; &lt;Keyword text="Contexts"/&gt; &lt;Keyword text="Data"/&gt; &lt;Keyword text="Definition"/&gt; &lt;Keyword text="Endclass"/&gt; &lt;Keyword text="Endinterface"/&gt; &lt;Keyword text="Enhancement"/&gt; &lt;Keyword text="Endenhancement"/&gt; &lt;Keyword text="Enhancement-section"/&gt; &lt;Keyword text="End-enhancement-section"/&gt; &lt;Keyword text="Events"/&gt; &lt;Keyword text="Field-groups"/&gt; &lt;Keyword text="Field-symbols"/&gt; &lt;Keyword text="Implementation"/&gt; &lt;Keyword text="Interface"/&gt; &lt;Keyword text="Interfaces"/&gt; &lt;Keyword text="Local"/&gt; &lt;Keyword text="Methods"/&gt; &lt;Keyword text="Parameters"/&gt; &lt;Keyword text="Private"/&gt; &lt;Keyword text="Protected"/&gt; &lt;Keyword text="Public"/&gt; &lt;Keyword text="Ranges"/&gt; &lt;Keyword text="Section"/&gt; &lt;Keyword text="Selection-screen"/&gt; &lt;Keyword text="Select-options"/&gt; &lt;Keyword text="Static"/&gt; &lt;Keyword text="Statics"/&gt; &lt;Keyword text="spots"/&gt; &lt;Keyword text="Type-pools"/&gt; &lt;Keyword text="Types"/&gt; &lt;Keyword text="During "/&gt; &lt;Keyword text="End-of-page"/&gt; &lt;Keyword text="End-of-selection"/&gt; &lt;Keyword text="Initialization"/&gt; &lt;Keyword text="Line-selection"/&gt; &lt;Keyword text="Line-selection"/&gt; &lt;Keyword text="Load-of-program"/&gt; &lt;Keyword text="Selection-screen"/&gt; &lt;Keyword text="Start-of-selection"/&gt; &lt;Keyword text="Top-of-page"/&gt; &lt;Keyword text="User-command"/&gt; &lt;Keyword text="and"/&gt; &lt;Keyword text="assigned"/&gt; &lt;Keyword text="At"/&gt; &lt;Keyword text="Begin"/&gt; &lt;Keyword text="between"/&gt; &lt;Keyword text="block"/&gt; &lt;Keyword text="byte-ca"/&gt; &lt;Keyword text="byte-cn"/&gt; &lt;Keyword text="byte-co"/&gt; &lt;Keyword text="byte-cs"/&gt; &lt;Keyword text="byte-na"/&gt; &lt;Keyword text="byte-ns"/&gt; &lt;Keyword text="Ca"/&gt; &lt;Keyword text="Call"/&gt; &lt;Keyword text="Case"/&gt; &lt;Keyword text="Catch"/&gt; &lt;Keyword text="Change"/&gt; &lt;Keyword text="Check"/&gt; &lt;Keyword text="Cleanup"/&gt; &lt;Keyword text="cn"/&gt; &lt;Keyword text="co"/&gt; &lt;Keyword text="Continue"/&gt; &lt;Keyword text="cp"/&gt; &lt;Keyword text="cs"/&gt; &lt;Keyword text="Define"/&gt; &lt;Keyword text="Do"/&gt; &lt;Keyword text="Else"/&gt; &lt;Keyword text="Elseif"/&gt; &lt;Keyword text="End"/&gt; &lt;Keyword text="Endat"/&gt; &lt;Keyword text="Endcase"/&gt; &lt;Keyword text="Enddo"/&gt; &lt;Keyword text="Endexec"/&gt; &lt;Keyword text="Endform"/&gt; &lt;Keyword text="Endfunction"/&gt; &lt;Keyword text="Endif"/&gt; &lt;Keyword text="Endloop"/&gt; &lt;Keyword text="Endmethod"/&gt; &lt;Keyword text="Endmodule"/&gt; &lt;Keyword text="End-of-definition"/&gt; &lt;Keyword text="Endon"/&gt; &lt;Keyword text="Endprovide"/&gt; &lt;Keyword text="Endselect"/&gt; &lt;Keyword text="Endtry"/&gt; &lt;Keyword text="Endwhile"/&gt; &lt;Keyword text="eq"/&gt; &lt;Keyword text="Exec"/&gt; &lt;Keyword text="Exit"/&gt; &lt;Keyword text="first"/&gt; &lt;Keyword text="Form"/&gt; &lt;Keyword text="Function"/&gt; &lt;Keyword text="ge"/&gt; &lt;Keyword text="gt"/&gt; &lt;Keyword text="If"/&gt; &lt;Keyword text="in"/&gt; &lt;Keyword text="initial"/&gt; &lt;Keyword text="is"/&gt; &lt;Keyword text="last"/&gt; &lt;Keyword text="le"/&gt; &lt;Keyword text="Leave"/&gt; &lt;Keyword text="Loop"/&gt; &lt;Keyword text="lt"/&gt; &lt;Keyword text="M"/&gt; &lt;Keyword text="Method"/&gt; &lt;Keyword text="Module"/&gt; &lt;Keyword text="na"/&gt; &lt;Keyword text="ne"/&gt; &lt;Keyword text="new"/&gt; &lt;Keyword text="not"/&gt; &lt;Keyword text="np"/&gt; &lt;Keyword text="ns"/&gt; &lt;Keyword text="o"/&gt; &lt;Keyword text="of"/&gt; &lt;Keyword text="On"/&gt; &lt;Keyword text="or"/&gt; &lt;Keyword text="Perform"/&gt; &lt;Keyword text="Provide"/&gt; &lt;Keyword text="requested"/&gt; &lt;Keyword text="Return"/&gt; &lt;Keyword text="screen"/&gt; &lt;Keyword text="Select"/&gt; &lt;Keyword text="Sql"/&gt; &lt;Keyword text="Stop"/&gt; &lt;Keyword text="supplied"/&gt; &lt;Keyword text="transaction"/&gt; &lt;Keyword text="Try"/&gt; &lt;Keyword text="When"/&gt; &lt;Keyword text="While"/&gt; &lt;Keyword text="z"/&gt; &lt;Keyword text="Abs"/&gt; &lt;Keyword text="Abs"/&gt; &lt;Keyword text="Abs"/&gt; &lt;Keyword text="Acos"/&gt; &lt;Keyword text="Add"/&gt; &lt;Keyword text="Add-corresponding"/&gt; &lt;Keyword text="Adjacent"/&gt; &lt;Keyword text="Aliases"/&gt; &lt;Keyword text="all"/&gt; &lt;Keyword text="Analyzer"/&gt; &lt;Keyword text="Any"/&gt; &lt;Keyword text="Append"/&gt; &lt;Keyword text="appending"/&gt; &lt;Keyword text="as"/&gt; &lt;Keyword text="ascending"/&gt; &lt;Keyword text="Asin"/&gt; &lt;Keyword text="Assign"/&gt; &lt;Keyword text="assigning"/&gt; &lt;Keyword text="Assert"/&gt; &lt;Keyword text="Atan"/&gt; &lt;Keyword text="Authority-check"/&gt; &lt;Keyword text="Avg"/&gt; &lt;Keyword text="Back"/&gt; &lt;Keyword text="BAdi"/&gt; &lt;Keyword text="binary"/&gt; &lt;Keyword text="Bit"/&gt; &lt;Keyword text="Bit-and"/&gt; &lt;Keyword text="Bit-not"/&gt; &lt;Keyword text="Bit-or"/&gt; &lt;Keyword text="Bit-xor"/&gt; &lt;Keyword text="Blank"/&gt; &lt;Keyword text="Bound"/&gt; &lt;Keyword text="Break-point"/&gt; &lt;Keyword text="buffer"/&gt; &lt;Keyword text="by"/&gt; &lt;Keyword text="c"/&gt; &lt;Keyword text="case"/&gt; &lt;Keyword text="Ceil"/&gt; &lt;Keyword text="Centered"/&gt; &lt;Keyword text="changing"/&gt; &lt;Keyword text="Charlen"/&gt; &lt;Keyword text="Checkbox"/&gt; &lt;Keyword text="Clear"/&gt; &lt;Keyword text="client"/&gt; &lt;Keyword text="Close"/&gt; &lt;Keyword text="Cnt"/&gt; &lt;Keyword text="Code"/&gt; &lt;Keyword text="Collect"/&gt; &lt;Keyword text="color"/&gt; &lt;Keyword text="col_negative"/&gt; &lt;Keyword text="col_normal"/&gt; &lt;Keyword text="Comment"/&gt; &lt;Keyword text="Commit"/&gt; &lt;Keyword text="Communication"/&gt; &lt;Keyword text="comparing"/&gt; &lt;Keyword text="component"/&gt; &lt;Keyword text="Compute"/&gt; &lt;Keyword text="Concatenate"/&gt; &lt;Keyword text="Condense"/&gt; &lt;Keyword text="Control"/&gt; &lt;Keyword text="Controls"/&gt; &lt;Keyword text="Convert"/&gt; &lt;Keyword text="Copy"/&gt; &lt;Keyword text="Cos"/&gt; &lt;Keyword text="Cosh"/&gt; &lt;Keyword text="Count"/&gt; &lt;Keyword text="Country"/&gt; &lt;Keyword text="Create"/&gt; &lt;Keyword text="Currency"/&gt; &lt;Keyword text="Cursor"/&gt; &lt;Keyword text="Customer-function"/&gt; &lt;Keyword text="Database"/&gt; &lt;Keyword text="Dataset"/&gt; &lt;Keyword text="date"/&gt; &lt;Keyword text="Dbmaxlen"/&gt; &lt;Keyword text="Decimals"/&gt; &lt;Keyword text="default"/&gt; &lt;Keyword text="Delete"/&gt; &lt;Keyword text="Demand"/&gt; &lt;Keyword text="descending"/&gt; &lt;Keyword text="Describe"/&gt; &lt;Keyword text="Detail"/&gt; &lt;Keyword text="Dialog"/&gt; &lt;Keyword text="Distinct"/&gt; &lt;Keyword text="Div"/&gt; &lt;Keyword text="Divide"/&gt; &lt;Keyword text="Divide-corresponding"/&gt; &lt;Keyword text="duplicates"/&gt; &lt;Keyword text="Dynpro"/&gt; &lt;Keyword text="Edit"/&gt; &lt;Keyword text="Editor-call"/&gt; &lt;Keyword text="encoding"/&gt; &lt;Keyword text="equal"/&gt; &lt;Keyword text="Event"/&gt; &lt;Keyword text="Exceptions"/&gt; &lt;Keyword text="excluding"/&gt; &lt;Keyword text="Exp"/&gt; &lt;Keyword text="Exponent"/&gt; &lt;Keyword text="Export"/&gt; &lt;Keyword text="exporting"/&gt; &lt;Keyword text="Extended"/&gt; &lt;Keyword text="Extract"/&gt; &lt;Keyword text="Fetch"/&gt; &lt;Keyword text="Field"/&gt; &lt;Keyword text="Fields"/&gt; &lt;Keyword text="Find"/&gt; &lt;Keyword text="Floor"/&gt; &lt;Keyword text="for"/&gt; &lt;Keyword text="Format"/&gt; &lt;Keyword text="Frac"/&gt; &lt;Keyword text="frame"/&gt; &lt;Keyword text="Free"/&gt; &lt;Keyword text="from"/&gt; &lt;Keyword text="Generate"/&gt; &lt;Keyword text="Get"/&gt; &lt;Keyword text="greater"/&gt; &lt;Keyword text="Group"/&gt; &lt;Keyword text="handler"/&gt; &lt;Keyword text="hashed"/&gt; &lt;Keyword text="header"/&gt; &lt;Keyword text="help-id"/&gt; &lt;Keyword text="Help-request"/&gt; &lt;Keyword text="Hide"/&gt; &lt;Keyword text="Hotspot"/&gt; &lt;Keyword text="i"/&gt; &lt;Keyword text="Icon"/&gt; &lt;Keyword text="id"/&gt; &lt;Keyword text="Import"/&gt; &lt;Keyword text="importing"/&gt; &lt;Keyword text="index"/&gt; &lt;Keyword text="Infotypes"/&gt; &lt;Keyword text="Inheriting"/&gt; &lt;Keyword text="Input"/&gt; &lt;Keyword text="Insert"/&gt; &lt;Keyword text="intensified"/&gt; &lt;Keyword text="into"/&gt; &lt;Keyword text="Inverse"/&gt; &lt;Keyword text="Join"/&gt; &lt;Keyword text="key"/&gt; &lt;Keyword text="Language"/&gt; &lt;Keyword text="Leading"/&gt; &lt;Keyword text="left"/&gt; &lt;Keyword text="left-justified"/&gt; &lt;Keyword text="less"/&gt; &lt;Keyword text="Like"/&gt; &lt;Keyword text="Line"/&gt; &lt;Keyword text="Line-count"/&gt; &lt;Keyword text="Lines"/&gt; &lt;Keyword text="Line-size"/&gt; &lt;Keyword text="List-processing"/&gt; &lt;Keyword text="Load"/&gt; &lt;Keyword text="lower"/&gt; &lt;Keyword text="Locale"/&gt; &lt;Keyword text="Log"/&gt; &lt;Keyword text="Log10"/&gt; &lt;Keyword text="Margin"/&gt; &lt;Keyword text="Mask"/&gt; &lt;Keyword text="Matchcode"/&gt; &lt;Keyword text="Max"/&gt; &lt;Keyword text="memory"/&gt; &lt;Keyword text="Message"/&gt; &lt;Keyword text="Message-id"/&gt; &lt;Keyword text="Min"/&gt; &lt;Keyword text="Mod"/&gt; &lt;Keyword text="mode"/&gt; &lt;Keyword text="Modify"/&gt; &lt;Keyword text="Move"/&gt; &lt;Keyword text="Move-corresponding"/&gt; &lt;Keyword text="Multiply"/&gt; &lt;Keyword text="Multiply-corresponding"/&gt; &lt;Keyword text="New-line"/&gt; &lt;Keyword text="New-page"/&gt; &lt;Keyword text="Next"/&gt; &lt;Keyword text="no "/&gt; &lt;Keyword text="nodes"/&gt; &lt;Keyword text="No-gap"/&gt; &lt;Keyword text="No-heading"/&gt; &lt;Keyword text="Non-unique"/&gt; &lt;Keyword text="No-scrolling"/&gt; &lt;Keyword text="No-sign"/&gt; &lt;Keyword text="No-title"/&gt; &lt;Keyword text="No-zero"/&gt; &lt;Keyword text="number"/&gt; &lt;Keyword text="Numofchar"/&gt; &lt;Keyword text="Object"/&gt; &lt;Keyword text="occurs"/&gt; &lt;Keyword text="occurrences"/&gt; &lt;Keyword text="Open"/&gt; &lt;Keyword text="optional"/&gt; &lt;Keyword text="order"/&gt; &lt;Keyword text="others"/&gt; &lt;Keyword text="Output"/&gt; &lt;Keyword text="Overlay"/&gt; &lt;Keyword text="Pack"/&gt; &lt;Keyword text="Page"/&gt; &lt;Keyword text="Parameter"/&gt; &lt;Keyword text="Pf-status"/&gt; &lt;Keyword text="places"/&gt; &lt;Keyword text="position"/&gt; &lt;Keyword text="Print"/&gt; &lt;Keyword text="Print-control"/&gt; &lt;Keyword text="Property"/&gt; &lt;Keyword text="Put"/&gt; &lt;Keyword text="Radiobutton"/&gt; &lt;Keyword text="Raise"/&gt; &lt;Keyword text="Raising"/&gt; &lt;Keyword text="Read"/&gt; &lt;Keyword text="Receive"/&gt; &lt;Keyword text="redefinition"/&gt; &lt;Keyword text="ref"/&gt; &lt;Keyword text="reference"/&gt; &lt;Keyword text="Refresh"/&gt; &lt;Keyword text="Reject"/&gt; &lt;Keyword text="Replace"/&gt; &lt;Keyword text="Reserve"/&gt; &lt;Keyword text="Reset"/&gt; &lt;Keyword text="right-justified"/&gt; &lt;Keyword text="Rollback"/&gt; &lt;Keyword text="Round"/&gt; &lt;Keyword text="rows"/&gt; &lt;Keyword text="Rtti"/&gt; &lt;Keyword text="Run"/&gt; &lt;Keyword text="Scan"/&gt; &lt;Keyword text="Scroll"/&gt; &lt;Keyword text="Scroll-boundary"/&gt; &lt;Keyword text="Search"/&gt; &lt;Keyword text="Selection-table"/&gt; &lt;Keyword text="separated"/&gt; &lt;Keyword text="Set"/&gt; &lt;Keyword text="shared"/&gt; &lt;Keyword text="Shift"/&gt; &lt;Keyword text="Sign"/&gt; &lt;Keyword text="Sin"/&gt; &lt;Keyword text="single"/&gt; &lt;Keyword text="Sinh"/&gt; &lt;Keyword text="Size"/&gt; &lt;Keyword text="Skip"/&gt; &lt;Keyword text="Sort"/&gt; &lt;Keyword text="sorted"/&gt; &lt;Keyword text="Specified"/&gt; &lt;Keyword text="Split"/&gt; &lt;Keyword text="Sqrt"/&gt; &lt;Keyword text="Stamp"/&gt; &lt;Keyword text="standard"/&gt; &lt;Keyword text="starting"/&gt; &lt;Keyword text="string"/&gt; &lt;Keyword text="Strlen"/&gt; &lt;Keyword text="Structure"/&gt; &lt;Keyword text="Submit"/&gt; &lt;Keyword text="Subtract"/&gt; &lt;Keyword text="Subtract-corresponding"/&gt; &lt;Keyword text="Sum"/&gt; &lt;Keyword text="Summary"/&gt; &lt;Keyword text="Supply"/&gt; &lt;Keyword text="Suppress"/&gt; &lt;Keyword text="Symbol"/&gt; &lt;Keyword text="Syntax-check"/&gt; &lt;Keyword text="Syntax-trace"/&gt; &lt;Keyword text="System-call"/&gt; &lt;Keyword text="System-exceptions"/&gt; &lt;Keyword text="table"/&gt; &lt;Keyword text="Tables"/&gt; &lt;Keyword text="Tan"/&gt; &lt;Keyword text="Tanh"/&gt; &lt;Keyword text="task"/&gt; &lt;Keyword text="Text"/&gt; &lt;Keyword text="Textpool"/&gt; &lt;Keyword text="Time"/&gt; &lt;Keyword text="times"/&gt; &lt;Keyword text="title"/&gt; &lt;Keyword text="Titlebar"/&gt; &lt;Keyword text="to"/&gt; &lt;Keyword text="Transfer"/&gt; &lt;Keyword text="Translate"/&gt; &lt;Keyword text="transporting"/&gt; &lt;Keyword text="Trunc"/&gt; &lt;Keyword text="type"/&gt; &lt;Keyword text="Uline"/&gt; &lt;Keyword text="under"/&gt; &lt;Keyword text="unique"/&gt; &lt;Keyword text="Unit"/&gt; &lt;Keyword text="Unpack"/&gt; &lt;Keyword text="up"/&gt; &lt;Keyword text="Update"/&gt; &lt;Keyword text="upper"/&gt; &lt;Keyword text="using"/&gt; &lt;Keyword text="value"/&gt; &lt;Keyword text="Value-request"/&gt; &lt;Keyword text="Wait"/&gt; &lt;Keyword text="Where"/&gt; &lt;Keyword text="Window"/&gt; &lt;Keyword text="with"/&gt; &lt;Keyword text="With-title"/&gt; &lt;Keyword text="Work"/&gt; &lt;Keyword text="Write"/&gt; &lt;Keyword text="x"/&gt; &lt;Keyword text="xor"/&gt; &lt;Keyword text="xstring"/&gt; &lt;Keyword text="Xstrlen"/&gt; &lt;Keyword text="zone"/&gt; &lt;/Keywords&gt; &lt;/TextType&gt; &lt;TextType id="32" name="Numbers" dstyle="0" dbkclr="0" bold="0" italic="0" underline="0" clr="16750899" bkclr="-1"/&gt; &lt;TextType id="33" name="Strings" dstyle="0" dbkclr="0" text="1" bold="0" italic="0" underline="0" clr="1680973" bkclr="-1"&gt; &lt;FirstChar/&gt; &lt;Conditions&gt; &lt;Condition start="'" end="'"/&gt; &lt;Condition start="`" end="`"/&gt; &lt;/Conditions&gt; &lt;/TextType&gt; &lt;TextType id="40" name="Syntactical error" dstyle="1" dbkclr="0" clr="255" bkclr="-1"/&gt; &lt;TextType id="70" name="Token operator" bold="0" italic="0" underline="0" clr="8421504" bkclr="-1"/&gt; &lt;/COLORSYNTAX&gt; &lt;/XMLConfigSettings&gt;</code></pre><P>&nbsp;</P><P><SPAN>By following these simple steps, you can transform the appearance of your ABAP Editor and create a more personalized coding environment. Enjoy coding with a fresh new look that reflects your style and enhances your productivity.<BR /><BR />If you wish to create your own theme, you can easily do so by navigating to the options menu and selecting "Fonts and Colors." This feature allows you to customize the visual aspects of the ABAP Editor to your liking, empowering you to create a personalized coding environment tailored to your preferences.</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="Editor.png" style="width: 704px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/67375i7DAB5F0053E4FE01/image-size/large?v=v2&amp;px=999" role="button" title="Editor.png" alt="Editor.png" /></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><SPAN>Customize the ABAP Editor theme in SAP NetWeaver for a personalized coding environment. Follow simple steps to create a workspace that enhances creativity and productivity in your ABAP development journey.</SPAN></P><P><EM>I am writing this blog inspired by the following blog authored by&nbsp;<a href="https://community.sap.com/t5/user/viewprofilepage/user-id/187157">@alexey_arseniev</a>&nbsp;. It's an amazing piece of work that provides valuable insights into the ABAP Editor.</EM></P><P><EM><A href="https://community.sap.com/t5/application-development-blog-posts/old-new-abap-editor/bc-p/13328531" target="_blank">https://community.sap.com/t5/application-development-blog-posts/old-new-abap-editor/bc-p/13328531</A></EM></P><P><EM>Thank you for reading! I hope you enjoy your newly customized ABAP Editor.<BR /><BR />Hamad</EM></P> 2024-02-23T09:38:43.214000+01:00 https://community.sap.com/t5/technology-blogs-by-members/broadcom-automic-agent-installation-and-configuration-for-sap-batch-jobs/ba-p/13611756 Broadcom (Automic) Agent Installation and configuration for SAP Batch Jobs 2024-02-23T09:39:56.186000+01:00 Ankit_Sh https://community.sap.com/t5/user/viewprofilepage/user-id/1396541 <P><U>Purpose of the Document:</U> The purpose is to show the Automic (Brodcom) Agent installation on Linux Server, it’s integration with SAP System and Automic Portal web UI to trigger automatic SAP Jobs and central controlling for the Jobs.</P><P>This Document will Show:</P><UL><LI>Agent Media download.</LI><LI>Required media for Agent Setup</LI><LI>Service Manager installation</LI><LI>Configuration of Agent&nbsp;</LI><LI>Configuration of Service Manager</LI></UL><P><U>Automic Tool</U>:</P><P>Automic Automation for SAP allows business processes to be created with workflows that include jobs from SAP systems.<BR />Automation Engine and its functions can be used in various ways in order to support processing in SAP.</P><P><STRONG>In below example we will installing the Automic Agent and Service Manager for version 12.3.6 in Linux environment</STRONG></P><P>Step 1: Download Media from Broadcom Portal</P><P>By Using Link-&nbsp;<A href="https://downloads.automic.com/downloads/advanced_mode?selected_tab=id_search-result-files&amp;lifecycle_entity_id=1409143059253&amp;major_version_id=1599024703782&amp;component_id=1409731986667&amp;search=" target="_blank" rel="noopener nofollow noreferrer">Automic Download Center - Component Downloads</A></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_0-1708419203504.png" style="width: 643px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68041i2CDF3C489CDF397A/image-dimensions/643x327?v=v2" width="643" height="327" role="button" title="Ankit_Sh_0-1708419203504.png" alt="Ankit_Sh_0-1708419203504.png" /></span></P><P>Once the media is downloaded we need to extract the files and unzip and untar the same</P><P>For Agent below shown files will be used</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_1-1708419223579.png" style="width: 633px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68042i159A1CB01E32837F/image-dimensions/633x95?v=v2" width="633" height="95" role="button" title="Ankit_Sh_1-1708419223579.png" alt="Ankit_Sh_1-1708419223579.png" /></span></P><P>For Service manager&nbsp;below shown files will be used</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_2-1708419277793.png" style="width: 655px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68044iEAC4D46149F3370D/image-dimensions/655x126?v=v2" width="655" height="126" role="button" title="Ankit_Sh_2-1708419277793.png" alt="Ankit_Sh_2-1708419277793.png" /></span></P><P>Step 2: Download SAP JCO<BR /><A href="https://me.sap.com/softwarecenter" target="_blank" rel="noopener noreferrer">https://me.sap.com/softwarecenter</A></P><P>Goto Path --&gt;SUPPORT PACKAGES &amp; PATCHES -&gt; By Category -&gt; SAP Connectors -&gt;&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_3-1708419326580.png" style="width: 636px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68045i205A2B2876FC907A/image-dimensions/636x218?v=v2" width="636" height="218" role="button" title="Ankit_Sh_3-1708419326580.png" alt="Ankit_Sh_3-1708419326580.png" /></span></P><P>Step 3: Automic Agent and Service Manager media Untar and unzip</P><P>Unpack the .tar file:</P><P><EM>gzip -d UCXJR3X.tar.gz</EM></P><P><EM>tar xvfo UCXJR3X.tar</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_0-1708420546214.png" style="width: 534px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68059i112829305B17411D/image-dimensions/534x342?v=v2" width="534" height="342" role="button" title="Ankit_Sh_0-1708420546214.png" alt="Ankit_Sh_0-1708420546214.png" /></span></P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_1-1708422061390.png" style="width: 542px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68074i9435BA26FB14B2A2/image-dimensions/542x126?v=v2" width="542" height="126" role="button" title="Ankit_Sh_1-1708422061390.png" alt="Ankit_Sh_1-1708422061390.png" /></span></P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_2-1708422810969.png" style="width: 540px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68096i4183CA30FB67F911/image-dimensions/540x417?v=v2" width="540" height="417" role="button" title="Ankit_Sh_2-1708422810969.png" alt="Ankit_Sh_2-1708422810969.png" /></span></P><P>Before making changes in service manager files take backup of original files</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_3-1708422971497.png" style="width: 541px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68098i5BD8A4A25AE83372/image-dimensions/541x537?v=v2" width="541" height="537" role="button" title="Ankit_Sh_3-1708422971497.png" alt="Ankit_Sh_3-1708422971497.png" /></span></P><P>Rename file ucybsmgr.ori.ini to ucybsmgr.ini<BR /><BR />Step 4: Make changes in Service Manager and Agent file</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_5-1708423525331.png" style="width: 545px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68106i0D11887894928C76/image-dimensions/545x237?v=v2" width="545" height="237" role="button" title="Ankit_Sh_5-1708423525331.png" alt="Ankit_Sh_5-1708423525331.png" /></span></P><P>uc4.smd and uc4.smc file will be used to initiate service manager process and agent process.</P><P>Rename uc4.ori.smd to uc4.smd and define Agent Path, JAVA Path to start the agent Process and Agent name (same name will be used in&nbsp;ucxjr3x.ini (Agent file))</P><P><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_6-1708423690512.png" style="width: 641px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68109i4B4B3B885685A3E5/image-dimensions/641x93?v=v2" width="641" height="93" role="button" title="Ankit_Sh_6-1708423690512.png" alt="Ankit_Sh_6-1708423690512.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_0-1708429083767.png" style="width: 707px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68228i3986B6D97008C676/image-dimensions/707x69?v=v2" width="707" height="69" role="button" title="Ankit_Sh_0-1708429083767.png" alt="Ankit_Sh_0-1708429083767.png" /></span></P><P>Create uc4.smc and define agent name (same name will be used in&nbsp;ucxjr3x.ini (Agent file)) to trigger the start of Agent process.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_1-1708429363368.png" style="width: 491px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68230iA6F2996BAC7EFF05/image-dimensions/491x81?v=v2" width="491" height="81" role="button" title="Ankit_Sh_1-1708429363368.png" alt="Ankit_Sh_1-1708429363368.png" /></span></P><P>Now go to Agent Path<BR />/usr/automic/agents/SAP_SID/bin</P><P>Make changes to ucxjr3x.ori.ini as per the required environment ( Define Agent Name, Automic Application and Web Server details where Automic Engine is running)</P><P>&nbsp;And rename it to ucxjr3x.ini</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_9-1708424320032.png" style="width: 504px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68118iF170F65A7F9200A1/image-dimensions/504x131?v=v2" width="504" height="131" role="button" title="Ankit_Sh_9-1708424320032.png" alt="Ankit_Sh_9-1708424320032.png" /></span></P><P>Provide Agent Name in the&nbsp;ucxjr3x.ini- This name will also be used in UC4.smc file for triggering Agent process using service manager and with same name agent connection will be created in Automic UI.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_3-1708430143832.png" style="width: 671px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68235i824B0590A837496C/image-dimensions/671x94?v=v2" width="671" height="94" role="button" title="Ankit_Sh_3-1708430143832.png" alt="Ankit_Sh_3-1708430143832.png" /></span></P><P>Provide Automic server details and port- This is the server for Automic application where your automic engine is running.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_2-1708429907966.png" style="width: 572px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68234i239E9204DD49143C/image-dimensions/572x113?v=v2" width="572" height="113" role="button" title="Ankit_Sh_2-1708429907966.png" alt="Ankit_Sh_2-1708429907966.png" /></span></P><P>AETEST is the name of the Automic Web UI Connection and&nbsp;ucxjr3x.ini file will contain details about automic web UI Application and port.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_0-1708430940709.png" style="width: 611px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68246i6D9891EE2DEAFA52/image-dimensions/611x81?v=v2" width="611" height="81" role="button" title="Ankit_Sh_0-1708430940709.png" alt="Ankit_Sh_0-1708430940709.png" /></span></P><P>Step 5: Starting Service Manager and Agent Process</P><P>Command to start Agent directly ---&gt; <EM>java -jar ucxjr3x.jar</EM><BR /><BR />We need to have Java-&nbsp;installed (this Java Path will be defined in uc4.smd file) and it will be used to start the agent process</P><P>Command to start Service Manager and agent through Service Manager using file uc4.smc and uc4.smd</P><P><EM>nohup ./ucybsmgr AETEST &gt;/dev/null 2&gt;&amp;1 &amp;</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ankit_Sh_10-1708424657746.png" style="width: 771px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/68137iA6E0AB4885BE105F/image-dimensions/771x106?v=v2" width="771" height="106" role="button" title="Ankit_Sh_10-1708424657746.png" alt="Ankit_Sh_10-1708424657746.png" /></span></P><P>Automic agent And Service Manager Process will be running on Linux Server.</P><P>Next We need to Configure Agent on Automic Web UI, Create a R3 connection to login on SAP System and Job Object needs to be created which will trigger the Job in Backend SAP System via connection through this Agent.</P><P>Creation of Agent in Automic Web UI, Template, R3 Connection and Job Object for SAP we will cover under other blog.<BR /><BR /><STRONG><U><SPAN>Conclusion:-</SPAN></U></STRONG><BR />In this Blog we have covered installation and configuration of Automic Broadcom Agent on a Linux Platform to Cater Automation of SAP Jobs for a central controlling Tool for Batch Jobs scheduling, monitoring and Modification.</P><P><STRONG><U>References Link:-<BR /></U></STRONG></P><P><STRONG><U><A href="https://docs.automic.com/documentation/webhelp/english/AWA/11.2/AE/11.2/All%20Guides/Content/uczady.htm" target="_blank" rel="noopener nofollow noreferrer">New Installation (automic.com)</A></U></STRONG></P><P><STRONG><U><A href="https://docs.automic.com/documentation/webhelp/english/AWA/11.2/AE/11.2/All%20Guides/Content/ucabiz.htm" target="_blank" rel="noopener nofollow noreferrer">Installing the Agent for SAP - Details (automic.com)</A></U></STRONG></P><P><STRONG><U><A href="https://downloads.automic.com/downloads/advanced_mode?selected_tab=id_search-result-files&amp;lifecycle_entity_id=1409143059253&amp;major_version_id=1599024703782&amp;component_id=1409731986667&amp;search=" target="_blank" rel="noopener nofollow noreferrer">Automic Download Center - Component Downloads</A></U></STRONG></P><P><STRONG><U><A href="https://me.sap.com/softwarecenter" target="_blank" rel="noopener noreferrer">https://me.sap.com/softwarecenter</A></U></STRONG></P><P><BR /><BR /></P><P><BR /><BR /><BR /><BR /></P> 2024-02-23T09:39:56.186000+01:00 https://community.sap.com/t5/technology-blogs-by-members/domain-name-migration-for-sap-abap-system/ba-p/13622106 Domain name migration for SAP ABAP system. 2024-03-01T10:53:22.079000+01:00 nikhil_kumar https://community.sap.com/t5/user/viewprofilepage/user-id/180038 <P>Hello readers,</P><P>Migrating the SAP instances from one domain to another domain is always tedious task for administrators.</P><P>To overcome these challenges, I'm going to&nbsp;explain how we can successfully migrate our SAP ECC system from old domain (example.com) to new domain (example2.xyz).</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="nikhil_kumar_1-1709124679726.png" style="width: 483px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72677i3F1DC3AC277B4B49/image-dimensions/483x187?v=v2" width="483" height="187" role="button" title="nikhil_kumar_1-1709124679726.png" alt="nikhil_kumar_1-1709124679726.png" /></span></P><P>&nbsp;</P><P><FONT size="3">Before we start, we need to make sure couple of things.</FONT></P><UL class="lia-list-style-type-square"><LI><FONT size="3">Just to be sure, see if DNS server is reachable from the application server (on which SAP is hosted on):</FONT></LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="nikhil0203_0-1709109879788.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72508iA42A7EE5196572D5/image-size/medium?v=v2&amp;px=400" role="button" title="nikhil0203_0-1709109879788.png" alt="nikhil0203_0-1709109879788.png" /></span></P><P><FONT size="2"><EM>If it is not reachable, you'll need to get help from network support team.</EM></FONT></P><UL class="lia-list-style-type-square"><LI>Make an entry of new FQDN (server.example2.xyz) into DNS server to enable the forward lookup.</LI><LI>Add the entry of new domain into hosts file on the application server. ( eg. &lt;ip&gt; &lt;sub domain&gt; &lt;FQDN&gt;)</LI></UL><P><BR /><STRONG>Activity:</STRONG></P><UL><LI>Open transaction - <STRONG>RZ10 </STRONG>and edit <STRONG>Instance profile</STRONG>:</LI></UL><P>put FQDN in '<STRONG>icm/host_name_full</STRONG>' parameter then save and activate.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="nikhil_kumar_1-1709115311845.png" style="width: 558px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72569i7691913053FE5DE7/image-dimensions/558x60?v=v2" width="558" height="60" role="button" title="nikhil_kumar_1-1709115311845.png" alt="nikhil_kumar_1-1709115311845.png" /></span></P><UL><LI>Edit the <STRONG>DEFAULT</STRONG> profile:</LI></UL><P>put <STRONG>2nd-level</STRONG> and <STRONG>top-level</STRONG> domain in '<STRONG>SAPFQDN</STRONG>' parameter <EM><FONT size="2">(note that '<STRONG>SAPLOCALHOSTFULL</STRONG>' is made up of '<STRONG>SAPLOCALHOST</STRONG>' and '<STRONG>SAPFQDN</STRONG>' values)</FONT></EM></P><P><STRONG><FONT size="2">* The Subdomain in my case remained unchanged, so I did not change the value of 'SAPLOCALHOST' parameter.</FONT></STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="nikhil_kumar_2-1709115945286.png" style="width: 497px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72572i09D089AE4E3F9D42/image-dimensions/497x56?v=v2" width="497" height="56" role="button" title="nikhil_kumar_2-1709115945286.png" alt="nikhil_kumar_2-1709115945286.png" /></span></P><P>Since this change is permanent, we need to take a restart of SAP system.</P><P>Once the SAP starts, go to transaction code - <STRONG>SMICM</STRONG> -&gt; <STRONG>Services</STRONG>, to verify the changes:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="nikhil_kumar_3-1709117338826.png" style="width: 600px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72575i7B8D823AF5FC9CEA/image-dimensions/600x66?v=v2" width="600" height="66" role="button" title="nikhil_kumar_3-1709117338826.png" alt="nikhil_kumar_3-1709117338826.png" /></span></P><P>This completes the part of actual migration.</P><P><STRONG>Other points to note:</STRONG></P><UL><LI>You will also need to <A href="https://community.sap.com/t5/technology-blogs-by-members/how-to-create-a-csr-and-import-the-certificate-response-in-strust/ba-p/13465022" target="_self">generate and apply new certificates</A> using transaction -&nbsp;<STRONG>STRUST</STRONG>&nbsp;according to the new domain if NWBC and/or other portals are being used.</LI><LI>Email node can be changed as well, using transaction code <STRONG>SCOT</STRONG>:</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="nikhil_kumar_4-1709118153338.png" style="width: 605px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72585i6853BEB96E6E0677/image-dimensions/605x307?v=v2" width="605" height="307" role="button" title="nikhil_kumar_4-1709118153338.png" alt="nikhil_kumar_4-1709118153338.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="nikhil_kumar_5-1709118200831.png" style="width: 605px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72586i40C636642C1CDE94/image-dimensions/605x192?v=v2" width="605" height="192" role="button" title="nikhil_kumar_5-1709118200831.png" alt="nikhil_kumar_5-1709118200831.png" /></span></P><UL class="lia-list-style-type-disc"><LI>Set default domain to the updated one <EM>(like example2.xyz)</EM>.</LI></UL><UL class="lia-list-style-type-circle"><LI>Email functionality can be tested using transaction <STRONG>SBWP</STRONG> -&gt; <STRONG>New Message<STRONG><BR /></STRONG></STRONG><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="nikhil_kumar_2-1709124943817.png" style="width: 494px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/72684iB1719D85FD3AC7C2/image-dimensions/494x205?v=v2" width="494" height="205" role="button" title="nikhil_kumar_2-1709124943817.png" alt="nikhil_kumar_2-1709124943817.png" /></span></LI></UL><P>Few other things to consider:</P><UL class="lia-list-style-type-square"><LI>This blog only covers the SAP part of the migration, not for the different DBs and OS changes. You'll need to look further into OS/DB related transactions and/or parameters to realize the full impact on the SAP system in that case.</LI><LI><FONT size="3">You will also need to check if there are any other services, ABAP reports or programs have the old domain configured into them which are being used in the SAP system and make changes accordingly.</FONT></LI></UL><P><STRONG><FONT size="3">Below notes/documents can be referred for more information:</FONT></STRONG></P><P><FONT size="2"><A href="https://me.sap.com/notes/611361/E" target="_self" rel="noopener noreferrer">611361 - Hostnames of SAP ABAP Platform servers</A></FONT></P><P><FONT size="2"><A href="https://help.sap.com/docs/SAP_NETWEAVER_750/7b44f2a7728810148a4b1a83b0e91070/67be9442572e1231e10000000a1550b0.html" target="_self" rel="noopener noreferrer">Fully Qualified Domain Names (FQDN)</A></FONT></P><P><FONT size="2"><A href="https://me.sap.com/notes/3220752/E" target="_self" rel="noopener noreferrer">3220752 - NWBC error : The URL contains no complete domain specification\</A></FONT></P><P><A href="https://me.sap.com/notes/2148070/E" target="_self" rel="noopener noreferrer"><FONT size="2">2148070 - Configuration of e-mail using SMTP (outbound)</FONT></A></P><P><FONT size="2"><A href="https://community.sap.com/t5/technology-blogs-by-members/how-to-create-a-csr-and-import-the-certificate-response-in-strust/ba-p/13465022" target="_self">How to create a CSR and import the certificate response in STRUST</A></FONT></P><P><FONT size="2">Detailed information about domains can be found <A href="https://en.wikipedia.org/wiki/Domain_name#:~:text=Domain%20names%20serve%20to%20identify%20Internet%20resources%2C%20such%20as%20computers%2C%20networks%2C%20and%20services%2C%20with%20a%20text%2Dbased%20label%20that%20is%20easier%20to%20memorize%20than%20the%20numerical%20addresses%20used%20in%20the%20Internet%20protocols." target="_self" rel="nofollow noopener noreferrer">in this article.</A></FONT></P><P>Thanks,</P><P>Nikhil Kumar.</P><P>&nbsp;</P><P><FONT size="2"><a href="https://community.sap.com/t5/c-khhcw49343/SAP+NetWeaver/pd-p/01200314690800000134" class="lia-product-mention" data-product="730-1">SAP NetWeaver</a>&nbsp;<a href="https://community.sap.com/t5/c-khhcw49343/SAP+NetWeaver+Application+Server+for+ABAP/pd-p/01200314690800000234" class="lia-product-mention" data-product="732-1">SAP NetWeaver Application Server for ABAP</a>&nbsp;</FONT></P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P> 2024-03-01T10:53:22.079000+01:00 https://community.sap.com/t5/technology-blogs-by-members/e4h-conversion-error-in-phase-main-newbas-xpras-aimmrg/ba-p/13632994 E4H Conversion Error in Phase MAIN_NEWBAS/XPRAS_AIMMRG 2024-03-13T11:25:12.382000+01:00 sid111 https://community.sap.com/t5/user/viewprofilepage/user-id/361107 <P>If you are trying to do a E4H Conversion from SAP GTS 11.0 to SAP GTS Edition for HANA 2023 with S/4 HANA Foundation 2022 then you may come across below error.</P><P><U>Issue:</U></P><P>During the execution phase below error is reported</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="sid111_0-1710043896304.png" style="width: 639px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/77919iCD0FA76F3DBCB574/image-dimensions/639x482?v=v2" width="639" height="482" role="button" title="sid111_0-1710043896304.png" alt="sid111_0-1710043896304.png" /></span></P><P>Sql command that runs&nbsp;</P><P>INSERT INTO "/SAPSLL/TEDTM" ( "MANDT", "STCCS", "RTYPE", "TLC_AART" ) SELECT DISTINCT</P><P>&nbsp;"/SAPSLL/LC_CUSM"."MANDT", "/SAPSLL/TLEGSU"."CTSIM" as "STCCS", "/SAPSLL/LC_CUSM"."RTYPE",</P><P>&nbsp;"/SAPSLL/LC_CUSM"."TLC_AART" FROM "/SAPSLL/LC_CUSM" INNER JOIN "/SAPSLL/TLEGSU" ON</P><P>&nbsp;"/SAPSLL/LC_CUSM"."MANDT" = "/SAPSLL/TLEGSU"."MANDT" AND "/SAPSLL/LC_CUSM"."LGREG" =</P><P>&nbsp;"/SAPSLL/TLEGSU"."LGREG" WHERE "/SAPSLL/TLEGSU"."LGREG" = "/SAPSLL/LC_CUSM"."LGREG" AND</P><P>&nbsp;"/SAPSLL/TLEGSU"."SRVLL" = 'LECCUS' AND "/SAPSLL/TLEGSU"."CTSTY" = '101' AND NOT (</P><P>&nbsp;"/SAPSLL/LC_CUSM"."MANDT" = '000' )</P><P><U>Solution:</U></P><P>Old table: /SAPSLL/LC_CUSM</P><P>New table after conversion: /SAPSLL/TEDTM</P><P>The reason for the above error is that there are some duplicate entries that exists in /SAPSLL/TEDTM table so the XPRA report is not able to insert the content into the table and it throws an error.</P><P>While you can find similar kind of 301 error for different type of schema and table but there is no specific steps for this table which comes during the conversion.</P><P>Option1:</P><P>&nbsp; &nbsp; &nbsp;Try to login to the clients and see if you can get help from functional consultant to identify the duplicate entries from the table and repeat the phase. (Take a backup before you do this)</P><P>Option 2:&nbsp;</P><P>Accept the error at this stage and complete the conversion.</P><P>Once the conversion is done do below steps.</P><P>Check if the index exists.Most likely it will because its a ~0 index and its reserved index which means you can only see that in se14.It wnt even show in hana studio.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="sid111_0-1710044962120.png" style="width: 700px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/77924i60FF9B3B91B14107/image-dimensions/700x315?v=v2" width="700" height="315" role="button" title="sid111_0-1710044962120.png" alt="sid111_0-1710044962120.png" /></span></P><P>- Drop the index from below command from hana studio</P><P>ALTER TABLE "SAPABAP1"."/SAPSLL/TEDTM" DROP CONSTRAINT "/SAPSLL/TEDTM~0";</P><P><SPAN>- For HANA databases, use the HANA scripts HANA_Data_DuplicateKeys_CommandGenerator_1.00.100+ and HANA_Data_DuplicateKeys_columnStore_Deletion_CommandGenerator attached in SAP Note 1969700 to remove duplicates</SPAN></P><P><SPAN>below the command that i used </SPAN></P><P><SPAN>**************************************</SPAN></P><P><SPAN>DELETE FROM<BR />"SAPABAP1"."/SAPSLL/TEDTM"<BR />WHERE<BR />"$rowid$" IN<BR />( SELECT<BR />ROW_ID<BR />FROM<BR />( SELECT<BR />"$rowid$" ROW_ID,<BR />ROW_NUMBER() OVER (PARTITION BY "MANDT", "STCCS", "RTYPE") DUP_NO<BR />FROM<BR />"SAPABAP1"."/SAPSLL/TEDTM"<BR />)<BR />WHERE<BR />DUP_NO &gt; 1<BR />)<BR />WITH HINT (NO_AGGR_SIMPLIFICATION, NO_GROUPING_SIMPLIFICATION)</SPAN></P><P><SPAN>*******************************</SPAN></P><P><SPAN>@note: Please be double sure when you run this command.Have it verified with the functional consultant as its going to delete duplicate entries from the table.</SPAN></P><P><SPAN>- Once duplicates are removed, try to create the index again</SPAN></P><P><SPAN>ALTER TABLE "SAPABAP1"."/SAPSLL/TEDTM" ADD CONSTRAINT "/SAPSLL/TEDTM~0" PRIMARY KEY ( "MANDT", "STCCS", "RTYPE" )</SPAN></P><P><SPAN>- Run the XPRA again&nbsp;/SAPSLL/XPRA_V8000 (this is the same XPRA which ran during the execution phase)</SPAN></P><P><SPAN>and this time it should typically work without giving issues.</SPAN></P><P>&nbsp;</P><P><SPAN>Hope this help.</SPAN></P><P><SPAN>Thanks</SPAN></P><P><SPAN>Sid</SPAN></P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P> 2024-03-13T11:25:12.382000+01:00 https://community.sap.com/t5/technology-blogs-by-members/how-to-use-transaction-bd87-to-reprocess-failed-idocs/ba-p/13641328 How to use Transaction BD87 to reprocess failed IDocs 2024-03-21T15:15:03.463000+01:00 mohityadav3 https://community.sap.com/t5/user/viewprofilepage/user-id/156028 <P>Dear readers.</P><P>In this blog we'll look into the functionality of transaction code <STRONG>BD87</STRONG>, It is used to monitor and process the IDocs in SAP:<BR /><BR />Let's look at what IDoc is first</P><UL><LI><FONT size="2">IDoc (or intermediate document) is used by SAP applications to transport data between applications and external systems. Businesses using SAP ERP systems, for instance, can exchange data with partners or customers by using IDocs.</FONT></LI><LI><FONT size="2">While transferring information from a SAP system to an external system takes place through electronic data interchange (EDI), the transfer between SAP systems is handled by SAP's ALE solution. This eliminates the need to transform data across formats in order to exchange data between the various systems.</FONT></LI></UL><P><STRONG>Process:</STRONG></P><P>Open the transaction <STRONG>BD87</STRONG> – Go to <STRONG>Basic Transactions</STRONG>-&gt; <STRONG>IDoc Status Monitoring for ALE Messages</STRONG>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="mohityadav3_0-1710750618255.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82105i93C13AFDE71F3149/image-size/medium?v=v2&amp;px=400" role="button" title="mohityadav3_0-1710750618255.png" alt="mohityadav3_0-1710750618255.png" /></span></P><P>Once we go to transaction screen you will find the option to select the required filters in Initial screen based on the actual need.</P><P>In the same screen we get multiple filters to search the IDoc</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="mohityadav3_1-1710750618259.png" style="width: 481px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82104iD43F35564D1F7A05/image-dimensions/481x298?v=v2" width="481" height="298" role="button" title="mohityadav3_1-1710750618259.png" alt="mohityadav3_1-1710750618259.png" /></span></P><P>After providing the required information on the IDoc screen, we can see multiple options (explained below)</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="mohityadav3_2-1710750618267.png" style="width: 436px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82106iD2A33A56D4379B32/image-dimensions/436x159?v=v2" width="436" height="159" role="button" title="mohityadav3_2-1710750618267.png" alt="mohityadav3_2-1710750618267.png" /></span></P><OL><LI><STRONG>Refresh IDoc Display Button</STRONG>- This can be used to&nbsp; refresh the detailed view and when we change the status of any IDoc or reprocess the IDoc.</LI><LI><STRONG>Expand Subtree:</STRONG>- To expand the subtree of the view component(node) that is presently chosen.</LI><LI><STRONG>Collapse subtree:</STRONG>- Compresses the subtree of the view's presently chosen component(node).</LI><LI><STRONG>Display Partner systems:</STRONG>- groups the partner systems, IDoc status, and message type in the IDoc tree view.</LI><LI><STRONG>Highlight message type:</STRONG>- Groups the IDoc tree view according to the message type and IDoc status.</LI><LI><STRONG>Select IDocs:</STRONG>- Restricts the IDocs that are now being shown in a pop-up window. The pre-filled parameters match those chosen in the before selection mask.</LI><LI><STRONG>Display IDocs:</STRONG>- After select the node an ALV list of all IDocs is open, and you can twice click the node and you will achieve the same result.</LI><LI><STRONG>Trace IDocs:</STRONG>- When you want see trace of Displayed an IDoc status its alternatively clicking the twice on the IDoc this will achieve the same result.</LI><LI><STRONG>Process:</STRONG>- All of the IDocs of the chosen node are processed by this function. This feature should be utilized carefully because a mistaken click could possibly send thousands of IDocs for re-processing, which could have unintended consequences.</LI></OL><P><STRONG>Let's have a look how to process the failed IDoc’s:-</STRONG> When we found the the initial screen of IDoc monitoring then we need to process it, then we there is Process button on Status bar, then select the node then hit the process button and the mentioned IDoc is processed.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="mohityadav3_3-1710750618269.png" style="width: 515px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82107i931CBC21F1D78224/image-dimensions/515x134?v=v2" width="515" height="134" role="button" title="mohityadav3_3-1710750618269.png" alt="mohityadav3_3-1710750618269.png" /></span></P><P>These are some major characteristics of BD87 T-code:</P><P><STRONG>Reprocessing Failed IDocs:</STRONG>&nbsp;It is solely used to handle Failed IDocs. We can reprocess the IDoc by using the error number, IDoc number, and necessary message type.</P><P><STRONG>Retains Original IDoc Number:</STRONG>&nbsp;With this option the original IDoc number is kept when processing a failed IDoc in BD87 is restarted. By ensuring the preservation of the IDoc history and references, it is possible to more easily follow the processing timeline.</P><P><STRONG>Processing Several IDocs at Once:</STRONG> This transaction also helps users to process multiple of IDocs at once. Since this allows us to manage multiple IDocs at once, this can be very helpful.</P><P><STRONG>Processes unsuccessful IDocs:</STRONG> We cannot reprocess the IDocs which are already successful.</P><P>Hope you enjoyed reading.</P><P>Conclusion-</P><P>We discussed how to re-process the failed IDoc's.</P><P>Related information's-</P><P><A href="https://userapps.support.sap.com/sap/support/knowledge/en/2658803" target="_self" rel="noopener noreferrer">https://userapps.support.sap.com/sap/support/knowledge/en/2658803</A>&nbsp;</P><P><A href="https://userapps.support.sap.com/sap/support/knowledge/en/2514304" target="_self" rel="noopener noreferrer">https://userapps.support.sap.com/sap/support/knowledge/en/2514304</A>&nbsp;</P><P><A href="https://userapps.support.sap.com/sap/support/knowledge/en/2324075" target="_self" rel="noopener noreferrer">https://userapps.support.sap.com/sap/support/knowledge/en/2324075</A>&nbsp;</P><P>Please share your feedback and your thoughts. Looking forward to questions and queries.</P><P>Thank you.</P> 2024-03-21T15:15:03.463000+01:00 https://community.sap.com/t5/technology-blogs-by-members/stms-reconfiguration-for-sap-system-after-refresh/ba-p/13641188 STMS Reconfiguration for SAP System after Refresh. 2024-03-21T15:16:50.106000+01:00 ambuj_shukla https://community.sap.com/t5/user/viewprofilepage/user-id/859090 <P>Hi everyone,</P><P>In this blog we'll cover the reconfiguration of Transport Management for SAP ABAP system.</P><P>Before we start, let's look at below points to understand about STMS:</P><UL><LI><FONT size="2">STMS stands for&nbsp;SAP Transport Management System, a tool that helps to organize, perform, and monitor transports between SAP Systems.&nbsp;</FONT></LI><LI><FONT size="2">STMS is used for central management of all transport functions, such as defining the transport domain controller, configuring the SAP system landscape, defining the transport routes, and distributing the configuration.&nbsp;</FONT></LI><LI><FONT size="2">STMS eliminates the need for user actions at the operating system level, since all the information and functions are mapped in the SAP System</FONT></LI></UL><P>There are times when we need to reconfigure STMS in SAP system after system refresh, system copy and implementation.</P><P><STRONG>Prerequisites: -</STRONG> Access of DDIC user in client 000</P><P>TMSADM user password must be maintained.</P><P><STRONG>Process</STRONG>:</P><P>First, we need to login to the domain controller system from client 000 with DDIC user.</P><P>Goto system overview:<BR /><BR /></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_0-1710752191772.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82112i76FDB69C61F0B1AA/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_0-1710752191772.png" alt="ambuj_shukla_0-1710752191772.png" /></span></P><P>Select the system on which refresh has been performed then go to SAP system and delete the system.</P><P>In our case Quality system has been refreshed.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_1-1710752191789.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82111i5E9B34EA77BB70FA/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_1-1710752191789.png" alt="ambuj_shukla_1-1710752191789.png" /></span></P><P>Once we click on delete a pop up will be shown in which we need to confirm by clicking “Yes”&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_2-1710752191794.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82113iC85F8AEC91A22FE1/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_2-1710752191794.png" alt="ambuj_shukla_2-1710752191794.png" /></span></P><P>After deleting Q system from transport route, it will ask to distribute configuration change immediately.</P><P>Click on “NO”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_3-1710752191814.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82116i1EA1B53444B86F32/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_3-1710752191814.png" alt="ambuj_shukla_3-1710752191814.png" /></span></P><P>TMS configuration has been deleted.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_4-1710752191827.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82115i7AD570489B733EB7/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_4-1710752191827.png" alt="ambuj_shukla_4-1710752191827.png" /></span></P><P>Now login to the system on which refresh has been completed (i.e. Quality system)</P><P>Goto SE06 TCode</P><P>Click on “Perform Post Installation Actions”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_5-1710752191833.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82114i22B0EDF38B23B797/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_5-1710752191833.png" alt="ambuj_shukla_5-1710752191833.png" /></span></P><P>It will ask you to reinstall the CTS.</P><P>Click on “Yes”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_6-1710752191845.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82117iF833DE3438A8182B/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_6-1710752191845.png" alt="ambuj_shukla_6-1710752191845.png" /></span></P><P>It will ask for source system database copy.</P><P>Put Production SID in that box and click on continue.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_7-1710752191856.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82118i2DF677B9A54B03B9/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_7-1710752191856.png" alt="ambuj_shukla_7-1710752191856.png" /></span></P><P>It will ask for changes from Production to Quality.</P><P>Click on “Yes”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_8-1710752191870.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82119i9949CED788B593A9/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_8-1710752191870.png" alt="ambuj_shukla_8-1710752191870.png" /></span></P><P>You will see a pop-up Change and Transport system not configured.</P><P>Click on green tick.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_9-1710752191877.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82120i24E91D89188F7EE2/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_9-1710752191877.png" alt="ambuj_shukla_9-1710752191877.png" /></span></P><P>It will ask for change originals from production to quality.</P><P>Click on “Yes”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_10-1710752191887.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82121i2330799802B77214/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_10-1710752191887.png" alt="ambuj_shukla_10-1710752191887.png" /></span></P><P>A prompt box for delete TMS configuration.</P><P>Click on “Yes”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_11-1710752191895.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82122iB9A0311D15F9CCEB/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_11-1710752191895.png" alt="ambuj_shukla_11-1710752191895.png" /></span></P><P>Click “Yes” to delete old versions of transport.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_12-1710752191905.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82123iB5BCDA8F680F5E88/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_12-1710752191905.png" alt="ambuj_shukla_12-1710752191905.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_13-1710752191953.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82124i6180237BB0D4877D/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_13-1710752191953.png" alt="ambuj_shukla_13-1710752191953.png" /></span></P><P><STRONG>Post installation steps have been completed.</STRONG></P><P>Now go to TCode – <STRONG>STMS</STRONG></P><P>Click on “Save”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_14-1710752191971.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82125iFD3AE5A370101BFE/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_14-1710752191971.png" alt="ambuj_shukla_14-1710752191971.png" /></span></P><P>It will ask for TMSADM user’s password.</P><P>Make sure that password should be correct otherwise it will create inconsistency.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_15-1710752191984.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82127i0472AB0F1887990D/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_15-1710752191984.png" alt="ambuj_shukla_15-1710752191984.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_16-1710752192007.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82128i7826024E866A6E52/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_16-1710752192007.png" alt="ambuj_shukla_16-1710752192007.png" /></span></P><P>Login to Domain controller and go to system overview.<span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="ambuj_shukla_17-1710752192008.png" style="width: 28px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82126i3A913AFDD47EED00/image-dimensions/28x31?v=v2" width="28" height="31" role="button" title="ambuj_shukla_17-1710752192008.png" alt="ambuj_shukla_17-1710752192008.png" /></span></P><P>Select Quality system and click on approve.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_18-1710752192021.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82130i59E1EA2655831D7F/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_18-1710752192021.png" alt="ambuj_shukla_18-1710752192021.png" /></span></P><P>Once we have approved the system a pop up will appear click on “Yes”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_19-1710752192038.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82129iB882084A4C97A442/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_19-1710752192038.png" alt="ambuj_shukla_19-1710752192038.png" /></span></P><P>We will distribute the configuration change immediately.</P><P>Click on “Yes” on below pop up.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_20-1710752192054.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82131iC8CFBDC112C0FD9B/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_20-1710752192054.png" alt="ambuj_shukla_20-1710752192054.png" /></span></P><P>Quality system included in the Transport Domain.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_21-1710752192069.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82133iF001848EBD2D4DAF/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_21-1710752192069.png" alt="ambuj_shukla_21-1710752192069.png" /></span></P><P>Login to Quality system</P><P>Now we will click on Overview --&gt; Transport Routes --&gt; Adjust with controller.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_22-1710752192091.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82134iA4D899F1A428DD90/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_22-1710752192091.png" alt="ambuj_shukla_22-1710752192091.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_23-1710752192099.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82132iFB98C34483CE8BD2/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_23-1710752192099.png" alt="ambuj_shukla_23-1710752192099.png" /></span></P><P>Click on “Yes”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_24-1710752192105.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82135i86356C85541883D4/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_24-1710752192105.png" alt="ambuj_shukla_24-1710752192105.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_25-1710752192123.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82137iD3CB7E110C35E0DB/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_25-1710752192123.png" alt="ambuj_shukla_25-1710752192123.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_26-1710752192134.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82136i962E66C2A5717F73/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_26-1710752192134.png" alt="ambuj_shukla_26-1710752192134.png" /></span></P><P>We will check connection test it should be ok.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_27-1710752192153.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82139i04E97A43BEA6F7D5/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_27-1710752192153.png" alt="ambuj_shukla_27-1710752192153.png" /></span></P><P>Check transport directory everything should be in green.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_28-1710752192168.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82138i262094657F8ACB2E/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_28-1710752192168.png" alt="ambuj_shukla_28-1710752192168.png" /></span></P><P>Now check Transport tool everything needs to be in green.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_29-1710752192180.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82140i3BEA8AF50DBD1EF8/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_29-1710752192180.png" alt="ambuj_shukla_29-1710752192180.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_30-1710752192187.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82141i72E09064F9784ED2/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_30-1710752192187.png" alt="ambuj_shukla_30-1710752192187.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_31-1710752192206.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82142i06E1DC8118AC6EDB/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_31-1710752192206.png" alt="ambuj_shukla_31-1710752192206.png" /></span></P><P><STRONG>TMS has been reconfigured.</STRONG></P><P><STRONG>Troubleshooting Issues:</STRONG></P><P style=" padding-left : 60px; ">There can be some issues while setting up the transport route.</P><P style=" padding-left : 60px; ">1. Sometimes while configuring TMS "system - number" is not populated when system is included in the domain controller.</P><P style=" padding-left : 60px; ">The TMS RFCs hence created , they do not have system number and so it will not work.</P><P style=" padding-left : 60px; "><STRONG>Solution:</STRONG></P><P style=" padding-left : 60px; ">Update following RFCs to include system number.</P><P style=" padding-left : 60px; "><STRONG>"TMSADM@"</STRONG>&nbsp;</P><P style=" padding-left : 60px; "><STRONG>"TMSSUP@</STRONG></P><P style=" padding-left : 60px; ">2. Sometimes TMS distribution from Domain controller do not work because TMSADM is not sufficiently authorized. Error thrown however shows that the user or password is not correct.</P><P style=" padding-left : 60px; "><STRONG>Solution</STRONG>:</P><P style=" padding-left : 60px; ">In the RFC below maintain DDIC and password until TMS distribution.</P><P style=" padding-left : 60px; ">Maintain ‘TMSADM’ back after the distribution is ok.</P><P style=" padding-left : 60px; ">"TMSADM@"</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ambuj_shukla_0-1710765081262.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/82398i10815D116417679A/image-size/medium?v=v2&amp;px=400" role="button" title="ambuj_shukla_0-1710765081262.png" alt="ambuj_shukla_0-1710765081262.png" /></span></P><P>&nbsp;</P><P data-unlink="true">Documentation below can be referred for more information.</P><P><A href="https://me.sap.com/notes/1536753/E" target="_self" rel="noopener noreferrer"><FONT size="2">1536753 - Configuration of the Transport Management System</FONT></A></P><P><A href="https://me.sap.com/notes/1568362/E" target="_self" rel="noopener noreferrer"><FONT size="2">1568362 - TMSADM password change</FONT></A></P><P><A href="https://me.sap.com/notes/2861552/E" target="_self" rel="noopener noreferrer"><FONT size="2">2861552 - Transport request settings after system copy/upgrade</FONT></A></P><P><A href="https://me.sap.com/notes/2751569/E" target="_self" rel="noopener noreferrer"><FONT size="2">2751569 - 'Target System not Reachable' Message in Transport Management</FONT></A></P> 2024-03-21T15:16:50.106000+01:00 https://community.sap.com/t5/technology-blogs-by-members/how-to-receive-and-invoice-bitcoin-in-sap-proof-of-concept/ba-p/13640808 How to receive and invoice bitcoin in SAP - Proof of Concept 2024-03-21T15:23:14.914000+01:00 Koni https://community.sap.com/t5/user/viewprofilepage/user-id/168796 <H3 id="toc-hId-1118781871"><SPAN>Integrating Bitcoin Transactions into SAP with BTCpayserver</SPAN></H3><P><SPAN>In this post, we'll explore how to receive and invoice your customers in Bitcoin using the open-source software, BTCpayserver.</SPAN></P><P><SPAN>A key advantage of BTCpayserver is that it allows you to maintain complete control, eliminating the need for a third-party custodian to manage your Bitcoin wallet.</SPAN></P><P><SPAN>For a clearer picture of where this solution stands on the self-sovereignty spectrum in terms of counterparty risk, refer to Andrew Lunde's insightful visualization</SPAN>:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Koni_1-1710876778367.png" style="width: 660px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/83414i08CFB40B14C7DAF5/image-dimensions/660x124?v=v2" width="660" height="124" role="button" title="Koni_1-1710876778367.png" alt="Koni_1-1710876778367.png" /></span></P><P style=" text-align: center; "><EM>This visualization is taken from <a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1307">@andrew_lunde</a>&nbsp;&nbsp;blog post.</EM></P><P>On the self-sovereignty spectrum, this solution is located on the two right spots.</P><UL><LI>You can secure your own keys (you are your own custodian).</LI><LI>You can take care of channel management yourself.</LI><LI>You can use the bitcoin blockchain for final settlement.</LI><LI>You are also able to use the Lightning Network for the invoicing (instant and low fee settlement).</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Koni_2-1710729141122.png" style="width: 800px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/81966i6CB5B104FE76FD5A/image-dimensions/800x624?v=v2" width="800" height="624" role="button" title="Koni_2-1710729141122.png" alt="Koni_2-1710729141122.png" /></span><BR /><SPAN>Below is a glimpse of the working interface (note: values have been modified for privacy)</SPAN>:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Koni_0-1710875719963.png" style="width: 800px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/83409i86C1A30EB7298BB0/image-dimensions/800x659?v=v2" width="800" height="659" role="button" title="Koni_0-1710875719963.png" alt="Koni_0-1710875719963.png" /></span><SPAN>When you enter an email address in the invoice creator, it automatically sends an invoice to your customer. Here’s a preview of what your customers will see upon opening the email:</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Koni_0-1710731903238.png" style="width: 564px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/81972i5B06F222C6564479/image-dimensions/564x977?v=v2" width="564" height="977" role="button" title="Koni_0-1710731903238.png" alt="Koni_0-1710731903238.png" /></span></P><P><SPAN>One standout feature is the highly customizable checkout screen. Customers can make payments on-chain or through a lightning wallet, as the QR codes support both protocols.</SPAN></P><H4 id="toc-hId-1051351085">Main use case</H4><P>Picture this: You're an accountant at a multinational company, operating across several sales organizations. The CEO has decided to embrace Bitcoin as a payment method, aiming to attract a forward-thinking customer base (envision a strategy akin to Tesla's). Traditional payment providers are off the table due to high costs, and adding another third-party service would only compound compliance complexities.</P><P>In your diverse locations, tech expertise varies; not everyone is adept at setting up a wallet or managing Bitcoin transactions. What you need is a streamlined solution allowing your team to invoice in Bitcoin effortlessly, without getting bogged down in exchange rate calculations, Lightning Network channel management, or accessing the company's Bitcoin wallet.</P><P>Seamless integration with SAP is key for a smooth and rapid deployment.</P><P>Our goal? Simplicity. Customers should receive an aesthetically pleasing invoice that's easy to interact with. Moreover, every aspect of the payment process, including documentation, needs to be meticulously handled.</P><P>The ultimate aim is to empower various sales organizations within your company to invoice their customers in Bitcoin, all funneling into a singular, centralized wallet for ease of management.</P><H4 id="toc-hId-854837580">Outlook</H4><P>There are more functionalities and possibilities to be excited about. A few I can think of that are cool:</P><UL><LI>Customer Bitcoin Refunds</LI><LI>Tax Deductions with Split Payments</LI><LI>Automated bitcoin payments&nbsp;</LI></UL><P><SPAN>Want to discuss Bitcoin further? Feel free to send me a message!</SPAN>&nbsp;</P><P>Or would you like to try it out yourself in your SAP environment? Follow me on my github below, will post more there soon.</P><P><U>Sources:</U></P><P>Andrew Lunde´s blog post:<BR /><A href="https://community.sap.com/t5/technology-blogs-by-sap/thoughts-on-bitcoin-etfs-and-the-sovereign-enterprise/ba-p/13574575" target="_blank">https://community.sap.com/t5/technology-blogs-by-sap/thoughts-on-bitcoin-etfs-and-the-sovereign-enterprise/ba-p/13574575</A></P><P>My github:</P><P><A href="https://github.com/konigra99" target="_blank" rel="noopener nofollow noreferrer">https://github.com/konigra99</A></P><P>&nbsp;</P> 2024-03-21T15:23:14.914000+01:00 https://community.sap.com/t5/application-development-blog-posts/top-of-page-and-end-of-page-using-sap-list-viewer-salv/ba-p/13593417 Top of page and end of page using SAP List Viewer (SALV) 2024-03-27T10:03:10.471000+01:00 jyothi7 https://community.sap.com/t5/user/viewprofilepage/user-id/891567 <P><STRONG><SPAN>Top of page and end of page using SALV</SPAN></STRONG><SPAN>&nbsp;</SPAN></P><P><SPAN>I am happy to share my very first blog post on SAP OABAP Programming using SALV. In this blog post you will learn how to Create a Top of page and end of page using SALV.</SPAN><SPAN>&nbsp;</SPAN></P><P><STRONG>Introduction: -</STRONG></P><P><SPAN>In SAP, the System Application and Products, 'SALV' stands for SAP List Viewer. It's a framework used to simplify the display of data in a user-friendly format within SAP applications.</SPAN><SPAN>&nbsp;</SPAN></P><UL><LI><STRONG>Timesaving:</STRONG><SPAN> Implementing SALV can save developers time as it provides pre-defined functionalities for handling data. Developers can focus on business logic rather than building data display functionalities from scratch.</SPAN><SPAN>&nbsp;</SPAN></LI><LI><STRONG><SPAN>Standardization:</SPAN></STRONG><SPAN> SALV follows SAP's standard programming guidelines, promoting uniformity in coding practices across applications, making maintenance and updates more manageable.</SPAN><SPAN>&nbsp;</SPAN></LI></UL><P><SPAN>Before writing code, we need to know what and all classes we need to use.</SPAN><SPAN>&nbsp;</SPAN></P><P><SPAN>Class names: CL_SALV_TABLE,</SPAN><SPAN>&nbsp;</SPAN></P><P><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CL_SALV_FORM_LAYOUT_GRID,</SPAN><SPAN>&nbsp;</SPAN></P><P><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CL_SALV_FORM_LABEL,</SPAN><SPAN>&nbsp;</SPAN></P><P><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CL_SALV_FORM_LAYOUT_FLOW.</SPAN><SPAN>&nbsp;</SPAN></P><P><STRONG><SPAN>How to create a program to display the top of page and end of page using SALV</SPAN></STRONG><SPAN>&nbsp;</SPAN></P><P><SPAN>Step 1. Go to ABAP editor transaction (SE38) provide a program name and type of the program.</SPAN><SPAN>&nbsp;</SPAN></P><P><SPAN>Step 2. Declare class and methods.</SPAN><SPAN>&nbsp;</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_0-1706942170399.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59625i633C2CA9D1ABE8B7/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_0-1706942170399.png" alt="jyothi7_0-1706942170399.png" /></span></P><P><SPAN>Step 3. In this step am implementing the build_salesorder method.</SPAN><SPAN>&nbsp;</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_1-1706942170400.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59626i403BA71911CDAC61/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_1-1706942170400.png" alt="jyothi7_1-1706942170400.png" /></span></P><P><SPAN>Step 4. Implementing disp_salesorder method to display the data in SALV.</SPAN><SPAN>&nbsp;</SPAN></P><P><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Call factory method to display the data.</SPAN><SPAN>&nbsp;</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_2-1706942170401.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59627i5C564967B8CEA282/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_2-1706942170401.png" alt="jyothi7_2-1706942170401.png" /></span></P><P><SPAN>Step 5. Top_of_page method takes some variable with a different class;&nbsp;</SPAN><SPAN>we can see the classes.&nbsp;</SPAN><SPAN>&nbsp;</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_3-1706942170402.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59629iF336217A10449460/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_3-1706942170402.png" alt="jyothi7_3-1706942170402.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_4-1706942170403.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59630i6EFA3F317611019A/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_4-1706942170403.png" alt="jyothi7_4-1706942170403.png" /></span></P><P><SPAN>Step 6. End_of_page method also declare some classes whatever we did in top of page we need to do in end of page Method also.</SPAN><SPAN>&nbsp;</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_5-1706942170404.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59628i6CF734DA6AB5E134/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_5-1706942170404.png" alt="jyothi7_5-1706942170404.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_6-1706942170405.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59631iE9CD9C9BC9B8FB99/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_6-1706942170405.png" alt="jyothi7_6-1706942170405.png" /></span></P><P><SPAN>Step 9. create a object for main class, using object call the methods and display the records in SALV.</SPAN><SPAN>&nbsp;</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_7-1706942170405.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59632iD6506BFAE4337275/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_7-1706942170405.png" alt="jyothi7_7-1706942170405.png" /></span></P><P><STRONG><SPAN>Refer the code below for the whole program.</SPAN></STRONG><SPAN>&nbsp;</SPAN></P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-abap"><code>CLASS sales_order_disp DEFINITION. PUBLIC SECTION. DATA : o_salv TYPE REF TO cl_salv_table. METHODS : build_salesorder, disp_salesorder. PRIVATE SECTION. DATA : lt_vbak TYPE TABLE OF vbak. METHODS : build_top_of_page CHANGING obj_salv TYPE REF TO cl_salv_table, build_end_of_page CHANGING obj_salv TYPE REF TO cl_salv_table. ENDCLASS. CLASS sales_order_disp IMPLEMENTATION. METHOD build_salesorder. SELECT * FROM vbak INTO TABLE lt_vbak . ENDMETHOD. METHOD disp_salesorder. "========THIS METHOD FOR TO DISPLAYING SALV DISPLAY TRY. cl_salv_table=&gt;factory( IMPORTING r_salv_table = o_salv " Basis Class Simple ALV Tables CHANGING t_table = lt_vbak ). CATCH cx_salv_msg. " ALV: General Error Class with Message ENDTRY. "USING ME KEYWORD CALLING TOP OF PAGE METHOD THIS IS IN PRIVATE SECTION" me-&gt;build_top_of_page( CHANGING obj_salv = o_salv ). "USING ME KEYWORD CALLING END OF PAGE METHOD THIS IS IN PRIVATE SECTION" me-&gt;build_end_of_page( CHANGING obj_salv = o_salv ). "=============TO DISPLAY=============== o_salv-&gt;display( ). ENDMETHOD. "============TO DISPLAY THE TOP LINES=============== METHOD build_top_of_page. DATA: o_label TYPE REF TO cl_salv_form_label, o_flow TYPE REF TO cl_salv_form_layout_flow. "======creating object for CL_SALV_FORM_LAYOUT_GRID=============== DATA(o_layout) = NEW cl_salv_form_layout_grid( ). "====using layout objcet am calling isntance method name as CREATE_LABEL o_layout-&gt;create_label( EXPORTING row = 1 " Natural Number column = 1 " Natural Number RECEIVING r_value = o_label " Label ). "=========CL_SALV_FROM_LABEL using this class refernce am calling the SET_TEXT method to write something in top========" o_label-&gt;set_text( value = 'Sales order details' ). o_layout-&gt;create_flow( EXPORTING row = 2 " Natural Number column = 1 " Natural Number RECEIVING r_value = o_flow ). "==========cl_salv_form_layout_flow using this class we can add one more row and we can write a information of Top =========" o_flow-&gt;create_text( EXPORTING text = sy-uname ). obj_salv-&gt;set_top_of_list( value = o_layout ). o_layout-&gt;create_flow( EXPORTING row = 3 " Natural Number column = 1 " Natural Number RECEIVING r_value = o_flow ). o_flow-&gt;create_text( EXPORTING text = sy-datum ). obj_salv-&gt;set_top_of_list( value = o_layout ). ENDMETHOD. METHOD build_end_of_page. DATA: o_label TYPE REF TO cl_salv_form_label, o_flow TYPE REF TO cl_salv_form_layout_flow. DATA(o_end) = NEW cl_salv_form_layout_grid( ). o_end-&gt;create_label( EXPORTING row = 1 " Natural Number column = 1 " Natural Number RECEIVING r_value = o_label " Label ). o_label-&gt;set_text( value = 'SAP Labs India'). o_end-&gt;create_flow( EXPORTING row = 2 " Natural Number column = 1 " Natural Number RECEIVING r_value = o_flow ). o_flow-&gt;create_text( EXPORTING text = 'End of page' ). obj_salv-&gt;set_end_of_list( value = o_end ). ENDMETHOD. ENDCLASS. START-OF-SELECTION. "creating the object for SALES_ORDER_DISP class and calling the method DATA(o_sales) = NEW sales_order_disp( ). o_sales-&gt;build_salesorder( ). o_sales-&gt;disp_salesorder( ). </code></pre><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P><SPAN>OUTPUT:</SPAN><SPAN>&nbsp;</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jyothi7_8-1706942170408.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/59633iD67F5195945B4909/image-size/large?v=v2&amp;px=999" role="button" title="jyothi7_8-1706942170408.png" alt="jyothi7_8-1706942170408.png" /></span></P><P>&nbsp;</P><P><SPAN>&nbsp;</SPAN></P><P><SPAN>&nbsp;</SPAN></P><P><SPAN>&nbsp;</SPAN></P> 2024-03-27T10:03:10.471000+01: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