https://raw.githubusercontent.com/ajmaradiaga/feeds/main/scmt/topics/SAP-HANA-blog-posts.xmlSAP Community - SAP HANA2026-02-25T06:01:18.316217+00:00python-feedgenSAP HANA blog posts in SAP Communityhttps://community.sap.com/t5/technology-blog-posts-by-sap/sap-hana-cloud-release-january-2026-round-up/ba-p/14307255SAP HANA Cloud release January 2026 Round-up2026-01-14T11:36:32.644000+01:00andreamirandahttps://community.sap.com/t5/user/viewprofilepage/user-id/135788<P><SPAN>Dear SAP HANA Cloud Enthusiasts,</SPAN><BR /><BR />We are thrilled to share a comprehensive collection of the latest videos, blogposts, and resources from the SAP HANA Cloud Q4 2025 release.</P><P> </P><TABLE border="1" width="100%"><TBODY><TR><TD width="50.129533678756474%" height="222px"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="playTeaserqrc42025.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/361236i330DD3979DA0B86C/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="playTeaserqrc42025.png" alt="playTeaserqrc42025.png" /></span></TD><TD width="49.870466321243526%" height="222px"><H4 id="toc-hId-2045989657"><STRONG>What’s New Teaser</STRONG></H4>Discover the newest advancements in SAP HANA Cloud with Lead Product Manager Thomas Hammer, as he highlights his top features from the latest release in this engaging teaser.<BR /><BR /><A href="https://www.youtube.com/watch?v=XoDaaRlkP7A&list=PL3ZRUb1AKkpTDZQgENtRcupp6vsNg8NHN&index=1" target="_blank" rel="nofollow noopener noreferrer">Watch it now on YouTube.</A></TD></TR><TR><TD width="50.129533678756474%" height="250px"><H4 id="toc-hId-1849476152"><STRONG>What’s New blogpost</STRONG></H4>Intrigued by the teaser? Explore our "What’s New in SAP HANA Cloud in December 2025" blogpost for an in-depth look at the innovations and find valuable links to further demos and content.<BR /><BR /><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/what-s-new-in-sap-hana-cloud-december-2025/ba-p/14295366" target="_blank">Read it here!</A></TD><TD width="49.870466321243526%" height="250px"><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/what-s-new-in-sap-hana-cloud-december-2025/ba-p/14295366" target="_blank"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screenshotblogpostqrc42025.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/361238i2AA7B69CCC93B911/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="Screenshotblogpostqrc42025.png" alt="Screenshotblogpostqrc42025.png" /></span></A></TD></TR><TR><TD width="50.129533678756474%" height="250px"><A href="https://youtu.be/W1DRNx1Ovgw?si=4Zp1jghksYI8Pikt" target="_blank" rel="noopener nofollow noreferrer"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="playwebinarqrc42025.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/361244iF5928216F66D2941/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="playwebinarqrc42025.png" alt="playwebinarqrc42025.png" /></span></A></TD><TD width="49.870466321243526%" height="250px"><H4 id="toc-hId-1652962647">What's New Webinar</H4>Prefer watching over reading? Our 'What’s New' webinar is just for you! Join our Product experts for an in-depth view of the latest features. Available to watch anytime <A href="https://youtu.be/W1DRNx1Ovgw?si=4Zp1jghksYI8Pikt" target="_blank" rel="noopener nofollow noreferrer">here</A>!</TD></TR></TBODY></TABLE><H3 id="toc-hId-1327366423"> </H3><DIV class=""><HR /><SPAN>Don’t miss out on all the content and remember to </SPAN><A href="https://community.sap.com/topics/hana" target="_blank">follow us in the SAP HANA Community.</A></DIV><P>Remember to check our content following the # whatsnewinsaphanacloud tag:<SPAN> </SPAN><A href="https://community.sap.com/t5/tag/whatsnewinsaphanacloud/tg-p/board-id/technology-blog-sap" target="_blank">here</A><BR /><BR /><SPAN>Don’t forget to subscribe and follow SAP HANA Cloud on </SPAN><A href="https://www.youtube.com/playlist?list=PL3ZRUb1AKkpTDZQgENtRcupp6vsNg8NHN" target="_blank" rel="nofollow noopener noreferrer">YouTube</A><SPAN> to always stay up-to-date regarding the most recent innovations in SAP HANA Cloud.</SPAN><BR /><SPAN> </SPAN><BR /><SPAN>All the best,</SPAN><BR /><BR /><STRONG>Andrea on behalf of the SAP HANA Cloud team</STRONG></P><P><STRONG><A class="" href="https://community.sap.com/t5/c-khhcw49343/SAP+HANA+Cloud%25252C+SAP+HANA+database/pd-p/ada66f4e-5d7f-4e6d-a599-6b9a78023d84" target="_blank">#SAP HANA Cloud, SAP HANA database</A><SPAN> </SPAN> <SPAN> #</SPAN><A class="" href="https://community.sap.com/t5/c-khhcw49343/SAP+HANA+Cloud/pd-p/73554900100800002881" target="_blank">SAP HANA Cloud</A><SPAN> </SPAN> </STRONG></P><P><STRONG>#whatsnewinsaphanacloud</STRONG></P>2026-01-14T11:36:32.644000+01:00https://community.sap.com/t5/technology-blog-posts-by-sap/code-connect-2026-is-coming-mark-your-calendars/ba-p/14307923Code Connect 2026 is Coming – Mark Your Calendars!2026-01-16T10:17:39.514000+01:00BirgitShttps://community.sap.com/t5/user/viewprofilepage/user-id/41902<P><SPAN><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Code Connect logo" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/361588i1404B9EF84CF278E/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="CodeConnectBanner.png" alt="CodeConnectBanner.png" /></span></SPAN></P><P> </P><P><SPAN>We’re excited to announce the return of <A href="https://code-connect.dev/" target="_blank" rel="noopener nofollow noreferrer"><STRONG>Code Connect</STRONG> </A>for its third edition, bringing together three dynamic events - <STRONG>UI5con, reCAP, and HANA Tech Con</STRONG> - under one roof. Mark your calendars for <STRONG>July 13 to 16, 2026</STRONG>, and join us in <STRONG>St. Leon-Rot, Germany</STRONG>, or online.</SPAN></P><P> </P><H2 id="toc-hId-1787830851"><SPAN>What is Code Connect?</SPAN></H2><P><SPAN>Code Connect creates a unique opportunity to experience three specialized events in one location: <A href="https://openui5.org/ui5con/" target="_blank" rel="noopener nofollow noreferrer">UI5con</A>, <A href="https://recap-conf.dev/" target="_blank" rel="noopener nofollow noreferrer">reCAP</A>, and <A href="https://hanatech.community/" target="_blank" rel="noopener nofollow noreferrer">HANA Tech Con</A>, allowing you to dive deep into different aspects of SAP development. Code Connect is designed for developers at every level: Whether you're an SAP veteran or just starting out, this is your chance to connect, learn, and innovate alongside a vibrant community of developers.</SPAN></P><P><SPAN><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Collage of photos from past Code Connect events" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/361582i126BE1733C3ACA09/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Collage.png" alt="Collage.png" /></span></SPAN></P><P> </P><H3 id="toc-hId-1720400065">Your Week at Code Connect</H3><H3 id="toc-hId-1523886560"><SPAN>July 13: Code Jam Sessions and Warmup</SPAN></H3><P><SPAN>Kick things off with our Code Jam sessions - a hands-on way to sharpen your skills before the main event. Afterward, join us for a pre-conference networking event to meet fellow attendees in a relaxed setting.</SPAN></P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="Logo UI5con" style="width: 200px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/361598i6723ED463E741644/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="UI5con2.png" alt="UI5con2.png" /></span></P><H3 id="toc-hId-1327373055"> </H3><H3 id="toc-hId-1130859550"> </H3><H3 id="toc-hId-934346045"><SPAN>July 14: UI5con </SPAN></H3><P>The official program kicks off with UI5con, bringing together UI5 enthusiasts to share insights, explore the latest innovations, and build new connections. Expect expert sessions, interactive workshops, and plenty of opportunities to engage with the UI5 community.</P><P><SPAN><A href="https://openui5.org/ui5con/" target="_blank" rel="noopener nofollow noreferrer">Learn more about UI5con</A>.</SPAN></P><P> </P><P><SPAN><span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="Logo reCAP" style="width: 200px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/361611i7856787EDD6734D2/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="reCAP_3.png" alt="reCAP_3.png" /></span></SPAN></P><H5 id="toc-hId-995997978"> </H5><H5 id="toc-hId-799484473"> </H5><H5 id="toc-hId-602970968"> </H5><H5 id="toc-hId-406457463"> </H5><H3 id="toc-hId--123452849"><SPAN>July 15: reCAP</SPAN></H3><P>The next day focuses on the SAP Cloud Application Programming Model (CAP). At reCAP, developers, customers, and partners meet the CAP Product Team to discuss technical concepts, share project experiences, and explore future possibilities.</P><P><SPAN><A href="https://recap-conf.dev/" target="_blank" rel="noopener nofollow noreferrer">Learn more about reCAP</A>.</SPAN></P><P> </P><P><SPAN><span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="Logo HANA Tech Con" style="width: 150px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/361578iD47004A3E8E22283/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="HANA_tech_con.png" alt="HANA_tech_con.png" /></span></SPAN></P><P> </P><P> </P><P> </P><H3 id="toc-hId--319966354"> </H3><H3 id="toc-hId--516479859">July 16: HANA Tech Con</H3><P>The week concludes with HANA Tech Con. Delve into the HANA universe and join development experts, users, and partners to exchange knowledge and ignite new ideas. If you've ever had questions about HANA that you haven't found answers to, this is your chance to get them resolved.</P><P><SPAN><A href="https://hanatech.community/" target="_blank" rel="noopener nofollow noreferrer">Learn more about HANA Tech Con</A>.</SPAN></P><P><SPAN> </SPAN></P><H2 id="toc-hId--419590357">Early Bird Process</H2><P><SPAN>Planning a longer trip? We offer a limited number of early bird tickets for attendees who need to arrange travel well in advance. </SPAN></P><P>Check our <SPAN><A href="https://code-connect.dev/faq.html" target="_blank" rel="noopener nofollow noreferrer">FAQ document</A></SPAN> for details on how to secure your ticket.</P><P> </P><H2 id="toc-hId--616103862"><SPAN>Sponsorship Opportunities</SPAN></H2><P>Be a part of Code Connect 2026 and become a sponsor to support the developer community at UI5con, reCAP, and HANA Tech Con. By sponsoring Code Connect, you gain access to a diverse audience spanning front-end developers, backend specialists, and database experts – all in one event.</P><P><SPAN>Read our <A href="https://cap.cloud.sap/resources/events/Code_Connect_2026_Sponsor_Packages.pdf" target="_blank" rel="noopener nofollow noreferrer">sponsorship prospectus</A> to check our sponsorship opportunities.</SPAN></P><P> </P><H2 id="toc-hId--812617367"><SPAN>Call for Proposals</SPAN></H2><P>Our Call for Speakers runs from 26 January to 13 March. As a speaker, you’ll be an active part of Code Connect, shaping the conversation, sharing your expertise, and inspiring the developer community. Don’t wait and submit your session proposal by 13 March at the latest.</P><UL><LI><SPAN><A href="https://ui5con.cfapps.eu12.hana.ondemand.com/" target="_blank" rel="noopener nofollow noreferrer">Call for proposals UI5con</A></SPAN></LI><LI><SPAN><A href="https://recap.cfapps.eu12.hana.ondemand.com/" target="_blank" rel="noopener nofollow noreferrer">Call for proposals reCAP</A></SPAN></LI><LI><SPAN><A href="https://hanatech.cfapps.eu12.hana.ondemand.com/" target="_blank" rel="noopener nofollow noreferrer">Call for proposals HANA Tech Con</A></SPAN></LI></UL><H2 id="toc-hId--1009130872"> </H2><H2 id="toc-hId--1205644377"><SPAN>Important Dates</SPAN></H2><UL><LI><SPAN>Call for Proposals: January 26, 2026 to March 13, 2026.</SPAN></LI><LI><SPAN>Registration Opens: April 10, 2026</SPAN></LI><LI><SPAN>Agenda Published: Early June 2026</SPAN></LI><LI><SPAN>Code Connect Week: July 13 to 16, 2026</SPAN></LI></UL><P><SPAN> </SPAN></P><H2 id="toc-hId--1402157882"><SPAN>Ready to Connect?</SPAN></H2><P><SPAN><A href="https://code-connect.dev/" target="_blank" rel="noopener nofollow noreferrer">Code Connect 2026</A> represents more than just learning opportunities. It's about building relationships, sharing knowledge, and being part of a community that's shaping the future of SAP development.</SPAN></P><P><SPAN>Join us at Code Connect 2026 and be part of a community driving the future of technology. We can't wait to see you there!</SPAN></P><P> </P>2026-01-16T10:17:39.514000+01:00https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-members/transfer-of-medical-instruments-and-implants-in-medical-device-industry/ba-p/14309286Transfer of medical instruments and implants in Medical device Industry using S/4 HANA2026-01-18T21:33:24.252000+01:00mohan_kaliyamoorthyhttps://community.sap.com/t5/user/viewprofilepage/user-id/729135<P><STRONG>Introduction: <BR /><BR />This blog outlines the leading medical device industry business process steps to Transfer medical instruments and implants needed in a surgery from one branch to another branch and provide visibility, tracking, and logistic support to the business process using S4 HANA<BR /><BR />In the field instruments and implants can be physically transferred from branch to another branch based on demand and utilization, this process needs to accurately be captured in the SAP system.<BR /><BR />When a request is received for transfer of instrument and implants between branches (consignees), from Branch A to Branch B, The SAP data model requires the execution of two transactions; first, a Consignment Pickup Order that pulls the product back to warehouse stock in the “plant of origin” and purpose-built “transfer storage location” not visible to ATP from Branch A and immediately transfer to Branch B with transfer-specific Consignment Fill Order that moves the product to the new branch.</STRONG></P><P><STRONG>Pre-requisite:</STRONG><BR /><BR /></P><UL><LI>The goods requested for transfer are consigned in the system against branch A</LI><LI>Virtual storage location set up in S4 to move stock between the rep and not visible to ATP</LI><LI>Hospitals and branches must be set up as customers</LI><LI>Instruments and Consumables set up separate materials.</LI></UL><P><STRONG>Setup Steps:</STRONG><BR /><BR /><STRONG>Configure new consignment document type</STRONG>: -<BR /><BR /><STRONG>Step 1: Define Consignment fill up and pick up document types</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document header – Define sales document type.<BR /><BR /><U>Consignment Pick up</U> – To pick up inventory from branch A back to the warehouse and virtual storage location<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_0-1768768112319.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362259iB98F29B998D93C00/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_0-1768768112319.jpeg" alt="mohan_kaliyamoorthy_0-1768768112319.jpeg" /></span></P><P><U>Consignment Fill up. – To deliver inventory to sales rep B</U><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_1-1768768112320.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362260i194A66833731BEB0/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_1-1768768112320.jpeg" alt="mohan_kaliyamoorthy_1-1768768112320.jpeg" /></span></P><P><STRONG>Step 2</STRONG>: <STRONG>Define item categories.</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document item – Define item categories<BR /><BR /><U>Consignment pick-up item category</U><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_2-1768768112321.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362261iA6B5F15FF887B7D8/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_2-1768768112321.jpeg" alt="mohan_kaliyamoorthy_2-1768768112321.jpeg" /></span></P><P><U>Consignment Fill-up Item category.</U><BR /><BR /><STRONG>Step 3</STRONG>: <STRONG>Schedule lines</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Schedule lines – Define schedule lines.<BR /><BR /><U>Consignment Pickup Schedule line.</U><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_3-1768768112324.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362262iB70CE87427D01CCD/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_3-1768768112324.jpeg" alt="mohan_kaliyamoorthy_3-1768768112324.jpeg" /></span></P><P><BR /><U>Consignment Fill up the schedule line</U><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_4-1768768112325.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362263i4445484064B51AB0/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_4-1768768112325.jpeg" alt="mohan_kaliyamoorthy_4-1768768112325.jpeg" /></span></P><P><STRONG>Step 4</STRONG>: Assign document type to the sales area.<BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document header – Assign Sales Area to Sales Document Types<BR /><BR /><STRONG>Step 5</STRONG>: Assign Item Categories<BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document item - Assign Item Categories<BR /><BR /><STRONG>Step 6: </STRONG>Assign Schedule Line Categories<BR /><BR />SPRO – Sales and Distribution – Sales document- Schedule lines - Assign Schedule Line Categories<BR /><BR /><STRONG>Process steps: -</STRONG><BR /><BR />Step 1: - Create pick up order (KA) To pick up inventory from branch A<BR /><BR /></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_5-1768768112331.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362264i4893926E2C63F7DE/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_5-1768768112331.jpeg" alt="mohan_kaliyamoorthy_5-1768768112331.jpeg" /></span></P><P> </P><P><BR />Step 2: Create Inbound delivery and receive goods in the warehouse of origin and virtual storage location.<BR /><BR /></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_6-1768768112336.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362265i3BFD788108B647AF/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_6-1768768112336.jpeg" alt="mohan_kaliyamoorthy_6-1768768112336.jpeg" /></span></P><P><BR />Step 3. Create a Consignment fill up (KB) order transfer/deliver goods to branch B<BR /><BR /></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_7-1768768112343.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362267i65BAC11A2A133A96/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_7-1768768112343.jpeg" alt="mohan_kaliyamoorthy_7-1768768112343.jpeg" /></span></P><P><BR />Step 4: Create an outbound delivery with reference to the KB Order. Pick, pack, and Issue from the virtual storage location to rep B</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_8-1768768112348.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362266i98BAE378E4F71AB5/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_8-1768768112348.jpeg" alt="mohan_kaliyamoorthy_8-1768768112348.jpeg" /></span></P><P>Step 5: Asset updated with the new functional location</P><P><STRONG>Conclusion:</STRONG><BR /><BR /></P><UL><LI>After going through the above blog, the user should have learned how to transfer goods from one branch to another using S4 HANA</LI><LI>Please provide your feedback/comments. You can ask Question / Answer for the open Questions in the <A href="https://answers.sap.com/questions/ask.html" target="_blank" rel="noopener noreferrer">SAP Community here</A></LI></UL><P><STRONG>Reference:</STRONG></P><P><A href="https://help.sap.com/docs/SAP_ERP/78e0627c34ef43879d72718e21ea517b/da65b65334e6b54ce10000000a174cb4.html" target="_blank" rel="noopener noreferrer"> SAP Help Portal</A></P><P>Authors: Mohan Kaliyamoorthy and Immanuel Godwin Johnson</P><P> </P><P> </P>2026-01-18T21:33:24.252000+01:00https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-members/fulfillment-of-trial-request-to-the-field-in-medical-device-industry-using/ba-p/14309301Fulfillment of Trial request to the field in Medical Device Industry using S/4 HANA2026-01-18T21:42:14.791000+01:00mohan_kaliyamoorthyhttps://community.sap.com/t5/user/viewprofilepage/user-id/729135<P><STRONG>Introduction: </STRONG><BR /><BR />This blog outlines the leading industry business process steps to fulfill and track customer request for trials in the field providing visibility to all stakeholders.<BR /><BR />It is common practice in the medical industry for customers to request trial of new or modified products to determine effectiveness before placing orders.</P><P>The trial products sent out from the warehouse to field must be tracked and stored appropriately when returned as these can be used across customers and geographies. This document details the fulfillment of trial products</P><P><BR />Pre-requisite:</P><UL><LI>Hospitals must be set up as customers and sales representatives as employees</LI><LI>Instruments and Consumables set up separate materials</LI><LI>Dedicated storage locations inside warehouses to store trial products</LI></UL><OL><LI><STRONG><U>Process Steps for Trial</U></STRONG></LI></OL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_0-1768768791730.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362270iC1F0631B49EF041D/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_0-1768768791730.png" alt="mohan_kaliyamoorthy_0-1768768791730.png" /></span></P><P> </P><P><STRONG>Setup Steps:</STRONG><BR /><BR /><STRONG>Configure new consignment document type</STRONG>: -<BR /><BR /><STRONG>Step 1: Define Consignment fill up and pick up document types</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document header – Define sales document type.</P><P><U>Consignment Fill up. – To deliver trial inventory to customer</U><BR /><BR /></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_1-1768768791733.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362268i5765E0FBBE0F5C2B/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_1-1768768791733.jpeg" alt="mohan_kaliyamoorthy_1-1768768791733.jpeg" /></span></P><P><BR /><U>Consignment Pick up</U> – To pick up inventory back to warehouse and dedicated storage location after trial</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_2-1768768791734.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362269i0FB85DBB23B839B5/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_2-1768768791734.jpeg" alt="mohan_kaliyamoorthy_2-1768768791734.jpeg" /></span></P><P><BR /><STRONG>Step 2</STRONG>: <STRONG>Define item categories.</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document item – Define item categories<BR /><BR /></P><P><U>Consignment Fill-up Item category.</U></P><P><U> </U><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_3-1768768791735.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362271i6803505784FBFEE2/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_3-1768768791735.png" alt="mohan_kaliyamoorthy_3-1768768791735.png" /></span></P><P><U>Consignment pick-up item category</U><BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_4-1768768791737.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362272i783CA412FAC8A7A1/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_4-1768768791737.jpeg" alt="mohan_kaliyamoorthy_4-1768768791737.jpeg" /></span></P><P><STRONG>Step 3</STRONG>: <STRONG>Schedule lines</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Schedule lines – Define schedule lines.<BR /><BR /></P><P><U>Consignment Fill up the schedule line</U><BR /><BR /></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_5-1768768791738.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362273iD5957498E3F01B8B/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_5-1768768791738.jpeg" alt="mohan_kaliyamoorthy_5-1768768791738.jpeg" /></span></P><P> </P><P><BR /><U>Consignment Pickup Schedule line.</U><BR /><BR /></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_6-1768768791740.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362274iDF4AF2AD444BA2F2/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_6-1768768791740.jpeg" alt="mohan_kaliyamoorthy_6-1768768791740.jpeg" /></span></P><P><BR /><STRONG>Step 4</STRONG>: Assign document type to the sales area.<BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document header – Assign Sales Area to Sales Document Types<BR /><BR /><STRONG>Step 5</STRONG>: Assign Item Categories<BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document item - Assign Item Categories<BR /><BR /><STRONG>Step 6: </STRONG>Assign Schedule Line Categories<BR /><BR />SPRO – Sales and Distribution – Sales document- Schedule lines - Assign Schedule Line Categories<BR /><BR /><STRONG>Process steps: -</STRONG><BR />Step 1. Create a Consignment fill up (KB) order send goods on trial from dedicated trial storage location</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_7-1768768791748.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362276i63081EEA39E32D58/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_7-1768768791748.jpeg" alt="mohan_kaliyamoorthy_7-1768768791748.jpeg" /></span></P><P><BR />Step 2: Create an outbound delivery with reference to the KB Order. Pick, pack, and Issue from the virtual storage location to rep B</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_8-1768768791752.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362275i502D42AA7BD5AA4E/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_8-1768768791752.jpeg" alt="mohan_kaliyamoorthy_8-1768768791752.jpeg" /></span></P><P>Step 4: Asset updated with the new functional location. Equipment identified as trial</P><P>Step 5: - Create pick up order (KA) To pick up inventory from customer location after trial</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_9-1768768791759.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362278i0B1B55CAF9163179/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_9-1768768791759.jpeg" alt="mohan_kaliyamoorthy_9-1768768791759.jpeg" /></span></P><P><BR />Step 2: Create Inbound delivery and receive goods in the warehouse of origin and virtual storage location.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_10-1768768791764.jpeg" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362277i215B73EC314EE760/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_10-1768768791764.jpeg" alt="mohan_kaliyamoorthy_10-1768768791764.jpeg" /></span></P><P> </P><P><BR /><STRONG>Conclusion:</STRONG><BR /><BR /></P><UL><LI>After going through the above blog, the user should have learned how to fulfill a customer request for trial of products using S4 HANA</LI><LI>Please provide your feedback/comments. You can ask Question / Answer for the open Questions in the <A href="https://answers.sap.com/questions/ask.html" target="_blank" rel="noopener noreferrer">SAP Community here</A></LI></UL><P><STRONG>Reference:</STRONG></P><P><A href="https://help.sap.com/docs/SAP_ERP/78e0627c34ef43879d72718e21ea517b/da65b65334e6b54ce10000000a174cb4.html" target="_blank" rel="noopener noreferrer"> SAP Help Portal</A></P><P>Authors: Mohan Kaliyamoorthy and Immanuel Godwin Johnson</P><P> </P>2026-01-18T21:42:14.791000+01:00https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-members/expired-product-management-in-medical-device-industry-using-s-4hana/ba-p/14310404Expired Product Management in Medical Device Industry using S/4HANA2026-01-19T18:18:41.852000+01:00mohan_kaliyamoorthyhttps://community.sap.com/t5/user/viewprofilepage/user-id/729135<P><STRONG>Introduction: </STRONG><BR /><BR />This blog outlines th leading medical device industry business process steps to return expired products from the field and to replenish for the depleted stocks due to return of expired products.<BR /><BR />In the field instruments and implants can expire for various reasons, companies regularly monitor products on the field for expiration and pull them of the shelves and replenish them with new stocks. This process prevents expired products from reaching the customers.<BR /><BR /><STRONG>Pre-requisite:</STRONG><BR /><BR /></P><UL><LI>The goods due expiration in the field consigned to customers or branch</LI><LI>The materials are tracked using reports generated out of S4</LI><LI>Hospitals and branches must be set up as customers</LI><LI>Instruments and Consumables set up separate materials.</LI></UL><P><STRONG>Process Flow:</STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_11-1768842641673.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363000iDA7871AEF111A79C/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_11-1768842641673.png" alt="mohan_kaliyamoorthy_11-1768842641673.png" /></span></P><P> </P><P><STRONG>Process Flow: Replenishment</STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_12-1768842701443.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363001iEE5643BF82C833FF/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_12-1768842701443.png" alt="mohan_kaliyamoorthy_12-1768842701443.png" /></span></P><P><STRONG>Process Flow: Return Expired</STRONG></P><P><STRONG> </STRONG><STRONG>Setup Steps:</STRONG><BR /><BR /><STRONG>Configure new consignment document type</STRONG>: -<BR /><BR /><STRONG>Step 1: Define Consignment fill up and pick up document types</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document header – Define sales document type.<BR /><BR /><U>Consignment Pick up</U> – To pick up inventory from branch A back to the warehouse and virtual storage location<BR /><BR /></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_13-1768842798543.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363002iB5662DB80FA2E073/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_13-1768842798543.png" alt="mohan_kaliyamoorthy_13-1768842798543.png" /></span></P><P><U>Consignment Fill up. – To deliver inventory to sales rep B</U></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_14-1768842828629.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363003iD415AF58B0A8441F/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_14-1768842828629.png" alt="mohan_kaliyamoorthy_14-1768842828629.png" /></span></P><P><STRONG>Step 2</STRONG>: <STRONG>Define item categories.</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document item – Define item categories<BR /><BR /><U>Consignment pick-up item category</U></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_15-1768842858340.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363004i97485B456FA2D5CD/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_15-1768842858340.png" alt="mohan_kaliyamoorthy_15-1768842858340.png" /></span></P><P><U>Consignment Fill-up Item category.</U><BR /><BR /><STRONG>Step 3</STRONG>: <STRONG>Schedule lines</STRONG><BR /><BR />SPRO – Sales and Distribution – Sales document- Schedule lines – Define schedule lines.<BR /><BR /><U>Consignment Pickup Schedule line.</U></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_16-1768842926347.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363005iCC9E8015FEC4CD33/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_16-1768842926347.png" alt="mohan_kaliyamoorthy_16-1768842926347.png" /></span></P><P><BR /><U>Consignment Fill up the schedule line</U></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_17-1768842954786.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363006i93BF9B6B5BF793EE/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_17-1768842954786.png" alt="mohan_kaliyamoorthy_17-1768842954786.png" /></span></P><P><STRONG>Step 4</STRONG>: Assign document type to the sales area.<BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document header – Assign Sales Area to Sales Document Types<BR /><BR /><STRONG>Step 5</STRONG>: Assign Item Categories<BR /><BR />SPRO – Sales and Distribution – Sales document- Sales document item - Assign Item Categories<BR /><BR /><STRONG>Step 6: </STRONG>Assign Schedule Line Categories<BR /><BR />SPRO – Sales and Distribution – Sales document- Schedule lines - Assign Schedule Line Categories<BR /><BR /><STRONG>Process steps: -</STRONG><BR /><BR />Step 1: - Create pick up order (KA) To pick up inventory from branch A</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_18-1768842985037.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363007i206DF08B95B58F58/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_18-1768842985037.png" alt="mohan_kaliyamoorthy_18-1768842985037.png" /></span></P><P><BR />Step 2: Create Inbound delivery and receive goods in the warehouse of origin and virtual storage location.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_19-1768843013970.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363008iE8858907F6ACC51F/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_19-1768843013970.png" alt="mohan_kaliyamoorthy_19-1768843013970.png" /></span></P><P>Step 3. Create a Consignment fill up (KB) order transfer/deliver goods to branch B</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_20-1768843044963.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363009iC391EDAD48B733CC/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_20-1768843044963.png" alt="mohan_kaliyamoorthy_20-1768843044963.png" /></span></P><P>Step 4: Create an outbound delivery with reference to the KB Order. Pick, pack, and Issue from the virtual storage location to rep B</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="mohan_kaliyamoorthy_21-1768843086666.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363010i7CAEF37363277B30/image-size/medium?v=v2&px=400" role="button" title="mohan_kaliyamoorthy_21-1768843086666.png" alt="mohan_kaliyamoorthy_21-1768843086666.png" /></span></P><P>Step 5: Asset updated with the new functional location</P><P><BR /><STRONG>Conclusion:</STRONG><BR /><BR /></P><UL><LI>After going through the above blog, the user should have learned how to pull back expired products from the field and replenish them with new stock in S4 HANA</LI><LI>Please provide your feedback/comments. You can ask Question / Answer for the open Questions in the <A href="https://answers.sap.com/questions/ask.html" target="_blank" rel="noopener noreferrer">SAP Community here</A></LI></UL><P><STRONG>Reference:</STRONG></P><P><A href="https://help.sap.com/docs/SAP_ERP/78e0627c34ef43879d72718e21ea517b/da65b65334e6b54ce10000000a174cb4.html" target="_blank" rel="noopener noreferrer"> SAP Help Portal</A></P><P>Authors: Mohan Kaliyamoorthy and Immanuel Godwin Johnson</P><P> </P>2026-01-19T18:18:41.852000+01:00https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219Good to know: Analyzing Runtime Dump (SAP HANA Dump Analyzer vs Visual Studio Code)2026-01-20T08:53:33.889000+01:00Laszlo_Thomahttps://community.sap.com/t5/user/viewprofilepage/user-id/170406<P><ul =""><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-1659456364">Why was this blog post created?</a></li><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-1462942859">Where can I find the most important information about the SAP HANA Dump Analyzer and Visual Studio Code - Supportability tools for SAP HANA?</a></li><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-1266429354">What are the experiences based on the comparison of the tools?</a></li><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-1069915849">Generated report inSAP HANA Dump Analyzer</a></li><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-873402344">Generated report inVisual Studio Code - Supportability tools for SAP HANA</a></li><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-676888839">What is the conclusion?</a></li><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-480375334">Other articles</a></li><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-283861829">Do you have further questions?</a></li><li style="list-style-type:disc; margin-left:0px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-sap/good-to-know-analyzing-runtime-dump-sap-hana-dump-analyzer-vs-visual-studio/ba-p/14310219#toc-hId-87348324">Contribution</a></li></ul></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="SAP_Community_Blog_Banner_2026.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362879iF2F69BC5373CC00D/image-size/large?v=v2&px=999" role="button" title="SAP_Community_Blog_Banner_2026.png" alt="SAP_Community_Blog_Banner_2026.png" /></span></P><P class="lia-align-right" style="text-align : right;"><FONT color="#FF0000">last updated: 2026-01-20</FONT></P><H1 id="toc-hId-1658532033" id="toc-hId-1659456364">Why was this blog post created?</H1><P>SAP HANA Dump Analyzer is a well-known and long-used tool. Same analysis can be done in Visual Studio Code - Supportability tools for SAP HANA (SAP Extension). It's worth getting acquainted with the new tool.</P><H1 id="toc-hId-1462942859">Where can I find the most important information about the SAP HANA Dump Analyzer and Visual Studio Code - Supportability tools for SAP HANA?</H1><P><SPAN>SAP Community Article: </SPAN><A class="" href="https://blogs.sap.com/2023/03/29/where-can-i-find-knowledge-and-information-belongs-to-sap-hana/" target="_blank" rel="noopener noreferrer">Where can I find knowledge and information belongs to SAP HANA?</A></P><UL><LI><SPAN>section </SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/where-can-i-find-knowledge-and-information-belongs-to-sap-hana/ba-p/13562344#toc-hId--22403863" target="_blank">Runtime Dump (RTE)</A></LI><LI><SPAN>section </SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/where-can-i-find-knowledge-and-information-belongs-to-sap-hana/ba-p/13562344#toc-hId--1819355222" target="_blank">SAP HANA Dump Analyzer</A></LI></UL><P><SPAN>SAP Community Article: <A class="" href="https://blogs.sap.com/2023/06/02/where-can-i-find-information-about-the-available-tools-for-sap-hana-all-types-of-use/" target="_blank" rel="noopener noreferrer">Where can I find information about the available tools for SAP HANA (all types of use)?</A></SPAN></P><UL><LI><SPAN>section </SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/where-can-i-find-information-about-the-available-tools-for-sap-hana-all/ba-p/13549330#toc-hId-2066311963" target="_blank">Visual Studio Code</A> - <A href="https://community.sap.com/t5/technology-blog-posts-by-sap/where-can-i-find-information-about-the-available-tools-for-sap-hana-all/ba-p/13549330#toc-hId-1351552132" target="_blank">Supportability tools for SAP HANA</A></LI><LI><SPAN>section </SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/where-can-i-find-information-about-the-available-tools-for-sap-hana-all/ba-p/13549330#toc-hId-1448441634" target="_blank">SAP HANA Dump Analyzer</A></LI></UL><H1 id="toc-hId-1266429354">What are the experiences based on the comparison of the tools?</H1><P>The same analysis can be performed with both tools. The presentation is slightly different, with Visual Studio Code providing a fresher, more modern look, but the information in the reports is exactly the same. If Visual Studio Code is already installed, you can access a very useful analytical tool, with just adding the necessary SAP extension.<BR /><BR /></P><TABLE border="1"><TBODY><TR><TD width="33.333333333333336%"> </TD><TD width="33.333333333333336%"><STRONG>SAP HANA Dump Analyzer</STRONG></TD><TD width="33.333333333333336%"><STRONG>Visual Studio Code - Supportability tools for SAP HANA</STRONG></TD></TR><TR><TD width="33.333333333333336%"><STRONG>Design</STRONG></TD><TD width="33.333333333333336%">Old school.</TD><TD width="33.333333333333336%">Modern.</TD></TR><TR><TD width="33.333333333333336%"><STRONG>Look and feel</STRONG></TD><TD width="33.333333333333336%">Well structured.</TD><TD width="33.333333333333336%">Well structured but more compact.</TD></TR><TR><TD><STRONG>What will be the generated result?</STRONG></TD><TD>.HTML file</TD><TD>Result will be opened in the application.</TD></TR><TR><TD><STRONG>Can the various details and data be cut and copied?</STRONG></TD><TD>Yes.</TD><TD>Yes.</TD></TR><TR><TD width="33.333333333333336%"><STRONG>Export</STRONG></TD><TD width="33.333333333333336%">.HTML file</TD><TD width="33.333333333333336%">N/A</TD></TR></TBODY></TABLE><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="SAP_Community_Blog_Image_SAPHanaDumpAnalyzer_vs_SupportabilityToolsForSAPHANA.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362912iB55FE7BBBF434F73/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="SAP_Community_Blog_Image_SAPHanaDumpAnalyzer_vs_SupportabilityToolsForSAPHANA.png" alt="SAP_Community_Blog_Image_SAPHanaDumpAnalyzer_vs_SupportabilityToolsForSAPHANA.png" /></span></P><H1 id="toc-hId-1069915849">Generated report in SAP HANA Dump Analyzer</H1><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="SAP_Hana_Dump_Analyzer.png" style="width: 757px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362916iE1AEC815DAEBCB3B/image-size/large?v=v2&px=999" role="button" title="SAP_Hana_Dump_Analyzer.png" alt="SAP_Hana_Dump_Analyzer.png" /></span></P><P>The below example shows an outcome which generated via <STRONG>"Auto Analyzer"</STRONG> option. Other option is the <STRONG>"Expert Mode"</STRONG> - - > "Runtime Dump Mini Check". In some case there is a need to to generate both type of output for better understanding the issue.</P><P>Summary Info tab where system related information and detected issues presented.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DA_1.png" style="width: 829px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362952i722C8882DEA5DC53/image-size/large?v=v2&px=999" role="button" title="DA_1.png" alt="DA_1.png" /></span></P><P>In this example HANA Workload Analysis tab exists because this kind of issue has been identified.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DA_2.png" style="width: 825px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362953i22EC52511864CD48/image-size/large?v=v2&px=999" role="button" title="DA_2.png" alt="DA_2.png" /></span></P><P>Pie chart and highlighted statement hash gives us important information regarding the issue.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DA_3.png" style="width: 819px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362955i6D6F64640EA6FE3E/image-size/large?v=v2&px=999" role="button" title="DA_3.png" alt="DA_3.png" /></span></P><P>In this example Blocked Transactions tab exists because this kind of issue has been identified.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DA_4.png" style="width: 829px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362956i6048462415895177/image-size/large?v=v2&px=999" role="button" title="DA_4.png" alt="DA_4.png" /></span></P><P>With Blocked Transaction wait Graph option we can get further details.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="DA_5.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362957i2383E7EC3792D1E1/image-size/large?v=v2&px=999" role="button" title="DA_5.png" alt="DA_5.png" /></span></P><H1 id="toc-hId-873402344">Generated report in Visual Studio Code - Supportability tools for SAP HANA</H1><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Visual_Studio_Code_Supportability_Tools_for_SAP_HANA.png" style="width: 757px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362917iFCD0491A84E30AD4/image-size/large?v=v2&px=999" role="button" title="Visual_Studio_Code_Supportability_Tools_for_SAP_HANA.png" alt="Visual_Studio_Code_Supportability_Tools_for_SAP_HANA.png" /></span></P><P>In Visual Studio Code we need to generate a work folder and import the files.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="VSC_0.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363262i8E3933B5B128BEE0/image-size/large?v=v2&px=999" role="button" title="VSC_0.png" alt="VSC_0.png" /></span></P><P>In this example High Workload tab exists because this kind of issue has been identified.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="VSC_2.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362959iCC44EC376FBF506C/image-size/large?v=v2&px=999" role="button" title="VSC_2.png" alt="VSC_2.png" /></span></P><P>In this example Many Transactions Blocked tab exists because this kind of issue has been identified.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="VSC_1.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/362961i1A76238DA7B80497/image-size/large?v=v2&px=999" role="button" title="VSC_1.png" alt="VSC_1.png" /></span></P><H1 id="toc-hId-1068991518" id="toc-hId-676888839">What is the conclusion?</H1><P>Complete analysis can be performed using Visual Studio Code without installing the previously used SAP HANA Dump Analyzer. However, the old tool can be easily exported by saving it as a simple .html file, and with this action, the entire content can be stored offline and attached to an email, case, etc.</P><H1 id="toc-hId-675964508" id="toc-hId-480375334"><SPAN>Other articles</SPAN></H1><P><span class="lia-unicode-emoji" title=":writing_hand:">✍️</span> <A href="https://blogs.sap.com/2023/03/29/where-can-i-find-knowledge-and-information-belongs-to-sap-hana/" target="_blank" rel="noopener noreferrer">Where can I find knowledge and information belongs to SAP HANA?</A><BR /><span class="lia-unicode-emoji" title=":writing_hand:">✍️</span> <A href="https://blogs.sap.com/2023/06/02/where-can-i-find-information-about-the-available-tools-for-sap-hana-all-types-of-use/" target="_blank" rel="noopener noreferrer">Where can I find information about the available tools for SAP HANA (all types of use)?</A></P><H1 id="toc-hId-479451003" id="toc-hId-283861829">Do you have further questions?</H1><P>Please do not hesitate to contact me if you have question or observation regarding the article.<BR />Q&A link for SAP HANA:<SPAN> </SPAN><A href="https://answers.sap.com/tags/73554900100700000996" target="_blank" rel="noopener noreferrer">https://answers.sap.com/tags/73554900100700000996</A> </P><H1 id="toc-hId-282937498" id="toc-hId-87348324">Contribution</H1><P>If you find any missing information belongs to the topic, please let me know. I am happy to add the new content. My intention is to maintain the content continuously to keep the info up-to-date.</P><P><FONT color="#999999"><STRONG>Release Information</STRONG></FONT></P><TABLE width="100%" cellspacing="1"><TBODY><TR><TD height="58px"><FONT color="#999999">Release Date</FONT></TD><TD height="58px"><FONT color="#999999">Description</FONT></TD></TR><TR><TD height="30px"><FONT color="#999999">2026.01.20</FONT></TD><TD height="30px"><FONT color="#999999">First/initial Release of the SAP Blog Post documentation (Technical Article).</FONT></TD></TR></TBODY></TABLE>2026-01-20T08:53:33.889000+01:00https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-sap/creating-value-in-airlines/ba-p/14312053Creating value in airlines2026-01-21T17:04:27.656000+01:00dmitry_melnikhttps://community.sap.com/t5/user/viewprofilepage/user-id/284346<P><STRONG><FONT color="#008080">MOST PROFITABLE, LARGEST, AND MOST VALUABLE ARILINE</FONT></STRONG></P><P>As we travel back from the holidays, or into year-start meetings, it may be a good time to reflect on the companies that make such travel possible. In this case, let’s examine Delta Air Lines’ transformation journey with SAP.</P><P>Specifically, let us zoom in on three related areas of transformation:<BR />1. Delta’s strategy of top customer experience, which among other things means on-time flights.<BR />2. Workforce optimization to enable upward mobility for some 100,000 people.<BR />3. Improving financial close, which was historically burdened with significant non-linearity.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2915).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363778iAB96C7164A6F4FF1/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2915).png" alt="Screenshot (2915).png" /></span><BR />These areas of Delta’s evolution show a clear connection between passenger experience, Delta’s own resources, and share- and debt-holders as providers of capital.</P><P>Let’s start from the customer excellence.<BR /> <BR /><STRONG><FONT color="#008080">ON-TIME ARRIVAL</FONT></STRONG><BR />You can see the comparison of Delta with other major global airlines: horizontally plotted are percentages of flights with on-time arrival and vertically plotted are the number of flights per year. Delta, with some of the highest number of flights in the world, is constantly improving its on-time arrival statistics and currently stands at 84%. This is an amazing achievement for such a large operation. The accolades from the media and experts are well deserved.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2916).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363779iAB423D66869ECCA6/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2916).png" alt="Screenshot (2916).png" /></span></P><P>But let’s look at what it took to achieve such operational excellence.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2917).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363780iE74C3EC3644D77E3/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2917).png" alt="Screenshot (2917).png" /></span><BR />For now, let us focus on the processes part of the equation; we will talk about people soon.<BR />The major reason for delayed flights, apart from the weather, is supplies. Catering, to be more specific. Before Delta embarked on the journey to significantly overhaul its operations, the state of the union was as follows:</P><OL><LI>Very large operations across the globe… but email communications with the suppliers.</LI><LI>Multiple items of supplies… but some not even recorded in Delta’s inventory system. For example, there were stories of half a million dollars' worth of earbuds and a million dollars' worth of blankets left in various airports without any visibility for Delta’s operational colleagues.</LI></OL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2918).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363782i283833C8EA201BD1/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2918).png" alt="Screenshot (2918).png" /></span></P><P>That had to change, and Delta did change them. To support its in-sourcing processes, the company adopted SAP IBP and SAP SAC to enable some 155 locations, 255 suppliers and 8 warehouses worldwide.<BR />As a result of demand sensing and inventory optimization, Delta was able to optimize its catering, including the weight aspect of the supplies (for example, the number of food and beverage items based on the passenger count). This, in turn, led do significant fuel savings, which cumulatively accounted for some $100m cost savings in 2024.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2919).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363783i5DD68DC12F2F7A42/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2919).png" alt="Screenshot (2919).png" /></span><BR />To sum it up, for the first strategic transformation area, not only did Delta improve its on-time arrival KPI but it also removed some costs. This brings us to the people side of the equation…</P><P><STRONG><FONT color="#008080">Workforce mobility</FONT></STRONG><BR />Operational excellence goes hand in hand with the people excellence. Especially when you know that people expenses account for a quarter of your revenue or some $15 billion, and they grow faster than revenues.<BR />The company decided to do a few things:<BR />1. Lower the educational requirements and rather train people on the job.<BR />2. Give people opportunities to advance.<BR />3. Lower the “extra shift costs” where possible.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2920).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363784iF66AB6028C1D3E2D/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2920).png" alt="Screenshot (2920).png" /></span><BR />Why this was critical becomes clear when you look at Delta’s workforce…<BR />Delta’s people represent a very diverse human resource organization, by location, type of job performed, and typical challenges.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2921).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363786iF6AD0CA06323D656/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2921).png" alt="Screenshot (2921).png" /></span><BR />So let us, together with Delta, look at one typical employee…<BR />Like many large organizations, Delta sees two significant workforce drivers: Source & Recruit and Enable & Develop.<BR />It’s the second one where the company realized it was missing a lot. Meet Eleanor, a typical high-achiever, who – through her effort on the ground – became a top performer (“red coat” in Delta’s language) but wants to push herself even higher. When Eleanor searched the corporate portal for job opportunities in Finance, some 1,100 results appeared – an impossible number to comprehend and take action on. This is what Delta’s colleagues call the “foggy gap”: the desire to learn and grow is present, but no enabler exists for that.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2922).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363788i057DA58B8E0D2D56/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2922).png" alt="Screenshot (2922).png" /></span></P><P>When the managers considered the traditional approach, they quickly realized its limitations and resulting frustration, both for the employees and for the hiring managers.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2923).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363789i5B99244CAF8FD400/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2923).png" alt="Screenshot (2923).png" /></span><BR />Therefore, Delta adopted its own, <U><STRONG>unique approach</STRONG></U>: FOCUS ON SKILLS, NOT JOB DESCRIPTION.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2924).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363790i02586D5926F5C80E/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2924).png" alt="Screenshot (2924).png" /></span><BR />During the transformation, Delta created a repository of SKILLS making it available to employee and tying skills the Delta’s HR needs. This enables the employees to focus on what they either have to have to develop, as opposed to searching through numerous job postings and trying to decipher them. The results of this approach are quite telling. Half of the managerial positions are filled with experience Delta veterans ensuring upward mobility and job satisfaction, and the central skills repository is easy to maintain and update.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2925).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363791i0F1CFB2791DAD723/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2925).png" alt="Screenshot (2925).png" /></span><BR />But most important is the overall outcome: employees who feel taken care of by Delta, take good care of the Delta customers.</P><P>Now that we have reviewed two strategic initiatives – on time flight arrival and employee mobility – we can look at another challenge Delta faced throughout the years.</P><P> </P><P><STRONG><FONT color="#008080">Nonlinearity</FONT></STRONG><BR />It is January 1. Or April1. Time to close the year or quarter. Yet during this first week of January or April, Delta receives the vast majority of its invoices including from contractors for the previous period. The week is literally flooded with work. For the year close, we are talking about some $30 billion in gross debits! That’s half of the total annual business.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2926).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363792iBC2C67B06F97D100/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2926).png" alt="Screenshot (2926).png" /></span><BR />Such contracted services come from different sources, including companies such as Unifi, an approximately $2bn and 40,000 employee strong largest provider of air services in North America. (<A href="https://tlimagazine.com/news/unifi-evolves-from-a-single-subsidiary-to-a-1-8-billion-global-aviation-services-leader/" target="_self" rel="nofollow noopener noreferrer">link</A>)<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2927).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363794i23D1975DB737AFA9/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2927).png" alt="Screenshot (2927).png" /></span><BR />Services such as plane taxying, cleaning, baggage loading, special needs passenger transportation, tie back to the on-time flight departure and arrival as well, so they are critical to Delta’s strategy...<BR />…and for Delta, such services spell into some $4 billion cost item, i.e., approximately $1bn each quarter.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2928).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363802iE6B3E85D57AFF92F/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2928).png" alt="Screenshot (2928).png" /></span><BR />Before the transformation, most of such reconciliation and postings were manual. To automate this process, Delta utilized SAP HANA as the main source of flight data, coupled it with the AI tools from Blackline, creating a more automatic incoming invoice matching and posting process.</P><P>As a result, some 2/3 ds of the accruals became automatic matches, and that trend continues. Overall, this automation significantly lessens the strain of period close and compresses the time to close, freeing oCFO colleagues’ time for higher added value work.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2929).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363805iB0A9E1A0EA6E426B/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2929).png" alt="Screenshot (2929).png" /></span><BR />But the amazing by-product of the automation is a much shorter time to publish quarterly reports. Among the major US airlines, Delta is the fastest to file its 10-Qs, the quarterly reports, therefore improving its stance with the share- and debt-holders.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2930).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363807i8F69858513B60747/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2930).png" alt="Screenshot (2930).png" /></span><BR />So, the question is, does the market notice all these Delta’s efforts to evolve across the three strategic imperatives?</P><P><STRONG><FONT color="#008080">Recap</FONT></STRONG><BR />The answer is unequivocal yes. Through its incredible journey to improve customer service, create workforce mobility, and combat non-linearity for faster financial close, in the past 5 years, Delta grew its Enterprise Value by 1.4x or at approximately 7.6% CAGR. Delta has become one of the most profitable and the most valuable airline. I am proud to say that SAP has supported Delta in every step.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2932).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363812i077AA41CE0AC2ED1/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2932).png" alt="Screenshot (2932).png" /></span></P><P class="lia-align-center" style="text-align: center;"><BR />* * *</P><P>Big debt of gratitude to my partners at SAP and, most importantly, to Delta – for being an SAP customer!</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2933).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363814i475EE9363CE81BFA/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2933).png" alt="Screenshot (2933).png" /></span></P><P> </P>2026-01-21T17:04:27.656000+01:00https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-sap/creating-value-in-airlines/ba-p/14312055Creating value in airlines2026-01-21T17:05:46.747000+01:00dmitry_melnikhttps://community.sap.com/t5/user/viewprofilepage/user-id/284346<P><STRONG><FONT color="#008080">MOST PROFITABLE, LARGEST, AND MOST VALUABLE ARILINE</FONT></STRONG></P><P>As we travel back from the holidays, or into year-start meetings, it may be a good time to reflect on the companies that make such travel possible. In this case, let’s examine Delta Air Lines’ transformation journey with SAP.</P><P>Specifically, let us zoom in on three related areas of transformation:<BR />1. Delta’s strategy of top customer experience, which among other things means on-time flights.<BR />2. Workforce optimization to enable upward mobility for some 100,000 people.<BR />3. Improving financial close, which was historically burdened with significant non-linearity.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2915).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363778iAB96C7164A6F4FF1/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2915).png" alt="Screenshot (2915).png" /></span><BR />These areas of Delta’s evolution show a clear connection between passenger experience, Delta’s own resources, and share- and debt-holders as providers of capital.</P><P>Let’s start from the customer excellence.<BR /> <BR /><STRONG><FONT color="#008080">ON-TIME ARRIVAL</FONT></STRONG><BR />You can see the comparison of Delta with other major global airlines: horizontally plotted are percentages of flights with on-time arrival and vertically plotted are the number of flights per year. Delta, with some of the highest number of flights in the world, is constantly improving its on-time arrival statistics and currently stands at 84%. This is an amazing achievement for such a large operation. The accolades from the media and experts are well deserved.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2916).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363779iAB423D66869ECCA6/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2916).png" alt="Screenshot (2916).png" /></span></P><P>But let’s look at what it took to achieve such operational excellence.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2917).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363780iE74C3EC3644D77E3/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2917).png" alt="Screenshot (2917).png" /></span><BR />For now, let us focus on the processes part of the equation; we will talk about people soon.<BR />The major reason for delayed flights, apart from the weather, is supplies. Catering, to be more specific. Before Delta embarked on the journey to significantly overhaul its operations, the state of the union was as follows:</P><OL><LI>Very large operations across the globe… but email communications with the suppliers.</LI><LI>Multiple items of supplies… but some not even recorded in Delta’s inventory system. For example, there were stories of half a million dollars' worth of earbuds and a million dollars' worth of blankets left in various airports without any visibility for Delta’s operational colleagues.</LI></OL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2918).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363782i283833C8EA201BD1/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2918).png" alt="Screenshot (2918).png" /></span></P><P>That had to change, and Delta did change them. To support its in-sourcing processes, the company adopted SAP IBP and SAP SAC to enable some 155 locations, 255 suppliers and 8 warehouses worldwide.<BR />As a result of demand sensing and inventory optimization, Delta was able to optimize its catering, including the weight aspect of the supplies (for example, the number of food and beverage items based on the passenger count). This, in turn, led do significant fuel savings, which cumulatively accounted for some $100m cost savings in 2024.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2919).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363783i5DD68DC12F2F7A42/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2919).png" alt="Screenshot (2919).png" /></span><BR />To sum it up, for the first strategic transformation area, not only did Delta improve its on-time arrival KPI but it also removed some costs. This brings us to the people side of the equation…</P><P><STRONG><FONT color="#008080">Workforce mobility</FONT></STRONG><BR />Operational excellence goes hand in hand with the people excellence. Especially when you know that people expenses account for a quarter of your revenue or some $15 billion, and they grow faster than revenues.<BR />The company decided to do a few things:<BR />1. Lower the educational requirements and rather train people on the job.<BR />2. Give people opportunities to advance.<BR />3. Lower the “extra shift costs” where possible.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2920).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363784iF66AB6028C1D3E2D/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2920).png" alt="Screenshot (2920).png" /></span><BR />Why this was critical becomes clear when you look at Delta’s workforce…<BR />Delta’s people represent a very diverse human resource organization, by location, type of job performed, and typical challenges.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2921).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363786iF6AD0CA06323D656/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2921).png" alt="Screenshot (2921).png" /></span><BR />So let us, together with Delta, look at one typical employee…<BR />Like many large organizations, Delta sees two significant workforce drivers: Source & Recruit and Enable & Develop.<BR />It’s the second one where the company realized it was missing a lot. Meet Eleanor, a typical high-achiever, who – through her effort on the ground – became a top performer (“red coat” in Delta’s language) but wants to push herself even higher. When Eleanor searched the corporate portal for job opportunities in Finance, some 1,100 results appeared – an impossible number to comprehend and take action on. This is what Delta’s colleagues call the “foggy gap”: the desire to learn and grow is present, but no enabler exists for that.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2922).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363788i057DA58B8E0D2D56/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2922).png" alt="Screenshot (2922).png" /></span></P><P>When the managers considered the traditional approach, they quickly realized its limitations and resulting frustration, both for the employees and for the hiring managers.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2923).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363789i5B99244CAF8FD400/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2923).png" alt="Screenshot (2923).png" /></span><BR />Therefore, Delta adopted its own, <U><STRONG>unique approach</STRONG></U>: FOCUS ON SKILLS, NOT JOB DESCRIPTION.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2924).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363790i02586D5926F5C80E/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2924).png" alt="Screenshot (2924).png" /></span><BR />During the transformation, Delta created a repository of SKILLS making it available to employee and tying skills the Delta’s HR needs. This enables the employees to focus on what they either have to have to develop, as opposed to searching through numerous job postings and trying to decipher them. The results of this approach are quite telling. Half of the managerial positions are filled with experience Delta veterans ensuring upward mobility and job satisfaction, and the central skills repository is easy to maintain and update.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2925).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363791i0F1CFB2791DAD723/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2925).png" alt="Screenshot (2925).png" /></span><BR />But most important is the overall outcome: employees who feel taken care of by Delta, take good care of the Delta customers.</P><P>Now that we have reviewed two strategic initiatives – on time flight arrival and employee mobility – we can look at another challenge Delta faced throughout the years.</P><P> </P><P><STRONG><FONT color="#008080">Nonlinearity</FONT></STRONG><BR />It is January 1. Or April1. Time to close the year or quarter. Yet during this first week of January or April, Delta receives the vast majority of its invoices including from contractors for the previous period. The week is literally flooded with work. For the year close, we are talking about some $30 billion in gross debits! That’s half of the total annual business.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2926).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363792iBC2C67B06F97D100/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2926).png" alt="Screenshot (2926).png" /></span><BR />Such contracted services come from different sources, including companies such as Unifi, an approximately $2bn and 40,000 employee strong largest provider of air services in North America. (<A href="https://tlimagazine.com/news/unifi-evolves-from-a-single-subsidiary-to-a-1-8-billion-global-aviation-services-leader/" target="_self" rel="nofollow noopener noreferrer">link</A>)<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2927).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363794i23D1975DB737AFA9/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2927).png" alt="Screenshot (2927).png" /></span><BR />Services such as plane taxying, cleaning, baggage loading, special needs passenger transportation, tie back to the on-time flight departure and arrival as well, so they are critical to Delta’s strategy...<BR />…and for Delta, such services spell into some $4 billion cost item, i.e., approximately $1bn each quarter.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2928).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363802iE6B3E85D57AFF92F/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2928).png" alt="Screenshot (2928).png" /></span><BR />Before the transformation, most of such reconciliation and postings were manual. To automate this process, Delta utilized SAP HANA as the main source of flight data, coupled it with the AI tools from Blackline, creating a more automatic incoming invoice matching and posting process.</P><P>As a result, some 2/3 ds of the accruals became automatic matches, and that trend continues. Overall, this automation significantly lessens the strain of period close and compresses the time to close, freeing oCFO colleagues’ time for higher added value work.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2929).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363805iB0A9E1A0EA6E426B/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2929).png" alt="Screenshot (2929).png" /></span><BR />But the amazing by-product of the automation is a much shorter time to publish quarterly reports. Among the major US airlines, Delta is the fastest to file its 10-Qs, the quarterly reports, therefore improving its stance with the share- and debt-holders.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2930).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363807i8F69858513B60747/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2930).png" alt="Screenshot (2930).png" /></span><BR />So, the question is, does the market notice all these Delta’s efforts to evolve across the three strategic imperatives?</P><P><STRONG><FONT color="#008080">Recap</FONT></STRONG><BR />The answer is unequivocal yes. Through its incredible journey to improve customer service, create workforce mobility, and combat non-linearity for faster financial close, in the past 5 years, Delta grew its Enterprise Value by 1.4x or at approximately 7.6% CAGR. Delta has become one of the most profitable and the most valuable airline. I am proud to say that SAP has supported Delta in every step.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2932).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363812i077AA41CE0AC2ED1/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2932).png" alt="Screenshot (2932).png" /></span></P><P class="lia-align-center" style="text-align: center;"><BR />* * *</P><P>Big debt of gratitude to my partners at SAP and, most importantly, to Delta – for being an SAP customer!</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot (2933).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/363814i475EE9363CE81BFA/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Screenshot (2933).png" alt="Screenshot (2933).png" /></span></P><P> </P>2026-01-21T17:05:46.747000+01:00https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-sap/violent-geometry-of-gold-from-flatlandia-to-spacelandia/ba-p/14316070Violent Geometry of Gold: from Flatlandia to Spacelandia2026-01-27T18:17:00.724000+01:00dmitry_melnikhttps://community.sap.com/t5/user/viewprofilepage/user-id/284346<P><FONT color="#008080"><STRONG>Let us talk gold. And Newmont Corp:</STRONG></FONT></P><P>Newmont Corporation (stock ticker NEM) is the world’s largest gold miner. And one of the top SAP customers. Same is true for Barrick Mining (B), its competitor and – in certain areas – a partner. For example, Barrick-Newmont JV in Nevada is the world’s largest gold complex. Barrick is also an SAP customer.</P><P>Just to put things in perspective, here is the heat map of the EV for the various players in metals and mining:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_1-1769530514792.png" style="width: 853px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365896iE9F7967FD2A002EA/image-dimensions/853x433/is-moderation-mode/true?v=v2" width="853" height="433" role="button" title="dmitry_melnik_1-1769530514792.png" alt="dmitry_melnik_1-1769530514792.png" /></span></P><P> </P><P><FONT color="#008080"><STRONG>WHY GOLD RETURNS? AND PAIRING GOLD-STOCK RETURNS</STRONG></FONT></P><P>Recent gold's ascension to unprecedented value prompted many to examine its return dynamics and correlations with various other returns. We are decided to follow suit.</P><P>First, we define returns: stock price changes in NEM and B vs price changes in gold. Specifically, the raw price data allows us to create <EM>time series of returns</EM>: first for Newmont Corporation’s stock and the second for gold. In both cases, monthly returns are defined as</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_2-1769530514794.png" style="width: 315px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365895iEAB7B07A6FCA0880/image-dimensions/315x70/is-moderation-mode/true?v=v2" width="315" height="70" role="button" title="dmitry_melnik_2-1769530514794.png" alt="dmitry_melnik_2-1769530514794.png" /></span></P><P> </P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_3-1769530514795.png" style="width: 852px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365898i86C32535D05D962E/image-dimensions/852x377?v=v2" width="852" height="377" role="button" title="dmitry_melnik_3-1769530514795.png" alt="dmitry_melnik_3-1769530514795.png" /></span></P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_4-1769530514797.png" style="width: 873px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365899i0B861A26F6D5D354/image-dimensions/873x383/is-moderation-mode/true?v=v2" width="873" height="383" role="button" title="dmitry_melnik_4-1769530514797.png" alt="dmitry_melnik_4-1769530514797.png" /></span></P><P>Dataset: we took 1985-2025 (40 years) gold prices from the World Gold Council (gold.org) and Newmont stock prices (NEM) from Yahoo Finance, turning both into <EM>returns</EM>. The resulting data contains 490 monthly returns.</P><TABLE width="993px"><TBODY><TR><TD width="287.638px">date</TD><TD width="364.8px">nem_return</TD><TD width="339.763px">gold_return</TD></TR><TR><TD width="287.638px">1985-01-01</TD><TD width="364.8px"> </TD><TD width="339.763px"> </TD></TR><TR><TD width="287.638px">1985-02-01</TD><TD width="364.8px">(0.037)</TD><TD width="339.763px">(0.011)</TD></TR><TR><TD width="287.638px">1985-03-01</TD><TD width="364.8px">0.038</TD><TD width="339.763px">0.073</TD></TR><TR><TD width="287.638px">1985-04-01</TD><TD width="364.8px">0.000</TD><TD width="339.763px">(0.019)</TD></TR><TR><TD width="287.638px">1985-05-01</TD><TD width="364.8px">0.020</TD><TD width="339.763px">0.020</TD></TR><TR><TD width="287.638px">1985-06-01</TD><TD width="364.8px">(0.075)</TD><TD width="339.763px">(0.015)</TD></TR><TR><TD width="287.638px">1985-07-01</TD><TD width="364.8px">0.072</TD><TD width="339.763px">0.006</TD></TR><TR><TD width="287.638px">1985-08-01</TD><TD width="364.8px">0.011</TD><TD width="339.763px">0.001</TD></TR><TR><TD width="287.638px">1985-09-01</TD><TD width="364.8px">(0.069)</TD><TD width="339.763px">0.016</TD></TR><TR><TD width="287.638px">1985-10-01</TD><TD width="364.8px">0.059</TD><TD width="339.763px">0.081</TD></TR><TR><TD width="287.638px">1985-11-01</TD><TD width="364.8px">0.076</TD><TD width="339.763px">0.109</TD></TR><TR><TD width="287.638px">1985-12-01</TD><TD width="364.8px">(0.018)</TD><TD width="339.763px">0.014</TD></TR><TR><TD width="287.638px">1986-01-01</TD><TD width="364.8px">0.077</TD><TD width="339.763px">(0.061)</TD></TR></TBODY></TABLE><P>And most recent ones:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_99-1769531407775.png" style="width: 539px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365995i0A09951BC867396B/image-dimensions/539x372?v=v2" width="539" height="372" role="button" title="dmitry_melnik_99-1769531407775.png" alt="dmitry_melnik_99-1769531407775.png" /></span></P><P>Let us zoom in on the first <EM>pair of returns</EM>: 1985 February saw NEM stock price decline by 0.037 and gold decline by 0.011, i.e., the two monthly returns were -0.011 and -0.037 respectively.</P><P>Pairing these returns essentially answers the following question: “Given gold moved by <EM>this</EM> amount in month <EM>t</EM>, how did Newmont move in the <EM>same</EM> month?”</P><UL><LI>Statistics call this a bivariate observation (or observation from a joint distribution)</LI><LI>Finance calls this a paired return realization (or joint asset-factor return where gold is a factor)</LI><LI>Mathematically, such paired return is point or vector in<span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_7-1769530514801.png" style="width: 32px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365897iAF6B28F42387F34D/image-dimensions/32x32?v=v2" width="32" height="32" role="button" title="dmitry_melnik_7-1769530514801.png" alt="dmitry_melnik_7-1769530514801.png" /></span>, i.e., in two-dimensional space. We will prefer the vector nomenclature here.</LI></UL><P>With the <EM>vector of returns</EM> definition in mind, we have the following for February 1985:</P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_8-1769530514801.png" style="width: 353px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365900i86D6C7502B5C8C61/image-dimensions/353x67?v=v2" width="353" height="67" role="button" title="dmitry_melnik_8-1769530514801.png" alt="dmitry_melnik_8-1769530514801.png" /></span></P><P> </P><P>Plotting all such paired returns produces the following scatterplot:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_9-1769530514802.png" style="width: 779px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365902i93E7BDEE73941F7E/image-dimensions/779x518?v=v2" width="779" height="518" role="button" title="dmitry_melnik_9-1769530514802.png" alt="dmitry_melnik_9-1769530514802.png" /></span></P><P> </P><P>As we established, each dot is a vector of returns. Visually and intuitively, the vector is an arrow starting at the origin [0,0] and extending to such observation coordinates</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_10-1769530514804.png" style="width: 121px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365901iCC0D3AFA994D03E3/image-dimensions/121x62/is-moderation-mode/true?v=v2" width="121" height="62" role="button" title="dmitry_melnik_10-1769530514804.png" alt="dmitry_melnik_10-1769530514804.png" /></span></P><P>as shown on the plot below:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_11-1769530514804.png" style="width: 696px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365904i0F6EB6BD37366FBF/image-dimensions/696x466/is-moderation-mode/true?v=v2" width="696" height="466" role="button" title="dmitry_melnik_11-1769530514804.png" alt="dmitry_melnik_11-1769530514804.png" /></span></P><P> </P><P>Put plainly, in February of 1985, both assets - gold and NEM – were down, i.e., produced negative returns. This is why the vector resides in the 3rd quadrant.</P><P>What is the magnitude, i.e., length of this vector?</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_12-1769530514806.png" style="width: 480px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365903iA5EBBEAE4BFE7D60/image-dimensions/480x24?v=v2" width="480" height="24" role="button" title="dmitry_melnik_12-1769530514806.png" alt="dmitry_melnik_12-1769530514806.png" /></span></P><P>This vector magnitude conveys the length of that month’s movement, i.e., how large the combined movement was across both gold and Newmont in February 1985. How “violent” the month was.</P><P>Close up on this vector allows us to see it in greater detail:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_13-1769530514807.png" style="width: 635px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365905i55BF269DCD4C9D02/image-dimensions/635x432/is-moderation-mode/true?v=v2" width="635" height="432" role="button" title="dmitry_melnik_13-1769530514807.png" alt="dmitry_melnik_13-1769530514807.png" /></span></P><P> </P><P>Specifically, we can visualize the movement: Newmont moved much more down than gold moved left. This specifically means: both moves into the “negative territory” but Newmont moved <EM>much more</EM>. </P><P>We estimate the angle in two ways.</P><OL><LI>Recalling SOHCAHTOA,</LI></OL><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_14-1769530514808.png" style="width: 705px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365906i9C5EFD4833D53E80/image-dimensions/705x66/is-moderation-mode/true?v=v2" width="705" height="66" role="button" title="dmitry_melnik_14-1769530514808.png" alt="dmitry_melnik_14-1769530514808.png" /></span></P><P> Since we start from the origin and go counter clock-wise to the red vector, the angle is</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_15-1769530514809.png" style="width: 457px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365907i1A114A509EB02FFB/image-dimensions/457x24/is-moderation-mode/true?v=v2" width="457" height="24" role="button" title="dmitry_melnik_15-1769530514809.png" alt="dmitry_melnik_15-1769530514809.png" /></span></P><P> </P><P>Put another way, measuring θ from the positive x-axis, we have tan(θ) = y / x, which captures relative sensitivity of NEM to gold for that month (for that realization only). This is local sensitivity, not structural beta (yet).</P><P>We use -180 degrees to match the polar coordinates. </P><OL><LI>Alternatively, using <STRONG>atan2(y, x)</STRONG>, the angle naturally places the vector in Quadrant III, confirming a joint negative regime.</LI></OL><P>Our economic interpretation is simple: the move happened in quadrant III, i.e., negative economic regime (decline for both) and we know that NEM realized over 3x of the gold negative return.</P><P>We contrast February 1985 with March, where both Newmont stock and gold went up producing positive returns:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_16-1769530514809.png" style="width: 771px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365908i8FF40904F154ADEF/image-dimensions/771x513/is-moderation-mode/true?v=v2" width="771" height="513" role="button" title="dmitry_melnik_16-1769530514809.png" alt="dmitry_melnik_16-1769530514809.png" /></span></P><P> </P><P>Here, the gold went up 2x of NEM. In other words, gold rallied strongly, NEM participated but more conservatively. Therefore,</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_17-1769530514810.png" style="width: 476px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365909i1E98DC1862E80CDC/image-dimensions/476x44/is-moderation-mode/true?v=v2" width="476" height="44" role="button" title="dmitry_melnik_17-1769530514810.png" alt="dmitry_melnik_17-1769530514810.png" /></span></P><P>Angle of 45 degrees would indicate equal movement, but our angle here is only 27.5 degrees which again indicates x-dominated change as opposed to the y-dominated one. That month, gold won.</P><P>In relative magnitude terms.</P><P>But what is important for our inference about the relationship is how much gold’s movement that month “showed up” in NEM’s return? Answer: approximately 50%. This is where the interpretation becomes interesting since we observe realization of sensitivity. We are not estimating NEM’s beta yet; but are observing the sensitivity – via vectors. In other words, we already see some asymmetry: when gold moved down in February, NEM moved down 3x. When next month gold moved up, NEM moved 0.5x.</P><P>So, we can reformulate our findings so far in this way:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_18-1769530514811.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365910i9597358661DFB6E2/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_18-1769530514811.png" alt="dmitry_melnik_18-1769530514811.png" /></span></P><P>We can start generalizing now.</P><P> </P><P><STRONG><FONT color="#008080">HOW MUCH OF NEM’s MOVEMENT IS EXPLAINED BY GOLD MOVEMENT? </FONT> </STRONG></P><P>This question can be reformulated in “vector terms”: what is the projection of the <EM>joint NEM/gold return vector</EM> onto the gold direction?</P><P>We already established that for any given month in our dataset,</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_19-1769530514811.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365911i64386FC2CCC844CC/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_19-1769530514811.png" alt="dmitry_melnik_19-1769530514811.png" /></span></P><P>Therefore, the <EM>gold direction vector</EM> is</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_20-1769530514812.png" style="width: 72px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365913i83C2FCD435FDA8E9/image-dimensions/72x42/is-moderation-mode/true?v=v2" width="72" height="42" role="button" title="dmitry_melnik_20-1769530514812.png" alt="dmitry_melnik_20-1769530514812.png" /></span></P><P> </P><P>This is a unit vector representing no NEM component.</P><P>Now we want to know how much our joint return vector – the red arrow – projects onto gold. In this particular situation, the case is trivial because the gold resides on x axis and the coordinate 0.073 easily depicts such projection. However, we want to generalize this rule for the more complicated cases where the factor (e.g., gold) direction vector is not easily located on x-axis. The projection</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_21-1769530514812.png" style="width: 275px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365912i6201621EE3957CD4/image-dimensions/275x42/is-moderation-mode/true?v=v2" width="275" height="42" role="button" title="dmitry_melnik_21-1769530514812.png" alt="dmitry_melnik_21-1769530514812.png" /></span></P><P> </P><P>Where the dot product of this projection is visually intuitive here: hypothenuse * cos (adjacent angle theta) = adjacent side (x coordinate): </P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_22-1769530514813.png" style="width: 533px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365914i7A6424A99F7DC5E0/image-dimensions/533x20/is-moderation-mode/true?v=v2" width="533" height="20" role="button" title="dmitry_melnik_22-1769530514813.png" alt="dmitry_melnik_22-1769530514813.png" /></span></P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_23-1769530514813.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365915i8300292208F14A63/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_23-1769530514813.png" alt="dmitry_melnik_23-1769530514813.png" /></span></P><P> </P><P>Note: full dot product identity is</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_25-1769530514814.png" style="width: 640px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365917i5A99499DBA90525B/image-dimensions/640x24/is-moderation-mode/true?v=v2" width="640" height="24" role="button" title="dmitry_melnik_25-1769530514814.png" alt="dmitry_melnik_25-1769530514814.png" /></span></P><P>We can verify the 0.073 projection by calculating the dot product:</P><P class="lia-align-center" style="text-align: center;">(r * g) = (0.073, 0.038) * (1, 0) = 0.073 * 1 + 0.038 * 0 = 0.073</P><P>Alternatively,</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_27-1769530514815.png" style="width: 588px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365919i0D94EF22CFF3ED65/image-dimensions/588x40/is-moderation-mode/true?v=v2" width="588" height="40" role="button" title="dmitry_melnik_27-1769530514815.png" alt="dmitry_melnik_27-1769530514815.png" /></span></P><P>In plain English, the red vector points 0.073 in the gold direction, or the gold-aligned component has magnitude of 0.073. Financially, we can say that in March 1985, 0.073 of the total movement is explained by gold (that month).</P><P>We can now reverse the logic of the dot product definition, or, put another way, we can create a second question:</P><P> </P><TABLE><TBODY><TR><TD width="312"><P>Our first question</P></TD><TD width="312"><P> --> Our second question</P></TD></TR><TR><TD width="312"><P>How much r (i.e., total magnitude of this month’s combined change) projects onto gold?</P></TD><TD width="312"><P>What fraction of the total vector’s length, i.e., ||r|| lies in the gold direction?</P></TD></TR><TR><TD width="312"><P>Hypothenuse x cos(theta) = adjacent size:</P></TD><TD width="312"><P> </P></TD></TR><TR><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_28-1769530514816.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365920i93074FC5F63224F8/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_28-1769530514816.png" alt="dmitry_melnik_28-1769530514816.png" /></span><P> </P><P> </P></TD><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_29-1769530514817.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365923i2D345B1FB4AA8971/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_29-1769530514817.png" alt="dmitry_melnik_29-1769530514817.png" /></span><P> </P><P> </P></TD></TR><TR><TD width="312"><P>Scalar – in this case length along x axis</P></TD><TD width="312"><P>Ratio inside the triangle =</P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_30-1769530514817.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365922i4F9A43F6295EDC1E/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_30-1769530514817.png" alt="dmitry_melnik_30-1769530514817.png" /></span><P> </P></TD></TR><TR><TD width="312"><P>How many percentage points of this month’s NEM+gold move lie along gold.</P></TD><TD width="312"><P>Fraction of the joint vector aligned with gold. Explanatory share. Early “predecessor” of R2 in OLS.</P></TD></TR></TBODY></TABLE><P>Since we asked the question how much the joint movement is gold-aligned, we ought to investigate the other part as well:</P><P> </P><P><STRONG><FONT color="#008080">WHAT HAPPENS TO THE PART WHICH IS NOT GOLD-ALIGNED?</FONT> </STRONG></P><P>Financially, this question centers on non-gold, i.e., NEM-idiosyncratic returns (movements in price). These movements are uncorrelated with the gold movements. Well, “uncorrelated” applies to the entire data set, so for one month, the lack of relationship here is better explained as <EM>orthogonal to the gold direction by construction (uncorrelated only in aggregate)</EM>. We define orthogonality month by month; we <EM>discover</EM> correlation across the entire period.</P><P>Let us again use March 1985 since we are familiar with this month’s returns. Mathematically, we express the “gold unrelated” NEM movement (return) as orthogonal vector. In plain English, this is the “leftover” which has zero alignment with gold:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_31-1769530514818.png" style="width: 156px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365921i22ED9B1EC83AF8C3/image-dimensions/156x36/is-moderation-mode/true?v=v2" width="156" height="36" role="button" title="dmitry_melnik_31-1769530514818.png" alt="dmitry_melnik_31-1769530514818.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_32-1769530514818.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365925iAA55302E0205D2DD/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_32-1769530514818.png" alt="dmitry_melnik_32-1769530514818.png" /></span></P><P>In vector form, this orthogonal vector (perpendicular to the gold projection) is</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_33-1769530514819.png" style="width: 281px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365926iA8D53606F49E6D53/image-dimensions/281x38/is-moderation-mode/true?v=v2" width="281" height="38" role="button" title="dmitry_melnik_33-1769530514819.png" alt="dmitry_melnik_33-1769530514819.png" /></span></P><P>i.e., difference between two vectors: joint movement vector – its projection onto gold. Why is this vector perpendicular to the “gold vector”? Because we made gold our explanatory variable. If we were to use the typical regression language, gold return[s] is the independent (predictor) variables while NEM’s return[s] is the dependent (predicted) variable. Clearly, the relationship in reality may be bi-directional and more nuanced, but for now we made “an executive decision”, so to speak: treat gold as the explanatory and NEM as the explained variable (x and y respectively). This is why the orthogonal vector (blue arrow) is perpendicular to the “gold vector.”</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_34-1769530514819.png" style="width: 721px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365927iA9EFE4F5510FEF4E/image-dimensions/721x440?v=v2" width="721" height="440" role="button" title="dmitry_melnik_34-1769530514819.png" alt="dmitry_melnik_34-1769530514819.png" /></span></P><P> </P><P>Financially,</P><UL><LI>the dotted line vector along the x axis (the “gold vector”) says, “What did NEM return because of the gold movement this month?” (assuming linearity, not causality, and no stability over time)</LI><LI>while the vertical blue vector says, “What did NEM return that cannot be explained by gold this month?”</LI></UL><P>Given this distinction, we can treat the orthogonal (blue) vector as a residual: it provides the gold-unexplained return on the NEM stock. In other words, the <STRONG>projection of the joint vector onto gold</STRONG> represents the gold-explained component of NEM, while the blue vector depicts the gold-unexplained portion of the NEM return.</P><P>Now that we defined the joint return vector as</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_35-1769530514820.png" style="width: 573px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365928i1E7EA08C06C83C55/image-dimensions/573x43/is-moderation-mode/true?v=v2" width="573" height="43" role="button" title="dmitry_melnik_35-1769530514820.png" alt="dmitry_melnik_35-1769530514820.png" /></span></P><P>we can plot the gold returns on the x-axis and such residuals on the y-axis:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_36-1769530514821.png" style="width: 811px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365930iD6EDC6EE2289F0AF/image-dimensions/811x533/is-moderation-mode/true?v=v2" width="811" height="533" role="button" title="dmitry_melnik_36-1769530514821.png" alt="dmitry_melnik_36-1769530514821.png" /></span></P><P> </P><P> </P><TABLE><TBODY><TR><TD width="146"><P><STRONG><FONT color="#008080">Geometry</FONT></STRONG></P></TD><TD width="203"><P><STRONG><FONT color="#008080">Mathematics</FONT></STRONG></P></TD><TD width="138"><P><STRONG><FONT color="#008080">Statistic</FONT></STRONG></P></TD><TD width="138"><P><STRONG><FONT color="#008080">Finance</FONT></STRONG></P></TD></TR></TBODY></TABLE><P> </P><TABLE><TBODY><TR><TD width="146"><P>We can see that the residual vectors reside in the direction perpendicular to gold. We do not see any systematic tilt left: the cloud of the returns is centered on y=0 and appears symmetric. In other words, we observe typical orthogonality in</P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_37-1769530514823.png" style="width: 66px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365929iFFB644D4A981D823/image-dimensions/66x21/is-moderation-mode/true?v=v2" width="66" height="21" role="button" title="dmitry_melnik_37-1769530514823.png" alt="dmitry_melnik_37-1769530514823.png" /></span><P> </P><P> </P><P><SPAN>This is the “geometric heart” of the OLS regression.</SPAN></P><P> </P></TD><TD width="203"><P>From construction:</P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_38-1769530514823.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365932i918FFEE73BD1CDC1/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_38-1769530514823.png" alt="dmitry_melnik_38-1769530514823.png" /></span><P> </P><P>By definition of projection (our earlier dot product definition):</P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_39-1769530514824.png" style="width: 118px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365931i19C8C9A577435394/image-dimensions/118x24/is-moderation-mode/true?v=v2" width="118" height="24" role="button" title="dmitry_melnik_39-1769530514824.png" alt="dmitry_melnik_39-1769530514824.png" /></span><P> </P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_40-1769530514824.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365933iEAAB9C19B35921E2/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_40-1769530514824.png" alt="dmitry_melnik_40-1769530514824.png" /></span><P> </P><P>Fitted line is approximately flat, so correlation is</P><P><SPAN>corr</SPAN><SPAN>(</SPAN><SPAN>Gold</SPAN><SPAN>,</SPAN><SPAN>rt</SPAN><SPAN>,</SPAN><SPAN>⊥</SPAN><SPAN></SPAN><SPAN>)</SPAN><SPAN>≈</SPAN><SPAN>−0.016</SPAN></P><P><SPAN> </SPAN></P><P> </P></TD><TD width="138"><P>We estimate beta as:</P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_41-1769530514825.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365934i64AB93D779E6CFEE/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_41-1769530514825.png" alt="dmitry_melnik_41-1769530514825.png" /></span><P> </P><P> </P><P>This means that when gold moves by 1 unit, NEM moves by 0.075 units. In other words, +1% gold month corresponds, on average, to +0.075% month for NEM price change. NB! this beta reflects monthly decimal returns and should not be compared directly to conventional annualized betas.</P><P> </P><P>Residual:</P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_42-1769530514825.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365936iB2A1BD9863D86B56/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_42-1769530514825.png" alt="dmitry_melnik_42-1769530514825.png" /></span><P> </P><P> </P><P> </P><P> </P></TD><TD width="138"><P>Beta of gold is the systematic gold-driven component of NEM (linear approximation). This is important for the decision to hedge, increase or decrease gold exposure (via NEM stock), and alleviate macroeconomic shocks.</P><P> </P><P>The residual is everything else specific to NEM: mine issues, management decisions and execution, even market noise (equity moves unrelated to gold).</P></TD></TR></TBODY></TABLE><P>In sum: this plot shows that once we remove the gold-aligned component of NEM’s returns, what remains is geometrically orthogonal, statistically uncorrelated, and economically idiosyncratic.</P><P> </P><P><FONT color="#008080"><STRONG>MANY VECTORS: WHICH ONE BEST DESCRIBES THEM ALL?</STRONG></FONT></P><TABLE width="624px"><TBODY><TR><TD width="311.6px"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_43-1769530514826.png" style="width: 386px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365935i838D5D350A8022FD/image-dimensions/386x269/is-moderation-mode/true?v=v2" width="386" height="269" role="button" title="dmitry_melnik_43-1769530514826.png" alt="dmitry_melnik_43-1769530514826.png" /></span><P> </P></TD><TD width="311.6px"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_44-1769530514827.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365938i1AB31BEE09F23FB7/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_44-1769530514827.png" alt="dmitry_melnik_44-1769530514827.png" /></span><P> </P></TD></TR></TBODY></TABLE><P>As we established earlier, dot product of two vectors measures how much one vector moves along the other, like joint vector movement along gold we described earlier. Given we have many joint returns (490 precisely), i.e., vectors v1, v2, …, vn (depicted in different colors above), how can we find a single direction vector u such that vectors have large projections onto u? Let us define “large” first.</P><P>If we sum just the projections, some resulting scalars will have negative sign and some positive, so some positive and negative months would cancel. We would get “net drift” but this is a different story. So, what do we do?</P><P>Like we do in estimate variance, we square the projections:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_45-1769530514827.png" style="width: 281px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365939iFFF6F469E2F1E686/image-dimensions/281x26/is-moderation-mode/true?v=v2" width="281" height="26" role="button" title="dmitry_melnik_45-1769530514827.png" alt="dmitry_melnik_45-1769530514827.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_46-1769530514828.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365937iD3733C12F05692D8/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_46-1769530514828.png" alt="dmitry_melnik_46-1769530514828.png" /></span></P><P>Therefore, we are looking for the unit vector u which maximizes such sum of squares, or “squared projection”:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_47-1769530514828.png" style="width: 201px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365940iF0F569FAAC95148A/image-dimensions/201x73/is-moderation-mode/true?v=v2" width="201" height="73" role="button" title="dmitry_melnik_47-1769530514828.png" alt="dmitry_melnik_47-1769530514828.png" /></span></P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_48-1769530514829.png" style="width: 523px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365941iD9F5D182C3256BA6/image-dimensions/523x17/is-moderation-mode/true?v=v2" width="523" height="17" role="button" title="dmitry_melnik_48-1769530514829.png" alt="dmitry_melnik_48-1769530514829.png" /></span></P><P>With the NEM/Gold example, this algorithm chooses a joint Gold–NEM movement direction that explains <STRONG>as much total magnitude of monthly co-movement as possible</STRONG>, <EM>regardless of the sign</EM>.</P><P>Here is the resulting projection. Given the maximization of the “squared projection” algorithm above, this line has the following meaning: when we orthogonally project <EM>all monthly vectors</EM> onto this line, the <STRONG>total squared length of those projections is maximized</STRONG>.</P><P> </P><TABLE><TBODY><TR><TD width="472"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_49-1769530514829.png" style="width: 473px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365942i1C5DD85F84F15E5E/image-dimensions/473x330/is-moderation-mode/true?v=v2" width="473" height="330" role="button" title="dmitry_melnik_49-1769530514829.png" alt="dmitry_melnik_49-1769530514829.png" /></span><P> </P></TD><TD width="152"><P>· <FONT size="2">Line is almost vertical, which means that NEM returns dominate</FONT></P><P><FONT size="2">· This is a line, meaning direction +/-u are equivalent: bulls and crashes equally matter</FONT></P><P><FONT size="2">· Interestingly, our data is clustered around the x axis and is horizontally distributed… but clustering near the x-axis means large <EM>directional</EM> alignment with the x-axis, but not necessarily large <EM>magnitude-weighted</EM> projections: even modest-angle but high-magnitude vertical component yt dominates the squared length (magnitude is quadratic).</FONT></P></TD></TR><TR><TD width="623"><P>In other words, many small calm months near horizontal “yield to” fewer crisis / equity-shock months with large vertical magnitude.</P><P>· Gold moves often, but modestly</P><P>· NEM moves less often, but violently</P><P>· Our algorithm rewards <STRONG>violent months quadratically, i.e., though high energy of such months</STRONG></P></TD></TR></TBODY></TABLE><P>These findings may feel counter-intuitive at first, therefore we ought to explore it with the vector magnitudes in mind.</P><P>We recall that each joint movement vector (paired return vector which we started with) has the following length, or magnitude:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_50-1769530514830.png" style="width: 528px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365943i088B53979EEDDD04/image-dimensions/528x45/is-moderation-mode/true?v=v2" width="528" height="45" role="button" title="dmitry_melnik_50-1769530514830.png" alt="dmitry_melnik_50-1769530514830.png" /></span></P><P>But we remember that our maximization algorithm squares such vector:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_51-1769530514830.png" style="width: 191px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365944i340611A473D52884/image-dimensions/191x74/is-moderation-mode/true?v=v2" width="191" height="74" role="button" title="dmitry_melnik_51-1769530514830.png" alt="dmitry_melnik_51-1769530514830.png" /></span></P><P>In plain English – perhaps not entire correctly but intuitively – vector length is the hypothenuse. Its projection (the adjacent side) is hypothenuse multiplied by cos(angle) – this comes from the Pythagorean identity. But the maximization algorithm, <STRONG>squares</STRONG> such projection (the dot product of v and u above). The hypotenuse measures how large each vector is but contains <STRONG>no information about orientation</STRONG>, so it cannot distinguish between directions; projections introduce directional dependence, and squaring them yields a rotation-sensitive, non-canceling measure of how much joint movement lies along a candidate direction.</P><TABLE width="624px"><TBODY><TR><TD width="311.55px"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_52-1769530514831.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365945i2773E663CDBC64E2/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_52-1769530514831.png" alt="dmitry_melnik_52-1769530514831.png" /></span><P> </P></TD><TD width="311.65px"><P>Panel 1 on the top plots each vector (i.e., joint movement as a vector from the origin). Most months live in a tight band near zero, but a <EM>few months spike dramatically</EM> (1987, 1998, 2008, 2015, 2020).</P></TD></TR><TR><TD width="311.65px"><P>Pane 2 in the middle conveys the energy. Since monthly returns are max 0.77 for NEM and 0.18 for gold, squaring them makes them smaller. But the relative importance of such violent months rises.</P></TD></TR><TR><TD width="311.65px"><P>Panel 3 conveys that clearly: out of 490 months (40 years of data), just 12 (!) have over a quarter of energy.</P></TD></TR></TBODY></TABLE><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="13 - Violent months dominate.png" style="width: 751px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365997i1974938225C3637B/image-dimensions/751x530?v=v2" width="751" height="530" role="button" title="13 - Violent months dominate.png" alt="13 - Violent months dominate.png" /></span></P><P>Our geometric findings map to the financial interpretation:</P><UL><LI>Most months: small, noisy co-movement between gold and NEM</LI><LI>Rare months: <STRONG>systemic stress or regime shifts</STRONG><UL><LI>1987 crash</LI><LI>1998 LTCM / Russia default</LI><LI>2008 GFC</LI><LI>2020 COVID</LI></UL></LI><LI>Those months define the <STRONG>economic meaning</STRONG> of “joint movement”</LI></UL><P>What surprises me here: though most months cluster near the horizontal axis, a few high-energy months dominate the squared-projection algorithm; consequently, the optimal direction aligns with those violent joint movements rather than with the calm majority.</P><P>So, we might have proven that violent / high energy months translate into the near vertical orientation of the optimized line, the line that represents single direction of all 490 vectors. What does it mean? It does not mean that gold returns are irrelevant or NEM returns are completely independent. Rather, we can conclude that the dominant joint-movement direction in 1985-2025 is driven by NEM’s variability, not by gold’s average alignment.</P><P>The economically meaningful joint shocks between gold and Newmont are equity-driven, not metal-price-driven.</P><P><STRONG> </STRONG></P><P><FONT color="#008080"><STRONG>CROSS-PRODUCT: WHAT CAN IT TELL US ABOUT NEM AND GOLD?</STRONG></FONT></P><P>We will be quickly moving from the ‘Flatlandia’ (to paraphrase Edwin Abbott) into ‘Spacelandia’ or into</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_53-1769530514832.png" style="width: 46px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365947iD90E74ABFCAE9552/image-dimensions/46x40/is-moderation-mode/true?v=v2" width="46" height="40" role="button" title="dmitry_melnik_53-1769530514832.png" alt="dmitry_melnik_53-1769530514832.png" /></span></P><P>Let us pick two months: February and March of 1985. We remember that the joint movement (or joint return) vectors had the following coordinates (see table above):</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_54-1769530514833.png" style="width: 475px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365946i799F0E0B7F313A91/image-dimensions/475x19?v=v2" width="475" height="19" role="button" title="dmitry_melnik_54-1769530514833.png" alt="dmitry_melnik_54-1769530514833.png" /></span></P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_55-1769530514833.png" style="width: 209px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365948i47DF6283DF181B7A/image-dimensions/209x26/is-moderation-mode/true?v=v2" width="209" height="26" role="button" title="dmitry_melnik_55-1769530514833.png" alt="dmitry_melnik_55-1769530514833.png" /></span></P><P> </P><P>Their cross product is defined as</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_56-1769530514834.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365950i74E1F8EFBF5EB14A/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_56-1769530514834.png" alt="dmitry_melnik_56-1769530514834.png" /></span></P><P> </P><P>We can see this cross product as the 3rd axis vector sticking up, i.e., perpendicular to the plane of the two original vectors. Small red vector here:</P><TABLE><TBODY><TR><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_57-1769530514834.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365951i2ED3E2666B241E85/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_57-1769530514834.png" alt="dmitry_melnik_57-1769530514834.png" /></span><P> </P></TD><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_58-1769530514835.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365952iDE92D4CB46950000/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_58-1769530514835.png" alt="dmitry_melnik_58-1769530514835.png" /></span><P> </P></TD></TR></TBODY></TABLE><P>This red upward looking vector is small because we multiply numbers which are each below |1|. Interestingly, the magnitude of this vector represents the area of the parallelogram formed by the two original vectors,</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_59-1769530514835.png" style="width: 153px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365953iD2DECBE6F053B12F/image-dimensions/153x29/is-moderation-mode/true?v=v2" width="153" height="29" role="button" title="dmitry_melnik_59-1769530514835.png" alt="dmitry_melnik_59-1769530514835.png" /></span></P><P> </P><TABLE><TBODY><TR><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_60-1769530514836.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365954iB8B00A66508DF29C/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_60-1769530514836.png" alt="dmitry_melnik_60-1769530514836.png" /></span><P> </P></TD><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_61-1769530514837.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365955iA744AD1184899E0D/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_61-1769530514837.png" alt="dmitry_melnik_61-1769530514837.png" /></span><P> </P></TD></TR></TBODY></TABLE><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="14 - Dot Product 3.png" style="width: 624px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365999i0FBA7FA5F8B1EE34/image-dimensions/624x377/is-moderation-mode/true?v=v2" width="624" height="377" role="button" title="14 - Dot Product 3.png" alt="14 - Dot Product 3.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="14 - Dot Product 4.png" style="width: 624px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/366000i85841F2BCDC77D3F/image-dimensions/624x411/is-moderation-mode/true?v=v2" width="624" height="411" role="button" title="14 - Dot Product 4.png" alt="14 - Dot Product 4.png" /></span></P><P>To check ourselves, let us calculate the area of this parallelogram “by hand”:</P><OL><LI>Let us find the length of each vector:<UL><LI><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_62-1769530514837.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365956i1A8C4FC7A869943B/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_62-1769530514837.png" alt="dmitry_melnik_62-1769530514837.png" /></span><P> </P></LI><LI><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_63-1769530514838.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365957i369259E7353BCB0E/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_63-1769530514838.png" alt="dmitry_melnik_63-1769530514838.png" /></span><P> </P></LI></UL></LI><LI>Now, let us use the green vector<span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_64-1769530514838.png" style="width: 39px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365958i12A4099E7DF6E03B/image-dimensions/39x22/is-moderation-mode/true?v=v2" width="39" height="22" role="button" title="dmitry_melnik_64-1769530514838.png" alt="dmitry_melnik_64-1769530514838.png" /></span> as the base. Area of parallelogram is given by the A=base * height where height = slanted side * sin(angle between slanted and base).<UL><LI>To find the sine of the angle we use the dot product and then the relationship between the dot product, magnitude, and angle.</LI><LI>Dot product is<span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_65-1769530514839.png" style="width: 450px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365959i69CA42ABFDB358D5/image-dimensions/450x18/is-moderation-mode/true?v=v2" width="450" height="18" role="button" title="dmitry_melnik_65-1769530514839.png" alt="dmitry_melnik_65-1769530514839.png" /></span><P> </P></LI><LI><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_66-1769530514839.png" style="width: 538px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365961i2F8F234CEB5BDACA/image-dimensions/538x43?v=v2" width="538" height="43" role="button" title="dmitry_melnik_66-1769530514839.png" alt="dmitry_melnik_66-1769530514839.png" /></span><P> </P></LI></UL></LI></OL><OL><LI><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_67-1769530514840.png" style="width: 557px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365960i99B2E7D9F9BE5C8F/image-dimensions/557x20/is-moderation-mode/true?v=v2" width="557" height="20" role="button" title="dmitry_melnik_67-1769530514840.png" alt="dmitry_melnik_67-1769530514840.png" /></span><P> </P></LI></OL><P>I find it amazing that this barely visible “z-axis” orthogonal vector – the cross product of our two Feb and March vectors – is indeed the area of the parallelogram formed by the two vectors.</P><P>What does the cross-product vector – or the parallelogram area – mean for NEM and gold? The magnitude of the orthogonal vector (or area of the parallelogram) represents the joint “volatility” volume, or the degree of <EM>uncorrelated</EM> movement between gold and NEM. Well, <EM>more correctly</EM>, the area measures <STRONG>directional misalignment x magnitude across two realizations</STRONG>.</P><P>The larger the area of such parallelogram (or the height of the orthogonal vector), the more NEM and gold moved freely independently, and the smaller the area, the more they acted “in sync”. If gold and NEM were perfectly “correlated” (this is not correlation yet – which requires many observations) during these two months, the parallelogram would collapse into a single line and the orthogonal vector would be zero in length. Therefore, in such a scenario, a portfolio of two assets – NEM and gold – would offer no diversification benefit for those realizations.</P><P>On the other hand, ideal diversification scenario for these two realizations would be the maximum parallelogram area, where</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_68-1769530514840.png" style="width: 397px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365962i1DD382467175EE83/image-dimensions/397x30/is-moderation-mode/true?v=v2" width="397" height="30" role="button" title="dmitry_melnik_68-1769530514840.png" alt="dmitry_melnik_68-1769530514840.png" /></span></P><P>and the orthogonal vector is maximal in length (magnitude).</P><P> </P><P>As a recap for our two asset / two vector situation:</P><UL><LI>Two joint-return vectors (Month 1 and Month 2) form a parallelogram</LI><LI>Its area equals the magnitude of the cross product</LI><LI>Zero area ⇔ perfect directional alignment</LI><LI>Area measures <STRONG>directional change + scale</STRONG> (not correlation in statistics)</LI></UL><P>Now we can ask ourselves about multiple month pairs within the entire 1985-2025 time horizon: what may the cross product of such pairs tell us? </P><P> </P><TABLE><TBODY><TR><TD width="312"><P>There is no cross product of the entire period, but we can calculate multiple cross products of <EM>month pairs</EM> and plot the distribution of such parallelogram areas (aka cross product orthogonal vectors).</P><P> </P><P>As a reminder: the smaller the area, the more in sync gold and NEM moved (more colinear) and the larger the area, the more different the returns were: regime break (exogenous events perhaps) and strong directional disagreement / magnitude mismatch.</P></TD><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_69-1769530514841.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365963i8C9228E881245477/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_69-1769530514841.png" alt="dmitry_melnik_69-1769530514841.png" /></span><P> </P></TD></TR></TBODY></TABLE><P> </P><P><STRONG> </STRONG></P><TABLE><TBODY><TR><TD width="312"><H1 id="toc-hId-1659633365"><FONT size="3" color="#008080">Rolling 2 <EM>adjacent</EM> months, i.e., 489 2-month pairs (t, t+1)</FONT></H1></TD><TD width="312"><H1 id="toc-hId-1463119860"><FONT size="3" color="#008080">All possible month pairs, i.e., 119,805 pairs</FONT></H1></TD></TR><TR><TD width="312"><H1 id="toc-hId-1266606355"><FONT size="3" color="#008080">How do co-movements (joint returns) for gold and NEM change month to month?</FONT></H1></TD><TD width="312"><H1 id="toc-hId-1070092850"><FONT size="3" color="#008080">Global cloud geometry</FONT></H1></TD></TR><TR><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_70-1769530514841.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365964i7D9B3886142BAFA6/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_70-1769530514841.png" alt="dmitry_melnik_70-1769530514841.png" /></span><P> </P></TD><TD width="312"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_71-1769530514841.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365965i88D52FDDCB605869/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_71-1769530514841.png" alt="dmitry_melnik_71-1769530514841.png" /></span><P> </P></TD></TR><TR><TD width="312"><P>We see how right skewed data is. Again, many calm months witness relatively “synchronized” movements of gold and NEM returns (left handside). But there are “violent” months where returns are very “uncoordinated” both in direction (angular disagreement) and magnitude. In sum, the right handside area of this boxplot represent macroeconomic events and market stress.</P></TD><TD width="312"><P>This full-pair geometry reinforces the same idea, just with many more pairs.</P></TD></TR><TR><TD width="623"><P>Calm months dominate in count, violent months dominate in impact. </P><P>Consistent with our earlier findings.</P></TD></TR></TBODY></TABLE><P><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="19 boxplot 1.png" style="width: 636px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/366003iCBE9A2167B4DBE79/image-dimensions/636x451/is-moderation-mode/true?v=v2" width="636" height="451" role="button" title="19 boxplot 1.png" alt="19 boxplot 1.png" /></span></STRONG><STRONG> </STRONG></P><P><STRONG> </STRONG></P><P><FONT color="#008080"><STRONG>3D “SPACELANDIA” WITH A 3RD ASSET: WHAT CAN WE LEARN?</STRONG></FONT></P><P>First, let us add another company: Barrick Mining.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_72-1769530514842.png" style="width: 738px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365966i589A956F9BB0B568/image-dimensions/738x308/is-moderation-mode/true?v=v2" width="738" height="308" role="button" title="dmitry_melnik_72-1769530514842.png" alt="dmitry_melnik_72-1769530514842.png" /></span></P><P>With this addition, our raw data of returns has one more column:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_73-1769530514843.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365967i1C5282BEE63E8C65/image-size/medium?v=v2&px=400" role="button" title="dmitry_melnik_73-1769530514843.png" alt="dmitry_melnik_73-1769530514843.png" /></span></P><P> </P><P>Let us now visualize the 3D space of December 2025:</P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_74-1769530514844.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365968iA6F5565DF0C1D791/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_74-1769530514844.png" alt="dmitry_melnik_74-1769530514844.png" /></span></P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_75-1769530514844.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365969iEC88FA5BFE69B2DC/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_75-1769530514844.png" alt="dmitry_melnik_75-1769530514844.png" /></span></P><P> </P><P>Here <STRONG><FONT color="#008080"><EM>i, j, k</EM></FONT></STRONG> denote the standard unit vectors along the Gold (x-), NEM (y-), and Barrick (z-) axes, respectively.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_76-1769530514845.png" style="width: 717px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365970iFCF86D32F214A211/image-dimensions/717x416/is-moderation-mode/true?v=v2" width="717" height="416" role="button" title="dmitry_melnik_76-1769530514845.png" alt="dmitry_melnik_76-1769530514845.png" /></span></P><P> </P><P> </P><P>This single 3D joint-movement vector represents one realization (joint movement returns) in Gold–NEM–Barrick space.<BR /><STRONG>To examine diversification and independence across the three assets, we zoom in on how such vectors <EM>span three-dimensional space across time</EM>.</STRONG></P><P><FONT color="#008080"><STRONG>While in Flatlandia (2D) the cross product of two vectors - two joint return vectors for Gold and NEM – produced the area of parallelogram (how coordinated or uncoordinated return moves), in Spacelandia (3D), the triple scalar product of three vectors produces the volume of a parallelepiped:</STRONG></FONT></P><P><STRONG> </STRONG><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_77-1769530514846.png" style="width: 291px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365973i0E7CC26B5552304F/image-dimensions/291x29/is-moderation-mode/true?v=v2" width="291" height="29" role="button" title="dmitry_melnik_77-1769530514846.png" alt="dmitry_melnik_77-1769530514846.png" /></span></P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_78-1769530514846.png" style="width: 462px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365971i0FC4FDE834D0A074/image-dimensions/462x15/is-moderation-mode/true?v=v2" width="462" height="15" role="button" title="dmitry_melnik_78-1769530514846.png" alt="dmitry_melnik_78-1769530514846.png" /></span></P><P>Thus, this means that now we are looking at three months, e.g., December, November, and October 2025.</P><P>In other words,</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_79-1769530514846.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365972i37B4970ADE9E70C2/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_79-1769530514846.png" alt="dmitry_melnik_79-1769530514846.png" /></span></P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_80-1769530514846.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365974iFD0BB591AF279D1D/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_80-1769530514846.png" alt="dmitry_melnik_80-1769530514846.png" /></span></P><P>and so on.</P><P> </P><H3 id="toc-hId-1131744783"><FONT color="#008080">What does the formula mean geometrically?</FONT></H3><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_81-1769530514847.png" style="width: 106px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365976i66483FF9B4C47A78/image-dimensions/106x79/is-moderation-mode/true?v=v2" width="106" height="79" role="button" title="dmitry_melnik_81-1769530514847.png" alt="dmitry_melnik_81-1769530514847.png" /></span></P><P><SPAN></SPAN> is vector <STRONG>perpendicular</STRONG> to the plane spanned by</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_82-1769530514847.png" style="width: 46px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365975iFB4964A6E1E27A67/image-dimensions/46x46/is-moderation-mode/true?v=v2" width="46" height="46" role="button" title="dmitry_melnik_82-1769530514847.png" alt="dmitry_melnik_82-1769530514847.png" /></span></P><P> </P><UL><LI>Its magnitude</LI><LI><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_83-1769530514847.png" style="width: 76px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365979i60A6187AAD29F6D2/image-dimensions/76x41/is-moderation-mode/true?v=v2" width="76" height="41" role="button" title="dmitry_melnik_83-1769530514847.png" alt="dmitry_melnik_83-1769530514847.png" /></span><P> </P> is the <STRONG>area</STRONG> of the parallelogram built on</LI><LI><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_84-1769530514848.png" style="width: 49px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365978iC74E43393B8A4D85/image-dimensions/49x45/is-moderation-mode/true?v=v2" width="49" height="45" role="button" title="dmitry_melnik_84-1769530514848.png" alt="dmitry_melnik_84-1769530514848.png" /></span><P> </P></LI><LI>Then</LI><LI><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_85-1769530514848.png" style="width: 124px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365977i1257A215594494D8/image-dimensions/124x50/is-moderation-mode/true?v=v2" width="124" height="50" role="button" title="dmitry_melnik_85-1769530514848.png" alt="dmitry_melnik_85-1769530514848.png" /></span><P> </P> takes the <STRONG>component of </STRONG></LI><LI><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="dmitry_melnik_86-1769530514849.png" style="width: 23px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365980i922D254F159E9A40/image-dimensions/23x57/is-moderation-mode/true?v=v2" width="23" height="57" role="button" title="dmitry_melnik_86-1769530514849.png" alt="dmitry_melnik_86-1769530514849.png" /></span><P> </P><SPAN><STRONG></STRONG></SPAN> in the perpendicular direction, i.e., “height”</LI><LI>So, <STRONG>volume = base area × height</STRONG>.</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_87-1769530514849.png" style="width: 696px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365982iB34756D1152F34D1/image-dimensions/696x468/is-moderation-mode/true?v=v2" width="696" height="468" role="button" title="dmitry_melnik_87-1769530514849.png" alt="dmitry_melnik_87-1769530514849.png" /></span></P><P> </P><TABLE width="654"><TBODY><TR><TD width="330"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_88-1769530514850.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365981i24DBF99E9AD29238/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_88-1769530514850.png" alt="dmitry_melnik_88-1769530514850.png" /></span><P> </P></TD><TD width="324"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_89-1769530514851.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365983i8EBD022327320C64/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="dmitry_melnik_89-1769530514851.png" alt="dmitry_melnik_89-1769530514851.png" /></span><P> </P></TD></TR></TBODY></TABLE><P> </P><H3 id="toc-hId-935231278"><FONT color="#008080">What does “big vs small volume” mean financially? How many <EM>independent directions</EM> did the system move across those 3 months.</FONT></H3><UL><LI><STRONG>Volume ≈ 0</STRONG>: the 3 monthly joint-movement vectors are nearly <STRONG>coplanar / linearly dependent</STRONG>.<BR /><EM>Across these three months, the Gold–NEM–Barrick system mostly moved in one common pattern; nothing ‘new’ happened in the 3-asset relationship.</EM></LI><LI><STRONG>Large volume</STRONG>: the three months span a genuinely <STRONG>3D chunk of space</STRONG>.<BR /><EM>Across these three months, the relationship among Gold, NEM, and Barrick produced a new linearly independent shock pattern—these assets did not just scale up/down together; their co-movement structure shifted.</EM></LI></UL><P>Like we did in the Flatlandia with the cross products across the entire time period (490 months – 1 because of rolling adjacent 2-month convention), for Spacelandia, we can perform the same for the rolling adjacent 3 month parallelepiped volumes:</P><P> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_90-1769530514851.png" style="width: 666px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365985iC51CF89AFBA7BC8D/image-dimensions/666x481/is-moderation-mode/true?v=v2" width="666" height="481" role="button" title="dmitry_melnik_90-1769530514851.png" alt="dmitry_melnik_90-1769530514851.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_91-1769530514852.png" style="width: 652px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365984i0FFF3C832DD9BBEE/image-dimensions/652x487/is-moderation-mode/true?v=v2" width="652" height="487" role="button" title="dmitry_melnik_91-1769530514852.png" alt="dmitry_melnik_91-1769530514852.png" /></span></P><P> </P><P>We observe somewhat similar picture: there are a lot of calm months where the volume of the RD parallelepiped is small (joint return movements appear synchronized in direction and magnitude) and there are “violent” months where such joint return movements are misaligned in direction and magnitude (volume of the resulting parallelepiped is high).</P><P> </P><H3 id="toc-hId-738717773"><FONT color="#008080">Finance Color #1: It clicked: diversification is <EM>episodic</EM>, not average</FONT></H3><P>Our geometry shows that diversification between gold and mining equities (NEM and B) is <STRONG>state-dependent</STRONG>, not constant:</P><UL><LI>Most months: small areas / volumes → assets behave as if driven by a common macro regime</LI><LI>Rare months: large areas / volumes → diversification <EM>suddenly becomes real</EM></LI></UL><P>Therefore,</P><UL><LI>long-run correlations look “moderate”</LI><LI>but portfolio protection often shows up <STRONG>only during stress</STRONG></LI></UL><P>In other words, this geometry captures <STRONG>when diversification matters</STRONG>, not just <EM>whether it exists on average</EM>.</P><H3 id="toc-hId-542204268"><FONT color="#008080">Finance Color #2: Volumes identify regime <EM>transitions</EM>, not just volatility</FONT></H3><P>This is the “value add” by geometry:</P><UL><LI>Large <STRONG>magnitudes</STRONG> = volatility</LI><LI>Large <STRONG>areas</STRONG> = change in <EM>pairwise structure</EM></LI><LI>Large <STRONG>volumes</STRONG> = change in <EM>system structure</EM></LI></UL><P>So, a large rolling 3-month volume is not “just a volatile period” — it is a period in which the <EM>relationship</EM> among Gold, Newmont, and Barrick itself changed. Financial models break down, hedging become unstable, new factors emerge and/or replace previous ones.</P><P>As an extra step, I re-examined the history of various events “surrounding” such extreme returns on the right handside. Picking just a few of those located on the most far end of the x-axis, yields the following picture and details below:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_92-1769530514853.png" style="width: 851px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365987iB90A72136215E36D/image-dimensions/851x602/is-moderation-mode/true?v=v2" width="851" height="602" role="button" title="dmitry_melnik_92-1769530514853.png" alt="dmitry_melnik_92-1769530514853.png" /></span></P><P>Rare large-volume rolling 3-month windows (chronological)</P><H3 id="toc-hId-345690763"><FONT size="4"><STRONG>1986-04 → 1986-06</STRONG></FONT></H3><UL><LI><STRONG>Macro / markets:</STRONG> Post-Volcker disinflation environment (CPI in us at 10-14% so Feds increased the rate beyond 20%); USD strength and falling inflation expectations.</LI><LI><STRONG>Gold:</STRONG> Weak and unstable price action as real rates rose.</LI><LI><STRONG>Miners:</STRONG> Equity-specific adjustments amplified moves relative to gold.</LI><LI><STRONG>Why volume spikes:</STRONG> Gold and miners responded differently to shifting rate expectations, breaking the usual “gold proxy” behavior.</LI></UL><H3 id="toc-hId-149177258"><FONT size="4"><STRONG>1987-08 → 1987-10</STRONG></FONT></H3><UL><LI><STRONG>Macro / markets:</STRONG> Lead-up to and aftermath of the <STRONG>October 1987 stock market crash (on Oct 19, 1987 Dow Jones lost 22%)</STRONG>.</LI><LI><STRONG>Gold:</STRONG> Initially mixed, then benefited as a crisis hedge.</LI><LI><STRONG>Miners:</STRONG> Extreme equity volatility dominated fundamentals.</LI><LI><STRONG>Why volume spikes:</STRONG> Equity shock introduced a new independent direction orthogonal to gold’s behavior. Liquidity “evaporated” so the correlation is almost 1.</LI></UL><H3 id="toc-hId--122567616"><FONT size="4"><STRONG>1998-08 → 1998-10</STRONG></FONT></H3><UL><LI><STRONG>Macro / markets:</STRONG> <STRONG>Russian default (domestic debt and subsequent ruble devaluation) + Long-Term Capital Management crisis (ironically, LTCM, a hedge fund, was founded by Nobel Prize laureates in Economics including Robert Merton and Myron Scholes)</STRONG>; severe global risk aversion.</LI><LI><STRONG>Gold:</STRONG> Safe-haven demand surged after prolonged weakness.</LI><LI><STRONG>Miners:</STRONG> Sharp equity dislocations due to leverage and funding stress.</LI><LI><STRONG>Why volume spikes:</STRONG> Breakdown of historical gold–miner co-movement during systemic stress.</LI></UL><H3 id="toc-hId--319081121"><FONT size="4"><STRONG>1999-09 → 1999-11</STRONG></FONT></H3><UL><LI><STRONG>Macro / markets:</STRONG> Late-cycle equity exuberance (NASDAQ is in vertical ascent) approaching dot-com peak. Traditional valuations? Dismissed.</LI><LI><STRONG>Gold:</STRONG> Structural weakness, including sales (not purchases!) by Central banks.</LI><LI><STRONG>Miners:</STRONG> Equity market forces overwhelmed commodity linkage. They traded like ordinary stocks rather than gold-linked assets.</LI><LI><STRONG>Why volume spikes:</STRONG> Miners decouple from gold amid speculative equity flows.</LI></UL><H3 id="toc-hId--515594626"><FONT size="4"><STRONG>2008-09 → 2008-11/12 → 2009-02</STRONG></FONT></H3><UL><LI><STRONG>Macro / markets:</STRONG> Systemic collapse after Lehman, followed by rapid stabilization via extraordinary monetary intervention.</LI><LI><STRONG>Gold:</STRONG> Immediate safe-haven surge during panic, then sustained strength as QE and monetary debasement expectations formed.</LI><LI><STRONG>Miners:</STRONG> Initial collapse with equities despite rising gold, followed by a violent rebound once equity markets stabilized.</LI><LI><STRONG>Why volume spikes:</STRONG> Two-phase regime shift — first forced deleveraging overrides gold linkage, then re-alignment as the system transitions into a new equilibrium.</LI></UL><H2 id="toc-hId--418705124"><FONT size="4"><STRONG>2016-01 → 2016-03 — Global growth scare → commodity & gold rebound</STRONG></FONT></H2><UL><LI><STRONG>Macro / markets:</STRONG> Early-2016 global risk-off driven by an oil collapse (oil drops to some $26/barrel – lowest in a decade), China growth fears, and recession concerns; sentiment stabilized by March. Feds: in late 2015 raise rates to 0.5% first time since 2006 (akin to “emergency policy is about to end”)</LI><LI><STRONG>Gold:</STRONG> Strong rally as investors sought safety and repriced lower real rates.</LI><LI><STRONG>Miners:</STRONG> Sharp rebound as gold surged and balance-sheet fears eased. Both NEM and B enter 2016 <STRONG>deeply out of favor</STRONG>. Had spent years cutting costs, selling assets, and repairing balance sheets.</LI><LI><STRONG>Why volume spikes:</STRONG> Sudden regime shift — from deflation panic to reflation relief — forced rapid repositioning in gold and mining equities.</LI></UL><P>These simple bullet points provide just some color to how high can the volumes go. As a reminder: the volumes here (triple scalar product) represent<EM> how different the returns</EM> were. Large volumes - the outliers we discuss – indicate situations where gold returns continued but NEM and B returns changed drastically; key is that these returns moved differently relative to each other.</P><P> </P><P><FONT color="#008080"><STRONG>RECAP: GEOMETRY = FRIEND OR FOE?</STRONG></FONT></P><P>In this note we examined the relationship between gold and Newmont returns through a geometric lens, gradually expanding the dimensionality of analysis. Then we added Barrick returns and therefore examined even more nuanced interplay of gold and equities as well as time (regimes such as calm months vs. economic and market stress).</P><P>First came monthly gold–Newmont returns as <STRONG>joint movement vectors</STRONG> in two-dimensional space. Vector projections allowed decomposing each month’s movement into a gold-aligned component and an orthogonal component. This orthogonal residual is geometrically perpendicular to the gold direction by construction, statistically uncorrelated in aggregate, and economically interpretable as NEM-specific behavior (e.g., disposition of a mine, acquisition, or any other NEM-specific and gold-agnostic corporate and market factor). This construction reveals the geometric foundation of linear regression without invoking probabilistic assumptions.</P><P>Moving beyond individual months: <STRONG>many joint-return vectors simultaneously</STRONG> allow – via the maximized squared projections direction - showing that a small number of high-energy months dominate the long-run joint behavior of gold and Newmont (joint return-wise). Calm months are numerous but economically secondary; crisis periods define the dominant co-movement structure.</P><P>The <STRONG>cross product</STRONG> starts bridging Flatlandia to Spacelandia allowing to examine how joint return behavior changes across time. The area of the parallelogram formed by two monthly joint-movement vectors - or the resulting orthogonal vector magnitude - captures directional misalignment and scale across realizations. Rolling and global distributions of these areas reveal a strongly right-skewed structure: most months are synchronized, while rare episodes reflect regime breaks and stress. Calm months dominate in count; violent months dominate in impact. In a sense, the newly formed “z-axis” cross-product confirms the findings of the [purely 2D] squared projections.</P><P>Adding Barrick Mining price moves turns this into the 3D “<STRONG>Gold–Newmont–Barrick space</STRONG>.” Here, diversification and independence are no longer captured by areas but by <STRONG>volumes</STRONG>, measured via the scalar triple product of three joint-movement vectors. Rolling three-month volumes quantify whether the system behaves as effectively two-dimensional or explores genuinely three-dimensional dynamics. Periods of large volume correspond to shifts in the joint structure of returns rather than simple increases in volatility. Our findings here are consistent with those above (projections and cross-products):</P><P>The economic meaning of gold–mining equity (NEM an B) relationships is defined not by average behavior, but by rare, high-energy episodes in which co-movement geometry changes. Vector geometry provides a unified language to describe projection, residuals, regime shifts, and diversification in a way that is intuitive, rigorous, and directly interpretable for financial decision-making.</P><P>Perhaps this picture for the 24 years of the market from Visual Capitalist (<A href="https://elements.visualcapitalist.com/wp-content/uploads/2024/04/Gold-Price-vs-Gold-Mining-Stocks-2000-2024_03272024-1.jpg" target="_blank" rel="noopener nofollow noreferrer">link</A>) provides an independent validation for our findings:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_93-1769530514854.jpeg" style="width: 537px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365988iB57DF3348503CEEB/image-dimensions/537x671/is-moderation-mode/true?v=v2" width="537" height="671" role="button" title="dmitry_melnik_93-1769530514854.jpeg" alt="dmitry_melnik_93-1769530514854.jpeg" /></span></P><P> </P><P> </P><P><FONT color="#008080"><STRONG>ANOTHER RECAP: “SO WHAT” REGARDING THE VECTORS AS ANALYTICAL TOOLS?</STRONG></FONT></P><P>Throughout the analysis, it was becoming clearer to me that, on one hand, findings from the previous layer of complexity – e.g., projections and simple orthogonal vector – repeated with the next level of complexity. So, the question becomes, ‘Why go to another level of complexity then?” On the other hand, certain additional insights emerge with the growing complexity and increasing dimensionality of the analyses (from ‘Flatlandia’ to ‘Spacelandia’).</P><P>This table attempts to summarize the incremental value of the growing dimensionality: from “simple 2D” to “transitional 2D” (cross product and resulting orthogonal vector) to the “full 3D”:</P><P> </P><TABLE><TBODY><TR><TD><P><FONT size="4" color="#008080"><STRONG>Layer / Tool</STRONG></FONT></P></TD><TD><P><FONT size="4" color="#008080"><STRONG>Dimensional Regime</STRONG></FONT></P></TD><TD><P><FONT size="4" color="#008080"><STRONG>Mathematical Object</STRONG></FONT></P></TD><TD><P><FONT size="4" color="#008080"><STRONG>What It Measures (Plain English)</STRONG></FONT></P></TD><TD><P><FONT size="4" color="#008080"><STRONG>What It Adds Beyond Previous Layer</STRONG></FONT></P></TD><TD><P><FONT size="4" color="#008080"><STRONG>Concrete Insight in <EM>This</EM> Note</STRONG></FONT></P></TD><TD><P><FONT size="4" color="#008080"><STRONG>Executive-Level “So What”</STRONG></FONT></P></TD></TR><TR><TD><P><STRONG>Vector Projection (starting point)</STRONG></P></TD><TD><P><STRONG>1D (within 2D space)</STRONG></P></TD><TD><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_94-1769530514855.png" style="width: 71px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365986i53FF72B6A965F4B6/image-dimensions/71x41/is-moderation-mode/true?v=v2" width="71" height="41" role="button" title="dmitry_melnik_94-1769530514855.png" alt="dmitry_melnik_94-1769530514855.png" /></span><P> </P></TD><TD><P>How much a month aligns with the <STRONG>main co-movement direction</STRONG></P></TD><TD><P>Establishes baseline linear relationship</P></TD><TD><P>Most months weakly aligned; few dominate</P></TD><TD><P>“Most months don’t move the needle.”</P></TD></TR><TR><TD><P><STRONG>Squared Projection</STRONG></P></TD><TD><P><STRONG>1D (within 2D space)</STRONG></P></TD><TD><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_95-1769530514855.png" style="width: 78px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365991i147FDD578670722A/image-dimensions/78x28/is-moderation-mode/true?v=v2" width="78" height="28" role="button" title="dmitry_melnik_95-1769530514855.png" alt="dmitry_melnik_95-1769530514855.png" /></span><P> </P></TD><TD><P>Energy contributed <STRONG>along</STRONG> that direction</P></TD><TD><P>Removes sign noise; highlights dominance</P></TD><TD><P>Tail months dominate total energy</P></TD><TD><P>“Risk contribution is extremely uneven over time.”</P></TD></TR><TR><TD><P><STRONG>Orthogonal Component</STRONG></P></TD><TD><P><STRONG>2D (full plane)</STRONG></P></TD><TD><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_96-1769530514856.png" style="width: 109px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365989i656ACB51B8F65F60/image-dimensions/109x25/is-moderation-mode/true?v=v2" width="109" height="25" role="button" title="dmitry_melnik_96-1769530514856.png" alt="dmitry_melnik_96-1769530514856.png" /></span><P> </P></TD><TD><P>How much of the move <STRONG>cannot be explained</STRONG> by the main relationship</P></TD><TD><P>Separates expected vs. unexpected behavior</P></TD><TD><P>Large deviations cluster in turbulent periods</P></TD><TD><P>“This is when the hedge breaks down.”</P></TD></TR><TR><TD><P><STRONG>Cross Product (Area)</STRONG></P></TD><TD><P><STRONG>Bridge: 2D → 3D</STRONG></P></TD><TD><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_97-1769530514856.png" style="width: 107px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365990iE06FAD82FB2695B6/image-dimensions/107x23/is-moderation-mode/true?v=v2" width="107" height="23" role="button" title="dmitry_melnik_97-1769530514856.png" alt="dmitry_melnik_97-1769530514856.png" /></span><P> </P></TD><TD><P>Month-to-month <STRONG>instability</STRONG> in direction & magnitude</P></TD><TD><P>Introduces dynamics and curvature</P></TD><TD><P>Right-skewed: calm regimes, violent breaks</P></TD><TD><P>“Relationships don’t drift — they snap.”</P></TD></TR><TR><TD><P><STRONG>Scalar Triple Product (Volume)</STRONG></P></TD><TD><P><STRONG>True 3D space</STRONG></P></TD><TD><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="dmitry_melnik_98-1769530514857.png" style="width: 118px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/365992i7BA61FA2DB8D4BB7/image-dimensions/118x22/is-moderation-mode/true?v=v2" width="118" height="22" role="button" title="dmitry_melnik_98-1769530514857.png" alt="dmitry_melnik_98-1769530514857.png" /></span><P> </P></TD><TD><P>Whether movements require <STRONG>three independent dimensions</STRONG></P></TD><TD><P>Tests incremental diversification</P></TD><TD><P>Large volumes occur only in crisis windows</P></TD><TD><P>“The third asset matters only under stress.”</P></TD></TR></TBODY></TABLE><P>What feels like increasing mathematical complexity may be a <STRONG>controlled expansion of dimensional <EM>freedom</EM></STRONG>. </P><UL><LI>Earlier tools deliberately restrict the analysis to one direction inside a plane: <EM>is there a dominant relationship at all?</EM></LI><LI>Orthogonal components then allow full 2D freedom: <EM>when does that relationship fail?</EM></LI><LI>The cross product is the bridge—while still living in 2D, it produces a vector that <STRONG>points out of the plane</STRONG>, signaling instability and curvature over time.</LI><LI>Finally, the scalar triple product moves fully into 3D, asking the hardest question: <EM>do three assets truly span independent risk space, or are they effectively planar?</EM></LI></UL><P>I expected the higher dimensionality tools to overturn some earlier results. But they kept <EM>confirming</EM> them. Perhaps the fact that all layers of complexity for all assets – gold, NEM and Barrick - converge on the same story is actually a sort of <EM>validation</EM>. Each added dimension removes a potential excuse: “it’s just linear,” “it’s just volatility,” “it’s just scale.” Remaining is a conclusion: <FONT color="#008080"><STRONG>risk, instability, and diversification all concentrate in rare, high-stress episodes</STRONG></FONT>. This is the insight from 40 years of gold, NEM and B returns.</P>2026-01-27T18:17:00.724000+01:00https://community.sap.com/t5/sap-codejam-blog-posts/sap-codejam-roadshow-2026-brazil-edition-kicking-off-in-march-and/ba-p/14317926SAP CodeJam Roadshow 2026 - Brazil edition 🇧🇷 (Kicking off in March and continuing in April)2026-01-30T12:35:15.511000+01:00ajmaradiagahttps://community.sap.com/t5/user/viewprofilepage/user-id/107<P>Oi SAP Developers!</P><P data-unlink="true">I've got some exciting news to share with you. The SAP CodeJam roadshow is coming back to Latin America! This time, we will do a special edition in Brazil. We will have many stops on the roadshow starting the 1st week of March, doing CodeJams as part of SAP Inside Tracks, organised by local community members, and then continuing in April. Also, we'll organise a couple of meet-ups as we've done in previous year. :-).</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG><EM><FONT color="#3366FF">Keep an eye on this blog post as more events will be announced as part of the roadshow shortly</FONT></EM></STRONG></P><H3 id="toc-hId-1917837094"><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="brazil-roadshow-map.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/370537i3BD0309CC0223DBA/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="brazil-roadshow-map.png" alt="brazil-roadshow-map.png" /></span></STRONG></H3><P> </P><H3 id="toc-hId-1721323589"><STRONG>SAP CodeJam events and meetups part of the roadshow (Register Now!)</STRONG></H3><P>Below is a listing of the SAP CodeJam events and quedadas (meetups) on the roadshow schedule:</P><TABLE width="705px"><TBODY><TR><TD width="157px" height="50px"><P><STRONG>Dates</STRONG></P></TD><TD width="243px" height="50px"><P><STRONG>CodeJam topic</STRONG></P></TD><TD width="201px" height="50px"><P><STRONG>Location</STRONG></P></TD><TD width="104px" height="50px"><P><STRONG>Registration<BR /></STRONG></P></TD></TR><TR><TD width="157px" height="77px">2 Mar</TD><TD width="243px" height="77px"><P>Build AI services using the CAP and Generative AI Hub</P></TD><TD width="201px" height="77px"><P>Campinas, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD width="104px" height="77px"><P><A href="https://community.sap.com/t5/sap-codejam/build-ai-services-using-the-cap-and-generative-ai-hub-campinas-brazil/ev-p/14317691" target="_blank">Link</A></P></TD></TR><TR><TD width="157px" height="97px">3 Mar</TD><TD width="243px" height="97px"><P>Joule Studio: Create Joule Skills and Agents Without Coding</P></TD><TD width="201px" height="97px"><P>São Paulo, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P><P><span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD width="104px" height="97px"><P><A href="https://community.sap.com/t5/sap-codejam/joule-studio-create-joule-skills-and-agents-without-coding-s%C3%A3o-paulo-brazil/ev-p/14317678" target="_blank">Link</A></P></TD></TR><TR><TD width="157px" height="97px">3 Mar</TD><TD width="243px" height="97px"><P><EM><FONT color="#3366FF">São Paulo meetup</FONT></EM></P></TD><TD width="201px" height="97px"><P>São Paulo, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD width="104px" height="97px"><P><A href="https://community.sap.com/t5/s%C3%A3o-paulo-events/meet-up-s%C3%A3o-paulo-2026-03-03-brazilroadshow2026/ec-p/14319322#M38" target="_self">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>4 Mar</P></TD><TD width="243px" height="77px"><P>SAP Build: Create Event-Based Processes</P></TD><TD width="201px" height="77px"><P>São Paulo, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD width="104px" height="77px"><P><A href="https://community.sap.com/t5/sap-codejam/sap-build-create-event-based-processes-s%C3%A3o-paulo-brazil/ev-p/14317705" target="_blank">Link</A></P></TD></TR><TR><TD width="157px" height="97px"><P>5 Mar</P></TD><TD width="243px" height="97px"><P>Getting started with Generative AI Hub on SAP AI Core</P></TD><TD width="201px" height="97px"><P>Rio de Janeiro, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD width="104px" height="97px"><P><A href="https://community.sap.com/t5/sap-codejam/getting-started-with-generative-ai-hub-on-sap-ai-core-rio-de-janeiro-brazil/ev-p/14317716" target="_blank">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>13 Mar</P></TD><TD width="243px" height="77px"><P>Getting started with Generative AI Hub on SAP AI Core</P></TD><TD width="201px" height="77px">Joinville, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px" height="77px"><P><A href="https://community.sap.com/t5/sap-codejam/getting-started-with-generative-ai-hub-on-sap-ai-core-joinville-brazil/ev-p/14322316" target="_self">Link</A></P></TD></TR><TR><TD width="157px"><P>14 Mar</P></TD><TD width="243px"><P>SAP Inside Track - Joinville</P></TD><TD width="201px"><P>Joinville, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD width="104px"><P><A href="https://community.sap.com/t5/joinville-events/eb-p/joinvilleoccasion-board" target="_self">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>20 Mar</P></TD><TD width="243px" height="77px"><P>Getting started with Generative AI Hub on SAP AI Core</P></TD><TD width="201px" height="77px">Belo Horizonte, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px" height="77px"><P><A href="https://community.sap.com/t5/sap-codejam/getting-started-with-generative-ai-hub-on-sap-ai-core-belo-horizonte-brazil/ev-p/14322967" target="_self">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>21 Mar</P></TD><TD width="243px" height="77px"><P>SAP Inside Track - Belo Horizonte</P></TD><TD width="201px" height="77px">Belo Horizonte, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px" height="77px"><P><A href="https://community.sap.com/t5/belo-horizonte-events/sap-inside-track-belo-horizonte-21-mar%C3%A7o-de-2026/ev-p/14317172" target="_self">Link</A></P></TD></TR><TR><TD width="157px"><P>6 Apr</P></TD><TD width="243px"><P>Combine SAP CAP with SAP HANA Cloud to Create Full-Stack App</P></TD><TD width="201px" height="97px"><P>São Paulo, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD width="104px" height="97px"><P><A href="https://community.sap.com/t5/sap-codejam/combine-sap-cap-with-sap-hana-cloud-to-create-full-stack-app-s%C3%A3o-paulo/ev-p/14322980" target="_self">Link</A></P></TD></TR><TR><TD width="157px"><P>7 Apr</P></TD><TD width="243px"><P>ABAP AI: Capabilities in SAP Joule for Developers CodeJam</P></TD><TD width="201px" height="77px"><P>São Paulo, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD width="104px" height="77px"><P><A href="https://community.sap.com/t5/sap-codejam/abap-ai-capabilities-in-sap-joule-for-developers-codejam-s%C3%A3o-paulo-brazil/ev-p/14322983" target="_blank">Link</A></P></TD></TR><TR><TD width="157px"><P>8 Apr</P></TD><TD width="243px"><P><SPAN>ABAP AI: Capabilities in SAP Joule for Developers CodeJam</SPAN></P></TD><TD width="201px">Londrina, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px"><P><A href="https://community.sap.com/t5/sap-codejam/abap-ai-capabilities-in-sap-joule-for-developers-codejam-londrina-brazil/ec-p/14324622#M1084" target="_self">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>10 Apr</P></TD><TD width="243px" height="77px"><P>Getting started with Generative AI Hub on SAP AI Core</P></TD><TD width="201px" height="77px">Curitiba, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px" height="77px"><P><A href="https://community.sap.com/t5/sap-codejam/getting-started-with-generative-ai-hub-on-sap-ai-core-curitiba-brazil/ev-p/14322976" target="_self">Link</A></P></TD></TR><TR><TD><P>10 Apr</P></TD><TD><P>SAP HANA Cloud for AI Applications: ML, Vectors, and Knowledge Graphs</P></TD><TD><P>Ribeirão Preto, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></P></TD><TD><P><A href="https://community.sap.com/t5/sap-codejam/sap-hana-cloud-for-ai-applications-ml-vectors-and-knowledge-graphs-ribeir%C3%A3o/ev-p/14330764" target="_self">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>13 Apr</P></TD><TD width="243px" height="77px"><P>SAP HANA Cloud for AI Applications: ML, Vectors, and Knowledge Graphs</P></TD><TD width="201px" height="77px">São Leopoldo, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px"><P><A href="https://community.sap.com/t5/sap-codejam/sap-hana-cloud-for-ai-applications-ml-vectors-and-knowledge-graphs-s%C3%A3o/ev-p/14330771" target="_self">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>14 Apr</P></TD><TD width="243px" height="77px"><P>Build code-based AI Agents on SAP BTP</P></TD><TD width="201px" height="77px">São Leopoldo, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px"><P><A href="https://community.sap.com/t5/sap-codejam/build-code-based-ai-agents-on-sap-business-technology-platform-s%C3%A3o-leopoldo/ev-p/14330791" target="_self">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>16 Apr</P></TD><TD width="243px" height="77px"><P>SAP HANA Cloud for AI Applications: ML, Vectors, and Knowledge Graphs</P></TD><TD width="201px" height="77px">Recife, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px"><P><A href="https://community.sap.com/t5/sap-codejam/sap-hana-cloud-for-ai-applications-ml-vectors-and-knowledge-graphs-recife/ev-p/14330773" target="_self">Link</A></P></TD></TR><TR><TD width="157px" height="77px"><P>17 Apr</P></TD><TD width="243px" height="77px"><P>Build code-based AI Agents on SAP BTP</P></TD><TD width="201px" height="77px">Recife, Brazil <span class="lia-unicode-emoji" title=":brazil:">🇧🇷</span></TD><TD width="104px"><P><A href="https://community.sap.com/t5/sap-codejam/build-code-based-ai-agents-on-sap-business-technology-platform-recife/ev-p/14330796" target="_self">Link</A></P></TD></TR></TBODY></TABLE><P>Make sure to register to secure your place. It is likely that the places available will go fast.</P><P>What if the CodeJam topics do not cover the SAP technology that you focus on? We've organised additional local meetups just to get together and have a chat. See you all somewhere in Brazil on the roadshow!</P>2026-01-30T12:35:15.511000+01:00https://community.sap.com/t5/technology-blog-posts-by-sap/sap-hana-and-abap-performance-tuning-a-guide-to-caches-and-buffers/ba-p/14318925SAP HANA and ABAP Performance Tuning: A Guide to Caches and Buffers2026-02-05T17:48:55.189000+01:00abhishekmodihttps://community.sap.com/t5/user/viewprofilepage/user-id/7118<P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Cache and Buffer guide.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/367562i4F48377B90038E4C/image-size/large/is-moderation-mode/true?v=v2&px=999" role="button" title="Cache and Buffer guide.png" alt="Cache and Buffer guide.png" /></span></P><H2 id="toc-hId-1788784165">Background</H2><P>It is a common misconception that S/4HANA is inherently faster simply because it runs on SAP HANA. In reality, achieving optimal performance for complex calculations and joins requires the use of tuning objects. These repository objects allow developers to define technical settings that optimize runtime behavior independently of the underlying data models.<BR />In the S/4HANA 2025 environment, these objects minimize the "distance" between application logic and data in two ways:</P><UL><LI>ABAP Tuning Objects buffer records in the application server’s shared memory to eliminate unnecessary data transport.<BR />HANA Tuning Objects implement database-layer caches to significantly reduce CPU and thread utilization for intensive aggregations </LI><LI>The core purpose of buffering is to minimize database load, hence increasing the overall system throughput and decreasing CPU consumption on SAP HANA database. Buffering avoids the high cost of repeated data transport between the Application Server (AS) and the Database. By keeping a local copy of data in the AS layer, the system can fulfill requests without ever reaching out to the network or the DB disk.</LI></UL><P>Performance tuning is not just about raw speed for a single user; it is about system-wide efficiency. By offloading repetitive row-level reads to the application layer, you free up the HANA database to focus on what it does best: complex calculations and massive data processing.</P><H3 id="toc-hId-1721353379">Sequence of Data Access</H3><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="unnamed (1).png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/369205iE5EB2F2DBF45072A/image-size/large?v=v2&px=999" role="button" title="unnamed (1).png" alt="unnamed (1).png" /></span></P><P>Apart from code pushdown introduced with CDS views, it is important to understand that w<SPAN>hen data is requested using CDS views, below is the sequence of steps:</SPAN></P><OL><LI><STRONG>The Initial Request</STRONG>: System checks the local Entity Buffer. This is the ABAP Shared memory of the individual Application server instance. If data is not found then it is a cache miss and the ABAP SQL interface sends the query to SAP HANA database.</LI><LI><STRONG>The Storage Phase</STRONG>: From SAP HANA DB, the data is placed into Shared Memory of current Application server automatically by ABAP SQL Interface</LI><LI><STRONG>Subsequent Queries</STRONG>: For any requests henceforth, the ABAP SQL Engine acts as localized DB manager bypassing HANA DB entirely and reading data directly from ABAP Shared Memory</LI></OL><H3 id="toc-hId-1524839874">ABAP Tuning Objects</H3><P>Our first choice of buffering should be entity buffering in ABAP Layer - it uses ABAP Shared Memory of the application server.</P><P>It is not enabled by default. The annotation @AbapCatalog.entityBuffer<SPAN>.definitionAllowed: true should be mentioned in CDS entity. Below are different buffer types available in ABAP layer:</SPAN></P><OL><LI><SPAN><A href="https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/ABENCDS_DEFINE_VIEW_ENTITY_BUFFER.html" target="_self" rel="noopener noreferrer"><STRONG>View Entity Buffer</STRONG>:</A> This buffer is meant for CDS View Entities and supports standard ABAP buffering types - <A href="https://help.sap.com/saphelp_em900/helpdata/en/f7/e4c5aba84a11d194eb00a0c929b3c3/content.htm?no_cache=true" target="_self" rel="noopener noreferrer">Single</A>, <A href="https://help.sap.com/saphelp_em900/helpdata/en/f7/e4c5a8a84a11d194eb00a0c929b3c3/content.htm?no_cache=true" target="_self" rel="noopener noreferrer">Generic</A> and <A href="https://help.sap.com/saphelp_em900/helpdata/en/f7/e4c5a5a84a11d194eb00a0c929b3c3/content.htm?no_cache=true" target="_self" rel="noopener noreferrer">Full</A> as well as <A href="https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/ABENCDS_DEFINE_DELEGATED_BUFFER.html" target="_self" rel="noopener noreferrer">DELEGATED</A> </SPAN></LI><LI><SPAN><A href="https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/ABENCDS_DEFINE_VIEW_ENTITY_BUFFER.html" target="_self" rel="noopener noreferrer"><STRONG>Table Entity Buffer</STRONG></A>: This buffer is meant for DDIC tables and was introduced in S/4HANA 2025 edition. Supports standard ABAP buffering types - <A href="https://help.sap.com/saphelp_em900/helpdata/en/f7/e4c5aba84a11d194eb00a0c929b3c3/content.htm?no_cache=true" target="_self" rel="noopener noreferrer">Single</A>, <A href="https://help.sap.com/saphelp_em900/helpdata/en/f7/e4c5a8a84a11d194eb00a0c929b3c3/content.htm?no_cache=true" target="_self" rel="noopener noreferrer">Generic</A> and <A href="https://help.sap.com/saphelp_em900/helpdata/en/f7/e4c5a5a84a11d194eb00a0c929b3c3/content.htm?no_cache=true" target="_self" rel="noopener noreferrer">Full</A> but <A href="https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/ABENCDS_DEFINE_DELEGATED_BUFFER.html" target="_self" rel="noopener noreferrer">DELEGATED</A> is not supported</SPAN></LI><LI><SPAN><A href="https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/ABENCDS_PROPAGATE_BUFFER.html" target="_self" rel="noopener noreferrer"><STRONG>Propagated Buffer</STRONG></A>: This buffer is meant for CD View Entities and uses path expressions to process joins in the buffer. Pre-requisite of this buffer type is the data source of propagated fields must be Fully Buffered. It allows ABAP SQL engine to process joins locally on application server by using data already available in the buffer hence preventing round trip to HANA DB. This can be very effective for a complex DB join.</SPAN></LI></OL><P><STRONG>Scenarios</STRONG></P><UL><LI>When primary goal is to avoid repeated data transport between AS ABAP and DB Server</LI><LI>Data that is rarely updated such as localized text</LI><LI>Joins can be processed locally on application server itself by utilizing data in the buffer</LI></UL><P><STRONG>Implementation</STRONG></P><P>Ensure annotation @AbapCatalog.entityBuffer.definitionAllowed: true exists in target CDS entity and define the buffer in ADT using below statements as applicable:</P><pre class="lia-code-sample language-abap"><code>DEFINE VIEW / TABLE ENTITY BUFFER ON cds_entity
LAYER CORE
/ LOCALIZATION
/ INDUSTRY
/ PARTNER
/ CUSTOMER
TYPE SINGLE
/ {GENERIC NUMBER OF KEY ELEMENTS number}
/ FULL
/ DELEGATED| NONE</code></pre><pre class="lia-code-sample language-abap"><code>DEFINE VIEW / TABLE ENTITY BUFFER ON cds_entity
LAYER CORE
/ LOCALIZATION
/ INDUSTRY
/ PARTNER
/ CUSTOMER
TYPE SINGLE
/ {GENERIC NUMBER OF KEY ELEMENTS number}
/ FULL
/DELEGATED / NONE</code></pre><pre class="lia-code-sample language-abap"><code>PROPAGATE VIEW ENTITY BUFFER ON cds_entity
{
propagated_field1[,
propagated_field2][,
...]
}[;]</code></pre><P><STRONG>Monitoring & Maintenance</STRONG></P><P>Buffering is automatically handled by ABAP SQL engine. Monitoring typically occurs through standard ABAP Shared Memory (SHMM).</P><H3 id="toc-hId-1328326369"><SPAN>HANA Tuning Objects</SPAN></H3><P>These objects are stored in memory of SAP HANA DB to save database resources and are oriented towards saving database resources such as memory and CPU consumption during heavy aggregations on massive tables. These are known as result cache used to improve performance by reusing previously queried data rather than reprocessing it from HANA Database everytime it is requested. They are defined in ABAP dictionary and implement technical settings directly on SAP HANA Database. Below are the types of result cache available in S/4HANA:</P><OL><LI><A href="https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/ABENDDICDDL_DEFINE_STATIC_CACHE.html" target="_self" rel="noopener noreferrer"><STRONG>Static Result Cache</STRONG></A>: This caches results for the specific CDS Entity View for a user defined retention period and is refreshed once that period expires. Best suited for complex views, KPIs, quarterly calculations where slightly stale data is acceptable to maximize performance. </LI><LI><A href="https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/ABENDDICDDL_DEFINE_DYNAMIC_CACHE.html" target="_self" rel="noopener noreferrer"><STRONG>Dynamic Result Cache</STRONG></A>: This caches aggregated results for single-table SQL views. Best suited for heavy aggregation workloads on massive tables where real time data is required. It automatically updates using delta records when source table changes ensuring most recent results.</LI></OL><P><STRONG>Scenarios</STRONG></P><UL><LI>Heavy Aggregation Workloads such as SUM, COUNT or AVG on massiv tables like ACDOCA or CDPOS (Dynamic Result Cache)</LI><LI>Analytical scenarios such as KPIs for complex views or quarterly calculations (Static Result Cache)</LI></UL><P><STRONG>Implementation</STRONG></P><P>SAP HANA tuning objects can be created from ADT using below syntax:</P><pre class="lia-code-sample language-abap"><code>DEFINE STATIC CACHE cache_name
ON view_entity_name
{ element_list }
[RETENTION retention_in_minutes]
[SEGREGATE CACHE DATA BY filter_cond]
[CREATION CONFIGURABLE DEFAULT {ON|OFF}];</code></pre><pre class="lia-code-sample language-abap"><code>DEFINE DYNAMIC CACHE cache_name
ON dbtab
{ projection_list }
[WHERE filter_cond]
[SEGREGATE CACHE DATA BY filter_cond]
[CREATION CONFIGURABLE DEFAULT {ON|OFF}];</code></pre><P>Use tcode S_DBCACHE_CONFIG to manually toggle the "DB Status" and activate the cache.</P><P> <STRONG>Monitoring & Maintenence</STRONG></P><P>Use DBACOCKPIT to monitor cache objects. The query M_DYNAMIC_RESULT_CACHE for real time hit rates and M_DYNAMIC_RESULT_CACHE_EXCLUSIONS to see views that failed to cache (e.g., due to 1GB size limits). For static caches use RESULT_CACHE. Use ALTER SYSTEM CLEAR DYNAMIC RESULT CACHE to globally remove all entries or ALTER SYSTEM REMOVE... for a specific cache ID. </P><H3 id="toc-hId-1131812864">Conclusion</H3><P>Leveraging both ABAP and HANA tuning objects in S/4HANA 2025 provides a robust framework for optimizing system performance while maintaining data integrity. The Dynamic Result Cache is essential for high-performance, real-time scenarios—such as aggregating the Universal Journal (ACDOCA) - because it guarantees transactionally consistent, non-stale results. By defining these as transportable ABAP Dictionary objects and managing them through tools like S_DBCACHE_CONFIG, you can significantly reduce CPU consumption and database response times across your landscape. While Dynamic Caches are ideal for real-time accuracy, Static Caches remain a strategic choice for complex views where periodic refreshes meet business needs.</P>2026-02-05T17:48:55.189000+01:00https://community.sap.com/t5/sap-for-oil-gas-and-energy-blog-posts/reimagining-utility-transformation-clean-core-principles-powered-by-sap-btp/ba-p/14321645Reimagining Utility Transformation: Clean Core Principles Powered by SAP BTP2026-02-06T07:51:30.744000+01:00Atul_Joshi85https://community.sap.com/t5/user/viewprofilepage/user-id/2274193<H1 id="toc-hId-1660413609">Introduction</H1><P>Across the utility industry, one message appears in every transformation discussion: <STRONG>“Keep the core clean.”</STRONG> The guidance is sound, especially for organizations preparing for S/4HANA. But inside SAP IS‑U—where regulatory complexity, legacy billing logic, and decades of Z‑programs coexist—this principle often feels contradictory.</P><P>Utilities must modernize rapidly while protecting the stability of their revenue engine. This creates a familiar tension: <STRONG>innovation requires speed, but the core requires caution.</STRONG></P><P>This post explores why that tension exists, how SAP BTP resolves it, and how utilities can operationalize a Clean Core strategy without compromising business continuity.</P><H1 id="toc-hId-1463900104">Main Body</H1><H2 id="toc-hId-1396469318">1. The Customization Cage: How Utilities Got Here</H2><P>For many years, utilities solved business needs by customizing the ERP core:</P><UL><LI>Custom ABAP for tariffs</LI><LI>Modified standard tables for regulatory fields</LI><LI>Embedded workflows inside IS‑U</LI><LI>Enhancements tightly coupled to billing and device management</LI></UL><P>These decisions were practical at the time—but over decades, they created a <STRONG>Rigid Core</STRONG> that is difficult to upgrade, expensive to test, and slow to evolve.</P><P><STRONG>Resulting challenges:</STRONG></P><UL><LI>High upgrade risk</LI><LI>Long regression cycles</LI><LI>Slow innovation</LI><LI>Technical debt that compounds every year</LI></UL><P>Your first diagram captures this reality perfectly.</P><P><STRONG>Diagram 1 — The Customization Cage </STRONG></P><P><STRONG> </STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Atul_Joshi85_0-1770216536920.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/368957i685E3BEBFF734633/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="Atul_Joshi85_0-1770216536920.png" alt="Atul_Joshi85_0-1770216536920.png" /></span></P><P> </P><P><STRONG> </STRONG></P><P> </P><H2 id="toc-hId-1199955813">2. Clean Core + SAP BTP: The Agility Layer Utilities Needed</H2><P>A Clean Core strategy is not about reducing capability—it’s about <STRONG>relocating</STRONG> capability.</P><P>SAP Business Technology Platform (BTP) provides the architectural separation utilities have needed for years:</P><UL><LI><STRONG>S/4HANA Core</STRONG> → Stable, standardized, upgrade-friendly</LI><LI><STRONG>SAP BTP</STRONG> → Custom logic, workflows, APIs, event-driven processes</LI></UL><P>This separation transforms the ERP into a <STRONG>system of record</STRONG>, while BTP becomes the <STRONG>system of innovation</STRONG>.</P><P><STRONG>Key benefits:</STRONG></P><UL><LI>Faster delivery cycles</LI><LI>Reduced regression testing</LI><LI>Lower upgrade effort</LI><LI>Event-driven operations</LI><LI>Extensibility without core modification</LI></UL><H2 id="toc-hId-1003442308">3. A Practical Framework for Utility Clean Core Adoption</H2><P>SAP Community readers expect actionable, practitioner-focused guidance. Here is a structured approach utilities can follow.</P><P><STRONG>Step 1: Start With a Core Assessment</STRONG></P><P>Identify:</P><UL><LI>Business-critical customizations</LI><LI>Redundant or obsolete logic</LI><LI>Enhancements blocking upgrade cycles</LI><LI>High-change areas suitable for BTP</LI></UL><P>This reframes Clean Core as <STRONG>risk reduction</STRONG>, not cleanup.</P><P><STRONG>Step 2: Move High-Variability Logic to BTP First</STRONG></P><P>Ideal candidates include:</P><UL><LI>Rate and tariff changes</LI><LI>Regulatory reporting</LI><LI>Credit & collections workflows</LI><LI>Meter-to-cash orchestration</LI><LI>BPEM automation</LI></UL><P>These areas generate the most upgrade friction—and deliver the fastest BTP wins.</P><H2 id="toc-hId-806928803">Step 3: Use SAP Event Mesh to Break the Batch Mindset</H2><P>Utilities can begin shifting toward real-time operations by triggering events for:</P><UL><LI>Move-in / move-out</LI><LI>Billing determinants</LI><LI>Meter read exceptions</LI><LI>Payment events</LI><LI>Outage notifications</LI></UL><P>This enables a hybrid model: <STRONG>batch where necessary, real-time where possible.</STRONG></P><H2 id="toc-hId-610415298">Step 4: Establish Governance That Protects the Core</H2><UL><LI>No custom code in S/4 unless SAP mandates it</LI><LI>BTP-first evaluation for all new logic</LI><LI>Standard APIs and events as default patterns</LI><LI>Quarterly architecture reviews to prevent “core creep”</LI></UL><P>Governance is the long-term safeguard of Clean Core.</P><H2 id="toc-hId-413901793">Step 5: Treat BTP as a Business Platform</H2><P>Executives respond when BTP is positioned as:</P><UL><LI>A revenue protection tool</LI><LI>A regulatory accelerator</LI><LI>A customer experience enabler</LI><LI>A technical debt reduction mechanism</LI></UL><H2 id="toc-hId-217388288">Step 6: Build a 24‑Month Roadmap</H2><P>A practical roadmap includes:</P><UL><LI><STRONG>Phase 1:</STRONG> Core assessment + quick wins</LI><LI><STRONG>Phase 2:</STRONG> Event-driven architecture rollout</LI><LI><STRONG>Phase 3:</STRONG> Predictive and AI-driven use cases</LI><LI><STRONG>Phase 4:</STRONG> Full Clean Core enforcement + S/4 readiness</LI></UL><P>This provides clarity, sequencing, and measurable ROI.</P><H2 id="toc-hId-20874783">4. The Modern Utility Innovation Stack</H2><P>Your second diagram illustrates the future-state architecture:</P><UL><LI>A stable S/4HANA core</LI><LI>A flexible BTP layer</LI><LI>A connected utility ecosystem</LI></UL><P><STRONG>Diagram 2 — The Utility Innovation Stack </STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Atul_Joshi85_1-1770216537147.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/368958iDEA788D84B292DEB/image-size/medium/is-moderation-mode/true?v=v2&px=400" role="button" title="Atul_Joshi85_1-1770216537147.png" alt="Atul_Joshi85_1-1770216537147.png" /></span></P><P> </P><P><STRONG> </STRONG></P><P> </P><H1 id="toc-hId-465018642">Conclusion</H1><P>A Clean Core is not a limitation—it is a <STRONG>strategic advantage</STRONG>.</P><P>Utilities preparing for S/4HANA should shift the conversation from:</P><P><STRONG>“How do we migrate everything we built?”</STRONG> to <STRONG>“How do we protect the core and modernize the business at the same time?”</STRONG></P><P>SAP BTP provides the answer:</P><UL><LI>Keep the core stable</LI><LI>Move innovation to the agility layer</LI><LI>Adopt event-driven operations</LI><LI>Reduce technical debt</LI><LI>Build a future-ready architecture</LI></UL><P>Utilities that embrace this model will be better positioned to innovate, comply, and scale in the decade ahead.</P>2026-02-06T07:51:30.744000+01:00https://community.sap.com/t5/technology-platform-learning-group-blog-posts/welcome-to-the-technology-learning-group/ba-p/14324121Welcome to the Technology Learning Group!2026-02-09T10:28:41.705000+01:00Jelena_Urukalohttps://community.sap.com/t5/user/viewprofilepage/user-id/2251856<P>We’re excited to welcome you to our brand-new <STRONG>Technology Learning</STRONG> group – your go-to space for learning SAP technologies and growing your skills together with a global community of learners.</P><P>This is where SAP technology enthusiasts come together to explore topics such as <STRONG>SAP HANA, ABAP, authorizations in SAP S/4HANA, SAP Fiori, and SAP Cloud ALM (CALM)</STRONG>. Connect with SAP experts, exchange ideas with fellow learners, and stay inspired on your learning journey.</P><P>As a member of the <STRONG>Technology Learning</STRONG> group, you’ll be the first to hear about <STRONG>new courses, course updates, live learning sessions, and certification news</STRONG>. We’ll keep you informed and help you stay one step ahead as SAP technologies continue to evolve.</P><P>This community is all about learning. It complements—rather than replaces—the existing SAP Community groups that focus on product-specific discussions and troubleshooting. For deep dives into product features or technical issues, those groups remain the best place to connect with developers and consultants.</P><P>Here, the focus is on <STRONG>learning content</STRONG>: courses, learning journeys, certifications, and live sessions. It’s a welcoming and supportive space where no question is too small. Everyone here is learning—just like you—so feel free to ask, share, and join the conversation.</P><P>We’re here to support you every step of the way, whether you’re getting started with a new topic, progressing through your learning journey, or preparing for certification. Watch out for expert blog posts, tips, and guidance designed to help you succeed.</P><P>Join us and take the next step in your SAP Technology Learning journey</P>2026-02-09T10:28:41.705000+01:00https://community.sap.com/t5/sap-for-healthcare-blog-posts/ai-is-transforming-sales-order-processing-in-sap/ba-p/14303939AI Is Transforming Sales Order Processing in SAP2026-02-11T04:51:29.555000+01:00Sachinbobatehttps://community.sap.com/t5/user/viewprofilepage/user-id/1785944<P><STRONG>Challenges in Manual Sales Order Processing</STRONG></P><UL><LI>Inconsistent customer data: duplicate addresses, incorrect zip codes, or special characters.</LI><LI>Complex Sold-to / Ship-to relationships: a single customer may have multiple shipping addresses.</LI><LI>Manual verification of POs is time-consuming and prone to human error.</LI></UL><P>Ensuring timely delivery and customer satisfaction requires high workforce effort</P><P><STRONG>AI & Machine Learning Workflow</STRONG></P><P>The AI-assisted SAP workflow automates the sales order creation process as follows:</P><P><STRONG>Step 1:</STRONG> Customer sends an email with a Purchase Order (PO).<BR /><STRONG>Step 2:</STRONG> AI email reader parses the email.<BR /><STRONG>Step 3:</STRONG> OCR and NLP extract the PO details.<BR /><STRONG>Step 4:</STRONG> ML identifies the correct Sold-to / Ship-to relationship, even in cases of inconsistent or duplicate data.<BR /><STRONG>Step 5:</STRONG> Data validation checks accuracy against authoritative sources (e.g., USPS address verification).<BR /><STRONG>Step 6:</STRONG> SAP automatically creates the sales order.<BR /><STRONG>Step 7:</STRONG> Customer receives order confirmation.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="984871_0-1767890162626.png" style="width: 623px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/359525i9686ABDEEC446F8B/image-dimensions/623x179/is-moderation-mode/true?v=v2" width="623" height="179" role="button" title="984871_0-1767890162626.png" alt="984871_0-1767890162626.png" /></span></P><P><EM>AI and ML pipeline automates PO processing, resolves Sold-to/Ship-to relationships, validates data, and creates sales orders in SAP.</EM></P><P><STRONG>Key Benefits</STRONG></P><UL><LI><STRONG>Increased Productivity:</STRONG> Automates repetitive manual tasks.</LI><LI><STRONG>Reduced Errors:</STRONG> Correctly identifies Sold-to / Ship-to and validates data.</LI><LI><STRONG>Time Savings:</STRONG> Faster order processing and reduced cycle time.</LI><LI><STRONG>Enhanced Customer Satisfaction:</STRONG> Timely, accurate orders and confirmations.</LI><LI><STRONG>Cost Efficiency:</STRONG> Reduces workforce dependency and operational costs.</LI></UL><P><STRONG>Machine Learning for Sold-to / Ship-to Resolution</STRONG></P><P>The ML system analyzes historical sales data and learns patterns to:</P><UL><LI>Resolve duplicate or inconsistent addresses.</LI><LI>Identify correct shipping addresses for multiple “Sold-to” customers.</LI><LI>Handle special characters and local language variations.</LI><LI>Ensure accurate SAP sales order creation.</LI></UL><P>This step is <STRONG>critical</STRONG> because errors in Sold-to / Ship-to mapping can delay shipments, cause billing issues, and reduce customer satisfaction</P><P><STRONG>Integration with SAP</STRONG></P><UL><LI>AI/ML connects via <STRONG>REST APIs or SAP AI Services</STRONG>.</LI><LI>Extracted and validated PO data is sent directly to <STRONG>SAP ERP</STRONG>, eliminating manual entry.</LI><LI>SAP automatically generates sales orders, streamlines accounting, and updates inventory.</LI></UL><P><STRONG>Conclusion</STRONG></P><P>Integrating AI and ML into SAP sales order processing transforms a manual, error-prone process into an efficient, automated workflow. By resolving customer data issues, identifying correct Sold-to / Ship-to relationships, and validating PO information, organizations can:</P><UL><LI>Enhance operational efficiency</LI><LI>Reduce costs</LI><LI>Improve customer satisfaction</LI><LI>Focus human resources on higher-value tasks</LI></UL>2026-02-11T04:51:29.555000+01:00https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102Everything about SAP migration and Palantir : A basis POV2026-02-12T17:18:56.953000+01:00rajarajeswari_kaliyaperumhttps://community.sap.com/t5/user/viewprofilepage/user-id/654809<P><ul =""><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-1789670142">1.Understanding Palantir</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-1593156637">2.Palantir architecture</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-1396643132">3. How to access the Palantir platform</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-1200129627">4.Palantir and data connectivity</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-1003616122">5.Palantir's HyperAuto and SAP</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-807102617">6.Connecting SAP and Palantir</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-610589112">7.Sample demo screen shots of integrating SAP data with Palantir's HyperAuto to extract SAP ECC data into a S3 bucket</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-414075607">8.Palantir’s SAP migration narrative</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-217562102">9.Palantir’s position on testing</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-21048597">10.My point of view on SAP migration and Palantir usage:</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId-171789449">11. Sample use cases Palantir highlights</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId--24724056">12.Relationship between Palantir and SAP Business Data Cloud (BDC)</a></li><li style="list-style-type:none; margin-left:15px; margin-bottom:1px;"><a href="https://community.sap.com/t5/technology-blog-posts-by-members/everything-about-sap-migration-and-palantir-a-basis-pov/ba-p/14327102#toc-hId--221237561">13.Palantir and archive data access</a></li></ul></P><P>In this blog, I discuss the Palantir platform and its value proposition in the context of SAP landscapes and SAP modernization programs.</P><P><EM><STRONG>Disclaimer:</STRONG> The information shared in this blog is derived from publicly available sources. The views expressed are based solely on my personal understanding and interpretation and should not be considered official guidance, implementation instructions, or vendor-approved documentation.</EM></P><H2 id="toc-hId-1789670142"><STRONG>1.Understanding Palantir</STRONG></H2><P><STRONG>Palantir is an enterprise platform that helps organizations use their data to run real operations and make decisions. It is not just about reporting or creating dashboards. It is ment to help users take action, track decisions and measure imapact using trusted data.</STRONG></P><P>The core parts of Palantir are :</P><P>1. Data layer:</P><P>This is where Palantir stores data as datasets (like very large Excel tables) and every data has lineage. That is , <SPAN>Palantir always remembers where data came from, </SPAN><SPAN>what transformations were applied, </SPAN><SPAN>what dataset produced what dataset.</SPAN></P><P><SPAN>2. Object layer (Ontology):</SPAN></P><P><SPAN><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371900i1572A5A3AD09AE2C/image-size/medium?v=v2&px=400" role="button" title="1.png" alt="1.png" /></span></SPAN></P><P><SPAN>Source:<A href="https://blog.palantir.com/how-anyone-can-integrate-sap-data-in-hours-17f23d0bd2e8" target="_self" rel="nofollow noopener noreferrer">https://blog.palantir.com/how-anyone-can-integrate-sap-data-in-hours-17f23d0bd2e8</A> </SPAN></P><P><STRONG> </STRONG><SPAN>In this layer, Palantir </SPAN>converts datasets into:</P><UL><LI><P>Objects (Customer, Material, Asset, Employee, Purchase Order)</P></LI><LI><P>Links (Customer to Orders, Vendor to Deliveries, Asset to Maintenance)</P></LI><LI><P>Actions (approve, update, assign, escalate, create)</P></LI></UL><P>This Ontology creates a digital model of the organization, thus enabling business users to understand the data in business context rather than just a raw tables.</P><P>The typical use case of Palantir involves time-bound projects that support decision-making processes, such as <SPAN>inventory optimization. </SPAN><SPAN>alert monitoring and resolution, </SPAN><SPAN>sales territory planning, </SPAN><SPAN>supply chain risk management.</SPAN></P><H2 id="toc-hId-1593156637"><SPAN>2.Palantir architecture</SPAN></H2><P>Palantir’s standard architecture is built on three integrated platforms:</P><P><STRONG>1. Foundry</STRONG></P><P><STRONG>2. AIP</STRONG></P><P><STRONG>3. Apollo</STRONG></P><P>All these together are positioned as an <STRONG>Enterprise Operating System.</STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371901i04A6485B3A1F8CD9/image-size/medium?v=v2&px=400" role="button" title="2.png" alt="2.png" /></span></P><UL><LI><STRONG>Foundry</STRONG> is the core data operations layer for data management, transformation logic, Ontology development, analytics, and workflow building.</LI><LI><STRONG>AIP</STRONG> (AI Platform) adds the generative AI layer, enabling secure access to LLMs and providing tooling for agents, automations, AI apps, and governance through evaluation frameworks. (For more information on AIP, refer to URL <A href="https://www.palantir.com/docs/foundry/architecture-center/aip-architecture/" target="_self" rel="nofollow noopener noreferrer">https://www.palantir.com/docs/foundry/architecture-center/aip-architecture/</A> )</LI><LI><STRONG>Apollo</STRONG> runs underneath as the continuous delivery and infrastructure orchestration platform, enabling large-scale, zero-downtime upgrades across the entire service mesh.</LI></UL><P>Conceptually, Palantir describes AIP and Foundry as a set of nine capability areas spanning the Ontology system, data and workflow services, analytics, automations, and product delivery. These capabilities are supported by shared foundational components such as storage, compute, networking, security, governance, and workspace, all powered by Apollo. The combined stack is positioned as the backbone for operational, AI-enabled applications across industries like healthcare, aviation, utilities, and defense.</P><H2 id="toc-hId-1396643132">3. How to access the Palantir platform</H2><P>Refer to below documentation from Palantir site to access the platform</P><P><A href="https://www.palantir.com/docs/foundry/getting-started/login/" target="_self" rel="nofollow noopener noreferrer">https://www.palantir.com/docs/foundry/getting-started/login/</A> </P><H2 id="toc-hId-1200129627">4.Palantir and data connectivity</H2><P><STRONG>Foundry</STRONG> positions itself as more than a standard ETL or ELT tool. It is designed as an enterprise-grade data integration backbone that reduces the long-term cost of integration by combining connectivity, transformation, pipeline management, and governance into a single operating layer. The goal is to take data from complex environments and continuously deliver curated, operationally trusted datasets, not just move data into storage. A key part of this is Data Connection which is foundry’s application for synchronizing data from external systems into Foundry for use across the data integration, modeling, and Ontology layers. Data Connection also supports outbound connectivity, enabling writeback to external systems via exports and Webhooks.</P><P> At the connectivity layer, Foundry supports structured, semi-structured, and unstructured sources, and multiple ingestion patterns such as batch, micro-batch, streaming, and CDC. A “source” in Foundry represents a connection to an external system such as Postgres, S3, Linux file systems, <STRONG>SAP</STRONG>, or REST APIs. Connectivity can be established directly when the source is reachable from Foundry, or through a Foundry agent when sources are hosted in a separate private network such as on-prem. Agents are downloadable programs installed inside the customer network and managed from Data Connection. They provide controlled network access to private systems and securely ingest data into Foundry using restricted tokens. Once a source is created, teams configure syncs (most commonly batch syncs) through the Data Connection UI, schedule runs, and write the results into versioned Foundry datasets with full lineage and auditing.</P><DIV class=""><DIV class=""><DIV class=""><DIV class=""><DIV class=""><DIV class=""><DIV class=""><P>Beyond ingestion, for <STRONG>transformation</STRONG>, Foundry adds production-grade pipeline management through tools like Pipeline Builder, which provides point-and-click pipeline creation, Git-style change management, scheduling, and health checks so only compliant datasets reach production. Data quality and governance are treated as first-class features through role-based and marking-based controls, end-to-end lineage, and built-in diagnostics when issues occur. Finally, Data Connection supports outbound patterns such as dataset exports, outbound Webhooks for triggering external workflows from Foundry applications, and inbound event listeners (beta) for low-latency event feeds from systems that cannot directly integrate with standard Foundry APIs. This combination makes Foundry a bidirectional integration layer that not only brings data in, but also operationalizes insights by pushing results back into the enterprise landscape.</P><H2 id="toc-hId-1003616122"><SPAN>5.Palantir's HyperAuto and SAP</SPAN></H2><P>Palantir also extends integration beyond basic syncing through HyperAuto, which programmatically generates pipelines for ERP and CRM data, rapidly normalizing and harmonizing it into curated datasets that can feed the Ontology and power downstream analytics, workflows, and AI use cases. HyperAuto is Palantir’s source-to-value automation layer designed to accelerate how enterprise data is extracted, standardized, and made usable in Foundry and the Ontology. HyperAuto V1 (also known as SDDI or Bellhop) was the first generation of this capability and is still supported for several source types such as Salesforce, Oracle NetSuite, and SAP, although <STRONG>SAP</STRONG> customers are strongly advised to use <STRONG>HyperAuto V2</STRONG>, which is specifically released and optimized for SAP.</P><P>Architecturally, HyperAuto automates the journey from raw source systems to curated, Ontology-ready data using three building blocks: secure connectors for high-scale data transfer, guided source exploration for rapid discovery and bulk sync creation, and automatic pipeline generation that transforms raw extracts into curated Foundry datasets and Ontology object types. HyperAuto analyzes ERP metadata to generate robust, extensible pipelines that denormalize and reconstruct business objects through automatically created transformations, so that the teams do not need deep expertise in proprietary ERP schemas. The generated pipelines typically include source-specific preprocessing, standardized cleaning libraries, core enrichment steps such as renaming and de-duplication, and derived elements like join tables and time-series datasets. <STRONG>HyperAuto can also generate the Ontology automatically, enabling users to immediately search, analyze, and build operational applications on top of SAP and non-SAP data</STRONG>.</P><P>In addition, HyperAuto can publish the integrated and curated data to external cloud platforms such as Google BigQuery, Snowflake, AWS Redshift, and others, or push it into the Foundry Ontology in just a few clicks, where data is organized into easy-to-understand semantic objects so business users can self-serve and make operational decisions.</P></DIV></DIV></DIV></DIV></DIV></DIV></DIV><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="3.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371918i383DA6F9EAF37BD4/image-size/large?v=v2&px=999" role="button" title="3.png" alt="3.png" /></span></P><P> <SPAN>For more information refer to URL </SPAN><A href="https://www.palantir.com/docs/foundry/hyperauto/v1-getting-started/" target="_self" rel="nofollow noopener noreferrer">https://www.palantir.com/docs/foundry/hyperauto/v1-getting-started/</A><SPAN> </SPAN></P><H2 id="toc-hId-807102617">6.Connecting SAP and Palantir</H2><DIV><DIV class=""><DIV><DIV class=""><DIV class=""><P class="">Palantir uses the Palantir Foundry Connector 2.0 for SAP Applications, which is:</P><UL><LI>An SAP-certified ABAP add-on</LI><LI>Installed in SAP using SAINT</LI><LI>Exposes SAP data through HTTPS (SICF services)</LI><LI>Works via the SAP application layer (not direct DB access</LI></UL><P class="">Foundry defines the extraction logic (tables, filters, schedules), and the sync jobs are executed by Foundry’s Data Connection services. SAP security remains SAP security, because Foundry calls SAP using an SAP user with SAP authorizations and is DB agnostic as reads happens from SAP application layer rather than DB layer.</P><P class="">Supported SAP extraction objects include:</P><OL><LI>SAP application tables</LI><LI>CDS views</LI><LI>BW InfoProviders / BEx queries</LI><LI>Extractors (ODP-enabled)</LI><LI>SLT (ODQ queues)</LI><LI>Function modules/BAPIs</LI></OL><P><STRONG>Installation steps in SAP (At high level):</STRONG></P><P>Components:</P><OL><LI><STRONG>SAP Add-on (ABAP)</STRONG> installed using <STRONG>SAINT</STRONG></LI><LI><STRONG>Foundry Agent</STRONG> installed in customer network and managed via Foundry Data Connection</LI></OL><P>SAP Prerequisites:</P><P>The source must be SAP NW 7.4 SP5 or 7.5 systems.<STRONG> </STRONG><SPAN>If the source is below 7.4 SP5 a remote agent pattern required.</SPAN></P><P>Generally supported deployment patterns for data extraction are:</P><OL><LI>Direct to SAP ECC/S/4/BW</LI><LI>Via SAP SLT Replication Server (ODQ queues / CDC)</LI><LI>Remote via Gateway (RFC based)</LI></OL><P><STRONG>At SAP level:</STRONG></P><P>For Palantir add-on installation follow below steps:</P><UL><LI>Login to client 000</LI><LI>Run SAINT</LI><LI>Load package: FOUNDRY-SAPCONN-INST-SP00SPXX.SAR</LI><LI>Select components: <STRONG>PALANTIR and PALCONN</STRONG></LI><LI>Execute install (dialog for preparation, background for remaining phases)</LI><LI>Run Post installation wizard through t-code /n/PALANTIR/POST_INST . It will automatically below tasks.</LI></UL><OL><LI>Activate SICF services</LI><LI>Generate roles and assign to Foundry SAP user</LI><LI>Maintain default parameters (/n/PALANTIR/PARAM)</LI><LI>Check ICM settings and generate test URLs</LI><LI>Health checks (connector, authorization, SLT, RFC, jobs)</LI></OL><P><STRONG>At Palantir Foundry level:</STRONG></P><P class="">In Foundry Data Connection, create SAP source using YAML:</P><PRE><CODE>type: magritte-sap-source
url: https://<host>:<port>/sap/palantir
usernamePassword: <username>:{{password}} </CODE></PRE><P class="">Followed by this, sync between source and Foundry must be configured. Create syncs for required object types (tables/CDS/BEx/SLT/functions). Example:</P><PRE><CODE>type: magritte-sap-source-adapter
sapType: tcode
obj: ZTEST_ALV<BR /></CODE></PRE></DIV></DIV></DIV></DIV></DIV><DIV class=""><DIV class=""><DIV class="">(For more information please refer <A class="" href="https://www.palantir.com/docs/foundry/sap/install-sap" target="_self" rel="nofollow noopener noreferrer"><STRONG>https://www.palantir.com/docs/foundry/sap/install-sap</STRONG></A><STRONG>)</STRONG></DIV></DIV></DIV><H2 id="toc-hId-610589112"><STRONG>7.Sample demo screen shots of integrating SAP data with Palantir's HyperAuto to extract SAP ECC data into a S3 bucket</STRONG></H2><P>Source: <STRONG><A href="https://blog.palantir.com/how-anyone-can-integrate-sap-data-in-hours-17f23d0bd2e8" target="_blank" rel="noopener nofollow noreferrer">https://blog.palantir.com/how-anyone-can-integrate-sap-data-in-hours-17f23d0bd2e8</A></STRONG></P><P><STRONG>NOTE: </STRONG><EM>I have only provided the screen shots with high level explanation so that the readers could get a look and feel of how SAP data gets extracted into Palantir. I would strongly recommend the interested readers to read it in depth at above blog for complete understanding </EM></P><P>Below are the high-level steps involved:</P><P>The upcoming steps and screenshots demonstrates how HyperAuto accelerates SAP integration by allowing us to explore SAP tables visually, select only what we need, and automatically generate ingestion syncs and transformation pipelines. In this example, a data engineer at a manufacturing firm builds a supply chain view by ingesting SAP data, cleaning and integrating it in Foundry, and exporting the curated datasets to an S3 bucket. </P><P>Connect SAP to Foundry using the official SAP-certified connector and ensure the SAP source is available in the Data Connection app.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="4.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371966i1FA42EE6F7EED369/image-size/large?v=v2&px=999" role="button" title="4.png" alt="4.png" /></span></P><P> <STRONG><SPAN>Step 1-2:</SPAN></STRONG></P><P><SPAN>a. </SPAN>Access the SAP source in Data Connection: <SPAN>In Data Connection, locate your SAP source (typically listed with type magritte-sap-source) and open it.</SPAN></P><P><SPAN>b. </SPAN><SPAN>Explore SAP data in HyperAuto: </SPAN><SPAN>Launch Explore and create syncs. HyperAuto reads SAP tables on-demand (including custom Z tables) and provides a “shopping cart” style selection flow. This approach helps avoid unnecessary heavy queries and reduces risk of disruption to the ERP system.</SPAN><span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="5.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371957iC531BE857EA3B987/image-size/large?v=v2&px=999" role="button" title="5.png" alt="5.png" /></span></P><P> </P><P><STRONG><SPAN>Step 3:</SPAN></STRONG></P><P><SPAN>a. </SPAN>Start with a pre-packaged workflow: <SPAN>From the Workflows tab, select a pre-built workflow such as Supply Chain Disruption. HyperAuto automatically adds the required SAP tables and relationships needed for the workflow and prepares logic for the use case.</SPAN></P><P><SPAN>b. A</SPAN>dd extra tables (customization): <SPAN>Extend the workflow by selecting additional tables. Example: add MARM (Units of Measure for Material) from the Modules tab.</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="6.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371958i3ED198A073A5B7CC/image-size/large?v=v2&px=999" role="button" title="6.png" alt="6.png" /></span></P><P><STRONG><SPAN>Step 4-5:</SPAN></STRONG></P><P>a:Discover relationships without knowing SAP schema: HyperAuto helps explore linked tables visually. It also translates technical SAP table/field names into human-readable descriptions (like an automatic data dictionary). Use table relations to discover and add missing dependencies (example: add the Clients table related to Material Descriptions).</P><P>b: Configure syncs: Review the selected tables and configure ingestion settings. Choose ingestion strategies such as:</P><UL><LI>Snapshot (full extract)</LI><LI>Append / incremental (delta ingestion)</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="7.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371959i7718F08FD55C4EF6/image-size/large?v=v2&px=999" role="button" title="7.png" alt="7.png" /></span></P><P><STRONG><SPAN>Step 6-10:</SPAN></STRONG></P><P>a.Then confirm by selecting Ingest & Integrate Data → Create syncs.</P><P>b.Auto-generate pipeline code (PySpark): HyperAuto generates:</P><UL><LI>ingestion sync configuration</LI><LI>transformation pipelines</LI><LI>PySpark code for cleaning and integration</LI></UL><P>All code is version-controlled via Git and created through a pull request workflow, enabling review and controlled deployment.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="8.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371960iF7B5243F733BB01B/image-size/large?v=v2&px=999" role="button" title="8.png" alt="8.png" /></span></P><P><STRONG>Step 12-15:</STRONG></P><P>a.Run raw ingests: Using the SDDI/HyperAuto flow, run the syncs to ingest raw SAP data and supporting metadata.</P><P>b.Review pipeline lineage: Open the pipeline graph in Data Lineage to visualize dependencies between raw datasets and transformed outputs.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="9.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371961i820263BB0E644B15/image-size/large?v=v2&px=999" role="button" title="9.png" alt="9.png" /></span></P><P><STRONG>Step 16-18:</STRONG></P><P>a.Build the cleaning and integration pipeline: Select all datasets and trigger a build. HyperAuto runs the generated transformations to produce clean, denormalized, analytics-ready datasets.</P><P>b.Validate the final datasets:Preview the cleaned datasets and review the transformation logic that produced them.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="10.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371962i36937AD1374A18B7/image-size/large?v=v2&px=999" role="button" title="10.png" alt="10.png" /></span></P><P><STRONG>Step 19-21: </STRONG></P><P>a.Create an S3 data connection source</P><P>In Data Connection, create a new S3 source, select an agent for the export, and configure bucket details. Save it in a project folder with correct permission.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="12.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371963i856BFD8B8CECDC61/image-size/large?v=v2&px=999" role="button" title="12.png" alt="12.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="13.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371964i71A556F0F9CC0A1D/image-size/large?v=v2&px=999" role="button" title="13.png" alt="13.png" /></span></P><P><STRONG>Step 22-29:</STRONG></P><P>a.Configure an export task: Create a Data Connection Task of type export-s3-task, define the output path, and add the finalized datasets as inputs. Configure outputs for tracking export results.</P><P>b.Run the export (or schedule it):Build the export task to push curated datasets to S3. This can later be automated on a schedule or triggered by upstream dataset updates.</P><P>At the end of the workflow, we will have:</P><UL><LI>SAP data ingested and integrated using HyperAuto</LI><LI>Cleaned, denormalized datasets ready for analytics</LI><LI>Data exported to S3 (or optionally used directly in Foundry tools)</LI></UL><P>This creates an extensible data foundation that can be enriched with other enterprise systems and advanced data types (time-series, geospatial, etc.) for broader operational intelligence.</P><H2 id="toc-hId-414075607"><STRONG>8.Palantir’s SAP migration narrative</STRONG></H2><P>Palantir positions SAP migrations (especially ECC to S/4HANA) as slow and expensive largely because teams work in silos. Extraction, transformation, validation, business SMEs, and compliance often operate independently. When validation fails, organizations can lose weeks doing “data archaeology” to identify root causes and coordinate fixes across teams.</P><P>Palantir’s claim is that AIP shifts migration from a linear, phase-by-phase process into a context-connected, end-to-end workflow where data understanding, mapping, transformation, and validation are linked. Validation becomes continuous rather than a final gate. SMEs can describe fixes in plain language, and AI propagates those corrections through the pipeline quickly. This is often explained using the “octopus” analogy, meaning multiple specialized AI capabilities coordinated by a single contextual brain that understands legacy structures, target requirements, business rules, and compliance.</P><P>It claims to complete an ECC to S/4 HANA conversion within 2 weeks of time.</P><H2 id="toc-hId-217562102"><STRONG>9.Palantir’s position on testing</STRONG></H2><P>In practical terms, Palantir claims that when testing fails, we do not lose weeks coordinating across teams. The platform preserves end-to-end context such as source, mapping logic, transformation, business rule, and target expectation. This helps identify the root cause faster. Fixes can then be applied by SMEs and automatically propagated through the pipeline.</P><P>Palantir’s testing model is central to its positioning:</P><UL><LI>Testing is not a separate phase at the end.</LI><LI>Validation is continuous and embedded throughout the migration pipeline.</LI><LI>Data quality, mapping correctness, and compliance checks update continuously as transformations run.</LI></UL><H2 id="toc-hId-21048597">10.My point of view on SAP migration and Palantir usage:</H2><P><STRONG>Based on my understanding, I believe Palantir might be of use for selective data migration for SAP environment to certain extent than for typical brownfield.</STRONG></P><P><STRONG>a. Why this aligns more with SDT than brownfield</STRONG></P><P>Palantir's strengths are largely aligned to a Selective Data Transition (SDT) or data transformation-led migration model, where complexity is dominated by:</P><UL><LI>data harmonization</LI><LI>mapping rules</LI><LI>transformation logic</LI><LI>repeated reconciliation and validation cycles</LI></UL><P>In a true brownfield conversion, the core work is fundamentally different. The focus is on:</P><UL><LI>system conversion using SUM/DMO</LI><LI>technical readiness and remediation</LI><LI>custom code adaptation</LI><LI>integration compatibility</LI><LI>downtime optimization</LI><LI>controlled cutover execution</LI></UL><P>Since brownfield conversions typically do not involve large-scale remapping, consolidation, or business-unit redefinition of data, Palantir’s key value propositions (continuous transformation, SME-driven mapping, and AI-based validation loops) are not the primary effort drivers.</P><P><STRONG>b. Where Palantir could be strongest</STRONG></P><P>Palantir’s value proposition could becomes far more credible in SDT scenarios, where organizations are not just converting ECC technically but actively reshaping their data, organizational structures, and business processes while moving to S/4HANA.</P><P>In these programs, migration is not a single system conversion event. It is an extended transformation journey where enterprises often:</P><UL><LI>run legacy and target environments in parallel</LI><LI>migrate in waves</LI><LI>consolidate business units</LI><LI>remap master data</LI><LI>continuously validate outcomes</LI></UL><P>In this context, Palantir’s narrative around contextual awareness, continuous validation, and SME-driven rule definition aligns with real SDT challenges.</P><P><STRONG>c. Summary </STRONG></P><UL><LI>Palantir is a non-SAP platform (Foundry and AIP) focused on integration, semantic modeling (Ontology), analytics, and AI-driven operational workflows.</LI><LI>It prepares S/4-ready datasets outside SAP using governed pipelines for mapping, transformation, and continuous validation.</LI><LI>It is a DB agnostic tool as the data gets extracted / read from SAP application layer rather than from the underlying DB.</LI><LI>It is not a replacement for SAP-native brownfield conversion tooling like SUM/DMO.</LI><LI>SUM DMO brownfield conversions are much simpler and straightforward .</LI><LI>Palantir needs relatively deeper functional knowledge when compared to assisted selective data migration using SNP or other similar tools.</LI><LI>The often-cited claim of completing a migration in two weeks typically does not represent the full end-to-end SAP migration timeline. In reality, a standard SAP migration (Bluefield or Brownfield) following the SAP Activate methodology includes several critical phases such as unit testing, functional testing, system integration testing (SIT), mock runs, and cutover rehearsals, all of which significantly extend the overall timeline.</LI><LI><P>Palantir is an intelligent platform for data integration, analytics, and AI-driven decision support, rather than a typical SAP migration tool .</P></LI><LI>It can significantly accelerate SDT or bluefield-style (to certain extent) programs by:</LI><UL><LI>reducing discovery time</LI><LI>enabling AI-assisted mapping</LI><LI>minimizing reconciliation cycles through continuous, context-aware testing</LI></UL></UL><H2 id="toc-hId-171789449"><STRONG>11. Sample use cases Palantir highlights </STRONG></H2><P>Palantir also positions its architecture as delivering value beyond migration by enabling enterprises to build operational applications mid-stream. For example, a customer returns processing app can be built during migration with Palantir with below steps:</P><UL><LI>It pulls customer data from ECC.</LI><LI>It enriches it with intelligence from other integrated systems.</LI><LI>It writes validated transactions into S/4HANA.</LI><LI>This is coordinated through Palantir’s unified data layer (Ontology).</LI></UL><P>Palantir also highlights the flexibility of deploying AI in ways that augment human expertise rather than replacing it, with appropriate levels of automation based on task complexity and risk tolerance. For example, with Palantir AIP a procurement lead could type, “for New London products, swap overseas suppliers for the highest-volume domestic alternative before S/4 upload.” The pipeline reexecutes, validation metrics update, and the change is implemented without filing a ticket, scheduling a sprint, or involving external consultants.</P><P>This supports the idea of migration as business continuity plus continuous improvement rather than a disruptive cutover, and again fits more naturally with SDT than pure brownfield conversion.</P><H2 id="toc-hId--24724056"><STRONG>12.Relationship between Palantir and SAP Business Data Cloud (BDC)</STRONG></H2><P>Palantir and SAP Business Data Cloud (BDC) are connected through a strategic partnership intended to combine SAP’s governed, zero-copy business data foundation with Palantir Foundry’s Ontology and AIP.</P><P>The joint positioning is:</P><UL><LI>SAP BDC provides a trusted SAP semantic layer and harmonized data products.</LI><LI>Palantir extends this into an enterprise-wide ontology that fuses SAP and non-SAP data.</LI><LI>Together they enable AI-driven operational intelligence, simulation, and execution.</LI></UL><H2 id="toc-hId--221237561">13. <STRONG>Palantir and archive data access</STRONG></H2><P>Palantir can support archive data access by acting as a unified governed layer that pulls data from SAP archives and legacy sources and exposes it in a searchable, analytics-ready way. This is useful for reporting, audit, and compliance after ECC decommissioning.</P><P>However:</P><UL><LI>Palantir does not replace SAP’s archiving mechanism itself.</LI><LI>The value lies in consuming archived and legacy data through connectors, blending it with non-SAP sources, and organizing it in the Ontology so users can query it like live business entities.</LI></UL><P>Hope you enjoyed reading!</P><P>Do not forget to click on LIKE if you enjoyed this blog!</P>2026-02-12T17:18:56.953000+01:00https://community.sap.com/t5/technology-blog-posts-by-sap/are-you-ready-to-share-your-hana-insights-with-the-community/ba-p/14328150Are you ready to share your HANA insights with the community?2026-02-13T16:52:59.761000+01:00andreamirandahttps://community.sap.com/t5/user/viewprofilepage/user-id/135788<P><STRONG>Are you ready to share your HANA insights with our community?</STRONG></P><P>HANA Tech Con will take place on <STRONG>July 16</STRONG>, and we’re looking for <STRONG>experts, users, and partners</STRONG> to delight us with engaging and inspiring sessions.</P><P>Ready to submit your proposal? Here is how:</P><P><STRONG>1:</STRONG> Go to the <A href="https://hanatech.community/" target="_self" rel="nofollow noopener noreferrer">HANA Tech Con website</A> and click “Call for Proposals” on the main menu:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2026-02-12 at 18.33.26.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371990i91EC9EC661CF817B/image-size/large?v=v2&px=999" role="button" title="Screenshot 2026-02-12 at 18.33.26.png" alt="Screenshot 2026-02-12 at 18.33.26.png" /></span></P><P> </P><P>You can also find this option directly on the page by clicking on the button “Become a Speaker”:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2026-02-12 at 18.35.52.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/371991i0D297791D6298BF7/image-size/large?v=v2&px=999" role="button" title="Screenshot 2026-02-12 at 18.35.52.png" alt="Screenshot 2026-02-12 at 18.35.52.png" /></span></P><P><STRONG>2:</STRONG> Once you are inside the Call for Proposals page, you will find detailed information about the topics we are looking for.</P><P><span class="lia-unicode-emoji" title=":light_bulb:">💡</span><EM>Tip:</EM> We especially appreciate <STRONG>original, relevant, and engaging content</STRONG>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2026-02-13 at 16.38.58.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372388i40FDDCB467960366/image-size/large?v=v2&px=999" role="button" title="Screenshot 2026-02-13 at 16.38.58.png" alt="Screenshot 2026-02-13 at 16.38.58.png" /></span></P><P> </P><P><STRONG>3: </STRONG>Scroll to the end of the page and click the “Submit Your Talk” button:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2026-02-13 at 16.40.12.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372390i5A2A7FA994C13B24/image-size/large?v=v2&px=999" role="button" title="Screenshot 2026-02-13 at 16.40.12.png" alt="Screenshot 2026-02-13 at 16.40.12.png" /></span></P><P> </P><P><STRONG>4:</STRONG> Once you reach the submission page, you’ll need to choose a title for your Session: </P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Picture1.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372391i951C02EFAF836AA9/image-size/large?v=v2&px=999" role="button" title="Picture1.png" alt="Picture1.png" /></span></P><P> </P><P><EM>Here are some examples from the first HANA Tech Con edition:</EM></P><P>- SAP HANA HotSpots</P><P>- Mastering HANA Performance</P><P>- Database Analysis Using the SAP HANA Cloud Knowledge Graph Engine</P><P>- How to optimize the SAP HANA Memory Sizing Predictions</P><P> </P><P><STRONG>5:</STRONG> Select your Session Type based on:</P><UL><LI>TALK (Spot Talk or Deep Dive Talk);</LI><LI>PPTless Demo;</LI><LI>OTHER (If no format that aligns with your vision, just don’t forget to use the <STRONG>remarks field</STRONG>, <U>not description</U>, to describe your proposed session format). </LI><LI>Extensive Talk.</LI></UL><P>The <STRONG>REMARKS FIELD</STRONG> is located just below the Description section:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Picture2.png" style="width: 936px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372394iB5B8F265DBFB2FC9/image-size/large?v=v2&px=999" role="button" title="Picture2.png" alt="Picture2.png" /></span></P><P> </P><P><STRONG>6:</STRONG> Tell us about yourself!</P><P>If you’re presenting the session alone, please fill in your Name, E-mail and Company.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Picture3.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372395i7A7FAB2157B718F9/image-size/large?v=v2&px=999" role="button" title="Picture3.png" alt="Picture3.png" /></span></P><P>If your session includes another speaker, please click “Add Speaker” and complete their information as well. You can add up to eight speakers per session:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Picture4.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372396i2CFEBEB66D4F5FB5/image-size/large?v=v2&px=999" role="button" title="Picture4.png" alt="Picture4.png" /></span></P><P> </P><P><STRONG>7:</STRONG> To submit your proposal, check the <STRONG>Consent Checkbox</STRONG> and click <STRONG><U>Submit Proposal</U></STRONG>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Picture5.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372397i01BC297A022D2939/image-size/large?v=v2&px=999" role="button" title="Picture5.png" alt="Picture5.png" /></span></P><P> </P><P><STRONG><U>MAKE SURE YOU HAVE SUBMITED YOUR PROPOSAL:</U></STRONG></P><P><STRONG>8:</STRONG> After submitting, you’ll see a confirmation page:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Picture8.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372398i40A38ED33E58A316/image-size/large?v=v2&px=999" role="button" title="Picture8.png" alt="Picture8.png" /></span></P><P> </P><P><EM>IMPORTANT INFORMATION:</EM></P><UL><LI><STRONG>Do NOT FORGET</STRONG> to verify your email, otherwise your proposal won’t be processed. <STRONG><U>You have 7 days after submitting your proposal to verify it</U></STRONG>.</LI><LI>Once verified, you will receive a link to <STRONG>view or edit your proposal</STRONG>.</LI><LI>You MAY submit more than one proposal.</LI><LI>Call for speakers closes at 11:59 pm on March 13, 2025.</LI><LI>Results will be communicated by email <STRONG>within 2–3 weeks after the deadline</STRONG>.</LI></UL><P>In case you have any questions, we’re here for you!</P><P>Contact us via <A href="mailto:info@hanatech.community?subject=%5BHANA%20Tech%20Con%5D%20Speaker%20Question&body=Dear%20HANA%20Tech%20Con%20team%2C%0A%0AI%20have%20a%20question%20about%20my%20session%20proposal.%0A%0ACheers!" target="_blank" rel="noopener nofollow noreferrer">info@hanatech.community</A>.</P><P>And of course: <STRONG>Stay connected</STRONG>! We’re looking forward to seeing you on <STRONG>July 16</STRONG>.</P><P>Cheers,</P><P>HANA Tech Con Team</P><P> </P>2026-02-13T16:52:59.761000+01:00https://community.sap.com/t5/technology-blog-posts-by-sap/understanding-sap-hana-high-availability-technical-scope-mechanisms-and/ba-p/14292654Understanding SAP HANA High Availability - Technical Scope, Mechanisms, and Design Boundaries2026-02-15T18:00:00.016000+01:00HakanHaslamanhttps://community.sap.com/t5/user/viewprofilepage/user-id/185386<P class="lia-align-justify" style="text-align : justify;"><STRONG>Introduction</STRONG><BR />SAP HANA provides a set of explicitly documented mechanisms to support high availability (HA) in productive landscapes. These mechanisms are designed to minimize unplanned downtime, enable fast continuation of operations, and preserve transactional consistency when specific failure types occur.</P><P class="lia-align-justify" style="text-align : justify;">High availability in SAP HANA is not a single feature. It is an architecture composed of multiple building blocks, each with a clearly documented technical objective, scope, and boundary. These building blocks are described across the SAP HANA Administration Guide and related SAP Help Portal documentation.</P><P class="lia-align-justify" style="text-align : justify;">This article consolidates SAP-documented SAP HANA high-availability mechanisms into a single technical view.<BR />Its purpose is to make scope, interaction, and design boundaries explicit, enabling technically sound architecture design, realistic availability expectations, and precise discussions.</P><P class="lia-align-justify" style="text-align : justify;">All statements are derived from official SAP documentation.</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>1. High Availability in SAP HANA - Technical Definition</STRONG><BR />From a technical perspective, high availability in SAP HANA focuses on:</P><UL><LI>minimizing unplanned downtime</LI><LI>enabling fast system continuation after certain failure types</LI><LI>preserving transactional consistency during failover or takeover</LI></UL><P class="lia-align-justify" style="text-align : justify;">High availability is explicitly distinct from:</P><UL><LI>backup and recovery, which restore data to a previous state</LI><LI>disaster recovery, which addresses site-level or regional failures</LI></UL><P class="lia-align-justify" style="text-align : justify;">This separation of objectives is consistently reflected in SAP HANA documentation and tooling.</P><P class="lia-align-justify" style="text-align : justify;"><U>Key boundary</U><BR />High availability mechanisms maintain continuity of operation, not historical restore points.</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>2. SAP HANA High Availability Building Blocks</STRONG><BR />SAP HANA high availability is achieved by combining several documented mechanisms:</P><UL><LI>Host Auto-Failover</LI><LI>SAP HANA System Replication</LI><LI>Scale-Up and Scale-Out topologies</LI><LI>SAP-supported cluster frameworks on certified operating systems (for example, Pacemaker)</LI></UL><P class="lia-align-justify" style="text-align : justify;">Each mechanism addresses specific failure classes and operates within a defined technical scope. No single mechanism covers all failure scenarios.</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>3. Host Auto-Failover - Technical Scope and Boundaries</STRONG><BR /><STRONG>3.1 Purpose and Mechanism</STRONG><BR />Host Auto-Failover is designed to handle host-level failures within a SAP HANA landscape.<BR />In supported configurations:</P><UL><LI>a standby host is configured</LI><LI>SAP HANA detects a host failure</LI><LI>database services are automatically reassigned to the standby host</LI></UL><P class="lia-align-justify" style="text-align : justify;">This reassignment is performed by SAP HANA itself based on internal monitoring and configuration.</P><P><U>SAP Help Portal reference<BR /></U><A href="https://help.sap.com/docs/SAP_HANA_PLATFORM/6b94445c94ae495c83a19646e7c3fd56/879d9dc46bb64ccda028872c86c70afc.html" target="_blank" rel="noopener noreferrer">SAP HANA Host Auto-Failover</A></P><P class="lia-align-justify" style="text-align : justify;"><STRONG>3.2 Technical Objective</STRONG><BR />Host Auto-Failover focuses on:</P><UL><LI>host failure detection</LI><LI>service reassignment</LI><LI>automatic continuation of operations</LI></UL><P class="lia-align-justify" style="text-align : justify;">It does not:</P><UL><LI>provide historical restore points</LI><LI>protect against logical data errors</LI><LI>replace backup or recovery mechanisms</LI></UL><P class="lia-align-justify" style="text-align : justify;"><U>Key boundary</U><BR />Host Auto-Failover preserves service execution, not data history.</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>4. SAP HANA System Replication in the HA Context</STRONG><BR /><STRONG>4.1 Technical Role</STRONG><BR />SAP HANA System Replication (SR) is a core building block for high availability and disaster tolerance scenarios.<BR />In the HA context, SR:</P><UL><LI>continuously transfers data changes from a primary system to a secondary system</LI><LI>enables fast takeover in case of primary system failure</LI><LI>preserves transactional consistency at takeover time</LI></UL><P><U>SAP Help Portal reference<BR /></U><A href="https://help.sap.com/docs/SAP_HANA_PLATFORM/6b94445c94ae495c83a19646e7c3fd56/676844172c2442f0bf6c8b080db05ae7.html" target="_blank" rel="noopener noreferrer">SAP HANA System Replication - Overview</A></P><P class="lia-align-justify" style="text-align : justify;"><STRONG>4.2 Replication Modes and Availability Behavior</STRONG><BR />SAP HANA System Replication supports different replication modes, such as synchronous and asynchronous replication.<BR />From a high-availability perspective:</P><UL><LI>the replication mode defines when changes are acknowledged</LI><LI>the secondary system reflects the current state of the primary system</LI></UL><P class="lia-align-justify" style="text-align : justify;">Logical changes, deletions, or corruptions on the primary system are replicated as part of normal operation.<BR />This behavior is inherent to replication and aligns with the documented objective of SR as an availability mechanism.</P><P><U>SAP Help Portal reference<BR /></U><A href="https://help.sap.com/docs/SAP_HANA_PLATFORM/6b94445c94ae495c83a19646e7c3fd56/c039a1a5b8824ecfa754b55e0caffc01.html" target="_blank" rel="noopener noreferrer">SAP HANA System Replication - Replication Modes</A></P><P class="lia-align-justify" style="text-align : justify;"><U>Key boundary</U><BR />System replication maintains current state, not historical restore points.</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>5. Cluster Management and Pacemaker – Technical Role</STRONG><BR /><STRONG>5.1 Purpose of Cluster Frameworks</STRONG><BR />In supported Linux-based SAP HANA environments, cluster frameworks such as Pacemaker are used to orchestrate:</P><UL><LI>system and service monitoring</LI><LI>failover and takeover actions</LI><LI>role coordination between primary and secondary systems</LI></UL><P class="lia-align-justify" style="text-align : justify;">Pacemaker does not replace SAP HANA availability mechanisms.<BR />It coordinates and automates actions around them.</P><P class="lia-align-justify" style="text-align : justify;"><U>SAP HANA System Replication with Cluster Management (Pacemaker)</U><BR />(Implementation is covered by OS-vendor specific best-practice guides, not by a single SAP HANA Platform help page.)</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>5.2 Design Boundary</STRONG><BR />From a technical perspective:</P><UL><LI>Pacemaker does not replicate data</LI><LI>Pacemaker does not provide restore points</LI><LI>Pacemaker does not replace SAP HANA logic</LI></UL><P class="lia-align-justify" style="text-align : justify;">It acts as an orchestration layer for documented HA mechanisms.</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>6. Failure Classes and HA Coverage</STRONG><BR />SAP HANA high-availability mechanisms address specific failure classes:</P><UL><LI>Host failures<BR />handled by Host Auto-Failover and cluster-managed restarts</LI><LI>Primary system failures<BR />handled by system replication and takeover</LI><LI>Service-level failures<BR />handled by internal SAP HANA restart logic and cluster coordination</LI></UL><P class="lia-align-justify" style="text-align : justify;">Coverage depends on:</P><UL><LI>architecture</LI><LI>topology (scale-up vs. scale-out)</LI><LI>configuration</LI></UL><P class="lia-align-justify" style="text-align : justify;">No single mechanism covers all failure types.</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>7. High Availability vs. Recovery and Disaster Recovery</STRONG><BR />From a technical standpoint:</P><UL><LI>High availability minimizes downtime</LI><LI>Backup and recovery restore data to a previous state</LI><LI>Disaster recovery handles site-level failure domains</LI></UL><P class="lia-align-justify" style="text-align : justify;">Although system replication may appear in both HA and DR designs, objectives, assumptions, and validation criteria differ.</P><P class="lia-align-justify" style="text-align : justify;">High availability focuses on:</P><UL><LI>continuity</LI><LI>fast takeover</LI><LI>minimal disruption</LI></UL><P class="lia-align-justify" style="text-align : justify;">Recovery and DR focus on:</P><UL><LI>reconstruction</LI><LI>historical restore points</LI><LI>controlled recovery after broader failures</LI></UL><P class="lia-align-justify" style="text-align : justify;"><STRONG>8. Design Boundaries and Architectural Implications</STRONG><BR />From an architecture perspective:</P><UL><LI>high availability is achieved through combination, not a single feature</LI><LI>each HA mechanism has explicit limits</LI><LI>realistic availability expectations require alignment between:<UL><LI>failure scenarios</LI><LI>documented mechanism scope</LI><LI>operational readiness</LI></UL></LI></UL><P class="lia-align-justify" style="text-align : justify;">Understanding these boundaries is essential for technically sound SAP HANA availability design.</P><P class="lia-align-justify" style="text-align : justify;"><STRONG>Summary</STRONG><BR />SAP HANA provides a comprehensive, well-documented set of high-availability mechanisms.</P><P class="lia-align-justify" style="text-align : justify;">High availability is not defined by a single feature, but by the interaction of multiple documented components, each addressing specific failure scenarios within defined technical boundaries.</P><P class="lia-align-justify" style="text-align : justify;">By understanding the scope, mechanisms, and limits of Host Auto-Failover, System Replication, and cluster-based coordination, SAP HANA landscapes can be designed with clear, realistic availability expectations.</P>2026-02-15T18:00:00.016000+01:00https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-members/flexible-workflow-dynamically-control-workflow-steps-based-on-custom/ba-p/14327417Flexible Workflow: Dynamically control workflow steps based on custom condition2026-02-16T08:11:58.421000+01:00Sugatohttps://community.sap.com/t5/user/viewprofilepage/user-id/1447332<P><SPAN>Hello Everyone!!!</SPAN><BR /><BR /><SPAN>In this blog, I will try to explain how we can dynamically control steps of a particular flexible workflow based on certain condition. We can also control the triggering of a flexible workflow dynamically based on start condition, if multiple active flexible workflows are configured. So there are two options:</SPAN></P><UL><LI><SPAN>Control/skip steps (approval level) of a particular flexible workflow.</SPAN></LI><LI><SPAN>Control triggering of flexible workflow based on start condition if multiple workflows are active for same business process.</SPAN></LI></UL><P><STRONG>Requirement</STRONG><SPAN>: Before we start, lets understand our particular business requirement . For demonstration, SES flexible workflow WS00800321 will be used. In this requirement, lean SES can be created in two ways in S4.</SPAN></P><OL><LI><SPAN> Through custom code written in BADI ARBCIG_ADVANCE_SHIPMENT_NOTICE (method: IF_ARBCIG_ADVANCE_SHIP_NOTICE~POST_PROCESSING) when Ariba sends shipment notice.</SPAN></LI><LI><SPAN>User can manually create Lean SES using standard Fiori App "Manage Service Entry Sheet" .</SPAN></LI></OL><P><SPAN>For both the scenarios, WS00800321 workflow will be triggered when lean SES is created in the system. However, the SES created from Ariba will be having two levels of approver (Project owner and Cost Center Director) but manually created one will be having only one level (Cost Center Director). So for SES created through ARIBA flow, it has an extra approval step at 1st Level.</SPAN></P><P><SPAN>In system, there is only one active flexible workflow for SES configured for service entry sheet. Let's see how we can skip the 1st level (Project Owner) when SES is manually created through Fiori app and directly go to Cost Center Director for approval.</SPAN></P><P><STRONG>Code: </STRONG> To achieve this, we have to implement two BADIs. </P><UL><LI><STRONG>SWF_WORKFLOW_CONDITION_DEF : </STRONG>Define custom pre-condition / step condition</LI><LI><STRONG>SWF_WORKFLOW_CONDITION_EVAL</STRONG>.: Evaluate <SPAN>pre-condition / step condition and take decision.</SPAN></LI></UL><P>Both the BADIs are filter dependent and we need to maintain the WF number as SCENARIO_ID. Here the SES flexible workflow <SPAN>WS00800321 has been maintained.</SPAN> </P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_0-1770967486088.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372134i46E930D16F4A8B0A/image-size/large?v=v2&px=999" role="button" title="Sugato_0-1770967486088.png" alt="Sugato_0-1770967486088.png" /></span></P><P>in GET_CONDITION method of *DEF BADI, write the below code. The ID is a unique number assigned to the name which will be appearing in the dropdown list when configuring flexible workflow. Please refer below screenshots from flexible workflow configuration.</P><pre class="lia-code-sample language-abap"><code> APPEND VALUE #( id = '1' subject = 'BADI: Lean SES Creator (Approver Skip)'
type = if_swf_flex_ifs_condition_def=>cs_condtype-start_step ) TO ct_condition.
APPEND VALUE #( id = '1' name = 'BADI: Lean SES Creator (Approver Skip)'
xsd_type = if_swf_flex_ifs_condition_def=>cs_xstype-string
mandatory = abap_true ) TO ct_parameter.</code></pre><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_4-1770979635119.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372260i8044B4BEDC90170E/image-size/medium?v=v2&px=400" role="button" title="Sugato_4-1770979635119.png" alt="Sugato_4-1770979635119.png" /></span></P><P> Similarly, we need to maintain the SCENARIO_ID for *EVAL BADI also.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_1-1770968415428.png" style="width: 511px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372150i872D10F30302C0EC/image-dimensions/511x182?v=v2" width="511" height="182" role="button" title="Sugato_1-1770968415428.png" alt="Sugato_1-1770968415428.png" /></span></P><P>In method EVALUATE_CONDITION, write below code to compare the values maintained for the parameter in flexible workflow. If the creator's user ID is ARIBA_INT (Ariba user id in S4 system), there will be two level approval process for SES workflow. </P><pre class="lia-code-sample language-abap"><code> CASE is_sap_object_node_type-sont.
WHEN 'PurchaseRequisition'.
banfn = is_sap_object_node_type-sont_key_part_1.
WHEN 'PurchaseOrder'.
ebeln = is_sap_object_node_type-sont_key_part_1.
WHEN 'ServiceEntrySheet'.
*&&-- Get the Service Entry Sheet number
lv_ses = is_sap_object_node_type-sont_key_part_1.
WHEN OTHERS.
ENDCASE.
*&&- Reading the value maintained in the parameter in flexible workflow.
DATA(st_parameter_value) = VALUE #( it_parameter_value[ name = 'BADI: Lean SES Creator (Approver Skip)' ] OPTIONAL ).
CASE is_sap_object_node_type-sont.
WHEN 'PurchaseRequisition'.
WHEN 'PurchaseOrder'.
WHEN 'ServiceEntrySheet'.
CASE st_parameter_value-name.
WHEN 'BADI: Lean SES Creator (Approver Skip)'.
SELECT SINGLE crea_uname
FROM mmpur_ses_header
INTO (lv_ses_creator) " Creator of SES
WHERE serviceentrysheet = _ses.
IF sy-subrc = 0.
CASE lv_ses_creator.
WHEN st_parameter_value-value.
*&&- 1st level approver (step) will be triggered if the condition satisfy.
cv_is_true = abap_true.
WHEN OTHERS.
*&&-- Skip the 1st level approver if SES is manually created(Creator other than ARIBA).
cv_is_true = abap_false.
ENDCASE.
ENDIF.
WHEN OTHERS.
ENDCASE.</code></pre><P>Let's see where we have to use this custom condition and value in SES flexible workflow Fiori app: <SPAN>Manage Workflows for Service Entry Sheets</SPAN></P><P>The newly added parameter "<!-- StartFragment --><SPAN><SPAN class="">BADI</SPAN><SPAN class="">: </SPAN>Lean SES Creator <SPAN class="">(</SPAN>Approver <SPAN class="">Skip</SPAN><SPAN class="">)</SPAN></SPAN> " and its value "ARIBA_INT" should be maintained at step level of the workflow. The parameter option will be coming in dropdown when configuring steps.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_2-1770970241138.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372162iE0C7F6FDE87600B2/image-size/large?v=v2&px=999" role="button" title="Sugato_2-1770970241138.png" alt="Sugato_2-1770970241138.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_3-1770970427461.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372164i690367F80A68AAE7/image-size/large?v=v2&px=999" role="button" title="Sugato_3-1770970427461.png" alt="Sugato_3-1770970427461.png" /></span></P><P>If the requirement was to trigger different workflow for SES based on start condition, we would have selected the option here instead of steps. In that case first workflow would have 2 steps configured (for ARIBA created SES) and second workflow would have 1 step configured (Manually created). Based on this parameter value we could control which workflow to trigger.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_0-1770976359932.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372205i3C483196814DDAF5/image-size/large?v=v2&px=999" role="button" title="Sugato_0-1770976359932.png" alt="Sugato_0-1770976359932.png" /></span></P><P>Let's come back to our single SES workflow based scenario. The agent determination logic to identify Project Owner and Cost Center Director is written in another BADI MMPUR_WORKFLOW_AGENTS_V2. You can write your custom logic in Method IF_MMPUR_WORKFLOW_AGENTS_V2~GET_APPROVERS to determine approvers. Apart from SES, this BADI can be used for PO, PR as well and it contains filter parameter.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_1-1770976821297.png" style="width: 545px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372209i55F3077674967A7B/image-dimensions/545x172?v=v2" width="545" height="172" role="button" title="Sugato_1-1770976821297.png" alt="Sugato_1-1770976821297.png" /></span></P><P><STRONG>Outcome</STRONG>: We created a SES through ARIBA interface. We can notice in the below example that both the approvers have been determined correctly. 1st level approver has already approved the SES and now its pending with 2nd level approver.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_2-1770977511064.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372212i1A9526ED239ADC61/image-size/large?v=v2&px=999" role="button" title="Sugato_2-1770977511064.png" alt="Sugato_2-1770977511064.png" /></span></P><P>When the SES is manually created through SES Fiori app, the 1st level has been skipped because Creator user ID is not ARIBA_INT and directly going to 2nd level approver who is cost center director.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Sugato_3-1770977714874.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/372214iA6241F5D883F5E5C/image-size/large?v=v2&px=999" role="button" title="Sugato_3-1770977714874.png" alt="Sugato_3-1770977714874.png" /></span></P><P>In this way we can control the flexible workflow steps dynamically based on values configured in custom condition parameter.</P><P>There is another example in SAP Help portal. You can refer this as well.</P><P><A title="https://help.sap.com/docs/SAP_MARKETING/307cdb0f1a69422bb23b9ee426bd39f7/36cd879c93cd4ab7ab80baa7e819f868.html" href="https://help.sap.com/docs/SAP_MARKETING/307cdb0f1a69422bb23b9ee426bd39f7/36cd879c93cd4ab7ab80baa7e819f868.html" target="_blank" rel="noopener noreferrer">Custom Conditions for Marketing Plan Approval Workflow</A> </P><P><BR /><SPAN>Cheers !!,</SPAN><BR /><SPAN>Sugato</SPAN></P>2026-02-16T08:11:58.421000+01:00https://community.sap.com/t5/technology-blog-posts-by-sap/how-i-loaded-1-2-billion-records-into-sap-hana-without-crashing-the-server/ba-p/14334564How I Loaded 1.2 Billion Records into SAP HANA Without Crashing the Server (Or my Sanity)2026-02-23T17:03:13.389000+01:00DEEPA_DORAIRAJhttps://community.sap.com/t5/user/viewprofilepage/user-id/1752099<P><SPAN>Most SAP HANA performance discussions live in the comfortable world of millions of records. Benchmark slides, proof-of-concept demos, and architecture diagrams all look clean at that scale. But enterprise reality has a way of handing you something an order of magnitude larger and expecting the same SLA.</SPAN></P><H2 id="toc-hId-1790508322">The Setup: When Scale Stops Being Theoretical</H2><P>Most SAP HANA performance discussions live in the comfortable world of millions of records. Benchmark slides, proof-of-concept demos, and architecture diagrams all look clean at that scale. But enterprise reality has a way of handing you something an order of magnitude larger and expecting the same SLA.</P><P>In this case, the table in question was a virtual table — a HANA object that sits on top of a remote data source via Smart Data Access (SDA). <STRONG>The underlying dataset:</STRONG> 1.2 billion rows. <STRONG>The requirement:</STRONG> a daily delta load capturing changes since the last run, landing data into a local HANA columnar table for analytics consumption.</P><P>On paper, straightforward. In practice, the first execution ended in under two minutes — not because it was fast, but because it had already failed.</P><P><STRONG>ERROR: Numeric value out of range: 2147483648 > 2147483647 (integer overflow)</STRONG></P><P>If you've spent any time in SAP HANA internals, you recognize this immediately: a 32-bit integer overflow. The row count counter had exceeded the maximum value of a signed 32-bit integer — roughly 2.1 billion — when accounting for internal processing metadata. At 1.2 billion source records, certain HANA execution nodes were attempting to track intermediate results using data types that simply could not hold the numbers involved.</P><H2 id="toc-hId-1593994817">Diagnosing the Real Problem</H2><P>The instinct in situations like this is to find a workaround — filter the dataset, process it in chunks, hope that the next HANA revision patches the behavior. We resisted that instinct because workarounds at this scale become permanent architecture decisions. The fix needed to be designed, not hacked.</P><P>The diagnostic phase revealed three compounding issues:</P><UL><LI>The virtual table had no physical partitioning. All query execution was being funneled through a single HANA node, creating both the overflow condition and a severe memory bottleneck.</LI><LI>The delta detection logic used a naive MAX(timestamp) comparison across the full source table. At 1.2 billion rows, even this baseline query was scanning far more data than necessary.</LI><LI>The target columnar table had been created with default settings, meaning no partition pruning was possible during write operations — every insert had to compete for the same table-level lock structures.</LI></UL><P>Any one of these would be a problem at scale. All three together made the load procedure functionally impossible without architectural changes.</P><H2 id="toc-hId-1397481312">The Architecture Decision: Hash-Based Distribution</H2><P>The core decision was between range-based partitioning and hash-based distribution. Range partitioning is intuitive — split the data by date, by region, by some natural business boundary. But it creates a dangerous assumption: that your data arrives evenly across those boundaries. Delta loads rarely do. Business activity spikes, month-end processing creates surges, and range partitioning under uneven load creates hot partitions that defeat the purpose entirely.</P><P>Hash-based distribution solves this by distributing rows across partitions based on a hash of one or more key columns, regardless of value. The distribution is mathematically even by construction, not by assumption about your data. For a delta load pattern where the arrival distribution is unpredictable, this was the right choice.</P><P><EM>Key insight: Hash distribution trades partition pruning capability (you can't easily skip partitions by value range) for guaranteed load distribution. For delta loads where you're always processing "new records since last run" rather than querying a specific range, this trade-off is almost always worth it.</EM></P><P>The implementation used a composite key — a combination of the source system identifier and the record's primary key — as the hash input. This ensured that records from the same source system were spread across partitions rather than concentrated, which mattered because the source systems themselves had uneven record volumes.</P><H2 id="toc-hId-1200967807">The Procedure: Key Implementation Decisions</H2><P>The delta load procedure was rebuilt from scratch with four core changes. I'll walk through the logic rather than exact client-specific code, but the patterns are directly replicable.</P><P>Step 1 — Establish the delta boundary without touching the full table:</P><P>-- Get last successful load timestamp from a control table</P><P>SELECT MAX(load_timestamp) INTO lv_last_load</P><P>FROM delta_control_table</P><P>WHERE load_status = 'SUCCESS';</P><P>This is a small but important detail. The previous implementation read the MAX timestamp from the source table itself — a full scan of 1.2 billion rows just to establish a starting point. Moving this to a dedicated control table eliminated what was effectively a full table scan before the actual work even began.</P><P>Step 2 — Partition the work at the procedure level, not just the table level:</P><P>-- Process in hash-distributed batches using modulo on source key</P><P>FOR i IN 0..7 DO</P><P><SPAN> </SPAN>INSERT INTO target_table</P><P><SPAN> </SPAN>SELECT * FROM source_virtual_table</P><P><SPAN> </SPAN>WHERE MOD(CAST(source_key AS BIGINT), 8)= i</P><P><SPAN> </SPAN>AND change_timestamp > lv_last_load;</P><P>END FOR;</P><P>The CAST to BIGINT here is the direct response to the original overflow. By explicitly casting the key to a 64-bit integer before the modulo operation, we moved the arithmetic out of the implicit 32-bit context that was causing the failure. The number 8 is the partition count — adjustable based on your HANA node count and available parallelism.</P><P>Step 3 — Explicit memory management between iterations:</P><P>-- Release intermediate results between batch iterations</P><P>EXEC 'UPDATE STATISTICS ON target_table';</P><P>Without this, HANA's query optimizer was working with stale statistics mid-procedure, leading to increasingly poor execution plans as the load progressed. Updating statistics between batches added modest execution time but dramatically improved consistency across the full load window.</P><H2 id="toc-hId-1004454302">The Results: Numbers That Justify the Redesign</H2><TABLE width="624"><TBODY><TR><TD width="208"><P><STRONG>Metric</STRONG></P></TD><TD width="208"><P><STRONG>Before Redesign</STRONG></P></TD><TD width="208"><P><STRONG>After Redesign</STRONG></P></TD></TR><TR><TD width="208"><P>Load completion</P></TD><TD width="208"><P>Failed (overflow)</P></TD><TD width="208"><P>Consistent success</P></TD></TR><TR><TD width="208"><P>Execution time</P></TD><TD width="208"><P>N/A (failed)</P></TD><TD width="208"><P>~47 minutes avg</P></TD></TR><TR><TD width="208"><P>Peak memory per node</P></TD><TD width="208"><P>Unbounded (OOM)</P></TD><TD width="208"><P>~18 GB controlled</P></TD></TR><TR><TD width="208"><P>Delta detection scan</P></TD><TD width="208"><P>1.2B rows (full)</P></TD><TD width="208"><P>Control table only</P></TD></TR><TR><TD width="208"><P>Partition hot-spotting</P></TD><TD width="208"><P>Single node</P></TD><TD width="208"><P>Even 8-way distribution</P></TD></TR></TBODY></TABLE><P> </P><H2 id="toc-hId-807940797">What Generalizes: A Decision Framework for Your Next Billion-Record Load</H2><P>If you take nothing else from this, take this decision tree. These are the questions I now ask before designing any large-scale HANA load procedure:</P><UL><LI>Is your row count approaching or exceeding 500 million? If yes, assume you will hit 32-bit arithmetic constraints somewhere in the execution path. Design BIGINT handling in explicitly from day one.</LI><LI>Is your delta arrival distribution predictable by a natural business key? If yes, range partitioning may work. If no — or if you're unsure — default to hash distribution.</LI><LI>Are you reading the delta boundary from your source table? Move this to a control table immediately. You are doing a full scan of your largest table to answer a question your database should already know.</LI><LI>Is your target table using default partition settings? For tables that will receive regular bulk inserts above 100 million rows, explicit partitioning is not optional — it is the difference between a load procedure and a production incident.</LI></UL><H2 id="toc-hId-611427292">What I Would Do Differently</H2><P>The honest answer is that the control table should have been part of the original design. Delta load architectures at any scale need a separate tracking mechanism — treating the source data as the source of truth for load state is a design flaw, not just a performance issue. At 1.2 billion records it becomes catastrophic, but it would have been wrong at 100 million too.</P><P>I would also have instrumented the procedure differently from the start. Adding execution time logging between each batch iteration, with row counts and memory snapshots, would have made the performance profiling much faster. We added this in a subsequent revision and it has saved significant debugging time on every load since.</P><P> </P><H2 id="toc-hId-414913787">Final Thoughts</H2><P>SAP HANA is genuinely capable of handling data at this scale — but it requires you to work with its architecture rather than assuming it will absorb whatever you throw at it. The columnar engine, the distributed execution model, and the memory management system are all designed with specific usage patterns in mind. When you align your load procedures to those patterns, the performance characteristics are exceptional. When you don't, the failures are fast and unambiguous.</P><P>The 1.2 billion record delta load now runs reliably every night. It takes about 47 minutes, uses predictable memory, and has not failed since the redesign was deployed. That feels unremarkable today, which is exactly what good infrastructure architecture should feel like.</P><P><EM>If you're working through a similar challenge, I'm happy to discuss in the comments. The specifics of hash key selection, batch count tuning, and control table schema design all depend on your environment — but the principles are consistent.</EM></P>2026-02-23T17:03:13.389000+01:00https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-members/end-to-end-automatic-order-to-billing-process-in-sap-sd-low-coding-approach/ba-p/14331535End-to-End Automatic Order to Billing Process in SAP SD (Low-Coding Approach)2026-02-24T07:29:02.824000+01:00serdarulgenhttps://community.sap.com/t5/user/viewprofilepage/user-id/888198<P>In line with the customer requirement, an automatic process was designed covering delivery creation, goods issue posting, and billing immediately after sales order creation.</P><P>The solution was implemented based entirely on standard SAP SD principles and designed under a low-coding approach, minimizing custom developments while preserving full control over the process.</P><P><STRONG>1. Excluding Specific Customers from the Automatic Process</STRONG></P><P>During the analysis phase, it became necessary to exclude certain customers from the automated flow.</P><P>To achieve this:</P><UL><LI>A custom indicator field was defined under Business Partner – SD (FLCU01) view.</LI><LI>Using transaction CMOD, field KDGRP4 was renamed as “Automatic Billing Exclusion”.</LI><LI>For customers that must remain outside the automated process, value “X” is maintained via customizing.</LI></UL><P>This design ensures flexibility and allows business users to control participation in the automated process without additional development.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="serdarulgen_0-1771486932392.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/374134iEB4E4CD1AB8FE6ED/image-size/medium?v=v2&px=400" role="button" title="serdarulgen_0-1771486932392.png" alt="serdarulgen_0-1771486932392.png" /></span></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="serdarulgen_1-1771486932393.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/374133i65B3BAE1F17F480E/image-size/medium?v=v2&px=400" role="button" title="serdarulgen_1-1771486932393.png" alt="serdarulgen_1-1771486932393.png" /></span></P><P><STRONG>2. Sales Document Configuration (VOV8)</STRONG></P><P>Within VOV8 sales document type configuration, the relevant document types were adjusted by activating the Immediate Delivery setting.</P><P>This configuration enables the system to automatically trigger delivery creation directly from the sales order.</P><P><STRONG>3. Dynamic Control in MV45AFZZ (SAVE_DOCUMENT_PREPARE)</STRONG></P><P>At enhancement point MV45AFZZ – SAVE_DOCUMENT_PREPARE, a class-based method was implemented instead of writing logic directly into the include.</P><P>The method dynamically reads Business Partner data and manipulates field TVAK-LISOF depending on defined conditions.</P><P>Key Logic Summary:</P><UL><LI>If the document creator is not the workflow user (SAP_WFRT), automation is cancelled.</LI><LI>KNVV-KVGR4 is checked for the exclusion flag.</LI><LI>If the customer is marked with “X”, the automation flag (TVAK-LISOF) is cleared dynamically.</LI><LI>Otherwise, the process continues automatically.</LI></UL><P>This approach ensures that:</P><UL><LI>Standard configuration remains intact.</LI><LI>Automation can be centrally controlled.</LI><LI>Sales document level settings can be programmatically overridden when necessary.</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="serdarulgen_2-1771486932394.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/374135i1A91EC34FA3ACE35/image-size/medium?v=v2&px=400" role="button" title="serdarulgen_2-1771486932394.png" alt="serdarulgen_2-1771486932394.png" /></span><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="serdarulgen_3-1771486932395.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/374136i6650DBC4428C6E21/image-size/medium?v=v2&px=400" role="button" title="serdarulgen_3-1771486932395.png" alt="serdarulgen_3-1771486932395.png" /></span> </P><pre class="lia-code-sample language-abap"><code>METHOD zsd_save_document_prepare_1.
* inserted by serdar ulgen. 19.01.2026 11:01:55 .
i_knvv-kunnr = i_vbak-kunnr.
i_knvv-vkorg = i_vbak-vkorg.
i_knvv-vtweg = i_vbak-vtweg.
i_knvv-spart = i_vbak-spart.
FIELD-SYMBOLS <lv_lisof> TYPE any.
ASSIGN ('(SAPMV45A)TVAK-LISOF') TO <lv_lisof>.
IF sy-subrc <> 0.
RETURN.
ENDIF.
IF i_vbak-ernam <> 'SAP_WFRT'.
CLEAR <lv_lisof>.
RETURN.
ENDIF.
SELECT SINGLE kvgr4
FROM knvv
INTO @i_knvv-kvgr4
WHERE kunnr = @i_knvv-kunnr
AND vkorg = @i_knvv-vkorg
AND vtweg = @i_knvv-vtweg
AND spart = @i_knvv-spart.
IF i_knvv-kvgr4 = 'X' AND <lv_lisof> = 'A'.
CLEAR <lv_lisof>.
ENDIF.
* if u any question please contact with me.</code></pre><P><EM> </EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="serdarulgen_4-1771486932397.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/374137i18BAB10886790053/image-size/medium?v=v2&px=400" role="button" title="serdarulgen_4-1771486932397.png" alt="serdarulgen_4-1771486932397.png" /></span></P><P><STRONG>4. Automating Goods Issue and Billing</STRONG></P><P>After completing the Sales → Delivery flow, the next phase covered:</P><UL><LI>Goods Issue posting</LI><LI>Billing creation</LI></UL><P>Alternative Approach (Not Preferred)</P><P>An alternative solution could involve sequential BAPI calls for goods issue and billing within a custom program.</P><P>Although technically feasible, this method requires careful handling of:</P><UL><LI>ENQUEUE / DEQUEUE locks</LI><LI>Document synchronization</LI><LI>LUW management</LI></UL><P>Improper lock handling may lead to document conflicts.</P><P><STRONG> 5. </STRONG><STRONG>Leveraging Standard Output Type REA0</STRONG></P><P>In this implementation, we leveraged the fact that standard SAP output type REA0 can directly trigger billing.</P><P>The approach:</P><OL><LI>The standard program used in REA0 was copied.</LI><LI>A Goods Issue BAPI call was added at the beginning.</LI><LI>Billing creation was kept as standard.</LI><LI>Output determination was assigned correctly to the relevant delivery types using VV21.</LI></OL><P>This step is critical — without correct output assignment, the automation will not execute.</P><P><STRONG>6. Technical Highlights</STRONG></P><UL><LI>Goods issue is triggered via WS_DELIVERY_UPDATE_2</LI><LI>Billing is created via /SPE/CREATE_NEW_BILLING_CALL</LI><LI>Error handling is managed through NAST protocol updates</LI><LI>Separate LUW handling is ensured via /SPE/CALL_PROC_IN_NEW_LUW</LI><LI>Minimal custom coding</LI><LI>Maximum reuse of SAP standard structures</LI></UL><pre class="lia-code-sample language-abap"><code>REPORT zsd_***_****.
TABLES: nast.
CONSTANTS: c_allready_billed TYPE fkstk VALUE 'C'.
DATA: gs_nast TYPE nast,
lt_delivery_data TYPE leshp_delivery_t,
ls_delivery_data TYPE LINE OF leshp_delivery_t,
lt_delivery_items TYPE leshp_delivery_item_t,
ls_doc_pos_ver_req TYPE /spe/doc_pos_ver_req,
lt_doc_pos_ver_req TYPE /spe/doc_pos_ver_req_t,
lv_dummy_message TYPE bapiret2-message,
lt_bapiret2 TYPE bapiret2_t,
ls_bapiret2 TYPE bapiret2,
ls_leshp_data TYPE leshp_data.
FIELD-SYMBOLS: <ls_billing_req> TYPE LINE OF leshp_delivery_item_t.
*&---------------------------------------------------------------------*
*& Form ENTRY
*&---------------------------------------------------------------------*
* create new bill
*----------------------------------------------------------------------*
FORM entry USING returncode TYPE sy-subrc
use_screen TYPE c.
DATA: ls_vbeln_vl TYPE vbeln_vl,
lv_leave TYPE c, "n_1238590
lv_error TYPE c,
ls_vbkok TYPE vbkok,
lt_prot TYPE TABLE OF prott,
lv_text TYPE t100-text,
lv_delivery TYPE vbeln_vl.
FIELD-SYMBOLS: <ls_return> TYPE bapiret2.
IF sy-uname = 'SAP_WFRT'.
lv_delivery = nast-objky.
ls_vbkok-vbeln_vl = lv_delivery.
ls_vbkok-wadat_ist = sy-datum.
ls_vbkok-wabuc = abap_true.
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
synchron = abap_true
vbkok_wa = ls_vbkok
delivery = lv_delivery
TABLES
prot = lt_prot
EXCEPTIONS
error_message = 1
OTHERS = 2.
LOOP AT lt_prot ASSIGNING FIELD-SYMBOL(<error>).
IF <error>-msgty = 'E' OR <error>-msgty = 'A'.
SELECT SINGLE text FROM t100 INTO <a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1419942">@LV</a>_text WHERE sprsl = <a href="https://community.sap.com/t5/user/viewprofilepage/user-id/4244">@SY</a>-langu AND arbgb = @<error>-msgid AND msgnr = @<error>-msgno.
IF sy-subrc = 0 AND lv_text IS NOT INITIAL.
MESSAGE lv_text TYPE 'E'.
ELSE.
MESSAGE ID <error>-msgid TYPE 'E' NUMBER <error>-msgno.
ENDIF.
returncode = 1.
RETURN.
ENDIF.
ENDLOOP.
ENDIF.
* Redirect this NAST processing to separate LUW - in case it is
* called with dispatching time 4 (immediate processing)
* during update task "v_n_1238590
CALL FUNCTION '/SPE/CALL_PROC_IN_NEW_LUW'
EXPORTING
is_nast = nast
IMPORTING
ef_leave = lv_leave.
IF NOT lv_leave IS INITIAL.
* Per default we set the status on error, so that it can be reprocessed
* in error processing (RSNAST0F) if there is any syntax error / update
* termination / ... in the decoupled NAST processing.
returncode = 4.
RETURN.
ENDIF. "^_n_1238590
returncode = 0.
* Get Item Data of Delivery
* ls_leshp_data-item = 'X'. "n_1822545
* Get Status of Outbound Delivery
ls_leshp_data-head_status = 'X'.
* Copy Nast Entry
gs_nast = nast.
ls_vbeln_vl = nast-objky.
CALL FUNCTION 'LE_DELIVERY_GET_BUFFERED'
EXPORTING
if_vbeln = ls_vbeln_vl
is_data = ls_leshp_data
CHANGING
cx_deliveries = lt_delivery_data
EXCEPTIONS
no_item_selected = 1
selected_item_enqueued = 2
no_key_specified = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE e267(/spe/vl) WITH ls_vbeln_vl INTO lv_dummy_message.
returncode = sy-subrc.
ELSE.
* only one delivery can be found by premisses (VBELN).
READ TABLE lt_delivery_data INDEX 1 INTO ls_delivery_data.
IF sy-subrc = 0.
IF ls_delivery_data-head_status-fkstk = c_allready_billed.
* Allready billed.
returncode = 0.
MESSAGE i265(/spe/vl) WITH ls_vbeln_vl INTO lv_dummy_message.
ELSE.
* lt_delivery_items = ls_delivery_data-item. "v_n_1822545
* LOOP AT lt_delivery_items ASSIGNING <ls_billing_req>.
* MOVE-CORRESPONDING <ls_billing_req> TO ls_doc_pos_ver_req.
* APPEND ls_doc_pos_ver_req TO lt_doc_pos_ver_req.
* ENDLOOP.
ls_doc_pos_ver_req-vbeln = ls_delivery_data-head-vbeln.
APPEND ls_doc_pos_ver_req TO lt_doc_pos_ver_req. "^_n_1822545
CALL FUNCTION '/SPE/CREATE_NEW_BILLING_CALL'
EXPORTING
it_billing_req = lt_doc_pos_ver_req
iv_version_checked = 'X'
IMPORTING
et_return = lt_bapiret2.
LOOP AT lt_bapiret2 ASSIGNING <ls_return>.
IF <ls_return>-type = 'E'.
lv_error = 'X'.
ENDIF.
ENDLOOP.
IF lv_error = 'X'.
returncode = 1.
use_screen = ' '.
ELSE.
returncode = 0.
ENDIF.
ENDIF.
ELSE.
* No Entry found !!!
MESSAGE e267(/spe/vl) WITH ls_vbeln_vl INTO lv_dummy_message.
returncode = 9.
ENDIF.
ENDIF.
CALL FUNCTION 'NAST_PROTOCOL_INITIALIZE'.
LOOP AT lt_bapiret2 ASSIGNING <ls_return>.
IF <ls_return>-type = 'E'.
lv_error = 'X'.
ENDIF.
PERFORM protocol_update_return USING <ls_return>.
ENDLOOP.
IF lv_error = 'X'.
returncode = 1.
use_screen = ' '.
ELSE.
returncode = 0.
ENDIF.
IF sy-subrc <> 0.
PERFORM protocol_update.
ENDIF.
ENDFORM. " ENTRY
*---------------------------------------------------------------------*
* FORM PROTOCOL_UPDATE *
*---------------------------------------------------------------------*
* The messages are collected for the processing protocol. *
*---------------------------------------------------------------------*
FORM protocol_update.
CALL FUNCTION 'NAST_PROTOCOL_UPDATE'
EXPORTING
msg_arbgb = syst-msgid
msg_nr = syst-msgno
msg_ty = syst-msgty
msg_v1 = syst-msgv1
msg_v2 = syst-msgv2
msg_v3 = syst-msgv3
msg_v4 = syst-msgv4
EXCEPTIONS
OTHERS = 1.
ENDFORM. "PROTOCOL_UPDATE
*&---------------------------------------------------------------------*
*& Form protocol_update_return
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_<LS_RETURN> text
*----------------------------------------------------------------------*
FORM protocol_update_return USING p_return TYPE bapiret2.
CALL FUNCTION 'NAST_PROTOCOL_UPDATE'
EXPORTING
msg_arbgb = p_return-id
msg_nr = p_return-number
msg_ty = p_return-type
msg_v1 = p_return-message_v1
msg_v2 = p_return-message_v2
msg_v3 = p_return-message_v3
msg_v4 = p_return-message_v4
EXCEPTIONS
OTHERS = 1.
ENDFORM. " protocol_update_return</code></pre><P><STRONG>7. Final Architecture Principle</STRONG></P><P>Standard-first approach</P><P>Low-coding strategy</P><P>Dynamic control via enhancement</P><P>Output-driven automation</P><P>Controlled customer-based exclusion</P><P>Lock-safe execution</P><P><STRONG>8. Conclusion</STRONG></P><P>This solution delivers a fully automated Order → Delivery → Goods Issue → Billing process while maintaining:</P><UL><LI>High adherence to SAP standards</LI><LI>Minimal custom development footprint</LI><LI>Flexible customer-level control</LI><LI>System stability and scalability</LI></UL><P>By combining standard configuration (VOV8, VV21), enhancement logic (MV45AFZZ), and output-based processing (REA0), an end-to-end automated and maintainable SD process was successfully implemented.</P>2026-02-24T07:29:02.824000+01:00