https://raw.githubusercontent.com/ajmaradiaga/feeds/main/scmt/topics/BW-Planning-blog-posts.xml SAP Community - BW Planning 2024-05-20T11:10:15.364479+00:00 python-feedgen BW Planning blog posts in SAP Community https://community.sap.com/t5/financial-management-blogs-by-sap/how-to-read-a-mapping-inside-fox-planning-function-without-using-abap/ba-p/13497155 How to read a mapping inside FOX planning function without using ABAP 2021-05-13T15:43:17+02:00 former_member461975 https://community.sap.com/t5/user/viewprofilepage/user-id/461975 Hello all,<BR /> <BR /> Not a long time ago I faced an issue with reading a mapping from a planning function. Before HANA was invented it was a no-brainer. We created a functional module and read it through "call function". But what is the best approach now when we shouldn't use ABAP inside planning functions anymore? (To be specific, the system which I'm using is BW4HANA).<BR /> <BR /> It seems that the only one way to do it is to use a relatively new BI-IP function “Accessing InfoProviders”.<BR /> <BR /> So I did a few setups:<BR /> <OL><BR /> <LI>Direct update ADSO with a technical key figure (because we need to build an aggregation level on top of it);</LI><BR /> <LI>A composite provider;</LI><BR /> <LI>An aggregation level;</LI><BR /> <LI>To read a mapping a following code should be written:</LI><BR /> </OL><BR /> <PRE class="language-abap"><CODE>INFOPROVIDER ZAGGLEV1.<BR /> <BR /> FOREACH A, B IN SELECTION.<BR /> <BR /> KF = ZAGGLEV1.{ZKF, ZINFOPROV1, A, B }.<BR /> IF KF = 1. <BR /> {ZAMOUNT, ZINFOPROV2, A, B} = …<BR /> ENDIF.<BR /> <BR /> ENDFOR.<BR /> </CODE></PRE><BR /> It looks a little weird comparing to a function module call, but it works and works on HANA.<BR /> <BR /> But in my case, it didn't work. So, I tried to find out what might be causing the problem. The problem was that a characteristic with conversion routine was involved. It was one of those PS/PPM characteristics which have a technical GUID. So, it has only a few visible master data (which are used in the mapping) but hundreds GUIDs.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/05/1-37.png" /></P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/05/2-48.png" /></P><BR /> I tried different approaches to solve this obstacle including a composite provider with a left join (left join the ADSO which contains the mapping with the characteristic which contains GUID in its attributes). It was a good try but the absolute wrong one because it's impossible to build an aggregation level on top of such a composite provider.<BR /> <BR /> So, at the end I created a calculation view which joins the ADSO and another calculation view which is used to access the master data of my troubled characteristic.<BR /> <BR /> This is how the mapping looks like before the join:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/05/3-25.png" /></P><BR /> And this is how it is after:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/05/4-23.png" /></P><BR /> And the last step, I used this calc view in the composite provider connecting GUID directly to my troubled characteristic:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/05/5-20.png" /></P><BR /> This how the mapping finally looks like through LISTCUBE:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/05/6-17.png" /></P><BR /> Now the code mentioned earlier works fine.<BR /> <BR /> &nbsp;<BR /> <BR /> So, this is the only one way which I found to read a mapping inside BI-IP planning function without using ABAP. If you know something better, please share it with me. 2021-05-13T15:43:17+02:00 https://community.sap.com/t5/technology-blogs-by-members/most-common-issues-with-analysis-for-office-2-8-sp6/ba-p/13517861 Most common issues with Analysis for Office 2.8 SP6 2021-05-20T19:26:14+02:00 pascaltopolewski https://community.sap.com/t5/user/viewprofilepage/user-id/491759 <SPAN style="color: #000000">Dear SAP Community,</SPAN><BR /> <BR /> <SPAN style="color: #000000">we have rolled out Analysis for Office 2.8 SP6 to a wider group of users. While doing that we gained some experience on the behavior and issues that occured while rolling out this new version. I have collected all issues and the resolution steps in order to help you in case you are facing similar issues. One important remark: I can not judge whether there are any dependencies on other Excel Add-ins or applications that you are using.</SPAN><BR /> <H2 id="toc-hId-958508154">General:</H2><BR /> <STRONG><SPAN style="font-size: 13pt;font-family: Arial, sans-serif;color: #3366ff">Do I need to uninstall my current Analysis for Office? </SPAN></STRONG><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif;color: #000000">It is not required to uninstall your current version of AfO but we have observed that some users where facing issues after directly upgrading with uninstalling the current AfO instance. My suggestion would be to install the latest version first and see if everything is working as excpected.&nbsp;</SPAN><BR /> <BR /> <STRONG><SPAN style="font-size: 13pt;font-family: Arial, sans-serif;color: #3366ff">Do I have to do anything after the Update?</SPAN></STRONG><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif;color: #000000">Please clear your AfO Cache after the updating by going the following path: <EM>Open AfO</EM> → <EM>File</EM> → <EM>Customize Analysis</EM> → <EM>Options</EM> → <EM>Platform</EM> → <EM>Clear Cache</EM>. Note: there won't be any message coming up after pressing the button. Clearing the cache can resolve the following issues: numbers are displayed incorrectly, functions are not getting executed or the the formatting is disrupted. You may also deactivate the workbook caching.&nbsp;</SPAN><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: 'Arial',sans-serif;color: #666666"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/03/cache.png" /></SPAN><BR /> <H2 id="toc-hId-761994649">Specific error messages:<SPAN style="font-size: 10.5pt;font-family: 'Arial',sans-serif;color: #666666">&nbsp;</SPAN></H2><BR /> <STRONG><SPAN style="font-size: 13pt;font-family: Arial, sans-serif;color: #3366ff">I am getting a message saying "Unsecure connection". What do I have to do? </SPAN></STRONG><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif;color: #000000">Don't worry, in case your connections have been secure before and if the connections did not change, then this will not be a security problem. If you do not want to receive this message any more you can turn it off by doing the following: open <I>Analysis for Office</I> → <I>File</I> → <I>Analysis</I> → <I>Customize Analysis</I> → <I>Technical Configuration</I> → change the setting <I>AllowInsecureConnections</I> to „yes“.&nbsp;</SPAN><BR /> <BR /> <STRONG><SPAN style="font-size: 13pt;font-family: Arial, sans-serif;color: #3366ff">I am getting a message saying "Couldn't establish a secure connection". What do I have to do?</SPAN></STRONG><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif;color: #000000">This message comes up when you try to open a file from a local drive which has been saved with an older version of Analysis for Office and the name of the system connection has changed. In order to resolve this you have to open the local file and manually establish a connection by going to <I>Insert Data Source</I> <I>Define → Select source for Analysis </I>→ And then connect to your preferred system<I>. </I>After that you can open and refresh the workbook and then you have to update the settings by going to <I>Analysis for Office</I> → <I>File</I> → <I>Analysis</I> → <I>Customize Analysis</I> → <I>Technical Configuration</I> → Tick the box for <I>ForceRefreshConnection</I> and save the workbook. After that you should be able to open the local file without any problems.</SPAN><BR /> <BR /> <SPAN style="color: #000000"><STRONG>Edit:</STRONG> This message will occur for different reasons. You can turn this off by starting AfO as an Administrator (Right click on the application icon and select "Run as Administrator" from the context menu). Go to <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif"><I>Analysis for Office</I> → <I>File</I> → <I>Analysis</I> → <I>Customize Analysis</I> → <I>Technical Configuration</I> → Untick the box for EnableWarningForFailedSnc. After restarting AfO the message should not show up anymore.</SPAN></SPAN><BR /> <BR /> <STRONG><SPAN style="font-size: 13pt;font-family: Arial, sans-serif;color: #3366ff">I am getting a message saying "An error occurred while trying to apply the default User Interface Customization profile". What do I have to do?</SPAN></STRONG><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">1. uninstall AfO 2.8</SPAN><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">2. remove manually the outdated EPMAddin folder under C:\Program Files (x86)\SAP BusinessObjects\Office AddIn\Plugins\EPMAddin</SPAN><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">3. reinstall AfO 2.8</SPAN><BR /> <H3 id="toc-hId-694563863"><STRONG><SPAN style="color: #3366ff">I am getting a message saying: "Error details: Could not load file or assembly 'FPMXLClient.Common, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannof find the file specified."</SPAN></STRONG></H3><BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/03/afo-issue.png" /><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">If you haven't upgraded yet to AfO 2.8, <B>please uninstall all previous versions of Analysis for Office</B>. By doing this you can avoid above error message. In addition you should also <B>manually remove the outdated EPM Addin folder</B> under<I> C:\Program Files (x86)\SAP BusinessObjects\Office AddIn\Plugins\EPMAddin. </I>Keep in mind that this might remove your Favorites from the SAP Logon Pad and you might want to save them before.</SPAN><BR /> <BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">If you are already getting this error message, please uninstall all previous version of Analysis for Office and check if the issue got resolved. If the error message remains, please also re-install AfO 2.8 SP6. After that the issue should be resolved.</SPAN><SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">&nbsp;</SPAN><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/03/afo-issue-2.png" /><BR /> <H3 id="toc-hId-498050358"><STRONG><SPAN style="font-size: 13pt;font-family: Arial, sans-serif;color: #3366ff">After the upgrade AfO is glitching. Eg when using the scrollbar the dropdown menus are randomly opening. What can I do?</SPAN></STRONG></H3><BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">This is issue is mainly occuring when using a secondary monitor. When AfO is opened on the primary monitor there should not be any issue. Please check the following settings.</SPAN><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/03/MicrosoftTeams-image-8-3.png" /></P><BR /> <BR /> <H3 id="toc-hId-301536853"><STRONG><SPAN style="color: #3366ff">I am getting a message saying: "The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)</SPAN><SPAN style="font-size: 13pt;font-family: Arial, sans-serif;color: #3366ff">"</SPAN></STRONG></H3><BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">As per SAP Note 2876424 we can try the following:</SPAN><BR /> <OL><BR /> <LI>Uninstall Analysis for Office</LI><BR /> <LI>Afterwards check if the folder "C:\Program Files (x86)\SAP BusinessObjects\Office AddIn" is empty</LI><BR /> <LI>Then remove the node "HKEY_CURRENT_USER\Software\Microsoft\Office\Excel\Addins\SapExcelAddIn" via registry settings (i.e. regedit)</LI><BR /> <LI>Reinstall AO and check if the issue is solved.</LI><BR /> </OL><BR /> <H3 id="toc-hId-105023348"><STRONG><SPAN style="color: #3366ff">I am getting a message saying: "Downloading file:///C:/Program Files (x86)/SAP BusinessObjects/Office AddIn/</SPAN><SPAN style="font-size: 13pt;font-family: Arial, sans-serif;color: #3366ff">SapExcelAddIn.vsto did not succeed"</SPAN></STRONG></H3><BR /> <SPAN style="font-size: 10.5pt;font-family: Arial, sans-serif">Please check if the SapExcelAddin.vsto file is available under C:/Program Files (x86)/SAP BusinessObjects/Office AddIn/. If the folder is empty, it might be an indicator that the installation did not work properly. In this case we would advise you to check this with your local IT Team as there might be an issue with your machine or there might be some dependency with older installations of AfO.</SPAN><BR /> <P class="x" style="margin: 0cm;line-height: 16.5pt"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/05/error-2.png" /></P><BR /> &nbsp;<BR /> <H3 id="toc-hId--91490157">Summary:</H3><BR /> As you can see in the above list, there were a couple of issues that we were facing when distributing the latest AfO Version to our user community. We were either able to resolve these issues on our own or by reaching out the SAP Support. So i hope that this list will help you in case you are facing similar issues from your end. Please feel free to add any further issues that you are facing or any other tips that would be helpful for the SAP Community.<BR /> <P style="overflow: hidden;margin-bottom: 0px">Best regards<BR /> Pascal</P> 2021-05-20T19:26:14+02:00 https://community.sap.com/t5/technology-blogs-by-members/how-to-collect-tvarvc-table-entries-in-transport-request/ba-p/13499811 How to Collect TVARVC Table Entries in Transport Request 2021-11-16T08:09:33+01:00 siddhesh_kadam https://community.sap.com/t5/user/viewprofilepage/user-id/775176 In this Blog post we will understand how can we capture the Entries within TVARVC Table in a Transport Request for moving it across systems.<BR /> <BR /> Before we proceed with the steps lets understand the Purpose of TVARVC Table below :<BR /> <BR /> <STRONG>TVARVC :<BR /> </STRONG><BR /> <BR /> TVARVC is&nbsp;<B>standard table given by SAP to store the data under variants</B>. we can put the values in TVARVC table to avoid hardcoding and/or creation of custom tables.<BR /> <BR /> &nbsp;<BR /> <BR /> Now that we have got a bit of overview of the purpose of TVARVC Table existence , lets try to understand how do we move the entries we make within this table across different system (Dev &gt; Quality &gt; Production)<BR /> <BR /> Lets try to understand it via Steps below :<BR /> <OL><BR /> <LI>Go to SE16 Tcode , and give the Table name which is TVARVC in our case.</LI><BR /> </OL><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/11/se16.png" height="170" width="504" /></P><BR /> &nbsp;<BR /> <BR /> 2. Click Enter and the Give the Values you want to Capture in TR in Variable Name Field as in the following Snapshot and Click Execute.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/11/Entry-within-TVARVC.png" height="400" width="511" /></P><BR /> &nbsp;<BR /> <BR /> 3. Once you are within the Table ,<BR /> <P style="overflow: hidden;margin-bottom: 0px">a. Select the Entries that you want to Capture within Transport request.</P><BR /> b. Once you are done selecting entries ,&nbsp; Click More Option from Menu Bar &gt; Table Entry &gt; Transport Entries<BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/11/Selecting-Entries.png" height="192" width="524" /><BR /> <BR /> c. Once you click on Transport Entries , It will give you a pop-up to Collect the entries in Transport request , Select the already existing TR or Create a new TR as per your&nbsp; requirement.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/11/TR-Prompt.png" height="246" width="421" /></P><BR /> &nbsp;<BR /> <BR /> 4. Once you select the Transport Request for capturing Entries , Your entries are captured within that particular TR which you can use for moving the entries across systems.<BR /> <BR /> &nbsp;<BR /> <BR /> <STRONG>Conclusion</STRONG>:<BR /> <BR /> By Following the above steps , you can capture the entries you make in TVARVC for your requirements and move it across systems this enables direct capturing of entries from within TVARVC table.<BR /> <BR /> &nbsp;<BR /> <BR /> — Sources of the pictures are screenshots I have taken from SAP and no image is taken from the internet.<BR /> <BR /> &nbsp;<BR /> <BR /> Hope the above Information added a bit of value to your time and knowledge .<BR /> <BR /> If you enjoyed reading it do give it a Like and would be happy to read your feedback in the comments section.<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp; 2021-11-16T08:09:33+01:00 https://community.sap.com/t5/technology-blogs-by-members/how-to-process-multiple-files-from-application-server-via-abap-program/ba-p/13539286 How to Process Multiple Files from Application Server via ABAP Program 2021-12-28T20:09:53+01:00 siddhesh_kadam https://community.sap.com/t5/user/viewprofilepage/user-id/775176 In this Blog Post we will understand how to process multiple files of certain File Masks from Application Server (AL11) via ABAP Program.<BR /> <BR /> &nbsp;<BR /> <BR /> Lets try to understand it via following steps :<BR /> <BR /> <SPAN style="text-decoration: underline">Input to our Executable Program will be following 3 parameters:</SPAN><BR /> <UL><BR /> <LI>File Mask for processing Files from Server (e.g. ABC* , files starting with ABC*)</LI><BR /> <LI>Directory path from Application Server where File are stored.</LI><BR /> <LI>Process Chain to execute that consists of steps for Processing this Files.</LI><BR /> </UL><BR /> <OL><BR /> <LI>In the next step, we will get all the Files from Application Server using Function&nbsp; "<STRONG>EPS2_GET_DIRECTORY_LISTING</STRONG>" and we will pass directory path and File mask we passed as an Input to this Function Module and the Function will return a table with the details related to the files fetched from Application Server.</LI><BR /> </OL><BR /> <PRE class="language-abap"><CODE>CALL FUNCTION 'EPS2_GET_DIRECTORY_LISTING' <BR /> EXPORTING<BR /> <BR /> iv_dir_name = lv_iv_dir_name<BR /> file_mask = lv_file_mask<BR /> <BR /> TABLES<BR /> dir_list = lt_file_tab<BR /> <BR /> EXCEPTIONS<BR /> <BR /> invalid_eps_subdir = 1<BR /> sapgparam_failed = 2<BR /> build_directory_failed = 3<BR /> no_authorization = 4<BR /> read_directory_failed = 5<BR /> too_many_read_errors = 6<BR /> empty_directory_list = 7<BR /> OTHERS = 8.<BR /> <BR /> IF sy-subrc = 0.<BR /> "sorting by name to get the oldest file<BR /> SORT lt_file_tab BY name.<BR /> ENDIF.<BR /> </CODE></PRE><BR /> 2. As a next step, we wanted the count of Files fetched from server with same File Mask we passed, to achieve this we will make use of Internal table where we have passed data related to Files fetched from Server.<BR /> <PRE class="language-abap"><CODE>*Code to get count of Files<BR /> DESCRIBE TABLE lt_file_tab LINES files_count.<BR /> </CODE></PRE><BR /> &nbsp;<BR /> <BR /> 3. Now since we have the count of files fetched for processing, we will execute a DO Loop based on the the count of files fetched and Call Function "<STRONG>RSPC_API_CHAIN_START</STRONG>" for executing process chain we passed as a parameter to the program and also which contains the steps that Processes the Files fetched.<BR /> <PRE class="language-abap"><CODE>*Code to loop through Files Count and Executing Process chain correspondingly<BR /> <BR /> IF files_count &gt;= 1.<BR /> <BR /> DO files_count TIMES.<BR /> <BR /> CALL FUNCTION 'RSPC API CHAIN START'<BR /> EXPORTING<BR /> i_chain = p_pchain<BR /> <BR /> IMPORTING<BR /> e_loqid = lv_logid.<BR /> </CODE></PRE><BR /> &nbsp;<BR /> <BR /> 4. Once process chain is executed in above step within same DO loop execution , we will check the status of Process chain before beginning the next iteration of DO Loop by calling Function "<STRONG>RSPC_API_CHAIN_GET_STATUS</STRONG>" and passing process chain name and log id of the Process chain run which we will get as a output from previous function call of "<STRONG>RSPC_API_CHAIN_START</STRONG>".<BR /> <PRE class="language-abap"><CODE>IF sy-subrc &lt;&gt; 0.<BR /> ELSE.<BR /> <BR /> DO.<BR /> WAIT UP TO 2 SECONDS.<BR /> <BR /> CALL FUNCTION ‘RSPC_API_CHAIN_GET_STATUS‘<BR /> EXPORTING<BR /> i_chain = p_pchain<BR /> i_logid = lv_logid<BR /> <BR /> IMPORTING<BR /> e_status = lv_status.<BR /> <BR /> IF lv_status = 'G' OR lv_status = 'R'<BR /> EXIT.<BR /> ENDIF.<BR /> ENDDO.<BR /> IF lv_status = ‘R'.<BR /> MESSAGE ‘File has errors' TYPE "E”<BR /> EXIT.<BR /> ENDIF.<BR /> ENDIF.<BR /> ENDDO.<BR /> </CODE></PRE><BR /> &nbsp;<BR /> <BR /> 5. Once, we get status of Process chain from previous function call of "<STRONG>RSPC_API_CHAIN_GET_STATUS</STRONG>" if its Green or Red we will exit that particular Iteration of DO Loop to process next file ( In this particular scenario , Process chain has step to move the file to different folders based on the execution status of DTP)<BR /> <BR /> &nbsp;<BR /> <BR /> <STRONG>Conclusion :</STRONG><BR /> <BR /> By following the Steps above, we can process multiple files from Application server with same file masks by harnessing the use of Standard Functions from SAP.<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> — Source of the Code I have taken from my SAP system and no code is taken from the internet.<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> Hope the above Information added a bit of value to your time and knowledge .<BR /> <BR /> If you enjoyed reading it do give it a Like and would be happy to read your feedback in the comments section. 2021-12-28T20:09:53+01:00 https://community.sap.com/t5/technology-blogs-by-members/how-to-recover-objects-not-visible-within-infoarea/ba-p/13541917 How to Recover Objects not visible within InfoArea 2021-12-31T09:20:53+01:00 siddhesh_kadam https://community.sap.com/t5/user/viewprofilepage/user-id/775176 In this Blog Post we will understand how to handle a situation when Objects are not visible within InfoArea.<BR /> <BR /> &nbsp;<BR /> <BR /> <SPAN style="text-decoration: underline"><STRONG>Problem Statement :</STRONG></SPAN><BR /> <BR /> Often when there are Role level and authorization related Changes from Basis or Security Team on User ID, User's might not be able to see the Modelling Objects and Query related Elements within the InfoArea and it creates a kind of confusion when no object is visible to work upon which used to exists before.<BR /> <BR /> This issue often occurs due to Shared Buffer that exists on Application Server.<BR /> <BR /> &nbsp;<BR /> <BR /> Lets try to Understand how we can resolve this Issue.<BR /> <BR /> <SPAN style="text-decoration: underline"><STRONG>Solution</STRONG></SPAN> :<BR /> <OL><BR /> <LI>Go to T-Code : <STRONG>RSOSM</STRONG>, which is often used for BW Search for SAP HANA Maintenance.</LI><BR /> </OL><BR /> <P style="overflow: hidden;margin-bottom: 0px">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/12/RSOSM.png" height="344" width="461" /></P><BR /> &nbsp;<BR /> <BR /> 2.&nbsp; You will get the above Screen , Scroll to the bottom of the screen and click on "<STRONG>Configure BW Search</STRONG>" , You will be presented with the below Screen.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/12/configure_bw_search.png" height="321" width="505" /></P><BR /> &nbsp;<BR /> <BR /> 3. Once you are within "<STRONG>Configure BW Search</STRONG>" Section, You can see the status of your Shared Buffer as "<STRONG>Shared Buffer is Filled</STRONG>" and a Delete Icon besides that Status.<BR /> <BR /> &nbsp;<BR /> <BR /> 4. Click on that Delete Icon , it will delete your Shared Buffer and the Status will be changed to "<STRONG>Shared Buffer is not filled</STRONG>" as below.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2021/12/Pic3.png" height="113" width="508" /></P><BR /> &nbsp;<BR /> <BR /> 5. Now , go back to your InfoArea and hit Refresh , You will be able to see all your Modelling Objects and Query related Elements back within InfoArea.<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> <SPAN style="text-decoration: underline"><STRONG>Conclusion</STRONG></SPAN>:<BR /> <BR /> &nbsp;<BR /> <BR /> By Following the above steps you will be able to clear up your shared buffer and able to see the missing Objects back within your InfoArea.<BR /> <BR /> &nbsp;<BR /> <BR /> — Sources of the pictures are screenshots I have taken from SAP system and no image is taken from the internet.<BR /> <BR /> &nbsp;<BR /> <BR /> Hope the above Information added a bit of value to your time and knowledge .<BR /> <BR /> If you enjoyed reading it do give it a Like and would be happy to read your feedback in the comments section.<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp; 2021-12-31T09:20:53+01:00 https://community.sap.com/t5/technology-blogs-by-members/end-of-bi-ip-what-s-next-a-viewpoint-on-the-sap-planning-portfolio-1/ba-p/13543266 End of BI-IP – What‘s next? A viewpoint on the SAP Planning Portfolio 1 2022-06-04T19:30:27+02:00 fkatzdobler https://community.sap.com/t5/user/viewprofilepage/user-id/488307 <STRONG>Introduction</STRONG><BR /> <BR /> The SAP Portfolio for planning is changing. The system landscape for reporting and planning is enhanced by SAP Analytics Cloud (SAC). Or maybe you are in the middle of a S/4 HANA project or a BW/4 project is going on.<BR /> However your current planning system landscape looks like, chances are high that you will be impacted by a SAC, S/4 or BW/4 project.<BR /> <BR /> The aim of this blog is to help and guide you in case you need answers on how your planning strategy should look like.<BR /> <BR /> In this part the approaches, the criteria on how we want to compare, the applications and an outlook will be given.<BR /> <BR /> In a second blog which is planned to be released in Q3/2022 we will present more detailed results.<BR /> <BR /> <STRONG>Approaches</STRONG><BR /> <BR /> From the authors point of view, coming from the planning and analytics world, there are currently 3 main approaches on how your planning architecture could look like. Of course, there may be different flavors of it:<BR /> <UL><BR /> <LI>Business Warehouse Approach</LI><BR /> <LI>SAC Native Approach</LI><BR /> <LI>S/4 Approach</LI><BR /> </UL><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/06/Blog_Approach_1.jpg" /></P><BR /> Each of the approaches makes sense depending on where you come from and where you want to be in the near future. The tricky question is how to find out what's best for a certain customer with a certain history. And the answer is not a simple one. It might also be the case that you use more than one of the approaches above. And in the long-term perspective also Datawarehouse Cloud (DWC) might play a role.<BR /> <BR /> Approach 1 might be especially interesting for you in case you invested heavily in SAP IP in the past and want to reuse your investments. Maybe you would like to use an appealing frontend like SAC instead of BEx and still stay on the same model.<BR /> <BR /> Approach 2 might be interesting for all kinds of customers, with or without any history of SAP IP.<BR /> <BR /> Approach 3 might be interesting for any S/4 customers.<BR /> <BR /> <STRONG>Comparing the Approaches</STRONG><BR /> <BR /> To give direction and also to make experiences in real world environments, we decided to build applications and compare them. For this purpose we will use the following criteria:<BR /> <UL><BR /> <LI>Master Data Synchronization</LI><BR /> <LI>Authorization Management and Generation</LI><BR /> <LI>Reference Data Integration</LI><BR /> <LI>Disaggregation and Logic</LI><BR /> <LI>Automatic Loads</LI><BR /> <LI>Performance</LI><BR /> <LI>Licence</LI><BR /> <LI>Debugging Options</LI><BR /> <LI>Look &amp; Feel</LI><BR /> <LI>Usability</LI><BR /> <LI>Integration</LI><BR /> <LI>Flexibility</LI><BR /> </UL><BR /> <STRONG>Applications</STRONG><BR /> <BR /> The applications we are currently working on are the following ones:<BR /> <UL><BR /> <LI>Approach 1: A betting game application for the soccer world cup. The users can enter their bets, the scoring function and more complex functions are implemented in the Business Warehouse and visualized with SAC. Additionally, SAC is also serving as an Application Development Environment</LI><BR /> <LI>Approach 2: An application for entering the daily steps is implemented. The users can capture their daily activities and see trends over time. There will be no Business Wareshouse in the system landscape. All logic and all application development is done in SAC</LI><BR /> <LI>Approach 3: We plan data live in the S/4 HANA system and write data into the ACDOCP table</LI><BR /> </UL><BR /> The implementation of the applications is already quite enhanced, and we are working on comparing the results based on the defined criteria.<BR /> <BR /> <STRONG>Outlook</STRONG><BR /> <BR /> In the next blog we will present the results of our comparison and you will get a summary of our experiences. I can already reveal that every approach has its strenghts and that we had emotional discussions about the approaches inside our team.<BR /> <BR /> We will also have a look on the degree of maturity of the different products used in the different approaches.<BR /> <BR /> The final result will be a decision tree which should serve you in getting a better feeling what is right for your special, unique situation. 2022-06-04T19:30:27+02:00 https://community.sap.com/t5/technology-blogs-by-sap/lessons-learned-while-working-on-bw-planning-tpm-project/ba-p/13523127 Lessons learned while working on BW Planning – TPM project 2022-07-28T16:33:13+02:00 Kishore_KB https://community.sap.com/t5/user/viewprofilepage/user-id/11699 Hello Developers,<BR /> <BR /> Recently I got an opportunity to work on a BW TPM project. Compared with pure BW Modeling project I had to explore things related to Planning, Configuration required in BW and CRM and mainly how and where to debug on encountering errors when executing Queries and Planning Functions from Web-UI. Documenting few points which were helpful during the development cycle.<BR /> <OL><BR /> <LI><BR /> <H4 id="toc-hId-1217471104">BW Queries and Planning Functions Execution</H4><BR /> When BW Queries and Planning Functions (PFs) are called from CRM Web-UI it might encounter errors while executing them. Error description might not help us to identify the root cause because of which we need to debug Class/Method.One of the important Class related to execution of BW Objects is Class *CL_IMP_OBJECT. Below are few of the Methods from the same related to Query and Planning Function execution.<BR /> <UL><BR /> <LI><STRONG>IF_IMP_OBJECT~EXECUTE_QUERY</STRONG> – This Method will execute BW Query, we can set Break Point before it’s called to check Filters, Variables etc... being passed.<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_1-Execute_Query-1.png" /></LI><BR /> <LI><STRONG>IF_IMP_OBJECT~HANDLE_EVENT</STRONG> – This Method will identify which Planning Functions (PFs) to be executed for the selected Query and Event_ID triggered.</LI><BR /> <LI><STRONG>EXECUTE_PLANNING_FCT</STRONG> – This Method executes each of the Planning Function configured for Query and Event_ID identified at HANDLE_EVENT Method.</LI><BR /> <LI><STRONG>ENHANCE_QUERY_FILTER</STRONG> &amp; <STRONG>ENHANCE_EVENT_FILTER</STRONG> – These Methods check and update Query Filters and PF Filters respectively which gets called when executing Queries and PFs accordingly.When we create Custom Planning Function and configure it for say Event 3 (After Update Cell) still it might not get executed on changing data if PF related filter code is not maintained in Methods of Class *CL_RSCRM_IMP_EVENT_PF_B4.Similarly for New Queries check Methods of Class *CL_RSCRM_IMP_QUERY_B4 and maintain Query Technical name like data maintained for Standard Queries.</LI><BR /> </UL><BR /> </LI><BR /> <LI><BR /> <H4 id="toc-hId-1020957599">Types of Custom ‘Planning Function Type’ based on Class</H4><BR /> We can have Class ‘Without Reference data’ OR ‘With Reference data’.For Class Without Reference data Interface and Methods would be:<BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_2-Interfaces-WO-Ref-1.png" /><BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_3-Methods-WO-Ref-1.png" /><BR /> For Class With Reference data Interface and Methods would be:<BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_4-Interfaces-W-Ref-1.png" /><BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_5-Methods-W-Ref-1.png" /><BR /> Method ‘GET_REF_DATA_SEL’ is used to apply filter for selecting Reference data.We can create Public-Static Methods to include Custom logic in With / Without Reference data Interface types.</LI><BR /> <LI><BR /> <H4 id="toc-hId-824444094">Identifying which BW Query is mapped in CRM Web-UI screen</H4><BR /> In CRM Web-UI click on any of the Query Data cell and press Ctrl + Alt + D<BR /> Pop-up window appears in which select ‘Show Data Source Picker’<BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_6-Query-Mapped_1-1.png" height="140" width="450" /><BR /> In the next screen select ‘queryinfo’<BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_7-Query-Mapped_2-2.png" height="305" width="450" /><BR /> Click ‘Esc’ on keyboard, List of queries on the screen selected is displayed.<BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_8-Query-Mapped_3-1.png" height="120" width="453" /></LI><BR /> <LI><BR /> <H4 id="toc-hId-627930589">On encountering IMP_CORE and PE Errors</H4><BR /> When we encounter these errors check for logs generated in “SM21”. If no logs exist then go to TCode “RSTT” and Activate Trace for your ID, perform the same action to reproduce error. Later De-Activate Trace for your ID. If Traces are generated, then Execute them to check errors being reported.<BR /> <IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/07/B1_9-RSTT-Trace-Collection-1.png" height="351" width="500" /><BR /> Based on the information we can identify which Function Module to set Break Point for debugging and identify the root cause.</LI><BR /> <LI><BR /> <H4 id="toc-hId-431417084">Best practice while performing calculation of Keyfigure in Class</H4><BR /> When populating Keyfigure based on CASE condition, ensure it also has ELSE part to populate.<BR /> Eg: CASE WHEN INFOPROV = ‘ZADSOX1’ THEN ZADSOX1.ZKF1 <STRONG>ELSE 0</STRONG> END AS ZKF_CUSTOMThough “ELSE 0” might not be logically and syntactically required, include it to avoid potential technical issues which may arise due to populating NULL value into Keyfigure.<BR /> <BR /> Hope this information will help Developers working on BW TPM projects to understand better about Class, Method, TCode to check for identifying root cause of errors encountered. Please share your comments and feedback !!</LI><BR /> </OL> 2022-07-28T16:33:13+02:00 https://community.sap.com/t5/technology-blogs-by-sap/move-your-sap-bpc-applications-to-sap-analytics-cloud/ba-p/13541954 Move your SAP BPC applications to SAP Analytics Cloud 2022-08-09T23:05:11+02:00 pravin_datar https://community.sap.com/t5/user/viewprofilepage/user-id/199428 Since 2007, when SAP acquired Outlooksoft, <A href="https://www.sap.com/canada/products/bpc.html/?utm_source=community_blog&amp;utm_medium=pd&amp;utm_campaign=sacp" target="_blank" rel="noopener noreferrer">SAP BPC</A> has been a part of SAP’s product portfolio and the number of SAP BPC customers quickly grew from mere 700 customers in 2007 to tens of thousands of customers and users over the years. SAP BPC provided a rock-solid on-premise planning solution for customers. When the world economy embraced cloud technology, SAP was able to satisfy that need with <A href="https://www.sapanalytics.cloud/?utm_source=community_blog&amp;utm_medium=pd&amp;utm_campaign=sacp" target="_blank" rel="nofollow noopener noreferrer">SAP Analytics Cloud</A>, its flagship analytics and planning SAAS solution. Though SAP has promised customers using on-premise solutions that their investments are safe and secure as announced in its <A href="https://blogs.sap.com/?p=1447022" target="_blank" rel="noopener noreferrer">product strategy</A>, the on-premise users themselves are facing a number of challenges. The current economic, social and technology scenario posed formidable tests and trials for planners of on-premise solutions. This is not only because of Covid-19 but also because of other factors as well. Let us briefly discuss the challenges that posed to planners today.<BR /> <H4 id="toc-hId-1219266342"><STRONG>Changing customer expectations driven by disruption in the economy</STRONG></H4><BR /> We are living in an era of disruption of all kinds. Supply chain disruptions due to lockdowns, wars, sanctions; monetary and fiscal disruptions due to high inflation, global debt, currency volatility and added to that is the digital disruption where data is the new oil and enterprises that can leverage the ever-growing data to make decisions can thrive while those who can’t, will be left behind. The business planners are facing new challenges like<BR /> <UL><BR /> <LI>How to empower through process automation to free up time to do more meaningful work</LI><BR /> <LI>How do we drive maximum cost synergies to fund innovation</LI><BR /> <LI>How do we better engage our employees to attract and retain top talent</LI><BR /> <LI>How do we deliver a next-generation customer experience in a world of disruption</LI><BR /> <LI>How do we focus on spending and resource requirements today and for tomorrow</LI><BR /> </UL><BR /> <H4 id="toc-hId-1022752837"><STRONG>Covid-19 and beyond</STRONG></H4><BR /> Since 2020 Covid-19 has presented unprecedented challenge to all enterprises and tested the technological and managerial limits of planners all over the world. The annual plans and forecasts had to be changed frequently, the drivers for the plans had to be adjusted every week if not every day, the agility of business planning solutions to adapt to changes in the planning models underwent stress test. After this pandemic goes into the history books, for many businesses, it will take a while to return to the pre-pandemic state. The challenge to the business planners is how to smoothen this ride and find opportunities in this challenge.<BR /> <BR /> All these factors are leading the organizations to move to the cloud-based planning solution from their traditional on-premise solutions and SAP BPC is no exception. The easiest and smoothest transition for SAP BPC customers to cloud is SAP Analytics Cloud. With SAP Analytics Cloud, customers can leverage Planning and Analysis on a single solution. SAP Analytics Cloud provides a set of rich planning capabilities that allows organizations to plan across various lines of business, connecting operational to financial plans. SAP Analytics Cloud is always online with your most trusted data. It is an unbroken experience of agility and value. All this leads to a world where business decisions and strategies are constantly informed and updated with confident, authoritative planning.<BR /> <H3 id="toc-hId-697156613"><STRONG>Why move now?</STRONG></H3><BR /> Moving now to SAP Analytics Cloud allows organizations a lot of benefits. Here are a few of them:<BR /> <H4 style="text-align: left" id="toc-hId-629725827">Extended Planning and Analysis</H4><BR /> <A href="https://www.sap.com/products/technology-platform/extended-planning-analysis.html" target="_blank" rel="noopener noreferrer">Extended Planning and Analysis</A> (xP&amp;A) is the evolution of financial planning and analysis; creating and connecting strategic, financial, and operational plans across the enterprise to optimize performance.SAP Analytics Cloud is well suited to execute Extended Planning and Analysis (xP&amp;A) strategy. Let us discuss this strategy a bit more to understand how SAC helps to execute this strategy.<BR /> <UL><BR /> <LI><STRONG>Crowdsource plans and budgets</STRONG> – Typically organizations consist of many lines of business such as sales, marketing, information technology, supply chain, human resources etc. Each line of business in turn plan their annual activities, budgets and monthly/quarterly forecasts. The planning cycle includes preparing the planning model, identifying planning drivers, importing master and transactional data; scheduling planning processes; entering plan data and adjustments; doing the planning calculations, spreading, distributions and allocations; reviewing the actual vs budget variance; and finalizing and publishing the results. Each line of business follows these steps with some minor variations. When an organization prepares strategic plans and annual budgets, they crowdsource the plans budgets from these various lines of businesses. SAP Analytics Cloud can help in planning and forecasting for various lines of business. Moreover, it has delivered content for those lines of business. Crowdsourcing plans and budgets from the lines of business becomes easy with SAP Analytics Cloud since all those models reside within the same solution.</LI><BR /> <LI><STRONG>Linking operational and financial planning</STRONG> – The plans of the individual lines of businesses need to be linked together. If there is no linking through exchange of master data, assumptions and results, the plans and forecasts crowdsourced from the lines of businesses tend to be siloed. For example, operational budget in terms of sales units to be sold in different territories, product mix, supply routes etc. should be in sync with the plans and forecasts of cost of sales, cost center expenses etc. The planning models for various lines of business can share the plan data using the functionality such as public dimensions, cross model data actions etc. within SAP Analytics Cloud thereby facilitating linking of operational and financial planning.</LI><BR /> <LI><STRONG>Embed within enterprise applications</STRONG> – The transactional data required for the actual vs budget variances comes from the enterprise applications. SAP Analytics Cloud has built-in connectors for various enterprise applications such as Success Factors, S/4 HANA, SAP BW, Ariba, Concur, Fieldglass etc. that allow direct acquisition of the required transactional data.</LI><BR /> </UL><BR /> <H4 id="toc-hId-433212322">Next generation FP&amp;A (Financial Planning and Analysis) tools</H4><BR /> The corporate decision making has evolved from being linear or top-down following hierarchical order to dynamic, self-service, involving faster iterations to augmented and decentralized decision making that involves instantaneous and continuous adjustments using artificial intelligence. SAP Analytics Cloud provides the machine learning and predictive tools for augmented analytics.<BR /> <H4 id="toc-hId-236698817">Integration with S/4 Hana</H4><BR /> SAP Analytics Cloud provides two-way built-in <A href="https://blogs.sap.com/2021/12/27/sap-analytics-cloud-and-s-4-hana-planning-interactions/" target="_blank" rel="noopener noreferrer">integration with S/4 Hana</A> to import and export the data. In addition, it allows you to perform analytics with live connectivity to S/4 Hana where the data never leaves the customer firewall. SAP Analytics Cloud is even embedded within S/4 Hana for analytics.<BR /> <H4 id="toc-hId-40185312">Pre-built content</H4><BR /> When you move to SAP analytics Cloud, you can avail the <A href="https://community.sap.com/topics/cloud-analytics/business-content" target="_blank">pre-built content</A> available to get a head start for your implementation and get started with SAP analytics Cloud with ease. The available content includes the content developed by SAP as well as the content developed by SAP partners.<BR /> <H4 id="toc-hId--156328193">Smart Insight and Smart Discovery</H4><BR /> SAP Analytics Cloud provides a single solution that combines planning, analytics and predictive. You can leverage the <A href="https://community.sap.com/topics/cloud-analytics/business-content" target="_blank">smart insights smart discovery</A> provided by the predictive tools to incorporate into your planning models, visualize the results, use advanced features such as visual formulas, simulations using value driver tree etc. to take your planning to the next level by incorporating the strategic business insights into your plans and forecasts.<BR /> <BR /> Hence there is no better time than now to move your BPC applications to SAP Analytics Cloud. 2022-08-09T23:05:11+02:00 https://community.sap.com/t5/technology-blogs-by-sap/introducing-bpc-embedded-access-rights/ba-p/13524670 Introducing – BPC Embedded Access Rights 2022-08-23T17:50:24+02:00 pravin_datar https://community.sap.com/t5/user/viewprofilepage/user-id/199428 <P>SAP recently introduced BPC Embedded Access Rights. In this blog, let us understand the details of this SAP Business Planning and Consolidation Embedded Access Rights.<BR /><BR /><STRONG>Why BPC Embedded Access Rights</STRONG><BR /><BR />The strategic solution that SAP has for XP&amp;A is SAP Analytics Cloud which is offered on public cloud and combines planning, predictive and business intelligence functionality into one product. SAP also has SAP Business Planning and Consolidation to address financial planning requirements for customers who require an on-premise solution. As stated earlier in <A href="https://blogs.sap.com/2021/11/26/sap-business-planning-and-consolidation-sap-bpc-strategy/" target="_blank" rel="noopener noreferrer">SAP BPC Strategy</A>, though our cloud-based planning solution, SAP Analytics Cloud, represents our strategic and most innovative business intelligence and planning solution, the SAP BPC product will receive continuous innovations, bug fixes, and investments in infrastructure topics with SAP Analytic Cloud. For the customers to take advantage of the latest innovations that can address the challenges to the planners, the enterprises should be running on SAP Analytics Cloud platform. However, we have thousands of customers that use SAP Business Planning and Consolidation in its various versions. This poses a formidable task of moving these customers quickly and smoothly to SAC. The customers should be allowed to move at their own pace, without disruption of their planning processes and in phased manner if they prefer so. In order to facilitate this process, some customers chose to <A href="https://blogs.sap.com/2020/11/30/complement-your-sap-business-planning-and-consolidation-with-sap-analytics-cloud/" target="_blank" rel="noopener noreferrer">complement their planning process</A> with SAC and some others chose to <A href="https://blogs.sap.com/2021/02/02/add-a-new-planning-process-to-your-bpc-implementation-using-sac-planning/" target="_blank" rel="noopener noreferrer">add new planning process</A> in SAC.<BR /><BR />In addition to moving the business process from BPC to SAC, the BPC customers also used to encounter another obstacle in licensing. A planning user typically required a license for BPC as well as SAC even if he/she wanted to use <A href="https://blogs.sap.com/?p=724691" target="_blank" rel="noopener noreferrer">BPC Live</A> to plan in both the systems. The BPC Embedded Access Rights are intended to obviate this dual licensing for BPC Live scenario and facilitate smooth transition to SAP Analytics Cloud. Hence, to summarize, the reason why SAP introduced BPC Embedded Access Rights is to avoid double licensing for customers using BPC Live to plan in SAC and BPC.<BR /><BR /><STRONG>What are BPC Embedded Access Rights</STRONG><BR /><BR />At this time, BPC Embedded Access Rights are applicable only to BPC Live connections. The <A href="https://help.sap.com/docs/SAP_ANALYTICS_CLOUD/00f68c2e08b941f081002fd3691d86a7/3c284ec47d8542b79f5ed82662574f32.html?q=BPC%20Live" target="_blank" rel="noopener noreferrer">BPC live-connection</A> is available for the integration of <A href="https://help.sap.com/docs/SAP_BUSINESS_PLANNING_AND_CONSOLIDATION,_VERSION_FOR_SAP_NETWEAVER/a2049170bfeb4178ace32222842c3ec1/a1532226947c49a5b2e2bd32450cb2d1.html?q=embedded%20model" target="_blank" rel="noopener noreferrer">BPC Embedded models</A> with SAP Analytics Cloud (It is not available to <A href="https://blogs.sap.com/2014/10/21/concepts-compared-bpc-standard-and-bpc-embedded/" target="_blank" rel="noopener noreferrer">BPC Standard</A> models). It can be used in SAC stories, SAC Analytic Designer applications and Analysis for Office, edition for SAC , workbooks. <STRONG>With BPC Embedded Access Rights, users who only input via SAC Planning into BPC (Embedded) with BPC Live connection will no longer require a BPC Standard or Professional license.</STRONG> This change is:<BR /><BR /></P><UL><UL><LI>Applicable to SAC live planning to BPC Embedded model deployment mode only (Note, BPC Standard model deployment mode does not support live planning access)</LI></UL></UL><P>&nbsp;</P><UL><UL><LI>Available for BPC on-premise, PCE or PTO</LI></UL></UL><P>&nbsp;</P><UL><UL><LI>Pertinent for BPC for BW Netweaver or BPC for BW/4HANA</LI></UL></UL><P>&nbsp;</P><UL><UL><LI>Applies to SAC Planning Standard or Professional users (an SAC BI user can not publish data into BPC)</LI></UL></UL><P>&nbsp;</P><UL><UL><LI>Includes ability to plan via Analysis for Office (included in the SAC Planning license)</LI></UL></UL><P><BR /><BR />For users requiring SAC BI only access to BPC data, this can be achieved via the BW Live connect (for which no BPC licenses are required)<BR /><BR /><STRONG>How a customer can get BPC Embedded Access Rights</STRONG><BR /><BR />The customer must license at least a minimum quantity of BPC in order for administrators to create and maintain a BPC environment and the BPC Live Connection that is used by SAC to connect to BPC or BW-IP. Beyond that, leveraging the SAP Cloud Extension Policy (CEP) a customer is able shift maintenance cost to a SAP Analytics Cloud subscription.<BR /><BR /><STRONG>In which customer situations BPC Embedded Access Rights are not applicable</STRONG><BR /><BR />As sated above, BPC Embedded Access Rights are currently available only for <A href="https://help.sap.com/docs/SAP_ANALYTICS_CLOUD/00f68c2e08b941f081002fd3691d86a7/3c284ec47d8542b79f5ed82662574f32.html?q=BPC%20Live" target="_blank" rel="noopener noreferrer">BPC Live</A> connections. This also means that there can be some customer situations regarding BPC Licenses which are not covered by BPC Embedded Access Rights. Here are some of such scenarios:<BR /><BR /></P><UL><UL><LI>BPC Embedded Access Rights are not available for BPC Standard models since BPC Live connection is not available for BPC Standard models</LI></UL></UL><P>&nbsp;</P><UL><UL><LI>BPC Embedded Access Rights are applicable only for BPC Standard license and not for <A href="https://www.sapusers.org/uploads/files/5660" target="_blank" rel="noopener nofollow noreferrer">BPC Professional</A> If a customer wants to add more BPC Professional users then the license policy for BPC Professional users will apply.</LI></UL></UL><P>&nbsp;</P><UL><UL><LI>Customers using BPC Workflows are not covered by BPC Embedded Access Rights</LI></UL></UL><P>&nbsp;</P><UL><UL><LI>BPC Embedded Access Rights are intended for planning scenarios using BPC Live connection and hence customers using BPC only for Consolidation will not be covered under BPC Embedded Access Rights</LI></UL></UL><P><BR /><BR /><STRONG>What about customers using BW-IP</STRONG><BR /><BR />BW-IP is an older Netweaver technology customers could use to build highly complex and bespoke planning applications. BW-IP is not available in BW/4HANA and hence BW-IP customers find themselves stuck on the older Netweaver 7.x platform. Often BW-IP customers use tools like BEx for user access. As BEx is end-of-life and not available in BW/4HANA again this becomes a barrier for customers.<BR /><BR />While BW-IP is not available in BW/4HANA without BPC license, it is possible to upgrade and access the BW-IP models if the customer adopts BPC; creates a BPC model against the old BW-IP logic to be used in SAC with BPC Live connection. Therefore, with BPC Embedded Access Rights, BW-IP customers now have a way more simplified opportunity to move to BPC for BW/4HANA and preserve their BW-IP models, and then allow user access to these models via SAC Planning.<BR /><BR /><STRONG>Where to get more details</STRONG><BR /><BR />More details about topics around BPC Embedded Access Rights are available at the following locations:<BR /><BR /></P><UL><UL><LI><A href="https://launchpad.support.sap.com/#/notes/3150518" target="_blank" rel="noopener noreferrer">SAP Note 3150518</A> describing the BPC Embedded Access Rights</LI></UL></UL><P>&nbsp;</P><UL><UL><LI>Details about how to set up <A href="https://help.sap.com/docs/SAP_ANALYTICS_CLOUD/00f68c2e08b941f081002fd3691d86a7/1c1b22f136694855ba2fff9e5ecfb9d8.html?q=BPC%20Live" target="_blank" rel="noopener noreferrer">BPC Live connection with Direct CORS connection</A></LI></UL></UL><P>&nbsp;</P><UL><UL><LI>Details about how to set up <A href="https://help.sap.com/docs/SAP_ANALYTICS_CLOUD/00f68c2e08b941f081002fd3691d86a7/01a161e4d4424d118855730e9e628d87.html?q=BPC%20Live" target="_blank" rel="noopener noreferrer">BPC Live connection with Tunnel connection</A></LI></UL></UL><P>&nbsp;</P><UL><UL><LI><A href="https://launchpad.support.sap.com/#/notes/2969947" target="_blank" rel="noopener noreferrer">Capabilities and limitations</A> of BPC Live connection</LI></UL></UL><P>&nbsp;</P> 2022-08-23T17:50:24+02:00 https://community.sap.com/t5/technology-blogs-by-sap/trigger-process-chain-from-sac-with-bpc-live-connection/ba-p/13524319 Trigger Process Chain from SAC with BPC Live Connection 2022-09-22T07:15:38+02:00 mansi_dandavate https://community.sap.com/t5/user/viewprofilepage/user-id/198383 We built a planning application in SAP Analytics Cloud using SAP BPC Live Connection. The requirement was for the users to be able to load the actuals data in the BPC System from the application and also get a real time status whether the data load got completed.<BR /> <BR /> Since we have the Planning trigger in SAC Stories, we thought we could use that to trigger a process chain in the backend system. There is a very good blog related to this issue which we followed where we build a planning function using fox formula. Inside the fox formula you can call the function module to trigger the process chain.<BR /> <BR /> You can read the link below for this :<BR /> <BR /> <A href="https://blogs.sap.com/2015/07/08/how-to-trigger-a-process-chain-using-a-planning-function-in-sap-design-studio/" target="test_blank" rel="noopener noreferrer">https://blogs.sap.com/2015/07/08/how-to-trigger-a-process-chain-using-a-planning-function-in-sap-design-studio/</A><BR /> <BR /> However with the above approach since we are going to trigger the planning sequence from SAC, we couldn't find any way to send back messages to SAC about the process chain status. It was becoming difficult for the users to check the latest status of the data load in SAC.<BR /> <BR /> So while trying to search a better approach we realized that there are two standard planning function types provided by SAP for this purpose.<BR /> <OL><BR /> <LI>0RSPL_START_PROCESS - Start a Process Chain</LI><BR /> <LI>0RSPL_GET_PC_LOG - Get Logs from a Process Chain</LI><BR /> </OL><BR /> As shown below you can find the planning function types in BI Content under Function Type for Planning. When you use these for the first time, you need to activate them from the BI Content.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/1-19.jpg" /></P><BR /> Once activated the Planning Function types are ready for use.<BR /> <BR /> Now lets look at the step by step process to create the Planning sequence to trigger a process chain.<BR /> <OL><BR /> <LI>Since our planning function will have to based on an Aggregation Level, we need a Plan DSO and a Aggregation level as the first step. Create DSO and Aggregation level as shown below. You can create a Custom InfoObject to store Process Chain ID. The DSO is of type Direct Update, Planning enabled.</LI><BR /> </OL><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/08/20.jpg" height="393" width="405" /></P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/08/21-1.jpg" height="284" width="392" /></P><BR /> &nbsp;<BR /> <BR /> 2. The next step is to create planning function on this aggregation level that we created.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/5-8.jpg" /></P><BR /> &nbsp;<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/6-9.jpg" /></P><BR /> Enter the Name of the Process chain in the parameter as shown below :<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/7-3.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 3. Now lets create a planning filters as shown below.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/8-5.jpg" /></P><BR /> Enter the process chain name in the Planning Filter as shown below.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/10-2.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 4. Once the planning function and planning filter is created, we have to create a Planning Sequence. Add the planning function and planning filter that we created before in the planning sequence.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/11-3.jpg" /></P><BR /> Save the planning sequence and execute it. As shown below you will see a message that the Planning sequence executed without errors.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/12-2.jpg" /></P><BR /> &nbsp;<BR /> <BR /> Go to RSPC and check the logs for the process chain to see if it got executed. As shown our process chain got executed below :<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/13-2.jpg" /></P><BR /> &nbsp;<BR /> <BR /> Now create another planning function and planning sequence to check the process chain logs.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/32.jpg" /></P><BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> 5. To use this planning sequence in SAC, we will need a Model in SAC. So lets go to BPC Environment and create a model. You first need to create an environment for your project if you dont already have it, and then create the model.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/22.jpg" /></P><BR /> &nbsp;<BR /> <BR /> Select the plan DSO now that we created before.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/23.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 6. Now lets go to SAC and create a BPC Model from the BPC Live Connection. Create a sample query on the aggregation level as shown below and you can use that in the SAC Model. See below :<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/31.jpg" /></P><BR /> &nbsp;<BR /> <BR /> As shown below create a SAC Model from BPC Live Connection. In BPC Environment select the environment and the BPC model we created in previous step and then select the BW Query and click on ok and save the model.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/30.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 7. Now create a blank story and add Planning Trigger Object as shown below.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/24.jpg" /></P><BR /> &nbsp;<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/25.jpg" /></P><BR /> Add a planning trigger in the story and select BPC Planning Sequence Trigger. Here select the model that we created in the previous step.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/26.jpg" /></P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/27.jpg" /></P><BR /> &nbsp;<BR /> <BR /> As shown above my planning trigger is added to the SAC Story. I added one more trigger for the planning sequence ZAGG_PC_PS1 for checking the logs.<BR /> <BR /> Now go to view mode and click on the first planning trigger.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/28.jpg" /></P><BR /> &nbsp;<BR /> <BR /> As shown you get a message that the planning sequence is executed without errors. This means that the process chain is executed in the backend. To check the status of the process chain click on the second planning trigger.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2022/09/29.jpg" /></P><BR /> It gives the status of the process chain as ok which means the process chain executed successfully. If the process chain fails you can see the errors here and if the status is active it means the process chain is running. You can click the button multiple times to check the status of the process chain.<BR /> <BR /> &nbsp; 2022-09-22T07:15:38+02:00 https://community.sap.com/t5/technology-blogs-by-members/how-business-warehouse-can-help-you-in-ibp-projects/ba-p/13551646 How Business Warehouse can help you in IBP Projects 2023-02-16T09:36:55+01:00 fkatzdobler https://community.sap.com/t5/user/viewprofilepage/user-id/488307 <H1 id="toc-hId-832938794">Introduction and Motivation</H1><BR /> Currently, there are different projects related to Integrated Business Planning ongoing. One motivation could be to have a successor for APO (Advanced Planning and Optimization).<BR /> <BR /> In case your system landscape contains a Business Warehouse system, you might be interested on how to utilize it in your IBP Projects. This question is exactly the scope of this blog.<BR /> <H1 id="toc-hId-636425289">Architecture</H1><BR /> <H2 id="toc-hId-568994503">Reference Data for IBP</H2><BR /> Most likely, the IBP system will have a direct connection to your ERP system for synchronization of some master data and some other things. When it comes to special requirements, the ERP system might not be the best source system to take and you will not be able to extract data in a granularity which can be digested by IBP. Let's think about the requirement to aggregate the reference data along a customer planning hierarchy. Instead of reinventing the logic in ERP or in IBP, you might like to reuse it from existing planning applications in Business Warehouse. This is just one example. You will have more harmonization and aggregation requirements for different areas of reference data in your project. For such cases, Business Wareshouse can be a very helpful system.<BR /> <BR /> Most likely the level of detail for IBP will be something like:<BR /> <UL><BR /> <LI>Planning Customer</LI><BR /> <LI>Planning Material</LI><BR /> <LI>Calender Year</LI><BR /> <LI>Calender Month</LI><BR /> <LI>Plant</LI><BR /> <LI>Sales Organization</LI><BR /> <LI>Version</LI><BR /> <LI>Quantity</LI><BR /> </UL><BR /> The reference data might be on a very different level and it can be very painful to bring all data to a proper granularity without a Business Warehouse.<BR /> <BR /> Some data might only be available in Business Warehouse, like external data from the market which you would like to use for your planning process.<BR /> <H2 id="toc-hId-372480998">Backwards Integration to ERP</H2><BR /> But not only the integration of reference data is required. You will also most likely find the requirement to write data back from IBP to ERP. Let's take the COPA Module as an example and the retraction transactions KELC and KELR. You can't use those transactions in ERP together with IBP directly, as IBP does not allow you to implement BEx Queries.<BR /> <BR /> You could use the Business Warehouse again to write data back from IBP to an aDSO in Business Warehouse first and consume it via BEx Queries and utilize the ERP transactions you already might have in place.<BR /> <H2 class="ds-heading ds-heading--m ds-blog-post__title" id="toc-hId-175967493">SAP Cloud Platform Integration for Data Services (CPI-DS)</H2><BR /> Most probably you will also find CPI-DS in your IBP project. CPI-DS can be used to read e.g. the aDSO table, where you put the reference data in. It can also be used to trigger the loading process of the results of IBP into Business Warehouse.<BR /> <BR /> On a very high level your architecture could look like the one in the following picture.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/01/Blog_IBP_1-1.jpg" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">High Level Architecture</P><BR /> <BR /> <H1 id="toc-hId--149628731">Summary</H1><BR /> During the project preperation, it is very helpful to list all sources which should be integrated to support the process inside IBP. It might be helpful to use an existing Business Warehouse to collect, harmonize and aggregate the data to the needed granularity for IBP.<BR /> <BR /> Be prepared for interfaces. Don't underestimate the effort to connect the systems and the integration between the systems.<BR /> <BR /> Make sure you have clean master data and harmonized processes. 2023-02-16T09:36:55+01:00 https://community.sap.com/t5/technology-blogs-by-sap/accelerate-your-move-from-sap-bpc-to-sap-analytics-cloud-sac-for-planning/ba-p/13568864 Accelerate Your Move from SAP BPC to SAP Analytics Cloud (SAC) for planning with a migration guide 2023-03-09T19:02:22+01:00 pravin_datar https://community.sap.com/t5/user/viewprofilepage/user-id/199428 For the last more than 15 years, SAP Business Planning and Consolidaiton (SAP BPC) provided a rock-solid on-premise planning solution for customers. When organizations transitioned to cloud technology, SAP was able to satisfy that need with <A href="https://www.sapanalytics.cloud/?utm_source=community_blog&amp;utm_medium=pd&amp;utm_campaign=sacp" target="_blank" rel="nofollow noopener noreferrer">SAP Analytics Cloud</A>, its flagship analytics and planning SAAS solution. Though SAP has promised customers using on-premise solutions that their investments are safe and secure as announced in its <A href="https://blogs.sap.com/?p=1447022" target="_blank" rel="noopener noreferrer">product strategy</A>, many on-premise users themselves are facing a number of challenges such as<BR /> <UL><BR /> <LI>How do we drive maximum cost synergies to fund innovation</LI><BR /> <LI>How do we better engage our employees to attract and retain top talent</LI><BR /> <LI>How do we engage with Machine Learning and AI to help support planning</LI><BR /> <LI>How do we collaborate with plans across enterprise</LI><BR /> </UL><BR /> All these factors are leading the organizations to move to the cloud-based planning solution from their traditional on-premise solutions and SAP BPC is no exception. The easiest and smoothest transition for SAP BPC customers to cloud is SAP Analytics Cloud. With SAP Analytics Cloud, customers can leverage Planning and Analysis on a single solution. SAP Analytics Cloud provides a set of rich planning capabilities that allows organizations to plan across various lines of business, connecting operational to financial plans. SAP Analytics Cloud is always online with your most trusted data.<BR /> <BR /> Now SAP provides a migration guide for customers who have deployed SAP BPC. This document also provides guidance (for Planning only – not for Consolidation) on how to integrate SAP Analytics Cloud with S/4HANA and SAP BW. This document covers topics such as dimensions and models, calculation logic, validation rules, reports, work status, security, audit etc. to name a few.<BR /> <BR /> When you are ready to take the next step, you can get the details at SAP Note 3308697 or contact us at <A href="mailto:movebpc@sap.com" target="_blank" rel="nofollow noopener noreferrer">movebpc@sap.com</A> to get the guide and learn more about using SAP Analytics Cloud for Planning to migrate your BPC investment to the Cloud and accelerate your business &amp; financial transformation. 2023-03-09T19:02:22+01:00 https://community.sap.com/t5/technology-blogs-by-sap/bw-creation-of-custom-keyfigures-infoobject/ba-p/13555961 BW: Creation of custom KeyFigures InfoObject 2023-03-27T15:24:09+02:00 ondrakfi https://community.sap.com/t5/user/viewprofilepage/user-id/127667 When you would like to extend your InfoProvider of some KeyFields which you will create on your own, you cannot use the standard procedure. Usually you would use Transaction FCOM_MET tool for extension, however in this case it is prohibited and you cannot do that this way. These steps need to be performed for ACDOCA/ACDOCP fields which are made for Unit or Quantity.<BR /> <P style="overflow: hidden;margin-bottom: 0px">For creation a new KeyFigure InfoObject you need to use BW Modeling Tools in Eclipse app. In this app you will locate your system and open it. Then you need to right-click the system and choose: New -&gt; InfoObject...<IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/03/2023-03-07_14-16-43.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Creation of InfoObject</P><BR /> This will open pop-up screen, where you define your InfoObject. This can be done in several ways, depending on of what you need at the moment. As an example I will create InfoObject for new Quantity. You can assign it to your InfoArea, or to the Original Package /ERP/SFIN.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/03/2023-03-07_14-21-44.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Definition of InfoObject</P><BR /> &nbsp;<BR /> <BR /> You can then see your new InfoObject under the InfoArea you chose. The configuration is up to you at this point. It is good to use the same configuration as it is for the delivered one. It might look like this:<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/03/2023-03-07_14-28-34.png" /></P><BR /> After all of this is done, you can proceed into the backend to do mapping.<BR /> <BR /> Open Transaction RSA1 and switch it to Edit Mode, so you can do changes. Select the InfoProvider you want to enhance of this field. It will open 2 new windows on the side. One if for selecting other fields, the other one is your InfoProvider. From the selection you can use the drag-and-drop function to enhance InfoProvider.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/03/2023-03-07_14-30-14.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Selection of new InfoObject</P><BR /> Add the field into the desired location, in this case Quantity under KeyFields. Right-click the InfoObject and select "Provider-Specific Properties".<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/03/2023-03-07_14-31-36.png" /></P><BR /> Here you can choose to which ACDOCA/ACDOCP field should be your InfoObject refered to (This might be completely different from the field I have chosen).<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/03/2023-03-07_14-32-48.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">Assinging of ACDOCA/ACDOCP field.</P><BR /> &nbsp;<BR /> <BR /> All you need to do now, is to save this InfoProvider, activate it and then you will see your new KeyFigure InfoObject in InfoProvider.<BR /> <BR /> When you will create your own Unit as well, you would need to reference it to this Quantity InfoObject, which you would do in Eclipse under: Aggregation - Referenced Characteristic.<BR /> <BR /> &nbsp;<BR /> <BR /> Please share your feedback or thoughts in the comment section.<BR /> <BR /> Follow me for more tips about BW or BPC in general, so I can create more post about these topics.<BR /> <BR /> You can also follow BW Planning, post and answer questions (<A href="https://answers.sap.com/tags/369280904654660339247670897548678" target="_blank" rel="noopener noreferrer">https://answers.sap.com/tags/369280904654660339247670897548678</A>), and read other posts on the topic (<A href="https://blogs.sap.com/tags/369280904654660339247670897548678/" target="_blank" rel="noopener noreferrer">https://blogs.sap.com/tags/369280904654660339247670897548678/</A>) for more content.<BR /> <BR /> You might suggest some topic, you would like to know more about in my DMs as well, so I know on which topics should I focus. 2023-03-27T15:24:09+02:00 https://community.sap.com/t5/financial-management-blogs-by-sap/how-to-add-cost-center-hierarchy-into-cds-view-selection-screen/ba-p/13563213 How to add Cost Center Hierarchy into CDS View selection screen 2023-03-31T03:52:38+02:00 ondrakfi https://community.sap.com/t5/user/viewprofilepage/user-id/127667 In SAP Delivered CDS View for Cost Centers - Actuals/ Cost Centers - Plan/Actual, or even your own custom created CDS View, you might need to have Cost Center Hierarchy and Cost Center Node on the selection screen within WebDynpro version of the app. You can select Cost Center Hierarchy as an additional filter, but it will not be visible among other variables.<BR /> <BR /> In order to be able to see Cost Center Hierarchy on selection screen, you will need to create your own CDS View, as you cannot modify SAP Delivered one. You can create copy of the CDS View C_COSTCENTERQ2001, which has the Cost Center Hierarchy already in the code, but it is commented out by default.<BR /> <BR /> You will find this code under the Rows characteristic:<BR /> <PRE class="language-abap"><CODE>@AnalyticsDetails.query.axis: #ROWS <BR /> IsStatisticalCostCenter, <BR /> <BR /> @AnalyticsDetails.query.variableSequence: 50<BR /> @Consumption.filter: { selectionType: #INTERVAL, multipleSelections: true, mandatory: false }<BR /> @AnalyticsDetails.query.totals: #SHOW<BR /> @AnalyticsDetails.query.axis: #ROWS<BR /> @AnalyticsDetails.query.display: #KEY_TEXT<BR /> CostCenter,<BR /> <BR /> //@AnalyticsDetails.query.variableSequence: 81<BR /> //@Consumption.filter: { selectionType: #HIERARCHY_NODE, multipleSelections: true, mandatory: false,<BR /> // hierarchyBinding : [ {type: #USER_INPUT, value: 'CostCenterHierarchy', variableSequence: 80 } ] }<BR /> //@AnalyticsDetails.query.displayHierarchy: #FILTER<BR /> //@AnalyticsDetails.query.totals: #SHOW<BR /> //@AnalyticsDetails.query.axis: #ROWS<BR /> //@AnalyticsDetails.query.display: #KEY_TEXT<BR /> //CostCenter as CostCenterChildNode,<BR /> //_CostCenter[1:ValidityEndDate &gt;= $parameters.P_KeyDate and <BR /> // ValidityStartDate &lt;= $parameters.P_KeyDate]._Text[1:Language = $parameters.P_Language].CostCenterName as CostCenterChildNodeName,<BR /> <BR /> <BR /> @AnalyticsDetails.query.variableSequence: 86<BR /> @Consumption.filter: { selectionType: #HIERARCHY_NODE, multipleSelections: true, mandatory: false,<BR /> hierarchyBinding : [ { type: #USER_INPUT, value: 'GLAccountHierarchy', variableSequence: 85 } ] }<BR /> @AnalyticsDetails.query.displayHierarchy: #FILTER<BR /> @AnalyticsDetails.query.axis: #ROWS<BR /> @AnalyticsDetails.query.totals: #SHOW<BR /> GLAccount,<BR /> _GLAccountInChartOfAccounts._Text[1:Language = $parameters.P_Language].GLAccountName,</CODE></PRE><BR /> When you create a copy of this view, or you will use your own, you will need to replace this part of the code for this one:<BR /> <PRE class="language-abap"><CODE>@AnalyticsDetails.query.axis: #ROWS <BR /> IsStatisticalCostCenter, <BR /> <BR /> <BR /> @AnalyticsDetails.query.variableSequence: 86<BR /> @Consumption.filter: { selectionType: #HIERARCHY_NODE, multipleSelections: true, mandatory: false,<BR /> hierarchyBinding : [ {type : #PARAMETER, value : 'P_ControllingArea'}, {type: #USER_INPUT, value: 'CostCenterHierarchy', variableSequence: 85 }<BR /> ] }<BR /> @AnalyticsDetails.query.displayHierarchy: #FILTER<BR /> //@Consumption.filter: { selectionType: #INTERVAL, multipleSelections: true, mandatory: false }<BR /> @AnalyticsDetails.query.totals: #SHOW<BR /> @AnalyticsDetails.query.axis: #ROWS<BR /> CostCenter,<BR /> _CostCenter[1:ValidityEndDate &gt;= $parameters.P_KeyDate and <BR /> ValidityStartDate &lt;= $parameters.P_KeyDate]._Text[1:Language = $parameters.P_Language].CostCenterName,<BR /> <BR /> @AnalyticsDetails.query.variableSequence: 96<BR /> @Consumption.filter: { selectionType: #HIERARCHY_NODE, multipleSelections: true, mandatory: false,<BR /> hierarchyBinding : [ { type: #USER_INPUT, value: 'GLAccountHierarchy', variableSequence: 95 } ] }<BR /> @AnalyticsDetails.query.displayHierarchy: #FILTER<BR /> //@Consumption.filter: { selectionType: #INTERVAL, multipleSelections: true, mandatory: false }<BR /> @AnalyticsDetails.query.axis: #ROWS<BR /> @AnalyticsDetails.query.totals: #SHOW<BR /> GLAccount,<BR /> _GLAccountInChartOfAccounts._Text[1:Language = $parameters.P_Language].GLAccountName,</CODE></PRE><BR /> As you can see in the changed code, the part with single Cost Center was removed completely and&nbsp; Cost Center Hierarchy with Cost Center Node took its place. In Cost Center Hierarchy and GL Account Hierarchy is a line:<BR /> <PRE class="language-abap"><CODE>//@Consumption.filter: { selectionType: #INTERVAL, multipleSelections: true, mandatory: false }</CODE></PRE><BR /> This line is there in case, you would like to select it not as a Hierarchy and Node, but just a single selection of Cost Center or GL Account. If you would like to have a single GL Account for selection, you need to uncomment this line and comment these two lines in the code for GL Account:<BR /> <PRE class="language-abap"><CODE>@Consumption.filter: { selectionType: #HIERARCHY_NODE, multipleSelections: true, mandatory: false,<BR /> hierarchyBinding : [ { type: #USER_INPUT, value: 'GLAccountHierarchy', variableSequence: 95 } ] }<BR /> @AnalyticsDetails.query.displayHierarchy: #FILTER</CODE></PRE><BR /> These two lines for Cost Center:<BR /> <PRE class="language-abap"><CODE>@Consumption.filter: { selectionType: #HIERARCHY_NODE, multipleSelections: true, mandatory: false,<BR /> hierarchyBinding : [ {type : #PARAMETER, value : 'P_ControllingArea'}, {type: #USER_INPUT, value: 'CostCenterHierarchy', variableSequence: 85 }<BR /> ] }<BR /> @AnalyticsDetails.query.displayHierarchy: #FILTER</CODE></PRE><BR /> At the end, you will need to create your own Fiori Tile with this CDS View in it, to be able to run it in Fiori Launchpad.<BR /> <BR /> The result will look like this in Fiori.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/03/CDS-Cost-Centers-Actual.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic;font-family: 'SAPRegular', 'Helvetica Neue', Arial, sans-serif">Cost Centers - Actuals with Hierarchy</P><BR /> Please share your feedback or thoughts in the comment section.<BR /> <BR /> Follow me for more tips about BW or BPC in general, so I can create more post about these topics.<BR /> <BR /> You can also follow BW Planning, post and answer questions (<A href="https://answers.sap.com/tags/369280904654660339247670897548678" target="_blank" rel="noopener noreferrer">https://answers.sap.com/tags/369280904654660339247670897548678</A>), and read other posts on the topic (<A href="https://blogs.sap.com/tags/369280904654660339247670897548678/" target="_blank" rel="noopener noreferrer">https://blogs.sap.com/tags/369280904654660339247670897548678/</A>) for more content.<BR /> <BR /> You might suggest some topic, you would like to know more about in my DMs as well, so I know on which topics should I focus. 2023-03-31T03:52:38+02:00 https://community.sap.com/t5/financial-management-blogs-by-sap/how-to-adding-profit-center-group-into-selection-screen/ba-p/13567301 How to: Adding Profit Center Group into selection screen 2023-05-02T10:39:23+02:00 ondrakfi https://community.sap.com/t5/user/viewprofilepage/user-id/127667 This guide works only for BW Query which starts with /ERP/SFIN_***<BR /> <BR /> Profit Center Group is not available by default in BW queries for Profit Center as:<BR /> <UL><BR /> <LI><BR /> <H4 id="toc-hId-1221286206">/ERP/SFIN_V01_Q2701 – Profit Centers - Actuals</H4><BR /> </LI><BR /> <LI><BR /> <H4 id="toc-hId-1024772701">/ERP/SFIN_M01_Q2701 – Profit Centers – Plan/Actual</H4><BR /> </LI><BR /> <LI><BR /> <H4 id="toc-hId-828259196">/ERP/SFIN_M01_Q2702 – Profit Centers – Plan/Actual YTD</H4><BR /> </LI><BR /> <LI><BR /> <H4 id="toc-hId-631745691">/ERP/SFIN_M01_Q2703 – Profit Centers – Plan /Actual with Currency Translation</H4><BR /> </LI><BR /> </UL><BR /> For enabling this field in BW queries you need to do several steps, before you can create/update WebDynpro Configuration for selected app.<BR /> <H3 id="toc-hId-306149467">1)SAP Note 3308885</H3><BR /> This Note is adding two additional variables for the backend. Without this Note in your system, this guide will not work.<BR /> <H3 id="toc-hId-109635962">2)Eclipse – BW Modeling Tools</H3><BR /> First you need to locate the query you want to modify(for purpose of example I have created my own as a copy from Profit Center – Actuals)<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/2023-03-03_14-45-51-ve-velke-velikosti.png" /></P><BR /> When you open the query, you need to switch to InfoProvider selection, so you are able to choose from it, but first in case you do not want to select single Profit Center anymore, you can delete variable which is already assigned under Filter: Fixed Values in /ERP/PROFTCTR (Only if you created a copy, you might have no variable there at all, which is also fine)<BR /> <BR /> Then select /ERP/PROFTCTR, open Characteristic Value Variable, right-click to open pop-up and select New Variable<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/2023-03-03_14-49-33-ve-velke-velikosti.png" /></P><BR /> Then you need to create 2 new variable which have to be named /ERP/N_PROFTCTR01 and /ERP/H_PROFTCTR01 as they are being called by the Function Module with the same label.<BR /> <BR /> You can use your own package and Description, the rest must be the same as below.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/2023-03-03_14-53-27.png" /></P><BR /> <P class="image_caption" style="text-align:center;font-style:italic;, Arial, sans-serif">Creation of New Variable</P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/2023-03-03_14-54-18.png" /></P><BR /> &nbsp;<BR /> <BR /> After those two new variables are created, you then need to assign it to /ERP/PROFTCTR in the Filter of your query.<BR /> <BR /> Double click on /ERP/PROFTCTR in Filter: Fixed vaule to open next selection. There you need to open Hierarchy Node Variables, select your new variable and click on Change…<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/2023-03-03_14-55-09.png" /></P><BR /> Here you will assign Hierarchy Variable to the Node.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/2023-03-03_14-56-25-ve-velke-velikosti.png" /></P><BR /> Then you need to just drag it to the Filter on the right and it will be assigned to /ERP/PROFTCTR. Filter definition should look the same as on the screenshot.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/2023-03-03_14-58-29.png" /></P><BR /> Afterwards you need to click on /ERP/PROFTCTR, select Hierarchy tab and do the same as for the Node. You will select the variable and when you do so, it will switch the flag of Activate Hierarchy to On.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/2023-03-03_14-59-39-ve-velke-velikosti.png" /></P><BR /> At the end, you should be able to see Profit Center Group as part of your query in Transaction RSRT.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/05/Obrazek1.png" /></P><BR /> Now all you need to do is maintain WebDynpro configuration for your app, to assure, that the field is available for you in Profit Center reports.<BR /> <BR /> You can use this guide to enable Profit Center Groups in any BW Query, as it is not limited just for Profit Centers Apps.<BR /> <BR /> &nbsp;<BR /> <BR /> Please share your feedback or thoughts in the comment section.<BR /> <BR /> Follow me for more tips about BW or BPC in general, so I can create more post about these topics.<BR /> <BR /> You can also follow BW Planning, post and answer questions (<A href="https://answers.sap.com/tags/369280904654660339247670897548678" target="_blank" rel="noopener noreferrer">https://answers.sap.com/tags/369280904654660339247670897548678</A>), and read other posts on the topic (<A href="https://blogs.sap.com/tags/369280904654660339247670897548678/" target="_blank" rel="noopener noreferrer">https://blogs.sap.com/tags/369280904654660339247670897548678/</A>) for more content.<BR /> <BR /> You might suggest some topic, you would like to know more about in my DMs as well, so I know, on which topics should I focus. 2023-05-02T10:39:23+02:00 https://community.sap.com/t5/technology-blogs-by-sap/bw-tpm-issues-and-resolution/ba-p/13579722 BW TPM - Issues and Resolution 2023-08-22T12:05:53+02:00 mansi_dandavate https://community.sap.com/t5/user/viewprofilepage/user-id/198383 Everytime I work on Trade Promotion Management, I am always in awe of how beautifully the product is designed and how seamlessly it works integrating different systems like CRM, BW and S/4 HANA.<BR /> <BR /> Having said that I am also bogged down with the multiple issues that come up when you are configuring the Trade Management CRM UI and trying to make all the pieces work. And even if you have worked on it in the past, every issue comes with its own set of challenges and you feel helpless at times not knowing what to do next. In the recent project I did as well, I faced multiple issues and thankfully I had the help from some of my peers who have been through this journey in the past as well as the product team who used to guide us on the way forward.<BR /> <BR /> There are two helpful blogs below already on the topic which will guide you on your Trade Management BW journey.<BR /> <BR /> <A href="https://blogs.sap.com/2019/01/03/tips-and-tricks-while-working-on-bw-tpm/" target="_blank" rel="noopener noreferrer">https://blogs.sap.com/2019/01/03/tips-and-tricks-while-working-on-bw-tpm/</A><BR /> <BR /> <A href="https://blogs.sap.com/2022/07/28/lessons-learned-while-working-on-bw-planning-tpm-project/" target="_blank" rel="noopener noreferrer">https://blogs.sap.com/2022/07/28/lessons-learned-while-working-on-bw-planning-tpm-project/</A><BR /> <BR /> However, these blogs might be on slightly older versions of Trade Management. I have tried to document the issues we faced while working on Trade Management 4.0, FP6 and the resolution with the hope that it would be helpful for others who are in the same journey.<BR /> <BR /> &nbsp;<BR /> <OL><BR /> <LI><STRONG>While creating a Plan in the CRM UI Screen, we got below BSP error.</STRONG></LI><BR /> </OL><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/1-30.jpg" /></P><BR /> <SPAN style="text-decoration: underline">Resolution:</SPAN><BR /> <BR /> In SU3 maintain the decimal settings. Change it from 1.234.567,89 to 1,234,567.89 in both CRM and BW systems. The decimal settings should be the same in CRM and BW system for your use ID.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/2-8.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 2. <STRONG>PSM Initialization Failed for Object due to synchronization error</STRONG><BR /> <BR /> This is actually a common error which can occur due to multiple reasons. But usually its because the sync method is not able to create the combinations of the Plan data in the BW DSO and so the query read fails as there is no data.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/3-4.jpg" /></P><BR /> When we debugged this, found that the Sync method was failing with below error.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/4-4.jpg" /></P><BR /> &nbsp;<BR /> <BR /> <SPAN style="text-decoration: underline">Resolution:</SPAN><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">As per the error, the Sales organization has not been mapped to fiscal year variant. The reason was that the DSO /JBPB/SAFV_M was not loaded.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">The system checks the mapping of Sales Organization and Fiscal Year Variant in this DSO. The issue was resolved after loading data in this DSO.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/5-4.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 3. <STRONG>Roll-in Planning Function not working</STRONG><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">The reason was in the Code for Roll-in Planning function the data from /JBPB/IPLAN DSO was not getting read. The selections were passed correctly and data was there in the DSO, but it was still not getting read.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">Then we found that there is a customizing setting in which we have to enable the Plan DSOs to be used in Planning Engine.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/6-4.jpg" /></P><BR /> <P lang="en-US"></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">When we tried to maintain the setting here, we got a short dump.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/7-5.jpg" /></P><BR /> <P lang="en-US"><SPAN style="text-decoration: underline">Resolution:</SPAN></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">We found one OSS Note (2899115) that has to be implemented to fix this, but since we did not have much time and the Note was getting updated, we decided to write a custom program and add the entries in the below standard table directly.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/8-5.jpg" height="508" width="513" /></P><BR /> <P lang="en-US"></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">After updating this, the data started getting read from the /JBPB/IPLAN DSO in the planning function.</P><BR /> <P lang="en-US">4. <STRONG>Short Dump while trying to activate DSO /JBPB/IPRSTG</STRONG></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">While trying to activate DSO /JBPB/IPRSTG we were getting a dump in the development system.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/9-4.jpg" /></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">The reason is the DB connection that is maintained in RS2HANA_View transaction code is missing from DBCO transaction.</P><BR /> <P lang="en-US"><SPAN style="text-decoration: underline">Resolution :</SPAN></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">Below is the OSS Note that mentions the solution.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt"><A href="https://launchpad.support.sap.com/#/notes/3212374" target="_blank" rel="noopener noreferrer">https://launchpad.support.sap.com/#/notes/3212374</A></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/10-5.jpg" /></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/11-5.jpg" /></P><BR /> After maintaining the DB connection the issue was resolved and we could successfully activate the DSO /JBPB/IPRSTG.<BR /> <P lang="en-US">5. <STRONG>Trusted RFC Connection not working</STRONG></P><BR /> When we are working on TPM, we need to set up two RFC Connections in the CRM system. One will be the usual RFC connection that we need to create for the source system connection in BW. The other RFC connection will be a trusted RFC. The trusted RFC connection will have a Current user selected in the settings which means that whenever the data is read in CRM UI from BW, the current user is used instead of the background user.<BR /> <BR /> So whenever we want to debug any errors in the CRM UI, we can easily set breakpoints with our own user ID in the BW system, if we use the trusted RFC. If we do not use the trusted RFC and use the other generic one, then we have to debug with the common background user which will be same for everyone, so other people using the system will run into the breakpoints that you set.<BR /> <BR /> Usually the basis team will create trusted RFC with the name *_DEBUG eg. BWCLNT100_DEBUG.<BR /> <BR /> You need to maintain this trusted RFC in the parameters in SU3 transaction in CRM system. The system will use the trusted RFC for the communication with BW only if you maintain it in the parameters in SU3. If you do not maintain it then common RFC will be used.<BR /> <P lang="en-US"></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt"><SPAN style="text-decoration: underline">Resolution :</SPAN></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/12-4.jpg" /></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/13-5.jpg" /></P><BR /> Once this is updated, you can perform debugging and troubleshooting with your own ID.<BR /> <BR /> If your basis team needs any help with trusted RFC configuration you can use the below mentioned blog which is very helpful.<BR /> <BR /> <A href="https://blogs.sap.com/2010/11/29/setup-a-trusted-rfc-connection/" target="_blank" rel="noopener noreferrer">Setup a trusted RFC connection #sapadmin | SAP Blogs</A><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">After applying OSS Note above and updating user parameters to use trusted RFC, I was able to debug with my user ID.</P><BR /> <P lang="en-US">6. <STRONG>Total Promotion Investment Value was not matching with Reserved/Prereserved values in the Fund usage</STRONG></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">The issue was with the standard BW query /JBPB/C_PRM_PROMO_KPI_Q004. This query is used for the calculation of the Total Promotion Value that is displayed on the right side of the promotion screen. &nbsp;The calculation view in the standard query is not used now and should be replaced with the DSO /JBPB/ILTA.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/14-2.jpg" /></P><BR /> <P lang="en-US"><SPAN style="text-decoration: underline">Resolution:</SPAN></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">So we created a custom query which is a copy of the standard query and replaced the Infoprovider with the standard DSO /JBPB/ILTA. Also remember to update the Z query in your config in CRM to replace the Promo KPI monitor standard query with the Custom query.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/15-2.jpg" /></P><BR /> It worked fine after making the above changes. The prereserved value was populated along with the Total Promo Investment in the Promo KPI Monitor screen.<BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/16-2.jpg" /></P><BR /> <P lang="en-US">7.<STRONG>In promotion screen, Tree View was not loading. Even in Tree view we could see flat view data.</STRONG></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">The problem was we were using custom Queries for Promotions that we had copied.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">And there is some standard code to change Query filters which was executing only for standard queries. We have to update this code to implement it for the Custom queries as well that we create</P><BR /> <P lang="en-US"><SPAN style="text-decoration: underline">Resolution:</SPAN></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">Create custom Badi Implementation for BADI IMP_QUERY as shown below and create Custom Class which will be a copy of the standard class</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/17-1.jpg" /></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/18-1.jpg" /></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/19-1.jpg" /></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">Also activate this BADI in SPRO.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/20-1.jpg" /></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/21-1.jpg" /></P><BR /> <P lang="en-US">8. <STRONG>When we tried to create a new Version for Operational Plan, it was throwing BW planning function errors</STRONG></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/22-1.jpg" /></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">When we debugged and checked the BW Planning function for Version Creation was failing because value '9' did not exist in /JBPB/SCINDIC InfoObject.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/23-1.jpg" /></P><BR /> <P lang="en-US"><SPAN style="text-decoration: underline">Resolution:</SPAN></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">The solution was simple that we had to maintain master data for the Source Indicator Object. This should have values 1, A, B, C and 9.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">So we maintained the value 9 as below :</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/24.jpg" /></P><BR /> <P lang="en-US"></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">After maintaining the master data, we were able to successfully create a new version for Operational Plan.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/25.jpg" /></P><BR /> <P lang="en-US">9. <STRONG>When we tried to compare different versions then we were getting below error which says Invalid Query</STRONG></P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/26.jpg" /></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">On checking more we found that the BW Queries for Version Comparison were not active in the BW system.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">Below are the queries which we need to activate for Version Comparison.</P><BR /> <BR /> <DIV><BR /> <TABLE style="direction: ltr;border-collapse: collapse;border: 1pt solid #A3A3A3" title="" border="1" summary="" cellspacing="0" cellpadding="0"><BR /> <TBODY><BR /> <TR><BR /> <TD style="background-color: white;vertical-align: top;width: 2.6173in;padding: 4pt 4pt 4pt 4pt;border: 1pt solid #A3A3A3"><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt;color: black">/JBPB/C_VER_COMP_PNL</P><BR /> </TD><BR /> <TD style="background-color: white;vertical-align: top;width: 2.4562in;padding: 4pt 4pt 4pt 4pt;border: 1pt solid #A3A3A3"><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt;color: black">Version Comparison PNL Query</P><BR /> </TD><BR /> </TR><BR /> <TR><BR /> <TD style="background-color: white;vertical-align: top;width: 2.6368in;padding: 4pt 4pt 4pt 4pt;border: 1pt solid #A3A3A3"><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt;color: black">/JBPB/C_VER_COMP_PNL_PROD_TREE</P><BR /> </TD><BR /> <TD style="background-color: white;vertical-align: top;width: 2.5062in;padding: 4pt 4pt 4pt 4pt;border: 1pt solid #A3A3A3"><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt;color: black">Version Comparison PNL Product Tree</P><BR /> </TD><BR /> </TR><BR /> </TBODY><BR /> </TABLE><BR /> </DIV><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">While activating the query in BI Content we were getting following error:</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/27.jpg" /></P><BR /> <P lang="en-US"><SPAN style="text-decoration: underline">Resolution:</SPAN></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">We found an OSS Note for this issue which is below</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt"><A href="https://me.sap.com/notes/2861374/E" target="_blank" rel="noopener noreferrer">https://me.sap.com/notes/2861374/E</A></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">This OSS Note is applicable to Support pack level</P><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt">SAPK-40003INTMAB. But our system was on</P><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt">SAPK-40002INTMAB.</P><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt">But as mentioned in the OSS Note that we needed to create assignment for the field</P><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt">S_RRSPPR" in the Composite Provider /JBPB/C_VER. Since this assignment was missing in our system, I created that and then we tried to install the Query.</P><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt">After this step, the Queries got installed successfully.</P><BR /> <P style="margin: 0in;font-family: Calibri;font-size: 11.0pt">The Plan Version Comparison screen was loading fine after this.</P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/28-1.jpg" /></P><BR /> &nbsp;<BR /> <BR /> 10. <STRONG>Unable to assort products, product assortment is not saved in BW. (This issue came in the Quality System)</STRONG><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/29-1.jpg" /></P><BR /> &nbsp;<BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">And when you debug you can figure out that the planning function to create the combinations in the Synchronize method is failing.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">See below error message.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/30.jpg" /></P><BR /> <P lang="en-US"><SPAN style="text-decoration: underline">Resolution:</SPAN></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">Post this we maintained the value 1 in the master data for InfoObject /JBPB/SCINDIC in both attributes as well as text and this issue was resolved.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">Further we found that the combinations in the IPLAN Dso were still not created. We found the assortment entries getting stuck in CRM system in SMQ2.</P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/31.jpg" /></P><BR /> &nbsp;<BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">Then we found that in one of the tables the entry was missing in Quality system.</P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">We maintained the below entry in the table RSADMIN using the program SAP_RSADMIN_MAINTAIN.</P><BR /> <P lang="en-US" style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/32.jpg" /></P><BR /> <P lang="en-US"></P><BR /> <P lang="en-US" style="margin: 0in;font-family: Calibri;font-size: 11.0pt">After doing above steps the issue was resolved and data started getting saved in the IPLAN DSO.</P><BR /> <P lang="en-US"></P><BR /> <P lang="en-US">I hope that these pointers will help everyone of us who are working on BW Trade Management.</P><BR /> <P lang="en-US"></P> 2023-08-22T12:05:53+02:00 https://community.sap.com/t5/technology-blogs-by-sap/uncaught-exception-abap-dump-while-opening-infoobject-in-sap-bw-system-7-50/ba-p/13580654 UNCAUGHT_EXCEPTION ABAP Dump While Opening Infoobject in SAP BW system (7.50) 2023-08-30T14:38:16+02:00 shoaib_haider https://community.sap.com/t5/user/viewprofilepage/user-id/346332 There might come a time when you have perhaps preformed SP level upgrade of your BW system and you notice some objects are throwing ABAP dumps when you try to open them. If these are standard objects then there are ways you can fix the issue.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/2023-08-20_19-50-40.png" /></P><BR /> <P class="image_caption" style="text-align: center;font-style: italic">ABAP dump when trying to open object in BW system</P><BR /> <STRONG>Note:</STRONG> First identify if the issue happened in any of the lower environment i.e. DEV, QA etc. If the issue occured in the lower environment also then it could very well be that the object is inconsistent hence you might need to fix the same and then do a transport to the next target.<BR /> <BR /> However if none of the lower environment faced this issue and only PRD then following is the option for you to follow in such case.<BR /> <BR /> In my case after system upgrade when I try to option the Active/Delivery version of the InfoObject or execute Attribute change run of my object <STRONG>0PM_ORDER </STRONG>I was getting the above mentioned dump in ST22. This was happening in SAP NetWeaver 7.5 SP27.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/2023-08-20_18-19-07.png" /></P><BR /> <STRONG>How to Fix this:</STRONG><BR /> <OL><BR /> <LI>From the ST22 dump information, you need to find field L_S_DTA_PRO-IOBJNM and it will give you the object in question here.</LI><BR /> <LI>Reinstall the InfoObject from BI Content using (tcode - RSOR) and removing checkbox "Match (X) or Copy". Please note that the Active version will be overwritten.</LI><BR /> <LI>See reference <EM>SAP note <STRONG>3106415</STRONG> - InfoObject activation error: Nav. attribute &amp;1 for characteristic &amp;2 as InfoProvider cannot be used</EM></LI><BR /> </OL><BR /> &nbsp;<BR /> <BR /> <STRONG>Other options:</STRONG><BR /> <BR /> If you try the above and it still dumps then it is very likely that in the job log you will see this object is probably having dependencies with other objects or have dependencies from custom characteristics. In that case you will see messages like below:<BR /> <BR /> InfoObject XXXXXXX is used in transfer rules (M) of characteristic XXXXXXX.<BR /> <BR /> InfoObject XXXXXXX is used in transfer rules (M) of characteristic XXXXXXX.<BR /> <BR /> ....<BR /> <BR /> Therefore, the proper way to fix the issue would be to re-transport 0PM_ORDER and its dependent objects, so the references are fixed in target system. Re-installing form BI Content will not work here because you could have other dependencies from custom characteristics aswell.<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> Hope this helps.<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp;<BR /> <BR /> &nbsp; 2023-08-30T14:38:16+02:00 https://community.sap.com/t5/technology-blogs-by-members/custom-planning-solution-in-bw-4-hana/ba-p/13559722 Custom Planning Solution in BW/4 HANA 2023-08-31T13:48:32+02:00 jyoti_s_sahu https://community.sap.com/t5/user/viewprofilepage/user-id/592133 <H1 id="toc-hId-833178017">Introduction:</H1><BR /> This article covers how to create custom planning solution BW/4 Hana. Its relevant for BPC&nbsp; Embedded or BW-IP (integrated planning).<BR /> <BR /> Basic knowledge of BW IP, HANA and programming is required to understand the concept.<BR /> <BR /> BPC embedded mainly uses BW-IP/PAK for planning. It has many standards functions available (e.g. Copy, Distribution, Repost, etc. ). But, there are many scenarios where the allocation/distribution logic can't be fulfilled using standard planning functions available. In that case we generally go for custom planning solution.<BR /> <BR /> Generally in real-time scenario, there will be multiple levels of allocations also having multiple dimensions. In this article we will be discussing how to create a simple end to end custom planning solution and how to build the logic including error handling. In this scenario, we are going to use the same aDSO for transaction data as well as for allocated data. In real scenario, we can have different aDSO for transaction data and planned data.<BR /> <H1 id="toc-hId-636664512">Main Content:</H1><BR /> <H2 id="toc-hId-569233726">Problem Statement:</H2><BR /> Source data containing below information.<BR /> <TABLE style="width: 408px" width="361"><BR /> <TBODY><BR /> <TR><BR /> <TD style="width: 122px" colspan="2" width="128">Costcenter Driver</TD><BR /> <TD style="width: 73px" width="64"></TD><BR /> <TD style="width: 93px" width="82"></TD><BR /> <TD style="width: 66px" width="87"></TD><BR /> <TD style="width: 86px" width="64"></TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px"></TD><BR /> <TD style="width: 63px"></TD><BR /> <TD style="width: 73px"></TD><BR /> <TD style="width: 93px"></TD><BR /> <TD style="width: 66px"></TD><BR /> <TD style="width: 86px"></TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">Scenario</TD><BR /> <TD style="width: 63px">Calmonth</TD><BR /> <TD style="width: 73px">Control Area</TD><BR /> <TD style="width: 93px">Source CC</TD><BR /> <TD style="width: 66px">Target CC</TD><BR /> <TD style="width: 86px">Factor</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">ACT</TD><BR /> <TD style="width: 63px">202304</TD><BR /> <TD style="width: 73px">E001</TD><BR /> <TD style="width: 93px">AEA1001002</TD><BR /> <TD style="width: 66px">ABCDULSGR1</TD><BR /> <TD style="width: 86px">0.2</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">ACT</TD><BR /> <TD style="width: 63px">202304</TD><BR /> <TD style="width: 73px">E001</TD><BR /> <TD style="width: 93px">AEA1001002</TD><BR /> <TD style="width: 66px">ABCDULSGR2</TD><BR /> <TD style="width: 86px">0.4</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">ACT</TD><BR /> <TD style="width: 63px">202304</TD><BR /> <TD style="width: 73px">E001</TD><BR /> <TD style="width: 93px">AEA1001002</TD><BR /> <TD style="width: 66px">ABCDULSGR3</TD><BR /> <TD style="width: 86px">0.15</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">ACT</TD><BR /> <TD style="width: 63px">202304</TD><BR /> <TD style="width: 73px">E001</TD><BR /> <TD style="width: 93px">AEA1001002</TD><BR /> <TD style="width: 66px">ABCDULSGR4</TD><BR /> <TD style="width: 86px">0.25</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">ACT</TD><BR /> <TD style="width: 63px">202304</TD><BR /> <TD style="width: 73px">E001</TD><BR /> <TD style="width: 93px">AEA1001004</TD><BR /> <TD style="width: 66px">ABCDULSGR2</TD><BR /> <TD style="width: 86px">0.5</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">ACT</TD><BR /> <TD style="width: 63px">202304</TD><BR /> <TD style="width: 73px">E001</TD><BR /> <TD style="width: 93px">AEA1001004</TD><BR /> <TD style="width: 66px">ABCDULSGR3</TD><BR /> <TD style="width: 86px">0.3</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">ACT</TD><BR /> <TD style="width: 63px">202304</TD><BR /> <TD style="width: 73px">E001</TD><BR /> <TD style="width: 93px">AEA1001004</TD><BR /> <TD style="width: 66px">ABCDULSGR4</TD><BR /> <TD style="width: 86px">0.1</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 59px">ACT</TD><BR /> <TD style="width: 63px">202304</TD><BR /> <TD style="width: 73px">E001</TD><BR /> <TD style="width: 93px">AEA1001004</TD><BR /> <TD style="width: 66px">ABCDULSGR5</TD><BR /> <TD style="width: 86px">0.1</TD><BR /> </TR><BR /> </TBODY><BR /> </TABLE><BR /> &nbsp;<BR /> <TABLE width="361"><BR /> <TBODY><BR /> <TR><BR /> <TD colspan="2" width="128">Transaction Data</TD><BR /> <TD width="82"></TD><BR /> <TD width="87"></TD><BR /> <TD width="64"></TD><BR /> </TR><BR /> <TR><BR /> <TD></TD><BR /> <TD></TD><BR /> <TD></TD><BR /> <TD></TD><BR /> <TD></TD><BR /> </TR><BR /> <TR><BR /> <TD>Scenario</TD><BR /> <TD>Calmonth</TD><BR /> <TD>Costcenter</TD><BR /> <TD>Audit ID</TD><BR /> <TD>Amount</TD><BR /> </TR><BR /> <TR><BR /> <TD>ACT</TD><BR /> <TD>202304</TD><BR /> <TD>AEA1001002</TD><BR /> <TD>A_001</TD><BR /> <TD>100</TD><BR /> </TR><BR /> <TR><BR /> <TD>ACT</TD><BR /> <TD>202304</TD><BR /> <TD>AEA1001004</TD><BR /> <TD>A_001</TD><BR /> <TD>200</TD><BR /> </TR><BR /> </TBODY><BR /> </TABLE><BR /> Audit ID A_001 refers to source data (transaction data).<BR /> <BR /> Audit ID A_002 refers to allocated data.<BR /> <TABLE style="width: 631px" width="557"><BR /> <TBODY><BR /> <TR><BR /> <TD style="width: 70px" width="69">CC Master</TD><BR /> <TD style="width: 100px" width="96"></TD><BR /> <TD style="width: 69px" width="67"></TD><BR /> <TD style="width: 103px" width="74"></TD><BR /> <TD style="width: 68px" width="80"></TD><BR /> <TD style="width: 48px" width="76"></TD><BR /> <TD style="width: 173px" width="95"></TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 70px"></TD><BR /> <TD style="width: 100px"></TD><BR /> <TD style="width: 69px"></TD><BR /> <TD style="width: 103px"></TD><BR /> <TD style="width: 68px"></TD><BR /> <TD style="width: 48px"></TD><BR /> <TD style="width: 173px"></TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 70px">CO_AREA</TD><BR /> <TD style="width: 100px">COSTCENTER</TD><BR /> <TD style="width: 69px">OBJVERS</TD><BR /> <TD style="width: 103px">DATETO</TD><BR /> <TD style="width: 68px">DATEFROM</TD><BR /> <TD style="width: 48px">OBJ_CURR</TD><BR /> <TD style="width: 173px">PROFIT_CTR</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 70px">E001</TD><BR /> <TD style="width: 100px">ABCDULSGR1</TD><BR /> <TD style="width: 69px">A</TD><BR /> <TD style="width: 103px">31-12-9999</TD><BR /> <TD style="width: 68px">01-01-2017</TD><BR /> <TD style="width: 48px">USD</TD><BR /> <TD style="width: 173px">ABCDULSGR1</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 70px">E001</TD><BR /> <TD style="width: 100px">ABCDULSGR2</TD><BR /> <TD style="width: 69px">A</TD><BR /> <TD style="width: 103px">31-12-9999</TD><BR /> <TD style="width: 68px">01-01-2017</TD><BR /> <TD style="width: 48px">USD</TD><BR /> <TD style="width: 173px"></TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 70px">E001</TD><BR /> <TD style="width: 100px">ABCDULSGR3</TD><BR /> <TD style="width: 69px">A</TD><BR /> <TD style="width: 103px">31-12-9999</TD><BR /> <TD style="width: 68px">01-01-2017</TD><BR /> <TD style="width: 48px">USD</TD><BR /> <TD style="width: 173px">ABCDULSGR3</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 70px">E001</TD><BR /> <TD style="width: 100px">ABCDULSGR4</TD><BR /> <TD style="width: 69px">A</TD><BR /> <TD style="width: 103px">31-12-9999</TD><BR /> <TD style="width: 68px">01-01-2017</TD><BR /> <TD style="width: 48px">USD</TD><BR /> <TD style="width: 173px">ABCDULSGR4</TD><BR /> </TR><BR /> <TR><BR /> <TD style="width: 70px">E001</TD><BR /> <TD style="width: 100px">ABCDULSGR5</TD><BR /> <TD style="width: 69px">A</TD><BR /> <TD style="width: 103px">31-12-9999</TD><BR /> <TD style="width: 68px">01-01-2017</TD><BR /> <TD style="width: 48px">USD</TD><BR /> <TD style="width: 173px">ABCDULSGR5</TD><BR /> </TR><BR /> </TBODY><BR /> </TABLE><BR /> The requirement is to allocate the amount to receiver costcenters based on driver value. It will generate the allocated values with different audit ID. It should consider the profit% value entered by user as well.<BR /> <BR /> <SPAN style="text-decoration: underline"><STRONG>Error handling</STRONG></SPAN>: System should also validate if any of the receiver costcenter is not assigned to profit center. It should throw error message.<BR /> <BR /> <SPAN style="text-decoration: underline"><STRONG>Parameter handling</STRONG></SPAN>: User will pass the profit percentage value (%) as parameter. It will be used in the allocation to multiply all allocated amounts.<BR /> <H2 id="toc-hId-372720221">Solution:</H2><BR /> <H3 id="toc-hId-305289435">Driver Data:</H3><BR /> Create a planning enable aDSO for costcenter driver. Enable hana view generation.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/CC-Driver-1.jpg" /></P><BR /> Create the aggregation level and input sheet. Update the CC driver values as mentioned before.<BR /> <BR /> Update the CC master data as mentioned before.<BR /> <H3 id="toc-hId-108775930">Transaction Data:</H3><BR /> The below objects will be needed.<BR /> <OL><BR /> <LI>Create the aDSO for transaction data.</LI><BR /> <LI>Create aggregation level.</LI><BR /> <LI>Custom class</LI><BR /> <LI>Planning function type using custom class</LI><BR /> <LI>Planning function.</LI><BR /> <LI>Planning sequence and filter.</LI><BR /> </OL><BR /> <H4 id="toc-hId-41345144"><SPAN style="text-decoration: underline">aDSO for transaction data:</SPAN></H4><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/adso.jpg" /></P><BR /> <BR /> <H4 id="toc-hId--155168361"><SPAN style="text-decoration: underline">Aggregation level:</SPAN></H4><BR /> Create the aggregation level on top of transaction data aDSO. Pick all the fields from aDSO.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/aggr-level.jpg" /></P><BR /> <BR /> <H4 id="toc-hId--351681866"><SPAN style="text-decoration: underline">Custom Class</SPAN></H4><BR /> Create a Z empty class with interface IF_RSPLFA_SRVTYPE_IMP_EXEC.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/empty-class-2.jpg" /></P><BR /> <BR /> <H4 id="toc-hId--548195371"><SPAN style="text-decoration: underline">Planning Function Type:</SPAN></H4><BR /> Create new planning function type using the class created above. Add a parameter as profit % (numeric value). info object 0SPL_TARGET is used.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/Planning-func-type-1.jpg" /></P><BR /> <BR /> <H4 id="toc-hId--1242425971"><SPAN style="text-decoration: underline">Planning Function:</SPAN></H4><BR /> Create a planning function based on the planning function type. use the input ready formula variable for the profit %.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/planning-func.jpg" /></P><BR /> <BR /> <H4 id="toc-hId--1438939476"><SPAN style="text-decoration: underline">Planning function Filter:</SPAN></H4><BR /> <H4 id="toc-hId--1635452981"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/Planning-filter.jpg" /></H4><BR /> <H4 id="toc-hId--1831966486"><SPAN style="text-decoration: underline">Planning Sequence:</SPAN></H4><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/Planning-Seq.jpg" /></P><BR /> <BR /> <H3 id="toc-hId--1735076984"><SPAN style="text-decoration: underline">Logic Build:</SPAN></H3><BR /> Run the program RSPLS_SQL_SCRIPT_TOOL. Provide the parameters like below and execute. System will give code dump. Copy the code to the class created before.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/code-template-1.jpg" /></P><BR /> Adjust the code as mentioned below. System generates the template code. The logic needs to be built in MY_HANA_PROCEDURE method. Its take into consideration of all the parameters defined for the planning function type.<BR /> <PRE class="language-abap"><CODE>CLASS zcl_cc_to_cc_demo DEFINITION<BR /> PUBLIC<BR /> FINAL<BR /> CREATE PUBLIC .<BR /> <BR /> PUBLIC SECTION.<BR /> * Type for aggregation level ZAL_SRCAL<BR /> TYPES: BEGIN OF y_s_zal_srcal,<BR /> calmonth TYPE /bi0/oicalmonth,<BR /> costcenter TYPE /bi0/oicostcenter,<BR /> co_area TYPE /bi0/oico_area,<BR /> zc_audit TYPE /bic/oizc_audit,<BR /> zc_scnro TYPE /bic/oizc_scnro,<BR /> currency TYPE /bi0/oicurrency,<BR /> amount TYPE /bi0/oiamount,<BR /> END OF y_s_zal_srcal.<BR /> TYPES: y_t_zal_srcal TYPE STANDARD TABLE OF y_s_zal_srcal.<BR /> INTERFACES if_amdp_marker_hdb.<BR /> INTERFACES if_rsplfa_srvtype_trex_exec.<BR /> INTERFACES if_rsplfa_srvtype_imp_exec.<BR /> CLASS-METHODS: my_hana_procedure IMPORTING VALUE(i_view) TYPE y_t_zal_srcal<BR /> VALUE(i_profit) TYPE /bi0/oispl_target<BR /> EXPORTING VALUE(e_view) TYPE y_t_zal_srcal<BR /> VALUE(e_msg) TYPE if_rspls_sql_script=&gt;y_t_msg<BR /> RAISING cx_amdp_error.<BR /> PROTECTED SECTION.<BR /> PRIVATE SECTION.<BR /> ENDCLASS.<BR /> CLASS zcl_cc_to_cc_demo IMPLEMENTATION.<BR /> METHOD if_rsplfa_srvtype_trex_exec~trex_execute.<BR /> DATA: l_r_sql_script TYPE REF TO if_rspls_sql_script,<BR /> l_procedure_name TYPE string,<BR /> l_t_iobj_param TYPE if_rsr_pe_adapter=&gt;tn_t_iobj_param.<BR /> l_r_sql_script = cl_rspls_session_store_manager=&gt;get_sql_script_instance( i_r_store = i_r_store ).<BR /> * The method if_rspls_sql_script~get_parameter_values returns a table of parameters<BR /> * with the values given in the function definition<BR /> l_r_sql_script-&gt;get_parameter_values(<BR /> EXPORTING<BR /> i_r_param_set = i_r_param_set<BR /> i_para_name_for_procedure = 'HANA_PROCEDURE_NAME'<BR /> IMPORTING<BR /> e_procedure_name = l_procedure_name<BR /> e_t_iobj_param = l_t_iobj_param ).<BR /> * The function parameter given mehtod paramenter i_para_name_for_procedure<BR /> * will not be returned in the table e_t_iobj_param but the value of this<BR /> * function parameter will be returned int the mehtod parameter e_procedure_name<BR /> * This mechanisme can e.g. be used to define function specific SAP-HANA-procedure names.<BR /> * Other examples to get the name of the SAP-HANA-procedure name which will be called can be<BR /> * - you use the technical name of the planning function type:<BR /> * - or you simply give the SAP-HANA procedure name in a string:<BR /> l_procedure_name = 'ZCL_CC_TO_CC_DEMO=&gt;MY_HANA_PROCEDURE'.<BR /> r_s_view-view = l_r_sql_script-&gt;execute_sql_script(<BR /> i_view = i_view<BR /> i_t_iobj_param = l_t_iobj_param<BR /> i_proc_name = l_procedure_name<BR /> i_sql_script_returns_ai = abap_true<BR /> i_r_msg = i_r_msg ).<BR /> ENDMETHOD.<BR /> METHOD if_rsplfa_srvtype_trex_exec~init_and_check.<BR /> e_trex_supported = rs_c_true.<BR /> ENDMETHOD.<BR /> METHOD my_hana_procedure BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT<BR /> * For Options and declarations check the AMDP documentiation (ABAP Managed Database Procedure)<BR /> OPTIONS READ-ONLY<BR /> * OPTIONS SUPPRESS SYNTAX ERRORS READ-ONLY. "<BR /> USING /BI0/QCOSTCENTER.<BR /> DECLARE lv_count INTEGER;<BR /> * ERROR HANDLING *<BR /> lt_invalid = SELECT a."0RESP_CCTR" as cctr<BR /> FROM "_SYS_BIC"."system-local.bw.bw2hana/ZAD_CCDRV" as a<BR /> JOIN "/BI0/QCOSTCENTER" as b<BR /> ON a."0RESP_CCTR" = b.costcenter<BR /> AND a."0CO_AREA" = b.co_area<BR /> WHERE b.profit_ctr = '';<BR /> SELECT COUNT (*) INTO lv_count FROM :lt_invalid;<BR /> IF :lv_count &lt;&gt; 0 THEN<BR /> e_msg = SELECT * from :e_msg UNION<BR /> SELECT '00' as msgid,<BR /> 'E' as msgty,<BR /> '001' as msgno,<BR /> 'Profit Center is missing' as msgv1,<BR /> '' as msgv2,<BR /> '' as msgv3,<BR /> '' as msgv4<BR /> FROM dummy;<BR /> RETURN;<BR /> END IF;<BR /> * ALLOCATION *<BR /> e_view = SELECT * FROM :i_view where zc_audit = 'A_001'<BR /> UNION ALL<BR /> SELECT a.calmonth,<BR /> b."0RESP_CCTR" as costcenter,<BR /> b."0CO_AREA" as co_area,<BR /> 'A_002' as zc_audit,<BR /> a.zc_scnro,<BR /> a.currency,<BR /> (( a.amount * b."0RSPL_FCWHT" )* (1+:i_profit)) as amount<BR /> FROM :i_view as a<BR /> JOIN "_SYS_BIC"."system-local.bw.bw2hana/ZAD_CCDRV" as b<BR /> ON a.calmonth = b."0CALMONTH"<BR /> AND a.co_area = b."0CO_AREA"<BR /> AND a.costcenter = b."0REQU_CCTR";<BR /> ENDMETHOD.<BR /> ENDCLASS.</CODE></PRE><BR /> <H3 id="toc-hId--1931590489"><SPAN style="text-decoration: underline">Execution:</SPAN></H3><BR /> First convert the aDSO to load mode. Then load the transaction data as mentioned before in manage datastore (BW cockpit). Convert the aDSO to plan mode.<BR /> <H4 id="toc-hId-1873460295">Run1: (Verify the profit center)</H4><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/Run1.jpg" /></P><BR /> System will throw error as ABCDULSGR2 costcenter is having blank profit center.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/Run1-validation.jpg" /></P><BR /> <BR /> <H4 style="overflow: hidden;margin-bottom: 0px" id="toc-hId-1676946790">Run2: Allocation test</H4><BR /> <P style="overflow: hidden;margin-bottom: 0px">Update the profit center field of ABCDULSGR2 with any value. Then run the planning sequence with same selection. After execution save the plan buffer.</P><BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/Run2.jpg" /></P><BR /> verify the values in LISTCUBE Tcode for the aDSO. The source values got allocated to receiver costcenters with profit of 8%.<BR /> <P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="https://community.sap.com/legacyfs/online/storage/blog_attachments/2023/08/output-1.jpg" /></P><BR /> <BR /> <H1 id="toc-hId--1934324990">Conclusion:</H1><BR /> In this article we learnt the below things.<BR /> <UL><BR /> <LI>How to create a Custom planning function using AMDP.</LI><BR /> <LI>How to handle error validation in planning function.</LI><BR /> <LI>How to pass parameter to a planning function and how to use in the logic.</LI><BR /> <LI>How to write the logic in AMDP planning method.</LI><BR /> <LI>How to create end to end solution for custom solution in planning with all BW planning objects and AMDP class.</LI><BR /> </UL><BR /> &nbsp;<BR /> <BR /> &nbsp; 2023-08-31T13:48:32+02:00 https://community.sap.com/t5/technology-blogs-by-sap/how-to-extension-of-cds-views/ba-p/13584754 How to: Extension of CDS Views 2024-01-29T13:28:37.153000+01:00 ondrakfi https://community.sap.com/t5/user/viewprofilepage/user-id/127667 <P style=" padding-left : 30px; ">There exist multiple alternatives for enhancing CDS Views for Analytical applications, including those such as Cost Centers - Actuals, Cost Centers - Plan/Actuals, amongst others.</P><P style=" padding-left : 30px; ">As each of our inquiries consistently functions in coordination with either I_JournalEntryItemCube or I_ActualPlanJournalEntryItemCube, these cubes necessitate extension to efficiently integrate with your specific fields within the aforementioned applications.</P><TABLE border="1" width="100%"><TBODY><TR><TD width="25%" height="57px">CDS Query (object)</TD><TD width="25%" height="57px">CDS Query (2C+SQL View)</TD><TD width="25%" height="57px">CDS Query WebDynpro Configuration</TD><TD width="25%" height="57px">App ID</TD></TR><TR><TD width="25%" height="30px">C_CostCenterQ2001</TD><TD width="25%" height="30px">CFICOSTCTRQ2001</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPACTCC</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F0963')/S27OP" target="_blank" rel="noopener nofollow noreferrer">F0963</A></TD></TR><TR><TD width="25%" height="30px">C_CostCenterPlanActQ2001</TD><TD width="25%" height="30px">CFICCPLANACT2001</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPPLANACTCC01</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('W0081')/S27OP" target="_blank" rel="noopener nofollow noreferrer">W0081</A></TD></TR><TR><TD width="25%" height="30px">C_ProfitCenterQ2701</TD><TD width="25%" height="30px">CFIPROFCTRQ2701</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPACTPC</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F0959')/S27OP" target="_blank" rel="noopener nofollow noreferrer">F0959</A></TD></TR><TR><TD width="25%" height="30px">C_ProfitCenterPlanActQ2701</TD><TD width="25%" height="30px">CFIPCPLANACT2701</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPPLANACTPC01</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('W0079')/S27OP" target="_blank" rel="noopener nofollow noreferrer">W0079</A></TD></TR><TR><TD width="25%" height="30px">C_MarketSegmentQ2501</TD><TD width="25%" height="30px">CFIMARKSEGMQ2501</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPACTMS</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F0960')/S27OP" target="_blank" rel="noopener nofollow noreferrer">F0960</A></TD></TR><TR><TD width="25%" height="30px">C_MarketSegmentPlanActQ2501</TD><TD width="25%" height="30px">CFIMSPLANACT2501</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPPLANACTMS01</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('W0078')/S27OP" target="_blank" rel="noopener nofollow noreferrer">W0078</A></TD></TR><TR><TD width="25%" height="30px">C_ProfitAndLossQ2901</TD><TD width="25%" height="30px">CFIPROFLOSSQ2901</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPACTPL</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F0958')/S27OP" target="_blank" rel="noopener nofollow noreferrer">F0958</A></TD></TR><TR><TD width="25%" height="30px">C_ProfitAndLossPlanActQ2903</TD><TD width="25%" height="30px">CFIPLPLANACT</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPPLANACTPL03</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F1710')/S27OP" target="_blank" rel="noopener nofollow noreferrer">F1710</A></TD></TR><TR><TD width="25%" height="30px">C_FunctionalAreasQ2801</TD><TD width="25%" height="30px">CFIFAQ2801</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPACTFA</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F1583A')/S27OP" target="_blank" rel="noopener nofollow noreferrer">F1583A</A></TD></TR><TR><TD width="25%" height="30px">C_FunctionalAreaPlanActQ2801</TD><TD width="25%" height="30px">CFIFAPLANACT2801</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPPLANACTFA01</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('W0077')/S27OP" target="_blank" rel="noopener nofollow noreferrer">W0077</A></TD></TR><TR><TD width="25%" height="30px">C_InternalOrderPlanActQ2101</TD><TD width="25%" height="30px">CFIIOPLANACT2101</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPPLANACTIO01</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('W0076')/S27OP" target="_blank" rel="noopener nofollow noreferrer">W0076</A></TD></TR><TR><TD width="25%" height="30px">C_SalesOrderQ2301</TD><TD width="25%" height="30px">CFISALESORDQ2301</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPACTSO</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F1582A')/S27OP" target="_blank" rel="noopener nofollow noreferrer">F1582A</A></TD></TR><TR><TD width="25%" height="30px">C_ProjectQ2201</TD><TD width="25%" height="30px">CFIPROJECTQ2201</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPACTPR</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F0961')/S27OP" target="_blank" rel="noopener nofollow noreferrer">&nbsp;F0961</A></TD></TR><TR><TD width="25%" height="30px">C_ProjectPlanActQ2201</TD><TD width="25%" height="30px">CFIPRPLANACT2201</TD><TD width="25%" height="30px">FIS_FPM_OVP_IPPLANACTPR01</TD><TD width="25%" height="30px"><A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('W0080')/S27OP" target="_blank" rel="noopener nofollow noreferrer">W0080</A></TD></TR></TBODY></TABLE><OL><LI><STRONG>Custom Fields and Logic</STRONG><BR />The first option is to use the Fiori App <A href="https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('F1481')/S27OP" target="_self" rel="nofollow noopener noreferrer">Custom Fields and Logic</A>&nbsp;<SPAN>where you can create your field, which will be afterwards present in table ACDOCA/ACDOCP and the Query you select. For this, you will need to know Business Context. You can use FINS_JOURNAL_ENTRY_ITEM as a Business Context and then fill in the rest such as Label, Type, Length etc.<BR /><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Snímek obrazovky 2024-01-29 v&nbsp;11.13.35.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/54705i7DD633F0BD9DE27A/image-size/large?v=v2&amp;px=999" role="button" title="Snímek obrazovky 2024-01-29 v&nbsp;11.13.35.png" alt="Snímek obrazovky 2024-01-29 v&nbsp;11.13.35.png" /></span><BR /><BR /><SPAN>Once the field is generated, you can enable it for CDS Views and select only those, where you would require this field for reporting.<BR /><BR /></SPAN></SPAN><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Snímek obrazovky 2024-01-29 v&nbsp;11.18.25.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/54738i7CFB53726013343A/image-size/large?v=v2&amp;px=999" role="button" title="Snímek obrazovky 2024-01-29 v&nbsp;11.18.25.png" alt="Snímek obrazovky 2024-01-29 v&nbsp;11.18.25.png" /></span><BR /><BR /><SPAN><SPAN>All you need to do now is to Publish the changes and the field is available in our reporting apps.<BR /><BR />In case you change your mind in the future, or you need to extend some other query, you can use the tab Data Source Extension in the app, select the query you want to extend, name the CDS VIew and then you can select any fields already present in I_JournalEntryItemCube or I_ActualPlanJournalEntryItemCube. The same applies when the field is present in the Cube, but not in the query itself as the query contains only some basic characteristics, but not all of them.</SPAN></SPAN><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Snímek obrazovky 2024-01-29 v&nbsp;12.30.26.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/54819i98C5E488252258D0/image-size/large?v=v2&amp;px=999" role="button" title="Snímek obrazovky 2024-01-29 v&nbsp;12.30.26.png" alt="Snímek obrazovky 2024-01-29 v&nbsp;12.30.26.png" /></span><P> </P></LI><LI><SPAN><STRONG>Extend the already created field in ACDOCA/ACDOCP</STRONG><BR /><BR />The Fiori App Custom Fields and Logic cannot offer you an extension based on fields, which are already present in the ACDOCA/ACDOCP table.&nbsp;<BR /></SPAN><SPAN>You will first need to enable your custom fields which start on ZZ_ or YY_ with transaction&nbsp;<SPAN class="">SCFD_EUI(see SAP Note 2672370).<BR /></SPAN></SPAN><SPAN><SPAN class="">This will create a connection to the Custom Fields and Logic App. You might see different Business Contexts as it is taken directly from the created field. You do not need to worry as Accounting: Market Segment can be used as well. The most important is if you are then able to select I_ActualPlanJournalEntryItemCube or I_JournalEntryItemCube from the list to enable usage.<BR /></SPAN></SPAN><SPAN><SPAN class="">Once the process is done, the field will be visible in Custom Fields and Logic under Custom Fields, where you can select it modify the usage and continue with the first step.<BR /><BR /><BR /></SPAN></SPAN></LI><LI><SPAN><SPAN class=""><STRONG>Using a field delivered by SAP, but not available in any CDS View Cube</STRONG><BR /><BR />There are fields in tables ACDOCA/ACDOCP which are not available in the CDS Cubes I_JournalEntryItemCube, I_ActualPlanJournalEntryItemCube. For this purpose, you need to follow these steps:<BR /><BR /></SPAN></SPAN><OL><LI>A CDS view that selects all of your required fields from your database table. Data Source Extension does not support the selection of fields in database tables, only CDS views can be selected as source.</LI><LI>This CDS view must be registered and released in transaction SCFD_REGISTRY. This is required to ensure that system upgrades do not break the extension (lifecycle stability)</LI></OL></LI></OL><P style=" padding-left : 30px; ">For more information see another SAP Blog:<BR /><A href="https://community.sap.com/t5/enterprise-resource-planning-blogs-by-sap/adding-field-in-standard-fiori-apps-of-s-4hana-with-custom-fields-and-logic/ba-p/13443650" target="_blank">https://community.sap.com/t5/enterprise-resource-planning-blogs-by-sap/adding-field-in-standard-fiori-apps-of-s-4hana-with-custom-fields-and-logic/ba-p/13443650</A><BR /><BR /><BR /></P><P style=" padding-left : 30px; ">4. <STRONG>Extension of Import Financial Plan Data&nbsp;</STRONG></P><P style=" padding-left : 30px; ">You want to use the Fiori App: Import Financial Plan Data with your custom fields, but this is not possible as the field is not present in C_GenericPlanQ3001. Once you do an extension for this CDS View, you will be able to import data for your custom field.</P><P style=" padding-left : 30px; ">&nbsp;</P><P style=" padding-left : 30px; ">5. <STRONG>Extension of API A_CostCenter</STRONG></P><P style=" padding-left : 30px; ">You may come across an extension of API CDS View for SAP Analytical Cloud or any other purpose. The process is the same.</P><P style=" padding-left : 30px; ">This can be extended in two ways.</P><P style=" padding-left : 30px; ">The first way is to use the Fiori App: Custom Fields and Logic. In this app, you will create a completely new field, which will be added to the CSKS table (Master Data Cost Center) as well as in CDS View E_COSTCENTER, A_COSTCENTER and others, depending on what you choose.</P><P style=" padding-left : 30px; ">The second option is to choose a field, which is already in the CSKS table and can be either your new custom-made or some other which cannot be seen within the API.</P><P style=" padding-left : 30px; ">Extension in this case works the same way as with Custom Fields and Logic, except for the fact you need to create the code on your own. First, you need to extend the E_COSTCENTER of your new field and activate it. This will enable this field for I_COSTCENTER which is Master Data view on the table CSKS.</P><P style=" padding-left : 30px; ">As a second step, you need to extend the A_COSTCENTER, which is the API for the Master Data. This will add the selected field to the Service API_COSTCENTER and enable it for reporting.</P><P style=" padding-left : 30px; ">The code for the CDS Extension will look like this:</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-abap"><code>@AbapCatalog.sqlViewAppendName: 'Z_TEST' extend view E_CostCenter with ZFO_EXTENSIOM { Persistence. verak as verak }</code></pre><pre class="lia-code-sample language-abap"><code>@AbapCatalog.sqlViewAppendName: 'Z_TEST_A' extend view A_CostCenter with ZFO_EXTENSION_A { _Extension.verak as Z_VERAK }</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P style=" padding-left : 30px; ">Due to the different syntax in both CDS Views, you need to use:</P><UL><LI>&nbsp;<STRONG>Persistence </STRONG>for the <STRONG>E_COSTCENTER (This needs to be extend first)</STRONG></LI><LI><STRONG>_Extension</STRONG> for the <STRONG>A_COSTCENTER</STRONG></LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Snímek obrazovky 2024-01-29 v&nbsp;13.21.17.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/54850i51B378916926A8B9/image-size/large?v=v2&amp;px=999" role="button" title="Snímek obrazovky 2024-01-29 v&nbsp;13.21.17.png" alt="Snímek obrazovky 2024-01-29 v&nbsp;13.21.17.png" /></span></P><P> </P><P>&nbsp;</P><P style=" padding-left : 30px; "><SPAN>Please share your feedback or thoughts in the comment section.</SPAN><BR /><BR /><SPAN>Follow me for more tips about BW or BPC in general, so I can create more posts about these topics.</SPAN><BR /><BR /><SPAN>You can also follow BW Planning, post and answer questions (</SPAN><A href="https://answers.sap.com/tags/369280904654660339247670897548678" target="_blank" rel="noopener noreferrer">https://answers.sap.com/tags/369280904654660339247670897548678</A><SPAN>), and read other posts on the topic (</SPAN><A href="https://blogs.sap.com/tags/369280904654660339247670897548678/" target="_blank" rel="noopener noreferrer">https://blogs.sap.com/tags/369280904654660339247670897548678/</A><SPAN>) for more content.</SPAN><BR /><BR /><BR /></P><P>&nbsp;</P> 2024-01-29T13:28:37.153000+01:00 https://community.sap.com/t5/technology-blogs-by-members/how-to-trigger-papm-function-from-analysis-for-office/ba-p/13602142 How to trigger PaPM function from Analysis for Office 2024-02-13T09:47:40.567000+01:00 irina_ivanova https://community.sap.com/t5/user/viewprofilepage/user-id/683493 <P>Let me share with your how to call PaPM function from Analysis for Office step-by-step.</P><P>Scenario allows user to update workbook by clicking on the button “Reconcile”. Button triggers remote call PaPM function by Function ID with parameters from workbook. In this case, variable “Planning version” value passed to PaPM function as selection fields.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Planning Form1.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/64461i5C32C0EC9D0E76F7/image-size/large?v=v2&amp;px=999" role="button" title="Planning Form1.png" alt="Planning Form1.png" /></span></P><P>To carry out into practice this scenario it is necessary proceed next steps:</P><OL><LI>Create the PaPM environment and functions for processing</LI><LI>Create the functional module additionally processing variables from workbook</LI><LI>Create the set of BW objects to realize the planning function</LI><LI>Create Macros to call the planning function</LI></OL><P>I describe each of them bellow in details.</P><H3 id="toc-hId-1115140760">1. Creating PaPM environment</H3><P>My PaPM environment assumes reconciliation between two Model BW, implemented with Join and Writer function. Rules restricted by SELFLD0 and SELFLD1 fields, which are BW info-objects. SELFLD1 “Planning version” has a variable ZV_MSM_SELFLD1_01, which used in workbook. (<A href="https://help.sap.com/docs/SAP_PROFITABILITY_PERFORMANCE_MANAGEMENT/56471df1959f4cfd9e3bf7a6d2d5be42/56a0a0a1d8b10f63e10000000a42189c.html" target="_blank" rel="noopener noreferrer">SAP Help: SAP Profitability and Performance Management</A>&nbsp;)</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="PaPM env2.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/64458i9BCEEA3B32E6B5A4/image-size/large?v=v2&amp;px=999" role="button" title="PaPM env2.png" alt="PaPM env2.png" /></span></P><H3 id="toc-hId-918627255">2.&nbsp;Creating the Functional Module</H3><P>The functional module creating is carried out in thansaction SE37. Easy ABAP code allows implementing the&nbsp; necessary rules to construct the parameters string, passed to the standard functional.</P><P>&nbsp;</P><pre class="lia-code-sample language-abap"><code>FUNCTION ZNXI_RUN_BY_SELFLD1_FOX IMPORTING VALUE(I_ENV_ID) TYPE /NXI/P1_DTE_ENV_ID VALUE(I_VER) TYPE /NXI/P1_DTE_VER VALUE(I_FID) TYPE /NXI/P1_DTE_FID VALUE(I_PROC_ID) TYPE /NXI/P1_DTE_PROC_ID OPTIONAL VALUE(I_SELFLD1) TYPE /BIC/OISELFLD1 OPTIONAL EXPORTING VALUE(E_EXPTN) TYPE I. "Type’s used to easy access in FOX TYPES: BEGIN OF ls_AUXSTRC, /bic/SELFLD0 TYPE /bic/oiSELFLD0, "Dependent selection field /bic/SELFLD1 TYPE /bic/oiSELFLD1, "Selection field from Workbook END OF ls_AUXSTRC. DATA: l_selfld1 TYPE /BIC/OISELFLD1 VALUE '', l_pckg_sel TYPE /NXI/P1_DTE_PACKAGE_SEL VALUE '', l_tab_msg TYPE BAPIRET2_TAB. E_EXPTN = 0. "OK execution by default IF I_ENV_ID IS INITIAL OR I_VER IS INITIAL OR I_FID IS INITIAL. E_EXPTN = 1. "Must be defined RETURN. ENDIF. IF I_PROC_ID IS INITIAL. l_selfld1 = I_SELFLD1. "If proccess wasn’t defined, selection field should be ENDIF. IF l_selfld1 IS NOT INITIAL. SELECT SINGLE * FROM MYRELTBL INTO @DATA(ls_AUXSTRC) WHERE /BIC/SELFLD1 = @I_SELFLD1. CONCATENATE 'SELFLD0=( SELFLD0 = ''' ls_AUXSTRC-/bic/SELFLD0 ''');SELFLD1=( SELFLD1 = ''' ls_AUXSTRC-/bic/SELFLD1 ''')' INTO l_pckg_sel. ENDIF. CALL FUNCTION '/NXI/P1_FW_RUN_FUNCTION_PC' EXPORTING i_env_id = I_ENV_ID i_ver = I_VER i_fid = I_FID i_proc_id = I_PROC_ID i_package_sel = l_pckg_sel i_run_type = 'RUN' i_rspc_synchronous = 'X' i_execute_post_run = 'X' IMPORTING e_tab_msg = l_tab_msg. IF l_tab_msg IS NOT INITIAL. E_EXPTN = 2. "Execution with errors RETURN. ENDIF. ENDFUNCTION.</code></pre><P>&nbsp;</P><P>To allow using the function ZNXI_RUN_BY_SELFLD1_FOX inside the FOX script, it should be declared in table RSPLF_FDIR via transaction SM30.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="sm30.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/64471i9879F727F1937307/image-size/medium?v=v2&amp;px=400" role="button" title="sm30.png" alt="sm30.png" /></span></P><H3 id="toc-hId-722113750">&nbsp;3. Creating the set of the BW objects to realize the planning function</H3><P>The blog post&nbsp;<A href="https://community.sap.com/t5/technology-blogs-by-members/how-to-trigger-bw-process-chains-from-analysis-for-office/ba-p/13016633" target="_blank">How to Trigger BW Process Chains from Analysis for Office</A>&nbsp;&nbsp;explains clearly and in detail how to create the set of objects for planning.&nbsp;As a result, set of ADSO ZNXIDZ20, Composit Provider ZNXIVZ20, Aggregation ZNXIAZ20 are created.<span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Planning Objects.png" style="width: 385px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/64463i70E1364F764E4CDA/image-size/medium?v=v2&amp;px=400" role="button" title="Planning Objects.png" alt="Planning Objects.png" /></span></P><P>In my case, ADSO ZNXIDZ20 consists of combination of standard info-objects /NXI* and Info-object SELFLD1, which store the selection filed value. Using SELFLD1 gives easy access to the necessary type within the FOX script, described below.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="ADSO.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/64456i247D48A13AFE90DF/image-size/medium?v=v2&amp;px=400" role="button" title="ADSO.png" alt="ADSO.png" /></span></P><P>The Planning function ZNXAZ20_F001 is a formula type function (0RSPL_FORMULA) with the next configuration:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Planning function1.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/64462i69F56EDF0A0DA8D8/image-size/medium?v=v2&amp;px=400" role="button" title="Planning function1.png" alt="Planning function1.png" /></span></P><P>The following FOX script inside the planning function ZNXAZ20_F001 looks like bellow.</P><P>&nbsp;</P><pre class="lia-code-sample language-abap"><code>DATA LV_ENV TYPE /NXI/ENV_ID. DATA LV_VER TYPE /NXI/VER. DATA LV_FID TYPE /NXI/FID. DATA LV_PS_V TYPE SELFLD1. DATA LV_ERR TYPE I. LV_FID = VARV( 'ZV_MSM_NXIFID_01' ). LV_PS_V = VARV( 'ZV_MSM_SELFLD1_01' ). LV_ENV = VARV( 'ZV_MSM_NXIENV_01' ). LV_VER = VARV( 'ZV_MSM_NXIVER_01' ). CALL FUNCTION 'ZNXI_RUN_BY_SELFLD1_FOX' EXPORTING I_ENV_ID = LV_ENV I_VER = LV_VER I_FID = LV_FID I_SELFLD1 = LV_PS_V IMPORTING E_EXPTN = LV_ERR. IF LV_ERR &lt;&gt; 0. MESSAGE E000( 0 ) WITH 'Error! Watch Application Monitor for details.'. ENDIF.</code></pre><P>&nbsp;</P><H3 id="toc-hId-525600245">4. Creating Macros to call planning function</H3><P>And the last but not least, Workbook macros for Reconcile button should be defined.</P><P>Add Planning function ZNXAZ20_F001 to workbook with alias PF_1. Constant for Function ID and variable Planning version are defined on hidden Tech page:</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="WB_HiddenList1.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/64675i3EF47442CB540A69/image-size/large?v=v2&amp;px=999" role="button" title="WB_HiddenList1.png" alt="WB_HiddenList1.png" /></span></P><P>&nbsp;</P><P>After that, add macros code like bellow:</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-bash"><code>Public Sub ReconcileButtonAction() Call Application.Run("SAPExecutePlanningFunction", "PF_1") Call Application.Run(“SAPExecuteCommand”, "Refresh", "DS_1") End Sub</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>Вesides the Planning function execution, the related data store with alias DS_1 might be refreshed.</P><P>How to add the planning function described in blog post&nbsp;<A href="https://community.sap.com/t5/technology-blogs-by-members/using-planning-objects-in-analysis-for-microsoft-excel/ba-p/13271304" target="_blank">Using Planning Objects in Analysis For Microsoft Excel </A>.</P><P>Thank you for reading through and I hope you now get a knowledge to apply in your practice.</P><P>Irina.</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P> 2024-02-13T09:47:40.567000+01:00