Additional Blogs by Members
cancel
Showing results for 
Search instead for 
Did you mean: 
gregorw
Active Contributor
0 Kudos

This guide describes how to create an Object Link from SAP CRM People Centric UI to SAP R/3. The result will be a link from the Product-ID to R/3 Transaction MM03.

Prerequisites

  • SAP Enterprise Portal 6 SP 7
  • Business Package for CRM
  • Business Package for R/3
  • SAP CRM Server 4.0 BBPCRM SP 7
  • SAP R/3 4.6C
  • ITS for the SAP R/3 System
  • Single Sign On with SAP Logon Tickets

Install WP-PI 6.0 in R/3

  • If not already installed you have to install the Workplace Plugin 6.0 in your R/3 system. SAP Note No. 655941 describes you how to do that.
  • After the Plugin installation you must import the Drag&Relate Meta Data as described in SAP Note No. 335373.
  • Now you have to set the Profile Parameter “wp/pi/enable_drag_and_relate” to Value 1 to enable the Drag&Relate link generation. Detailed information can be found in Note No. 212773. To activate this setting, a restart of the SAP R/3 Server is required.
  • Maintain Table TWPURLSVR and add the ITS Server information to your logic system.
  • To check your settings start now Transaction SPO0. If only “Support Flag not Set” is red, then your settings are correct.
  • A complete Customizing Check is described in the Documentation.

Create Link from Material to R/3 Transaction MM03

Test Metadata for Object Type in R/3

We want to link the Product ID from CRM to R/3. Product ID is named Material in R/3. With this string we are able to find the correct Object Type.

  • Start Transaction SPO0
  • Use the F4 Help for “Object Type”
  • Search for “Material”
  • Select the Line with Object Type “BUS1001”
  • Click on the eyeglasses to view the details
  • Click on the Tab “Services” and search for Transaction MM03
  • Test the Transaction call
  • Enter a valid Material Number and press enter.
  • Transaction MM03 should be started and details of this material should be displayed

Create SAP CRM R/3 Transaction iView

In the Portal we have to create an iView from the special Type “SAP CRM R/3 Transaction iView”

  • Open the Portal Content Administrator
  • Open the folder where you want to create your iView
  • Right click -> New -> iView
  • Choose “SAP CRM R/3 Transaction iView”, click “Next”
  • Enter iView Name and ID e. g. “MM03”, click “Next”
  • Choose “SAP GUI for HTML”, click “Next”
  • Choose your SAP R/3 System alias out of the System dropdown list, enter the Transaction Code “MM03”, click “Next”
  • Check “Open for editing whenwizard completes”, click “Finish”
  • Open the Property Category “Content – Transaction”
  • Choose yes at “Start Transaction Using SPO1”, click “Save”
  • Open the Property Category “Apperance - Size”
  • Choose “FULL_PAGE” from the  “Height Type” dropdown list, click “Save”

Create Page in the Portal

The iView we’ve just created had to be added to a new Page which can be defined as a Target in the CRM System.

  • Open the folder where you want to create your Page
  • Right click -> New -> Page
  • Choose the “Default Page Template”, click “Next
  • Enter Page Name and ID e. g. “MM03”, click “Next”
  • Choose “1 Column (Full Width)”, click “Add”, click “Next”
  • Click Finish
  • Choose “Open the object for editing”, click “OK”
  • Now right click on the iView we’ve created before and choose Add link to Page -> Delta Link, click “Save”
  • Test the Page by clicking “Preview”

Add Page to Role

Pages can only be accessed from the CRM when they are part of a Role. So as the last step in the Portal we had to add the Page we’ve just created to a Role.

  • Open Migrated Content -> EP 5.0 -> Roles -> Sales Representative
  • Choose Products
  • Now right click on the Page we’ve created before and choose Add Page to Role -> Delta Link
  • To create the link for the portal we now have to Note the ID of the Role e. g. “pcd:portal_content/com.sap.portal.migrated/ep_5.0/roles/com.sap.pct.crm.SalesRepresentativeFPS” and the path to the Page e. g. “Products/MM03” this information is used later in the CRM Object Link setup. The string “pcd:” must be removed from the ID.

Setup Object Link in CRM

Check which role is attached to the user in CRM

In our system we use the User “CURTIS”. This is the demonstration User from the SAP CRM Best Practice. Open Transaction SU01, enter the Username and open for viewing. Open the Tab Roles and note the Role. In our system it is ZSAP_PCC_SALES_REP.

  • Open Transaction CRMC_BLUEPRINT_C
  • Go to IMG -> Navigation (URL Generation) -> Method for Object Type (Navigation)
  • Click on “New Entry”, enter “MATERIALR3” in Object Type and Method “DEFAULT”. Save the entry
  • Again in CRMC_BLUEPRINT_C go to IMG -> Navigation (URL Generation) -> Assign Object Method to Role
  • Click on “New Entry” enter this information’s
RoleZSAP_PCC_SALES_REP
Object TypeMATERIALR3
MethodDEFAULT
Priority26
Implementation TypeR/3 Transaction (Included in Navigation Bar)
Application-
View-
ID Page/ServiceROLES://portal_content/com.sap.portal.migrated/
ep_5.0/roles/com.sap.pct.crm.SalesRepresentativeFPS/
Products/MM03
  • Save this settings

Configure Application to provide linkage

  • Start Transaction CRMC_PCUITOOLS
  • Go to Analysis Tools -> Determine the correct model access class
  • Enter Application “CRMM_PRD_SALES”. If you had maintained your own view provide also this information. Finally click execute. A Browser will open and you had to provide your logon information.
  • Note the Field Group “PRD_OICF_COM_SALES” below the list view.
  • Open Transaction CRMC_BLUEPRINT_C
  • Go to IMG -> Application Element -> Field Group -> Field Group Structure
  • Enter the Field Group “PRD_OICF_COM_SALES” and press Enter
  • Click on edit
  • If you don’t see any content click on Import S Table entries (Strg+F12)
  • Double click on the first Entry. This should be the Field with the Name “PRODUCT_ID”. Here we can now define the Object Link
URL TypePortal Link
Fld Name Contains BOR TypeUnchecked
Object TypeMATERIALR3
MethodDEFAULT
Field Name -> Obj.TypeOBJECT_KEY
Field -> Object IDPRODUCT_ID
Unlock ObjectNo Data Loss Popup
  • Save this settings

Generate Layout

  • Open Transaction CRMC_BLUEPRINT_C
  • Go to IMG -> Application Element -> Field Group -> Layout Generation
  • Enter the Field Group “PRD_OICF_COM_SALES”
  • Uncheck: “Only Check Field Groups”
  • Execute

Test the function

  • Log on to the Portal with the User “curtis”.
  • Navigate to Products -> Products
  • Search for a Product
  • Click on the Product ID
  • A new window open and transaction MM03 is started

Create own function module to fix problem with leading zeros

In our system we have the problem, that we use also numeric Material Numbers. In CRM the Product ID’s are 40 Characters long. For numeric ID’s the CRM System adds “0” in front of the number till the ID is 40 Characters long. The problem is that this ID’s are not correctly transferred to R/3 because here the Material No. is defined as 18 Characters. The solution is to Create a own function module which calls MM03.

The original Function which is called when MM03 is accessed is  WP_DR_FUNCTION_MM03_46C in the Function group MG_DR_46C

  • Start Transaction SE80
  • Choose Function Group from dropdown menu
  • Create Function Group “Z_MG_DR_46C”
  • Enter Short text “Drag&Relate Material Master Data”, click “Save”
  • Choose a Development class, click “Save”
  • Now open Function group MG_DR_46C to copy the Function module WP_DR_FUNCTION_MM03_46C to Z_WP_DR_FUNCTION_MM03_46C in the Function Group Z_MG_DR_46C
  • Change the Function moulde:
   
  FUNCTION z_wp_dr_function_mm03_46c.
  *"----------------------------------------------------------------------
  *"*"Lokale Schnittstelle:
  *"       IMPORTING
  *"             VALUE(OBJTYPE) LIKE  SWOTOBJID-OBJTYPE
  *"             VALUE(OBJKEY) LIKE  SWOTOBJID-OBJKEY
  *"----------------------------------------------------------------------
  *
  * Has the objkey leading zeros?
  *
    IF objkey CS '0000000000000000000000'.
  *   Delete leading zeros
      SHIFT objkey LEFT DELETING LEADING '0'.
    ENDIF.
   
  *--> set paramater ID for material
    SET PARAMETER ID 'MAT' FIELD objkey.
   
  *--> call transaction MM03
    CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.
   
  ENDFUNCTION.
   
  • Save the Function module and activate it
  • Test the Function module with Object Type BUS1001 and an Object Key with leading zeros. You can copy and paste this information from the URL which is called by the Object Link

Change Function module to be called when starting Transaction MM03 via Drag&Relate

  • Start Transaction SPO0
  • Enter Object Type “BUS1001”, click “Edit”
  • Open the “Services” Tab
  • Open Field assignment for Transaction “MM03”
  • Change to edit mode
  • Enter function module “Z_WP_DR_FUNCTION_MM03_46C”
  • Save and Activate
4 Comments