Demystifying BDOCs, CRM Tables and BADIs

Hi All,

Hope this document helps for those who are frequently using Google search for finding the most commonly used BDOCs, Database Tables and BADIs in SAP CRM. This document is kind of demystifying the SAP CRM Technical especially CRM Middleware and Master Data for Data loading operations.

Commonly used BDOC Types

Customer and Prospect

CAPGEN_OBJECT_WRITE

2. Contact Person

CONGEN_OBJECT_WRITE

3. Sales Order

SALESDOCGEN_OBJECT_WRITE

4. Material

PRDCT_OBJECT

5. Opportunity

OPPORTUNITY_WRITE

6. Activity

ACTIVITY_WRITE

7. Campaign

CAMPAIGN_WRITE

8. Promotion

PROMOTION_WRITE

9. Service Notification

NOTIFN_WRITE

10. Employee

EMPLOYEE_WRITE

11. Condition Objects

DNL_COND_*

12. Customizing Objects

DNL_CUST_*

Note: (*) Indicates the Condition Object or Customizing Object Name. Ex: DNL_COND_ALL ( To download all the Condition Object / it can be specific to table(or a group of tables) like DNL_COND_PROD. Similarly for Customizing Data.

Master Data Tables

Table Name

Description

Business Partner

BUT000

BP: General data

Contains Business Partner Number, Partner Category, Partner Type, First Name, Last Name etc.

(This is a Z table used in a leading ISU SAP-CRM implementation. You can give the table SAP0090 – this is a standard table. – in general all condition tables have the naming convention CNCC*)

CRMD_ORDERADM_H

Contains the Header Information for a Business Transaction.

Note:

1. It doesn’t store the Business Partner

responsible for the transaction. To

get the Partner No, link it with

CRM_ORDER_INDEX.

2. This table can be used for search

based on the Object Id(Business

Transaction No).

CRMD_CUSTOMER_H

Additional Site Details at the Header Level of a Business Transaction

CRMC_PROC_TYPE

Master table Business Transaction Type

CRMC_PARTNER_FCT

Definition of Partner Functions

SCPRIOT

Priorities for Activities with priority text.

Note:

Pass the langu key with the

language in which you want the

text.

CRMC_PROC_TYPE_T

Text for a transaction type

CRMC_ACT_OBJ_T

Objective Number and Text for Activities

TJ30T

All the status code and text

CRMC_PR_ASSIGN

Transaction Type and its Transaction Type Object.

IBIB

Installed Base/Ibase

IBIN

Installed Base Components

Transaction Data Tables

Table Name

Description

CRMD_LINK

Transaction GUID set for all the Business Transactions

CRMD_ORDER_INDEX

Contains Header as well as Item details for a Business Transaction.

Note:

1.It doesn’t store the Business

Transaction No (Object ID).

To get the Business Transaction No

link the table with

CRMD_ORDERADM_H

2. This table can be used for search

based on the Partner No

CRMD_ORDERADM_I

Stores the Item information for a Business Transaction. The scenarios where we have a Contract Header and within contract we have Line Items for the contract, this table can be useful.

E.g. Service Contracts

CRMD_CUSTOMER_I

Additional Site Details at the Item Level of a Service Contract

SCAPPTSEG

Table for individual Appointment Types for a transaction.

CRM_JEST

Individual Object Status for any business transaction.

CRM_JCDS

Current Status for a business transaction along with set date, set time and status code.

Table Enhancements

Following tables were enhanced as per the project requirement in a leading ISU-SAP CRM implementation. Easy Enhancement workbench can be used for enhancing most of the transactions in CRM.

Table Name

Description

BUT000

Fields such as Registration No, SIC Code, Cost to Serve etc. that appear in the additional details tab in BP transaction

CRMM_BUAG_H

Fields such as Acc in Legacy, Invoice Output, Clearing Category, Bill Form, Lock Process Type etc. that appear in the Business Agreement tab in BP transaction

CRMD_CUSTOMER_H

This table is used as an extension of the service contract header i.e. if there is a requirement to add new fields to CRMD_ORDERADM_H then; this table has to be used to add the fields.

CRMD_CUSTOMER_I

This table is used as an extension of the service contract header i.e. if there is a requirement to add new fields to CRMD_ORDERADM_I then; this table has to be used to add the fields. For e.g. fields required for additional site details tab at item level of Service Contract are added to this table.