CRM WebClient UI & Netweaver Enterprise Portal Integration

38  Download (0)

Full text


CRM WebClient UI & Netweaver

Enterprise Portal Integration



INTRODUCTION ... 4 External Integration ... 4 Architecture ... 4 Tight/Classic Integration ... 5 Architecture ... 5

Integration via OBN ... 6


External Integration ... 7

Map an existing CRM system to Enterprise Portal ... 7

Create an iView ... 12

Create a Portal Role ... 14

Map iView to the Portal Role ... 15

Create a Portal user and assign it a Portal Role ... 15

Testing ... 17

Tight or Classic Integration ... 18

Portal Highlighting ... 19

Configuring Portal and CRM ... 20

Work Protect Mode (Data Loss Popup) ... 25

Business Packages (why do you need them) ... 26

Configure CRM’s Mast Head to Appear in Portal’s iView ... 26


Assigning Portal Role to User ... 33

Testing ... 34

Clarification and Tips ... 34




During my experience in SAP, I have come across a number of incidents where customers are having issues integrating CRM (Customer Relationship Management) and EP (Netweaver Enterprise Portal). More often the reason is that EP is maintained by a different team, having different set of expertise compared to the team looking after WebClient UI & CRM. In this document I will try to cover two out of three ways to integrate them, along with some tips, interesting SAP Notes and things to consider when opening an OSS incident/message. The examples within this document are based on CRM EhP 2 with Enterprise Portal 7.20. So what are the three ways we can integrate CRM into EP:

1. External Integration 2. Tight/Classic Integration 3. Integration via OBN

External Integration

This is the easiest of all the three approaches. EP is used as an entry point to launch CRM’s WebClient UI in a separate browser window and is responsible for session tracking (login/logoff etc.). CRM’s WUI is

launched in a separate bowser window and acts as a standalone application minus the logoff button. The L-Shape is maintained and so is the masthead (Help Center, Personalize etc.). You will also be able to see the back and forward buttons and also Recent Items. Most importantly this is THE ONLY SCENARIO that

supports IC based Business Roles. If you would like the user to have access to multiple Business Roles, this is the type to use.



In contrast to CRM 5.0 where PC-UI was designed to be running in Portal, the CRM Web Client was originally designed to run standalone (without portal). In CRM standalone navigation, data loss handling, history ... already exists and in the Portal integration we reuse these features if possible and

enhanced/exchanged if required.

Tight/Classic Integration

When you want to display WebClient UI inside EP’s iView this form of integration is the answer. The L-Shape and the masthead belong to EP. You can also integrate CRM’s masthead iView to include "Help Center", "Personalization" and "System News”. In order to avoid the confusions we decided to name them with CRM as prefix. The back and forward buttons not only keep track of navigation inside the CRM but that of the Portal as well. You can only display one Business Role at a time, as it is exported in a form of an XML file which is then imported into the Portal. You can also map Portal theme to a CRM skin.


The visible logical link ID of the CRM navigation bar corresponds to a portal iView. Therefore the XML Export Tool generates the structures according to CRM navigation bar customizing.

The Object Type/Action corresponds to the portal OBN metadata Business Object/Operation. There are two different kinds of navigation when CRM is running in the Portal:

 Navigation via link in portal L-shape -> Portal tells CRM where to go to (via URL parameter crm-logical-link)

 Cross Component Navigation (inside CRM) -> CRM navigates always without portal and uses java script to tell portal what to highlight (what to highlight results from roles specific OBN meta data). The CRM roles cross component customizing corresponds to the portal roles OBN metadata. And a field in navigation bar customizing defines what to highlight for what object type/action.


Practical Examples

We will now cover the steps in the two scenarios that are supported in this document:

External Integration

In this chapter we will map a CRM system to the Portal, create an iView, create a Portal Role, create Portal users and connect the dots as we progress.

Map an existing CRM system to Enterprise Portal

1. Login to EP with a user with admin rights.

2. Click on System Administration tab and then on System Configuration 3. Double click on System Landscape (if not already there)

4. Expand Portal Content

5. Right click and select New -> System (from template)

6. Select “SAP system using dedicated application server” or “SAP system with load balancing” as per your requirement and click on Next


7. Fill out System Name and System ID and Master Language and click Next

8. Verify the information and click Finish

9. Now you should be able to see a new subfolder under System with you newly created system name. Click on the OK button to be ready to configure the system details


Name and Port information

11. Now execute transaction SCC4, on the CRM backend, double click on the correct client and note down the correct Logical System name


12. Fill out the system details based on the information obtained in steps 10 & 11 and click on Save

13. Web AS Path has to be /sap/bw/bex (ensure that this service is activated on the corresponding CRM system in transaction SICF)


14. Right click on the system that you have just created and click on Open -> System Aliases and create a system alias. This step is necessary for user mapping and click on Save

15. Click on the dropdown and select Connection Test. Select SAP Web AS Connection and ITS Connection and click on Test to verify connectivity between EP and target CRM system & its ITS


Create an iView

1. Now we have to create the link (tab) in the Portal which will be visible to the end users, and this link will be mapped to the target CRM system. To do so create a new folder in Content

Administrator -> Portal Content. Let’s call it Sandbox

2. Inside the Sandbox folder create another folder. Let’s call it CRM_Ext for now.

3. Now we will be creating an iView. To do so right click inside the CRM_Ext folder and select iView and iView Wizard will be launched


4. Click on Next. In the next screen scroll down and select SAP BSP iView and click on Next

5. Enter a meaningful name and ID for the iView. This will be name of the tab that will be displayed. For the sake of simplicity you should name it the same. Click on Next

6. BSP Definition Type should be Application. Click on Next

7. Ensure that you maintain the following:

a. Application Parameter crm-ext-integration=true (this is necessary for back & forward buttons etc)

b. Business Server Page (BSP) Application should be CRM_UI_START c. Start Page should be set to default.htm


d. System should be mapped to the one you created earlier.

8. On the next screen check “Open for editing when wizard completes” and click on Finish

9. When the iView opens for editing set URL-Based Session Tracking to No (For CRM 7.0 and above this has to be No. For CRM 2007 it has to be Yes).


2. Inside the same folder that you created the iView in, right click and select New->Role

3. Enter meaningful Role Name & ID and click on Next and then Finish

Map iView to the Portal Role

1. Once the Role is created, right click on the iView and select Add iView to Role -> Delta Link

2. Map the iView to the Role you created a few steps ago and click on Save

Create a Portal user and assign it a Portal Role

1. Now it is time to create a Portal user and assign them this particular Role. To do so click on User Administration -> Identity Management and click on Create User


2. Fill out the information in the General Information tab

3. Click on Assigned Roles tab and search for the Role that you created. Select it and click on the Add button and then click on Save



1. Logout from the Portal (if necessary as IE8 and above shares sessions) and log back in again with the new user that you have created


3. Once you click on it, CRM WebClient UI will open in a separate browser window

Tight or Classic Integration

In this chapter we will cover launchings CRM’s WebClient UI to launch within the Portal’s iView. We will use the same CRM system that we have defined in the previous section. The steps will include exporting the XML file from the CRM system, Portal Highlighting, mapping CRM skin to Portal theme and also including CRM’s Masthead. For this example we shall use standard CRM Business Role SALESPRO. Before we go ahead with the configuration it need to be clarified that in this type of integration, the BSP application CRM_UI_PORTAL and its application controller class CL_CRM_PORTAL_APPL_CONTROLLER will be used. This class contains many implementation parts that differ from the standalone code. The mentioned class and the standalone implementation use the same super class. This super class already contains important methods for synchronizing the history entries. All JavaScript functions are combined in the file


Portal Highlighting

Portal Highlighting is a feature that is only available in Portal. WebClient UI does not offer highlighting. You can define which entries are highlighted in the cross-component navigation in the portal. Highlighting will only work if Portal has 1:1 relationship with the CRM backend. Otherwise you might get an error "RFC connection between CRM and portal is not correctly configured". Most probably not the best error message. You can suppress this message (see Interesting Notes section). Highlighting means the special marking of an object to distinguish it from others, for example, color, bold border, and so on. Each Business Role has a corresponding Navigation Bar Profile that is assigned to it. So for Business Role SALESPRO the Navigation Bar Profile is SLS-PRO.

You can define highlighting in the CRM for Portal in IMG Customer Relationship Management -> UI Framework -> Technical Role Definition -> Define Navigation Bar Profile:

Select your business role under Define Profile and select one of the following folders:

 Under Define Generic OP Mapping, you can enter the logical link in the field Highlight.

 Under Override Generic OP Mapping for Component, you can define the highlighting for exceptions of single components.



highlighting of the (portal) menu entries. For this an RFC connection with a logical port is necessary and both systems have to trust each other. If anything is not configured correctly the highlighting will not work completely and an error message will occur within the CRM views. Nevertheless you can work with the CRM content. Note:

Configuring Portal and CRM

In this step we will configure CRM system in Portal and create RFC destination from CRM back to Portal. 1. Ensure that the System Alias is configured for your CRM system in EP (we have already done this in

the previous chapter). In EP click on System Administration -> System Configuration -> System Landscape -> Portal Content -> System. Double Click on the CRM system. From the Display dropdown select System Alias


2. Now we are going to create a connection from CRM backend to the Portal. Execute transaction SM59 on CRM backend.

3. Expand HTTP connections to External Servers 4. Click on New

5. Enter the following settings under Technical Settings tab

a. RFC Destination = CRM_EP_DEST (this has to be entered exactly like that) b. Description 1 = enter a meaningful description

c. Target Host = Fully qualified host name of your Portal d. Service No.= port number of your Portal


e. Path Prefix = /irj/servlet/prt/soap/OBNWebService?style=doc_lit (this has to be entered exactly like that)

6. Enter the following settings under Logon & Security tab a. Deactivate Basic Authentication


c. SSL would depend on your landscape

7. Save your settings

8. Now we have to create a logical port for OBN for highlighting. Execute transaction LPCONFIG (Maintain Logical Ports). You may get a popup stating that the transaction may be obsolete. Please disregard it and continue

9. Enter the following settings and click on the create/new button a. Proxy Class = CO_WDR_OBNWEB_SERVICE


d. Under General Settings -> click on the Calls Parameters tab HTTP Destination = CRM_EP_DEST

e. Click on the Operations tab

f. There should be 7 entries. Maintain the following SOAP Actions for them (Consult Note 1224422). Ensure that you enter the SOAP Actions including the “”


SOAP Action



Work Protect Mode (Data Loss Popup)

As you may already know WebClient UI has a data loss popup. Similarly Portal has its own data loss popup. In order to avoid conflict or multiple data loss popups, Work Protect Mode has to be set in the Portal.

1. Logon to Portal

2. Click on System Administration -> System Configuration -> Service Configuration

3. Expand Applications -> -> Services 4. Double click on epcfloader.

5. Enter the following settings

a. workprotect.mode.default = 3 b. workprotect.mode.personalize = on c. workprotect.window.features = empty


d. Click on Save

Business Packages (why do you need them)

Portal has its own masthead. You may have a requirement to display links from CRM’s masthead, for example Help Center, System News etc. and CRM’s Central Search. To do so you would need to install the following packages in your Portal:





To get the CRM Business Package for portal integration, please go to Expand Support Packages and Patches -> click on Search for Support Packages and Patches. In Search term filed enter 'BP CRM Foundation' (without quotes) and trigger the search. And then in Search Term filed enter 'BP CRM APPLICATION' (without quotes) and trigger the search. Installation of Business Packages are beyond the scope of this document and you should contact your Portal experts for assistance.

Configure CRM’s Mast Head to Appear in Portal’s iView

Once the Business Packages are installed you can perform the following steps to display CRM’s Mast Head. In addition to standard portal functions (Log Off, Personalize, and Help) the CRM Masthead iView contains links that lead to the following CRM functions (to avoid the confusions SAP has decided to name them with CRM as prefix:

 CRM Personalization

 CRM Help Center

 CRM System News

You can either hide or display these links

1. Select Content Administration -> Portal Content

2. Expand Portal Content -> Content Provided by SAP -> specialist -> CRM Foundation -> CRM Masthead

3. Choose the following links and select Yes if you want to display them a. Show Link in Masthead: CRM Help Center

b. Show Link in Masthead: CRM Personalize c. Show Link in Masthead: CRM System News


5. Here you can define properties like CRM System Alias, Enable KM Search in CRM Central Search, Use Dropdown Boxes or Dynamic Behavior, Use Generic Error Messages, Width etc

Mapping CRM Skin to Portal Theme

CRM WebClient UI’s look and feel compared to the Portal is quite different. However a mapping table CRMC_THEME_TO_SKIN between CRM skin and Portal theme is pre-delivered and can be changed.

1. Execute transaction SPRO on the CRM backend

2. SAP Reference IMG -> Customer Relationship Management -> UI Framework -> Portal Integration -> Map Portal Theme to CRM Skin

This is only evaluated if in Personalization checkbox "Follow Portal Theme" is checked – a new field in Personalization view. The portal theme name is retrieved from URL parameter crm-portal-theme and in


extract the required data and writes it to the XML. The user can decide whether the generated work

centers are displayed in the detailed navigation, in the second or first level of the top-level navigation bar in the Portal. Note: It has no multi-language support - only one language can be exported from CRM and imported to Portal.

1. In Portal click on Content Administration -> Portal Content


3. Give it a meaningful name & ID (for our example we will name it Sandbox)

4. Select Sandbox (or the folder that you have just created and right click -> New -> Folder (to create a new sub-folder)


6. The PCD path for this newly created folder is the one that we will use when we generate the XML file in CRM (pcd:portal_content/Sandbox/CRM_Roles)

Exporting Business Role from CRM

Now we are ready to generate an XML file based upon the Business Role of our choice from CRM. 1. Login to CRM backend

2. Execute transaction SPRO -> SAP Reference IMG -> Customer Relationship Management -> UI Framework -> Portal Integration -> Upload Business Role


d. Main Folder Name = CRM_Roles (or the one you created in Portal)

e. CRM System in Portal = The CRM system that you configured in Portal in step Configuring Portal and CRM


g. Path = where you want to export the generated XML file


3. Double click on Import

4. Click on the browse Button to browse to the path where you have saved the generated XML file


Use the Existing Role Portal Role

You can use the existing Role that was uploaded with the iView instead of creating a new one.

Assigning Portal Role to User

For our testing purposes we will assign the newly created role to the user.

1. Click on User Administration -> Identity Management and search for user testuser


3. Click on Assigned Roles tab and search for the Role *SALESPRO*. You will find a Role by the description CRM

4. Click on Add and then Save


Logout of Portal and log back in again with testuser. You can now see a new tab called CRM. By clicking on it you will be able to launch CRM’s WebClient UI in Portal’s iView


would like to narrow down as to who the culprit is (CRM or Portal), you can do a test modification. The place would be BSP CRM_UI_START/crmuifServer.js. Comment every call of delSsO2Cookie. This way you can at least prove whether it is the CRM that is deleting the cookie.

 The login to the portal puts the authentication cookie MYSAPSSO2 into the browser cache. This cookie is valid for a certain domain. The cookie is attached to each and every request from the browser to any target in the validity domain. Now it depends a bit on your browser version and on how you open the new window.

 If you just use File -> New Window, then the cookie is shared with the new window.

 If you start new IE session by Start -> Programs -> Internet Explorer, then it is a completely separate session. The cookie is not shared.

 If you have IE8 then you can use File -> New Session, which is similar to the second list item.

Now if the cookie is shared, then the browser will attach it to the CRM request. The CRM server detects the cookie and sees that it was originally issued by the portal system. As the CRM system does not trust the portal system it does not allow the cookie for authentication and the login page is displayed. So either you should set up a trust relationship or use separate sessions.

 If you would like to display Ajax Framework Page, your WEBCUIF release should be atleast 701 and above and Enterprise Portal 7.30 or higher.

 Recent Items that are displayed in WebClient UI and CRM’s favorites are not supported in


654982 URL requirements due to Internet standards

550742 FAQ: General questions about Single Sign-On

1045035 Cookie MYSAPSSO2 is deleted

1365586 Simplify Portal Detection

1436653 Broken link "1x1.gif" in external CRM integration in portal

1114564 Closing ICWC from portal does not delete sessions from sm04

1318994 Hanging session when IC webclient is closed from the

1230346 ITS sessions hang if IC WebClient runs within Portal

1096353 Locks remain in CRM

1029194 Portal - Integrated ITS - Session Management

1027676 Problems using SAP Web dispatcher and Apache proxy

604599 BSP: Session is not terminated by the Portal

1147394 Error message "Session timeout" when using Portals

1427190 ABAP sessions are displaced for applications in the portal

1175127 Missing breadcrumbs in external CRM integration in portal

1478094 CRM IC: Framework, Portal integration, kill worker session

1536436 New CRM portal window with error about session mismatch

755947 Session Release Agent - Guest Access (logoff brings to logon)

1175127 Missing breadcrumbs in external CRM integration in portal

947376 Troubleshooting JCo and AdaptiveRFC in Web Dynpro for JAVA

1486002 Generate session url data for use in thtmlbCSessionURL (requested session does not match

the current session)

1643446 Nonsecure Content Warning For Theme Resources When Calling the Portal Via a Load

Balancer / Reverse Proxy

1803630 BSP Portal Session Termination doesn't work correctly

1772736 Getting Netweaver Login screen when users trying to logoff

1898854 Error: RFC connection between CRM and portal is not correctly configured

1911070 Logoff and Back/forward buttons missing in WebClient UI or Solution Manager

1566833 SAP CRM running in SAP NetWeaver Portal: Simple Search

1253217 Duplicate entries in breadcrumbs history

1277211 Missing update of BreadCrumb history

1130396 Portal History - Corrections

1266752 Portal History: JavaScript Error

1276652 Incorrect Behavior of Portal Back

1604669 URL parameters of history entries have wrong format


5. Always try to reproduce the issue in CRM standalone. If you can duplicate the problem, then the issue is not with Portal and you can open an OSS message under the

corresponding component

6. Ensure that both Portal and CRM are using the same protocol, reside in the same domain and are in the same Security Zone (IE)

7. Launching either Portal or WebClient UI using IP addresses instead of FQHN (fully qualified hostnames) is not supported

8. When opening a message be sure to

- advise which Portal system SAP should connect to - its target CRM system

- detailed steps to duplicate - PCD path to the iView

- provide a user that has Admin access to the Portal to check the iView configuration - a backend CRM user with authorization to check customizing & debugging

- make sure that both the Portal’s URL and the corresponding URL of CRM are accessible over SAPROUTER


© 2013 SAP AG. All rights reserved.

SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer, StreamWork, SAP HANA, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and other countries.

Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services mentioned herein as




Related subjects : Enterprise Portal