Archive

Posts Tagged ‘CRM’

SAP CRM Portal Integration

December 14th, 2010 2 comments

There are many companies utilize the SAP portal as the central access of company-wise business applications. If company launches the SAP CRM, it also needs to be integrated into the portal landscape.

SAP deliveries predefined content bundled as business packages for completing business tasks. In essence, the business packages provide out-of-the-box portal applications that can be easily modified to suit a customer’s needs. SAP provides business packages for CRM from version 5.0 to 7.0.

In general, the business packages are downloaded and installable via SAP Solution Manager. In exceptional cases, the business packages can also be downloaded from the Service Marketplace, but it require approval before download.

Another way to integrate the CRM into portal environment is to create BSP iViews directly in the portal content. This is the easiest way to integrate the CRM into portal if you just want to have a simple integration, for example, allow certain groups have the capability to search CRM opportunities.

Below are the detailed procedures:

1. Configure SSO between portal and CRM server.

Generally there are two methods to configure SSO. One is user mapping, the other is using logon ticket.

2. Create the BSP iView.

Create the BSP iView with below attributes:

BSP Definition Type Alias
BSP Alias sap/crm_logon
Name <iView Name>
Start Page default.htm
System <CRM System Alias>
Application Parameters something like: crm-object-type=BT111_OPPT&crm-object-action=B&crm-object-value=22&crm-object-keyname=OBJECT_ID

There are some other parameter patterns you can use to view other CRM objects:

http://<serverhost>:<port>/sap/crm_logon/default.htm?crm-object-type=BT126_APPT&crm-object-action=B&crm-object-value=<guid>

http://<serverhost>:<port>/sap/crm_logon/default.htm?crm-object-type=BP_ACCOUNT&crm-object-action=B&crm-object-keyname=PARTNER&crm-object-value=<partner_id>

http://<serverhost>:<port>/sap/crm_logon/default.htm?crm-object-type=BP_CONTACT&crm-object-action=B&crm-object-keyname=CONP_NUMBER&crm-object-value=<contact_id>

Other object types can be found in CRM view BSPDLCV_OBJ_TYPE.

3. Create portal pages, role and assign role to users or groups.

Below screenshot shows the result of CRM and portal integration.

portal crm integration

SAP CRM – Service Order to Invoice

April 28th, 2010 No comments

SAP CRM service functionality enables you to manage your service cycles, starting with managing service contracts and warranties, through service requests to service orders, complaints, returns and service confirmations. This post describes a typical service process in SAP CRM from receiving customer incoming call to billing the customer for the service performed.

1. Service Interaction Center

The service agent receives the customer call. The customer can automatically identified using the phone number. The service agent can also use search function to identify customers in the system. Then agent chooses the corresponding insalled base component according to the conversation. After completing the account identification, all the following business transactions are based on theses selected information.

If agent decides a service technician must check the issue on-site, he creates a service order.

image

Read more…

CRM_ORDER_MAINTAIN

April 9th, 2010 No comments

Application Area – CRM,Solution Manager

Description

Function module CRM_ORDER_MAINTAIN is one of the most important function modules in SAP CRM and SAP Solution Manager business transactions processing. Other useful function modules are CRM_ORDER_READ and CRM_ORDER_SAVE.

The function module will call some underlying function modules to save the changes to database. The most important task of calling this function module is to maintain the input fields internal table. You can maintain every information belongs to the business transaction.

The input field structure contains several components. Field ref_guid represents the GUID of the changed structure. Ref_kind has several possible values. A for Administration Header, B for Administration Item, C for Header Extension, D for Item Extension. You also need to populate FIELD_NAMES internal tables to decide which fields in the destination structure needs to be changed.

Read more…

Price Analysis in CRM

December 16th, 2009 No comments

Question: When I look at conditions on the line item, press ‘Access’ button, I get the message ‘No price determination analysis available’. How can I analysis price determination in CRM?

Answer: Go to SU01. Enter your user id. Click parameter tab, add parameter ‘PRC_TRACE’ and value ‘X’. This will solve your problem.

SAP CRM Web Channel BADI

November 15th, 2009 No comments

Here I listed some useful BADIs for CRM web channel development, especially for b2b applications. All the function modules for web channel one order functionality is located in function group CRM_ISALES_ORDER(CRM Internet Sales Basket & Order).

This function group contains all the function modules for crm basket. It contains all the basket/order related data at runtime in the memory. Each time, user choose update or simulate button at frontend. The order will be save to the backend and rebuild it in the java side.

CRM_ISA_BASKET_HEAD       BADI for Customer-Specific Enhancement of Basket Headers

CRM_ISA_BASKET_ITEMS      BADI for Customer-Specific Enhancement of Basket Items

CRM_ISA_BASKET_TEXT        Text Maintenance in ISA

CRM_ISA_GEN_DOC_SEL       ISA: Generic Document Search

CRM_ISA_STAT_DETAIL        Filling the Extension Tables of _BASKET_STATUS_ENH

Function group CRM_ISALES_SHOP(WebAPI Internet Sales: Shop).This function group is used for shop processing. Function module ‘CRM_ISA_SHOP_DATA_GET’ is for reading the detail shop data. But there is no BADI for reading extension data of the shop. You must copy this function module out and add your custom extension in it.

Other BADIs which are also important in CRM.

CRM_SHIPPING_BADI              BAdI to Process SHIPPING

CRM_DATAEXCHG_BADI        CRM_DATAEXCH_AFTER_BAPI_FILL

SAP CRM – EEW(Easy Enhancement Workbench)

October 29th, 2009 No comments

The Easy Enhancement Workbench is a development tool with which SAP applications (called Business Objects in the following document) can be extended in a simple manner. Customer enhancements to a Business Object are defined via wizards. The Workbench then does all development work for the user: database tables, screens and application logic are created automatically. Finally the customer enhancement is included in the SAP standard. This post will show you how to enhance SAP business transaction step by step.

Step 1.Create a new project.

Go to transaction code EEWB and choose ‘Create Project’. Enter project name and package name.

eewb_1

Step 2.Assign the transport to the project.

So that the extension objects generated by the Easy Enhancement Workbench can be used in the productive system, the Easy Enhancement Workbench is connected to the Change and Transport System. To include the objects in requests, transport requests must be assigned to the transportable projects of the Easy Enhancement Workbench.

Step 3.Create A new Extension

eewb_2

Step 4. Follow the extension wizard to add new fields

In the wizard, you can choose which business transaction categories do you want to enhance. Then you can define new added fields with data type and length. Once you finish the definition of extension,  the EEWB will automatic generate everything for you.

Read more…

SAP CRM – Event Handler

October 28th, 2009 1 comment

The event handler is a standard tool in the processing of a business transaction, for communication between the different objects that influence each other. It is used to call function modules, named callbacks that are accessed when triggering an event at a certain time.Lots of SAP standard functionalities are implemented using SAP CRM event handler.

Use transaction code: CRMV_EVENT to view or create event handler.

For example, if there is a requirement that the program needs to populate a zfield in structure orderadm_i after calculating the price using IPC.

Step 1. We can define an event as showed in below image.

event_handler

Object: PRIDOC,Event: AFTET_CHANGE means if the pricing document has been changed, the callback function module will be called automatically.

The callback function module needs to be added in table CRMC_FUNC_ASSIGN. There is no maintenance view for this table, but you can directly add a new entry in SE16.

Step 2. Define the call back function module.

The function module interface is fixed and slight different according to the call back setting in event handler definition. You can copy the interface of standard function module which has the same technical setting.

Step 3. Test your custom event handler

Set a session break point in your event handler function. When changing the order product, quantity, If the price document changed, the function module should be called accordingly.

Read more…

SAP CRM Pricing Enhancement Overview

September 23rd, 2009 2 comments

crm_pricing

SAP CRM Tables

September 16th, 2009 No comments

In SAP CRM development, we do not need to direct access the database table, but for the performance purpose, we need to get data directly from the underlying database table. Below is the list of some important tables in SAP CRM.

CRM Tables

COMM_PRODUCT Products
COMM_HIERARCHY Category Hierarchy
COMM_CATEGORY Category
COMM_CFGMAT Basic Data for Materials
CRMD_ORDERADM_H Business Transaction Header
CRMD_ORDERADM_I Business Transaction Item
CRMD_OPPORT_H Opportunity
CRMD_ACTIVITY_H Activity
CRMD_LINK Link table for Transaction and other data
CRMD_PARTNER Business Partner data

CRMCxxxx = Customising Data
CRMTxxxx = Customising Data
CRMDxxxx = Transaction Data
CRMMxxxx = Master Data

There are some views defined for easily access the transaction data.

CRM Views

BBP_PDVIEW_ACC BBP_PDVIEW_ACC
BBP_PDVIEW_AHI Actual Value- Relevant Header and Item Data
BBP_PDVIEW_BIH Header Information for Backend Items
BBP_PDVIEW_BUP Partner Data Set
BBP_PDVIEW_IAP Item Data: General Purchasing and Purchasing Set
BBP_PDVIEW_LIM Limit Dataset
BBP_PDVIEW_LIST Actual Value- Relevant Header and Item Data
BBP_PDVIEW_LISTV Actual-Value-Relevant Header and Item Data (Versions)
BBP_PDVIEW_ORG OrgData Set

Get R/3 RFC Destination in CRM

September 16th, 2009 No comments

We need to define the backend system of CRM like R/3 as a site in administration console. Tcode SMOEAC is used for this purpose. All the sites can be retrieved in view SITESELECT.

site

This image show properties of a site defined in the CRM system. In same case, we need to get the rfc destinaiton of backend system in CRM. There are lots of requirement need RFC destination infomation. Below code can be used as a template to get the backend RFC destination.

Read more…