Financial Management Blogs by SAP
Get financial management insights from blog posts by SAP experts. Find and share tips on how to increase efficiency, reduce risk, and optimize working capital.
cancel
Showing results for 
Search instead for 
Did you mean: 
gavin_du
Advisor
Advisor
3,911
Customization and extension are always important for enterprise software where requirements are so diverse and dynamic. BPC for NW considers such architectural requirement from the start of the product. It takes advantage from NetWeaver platform. Customers can implement their own ABAP code in standard BADI to change product behavior. The Excel client opens many APIs for customers to call in VBA and Macro. Since BPC 10.1 NW SP07, we have also made the web client extensible.

this article talks about how to extend BPC 10.1 NW web UI by an example, which is about a process integration with a third party process tool. In this scenario, user needs to define mapping of BPF process with external tool in an extended web UI of BPC.

What can be extended
Customer can add new pages in Administration, and can add entrance in the navigation tree view of Administration. In below two screenshots, the Workflow Definition link and view, the Process Mapping link and view are added to BPC web application.





Steps to extend

Step 1. Develop your web application. To be harmonized with BPC standard web UI, it's better to use JavaScript technology based on SAPUI5 library. There are many ways to develop such a web application but we recommend you to use Eclipse. This article is not focusing on this are, you can find plenty of blogs in SCN regarding Eclipse and SAPUI5 development. Here is the official site for SAPUI5 development tools.



Step 2. Define customized views in customerView.js file. The most import thing in your application is to define where your web page to be added and this is done in the customerView.js file as below.



In this example, two views are added to Administration>Business Process Flow, one is Workflow Definition view, the other is Process Mapping view. Here parent: "admin-bpf-desc" refers to the Business Process Flow view, which already has two child view Process Templates and Process Instances. The id: "admin-loc-wkf-def" refers to the id defined in custimze.json file which will talked about later in step 5. viewName is the view name you defined in your JavaScript file (you can find it in the first eclipse screenshot). "security-task": "P0109|P0123" refers to BPC task ID which will be checked when user accessing this view. Finally, the view need to be added to navigation object “admin-composite-container”.

Step 3. Deploy your web app as a BSP application. For details on how to deploy your web app as a BSP application, please read this article.



Step 4. Create or update customize.json file under BPC web folder. Open transaction SE80, navigate to Repository Browser, and open BSP Application bpcwebclient. Then go to bpcwebclient/Page Fragments to create or update customize.json file. Note we pre-delivered a sample file called customize_sample.json at same location. You can take it as a reference.

Step 5. Define path and links in customize.json file. How your views are loaded by BPC web application is defined in this file.



Here path refers to your BSP app web content path. viewDefination refers to the place where you define your customized views in step 2. adminLink defines links to your extended views. layoutName refers to the place under where you want to put the link, oVLayout2 is the second function group in Admin home page (2nd screenshot), which is Business Process Flow. id and linkText refer to the view defined in step2. linkTooltip defines the tooltip help of the link. viewId refers to the view ID you defined in customerView.js file and pushed to “admin-composite-contrainer”.

Step 6. Activate your BSP app and customize.json file, which is the final and easiest step:)



Summary

This web extension is supported at architecture level. your extension keeps intact and will work as before even if you upgrade your BPC support packages. It is independent on modelling technology, whether BPC Standard or BPC Embedded, same way. There is a pre-delivered BSP application BPCLocWebClient in BPC installation since SP07, which is the example I used in this article. You can take it as reference.

Notice current extension is only available for Administration pages. You cannot extend other pages for now. You are also responsible for security check and other security compliance for your web code.
2 Comments