+ All Categories
Home > Technology > CRM Fundamentals- II

CRM Fundamentals- II

Date post: 08-Apr-2017
Category:
Upload: srini-vasan
View: 266 times
Download: 18 times
Share this document with a friend
472
THE BEST-RUN BUSINESSES RUN SAP © SAP AG 2008 TCRM20 CRM – Fundamentals II Part 1/2 SAP CRM 6.0 Version 81 Material number: 50090471
Transcript
Page 1: CRM Fundamentals- II

SAP AG 2008

TCRM20 CRM – Fundamentals II, Part 1/2FS310 Inkasso/Exkasso

THE BEST-RUN BUSINESSES RUN SAP

© SAP AG 2008

TCRM20CRM – Fundamentals IIPart 1/2

SAP CRM 6.0 Version 81

Material number: 50090471

Page 2: CRM Fundamentals- II
Page 3: CRM Fundamentals- II

SAP AG 2008

Copyright 2008 SAP AG. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice.

Copyright

The software products provided by SAP and its subsidiaries may contain software components from other software manufacturers.

Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of the Microsoft Corporation.

IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, and Informix are trademarks of IBM Corporation in the USA and/or other countries.

Oracle is a registered trademark of Oracle Corporation.

UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.

Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc.

HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology.

Java is a registered trademark of Sun Microsystems, Inc.

JavaScript is a registered trademark of Sun Microsystems, Inc. and is used under the license of technology developed and implemented by Netscape Communications.

MaxDB is a trademark of MySQL AB, Sweden.

Page 4: CRM Fundamentals- II

SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver and the other SAP products, services and logos that are contained in this text are trademarks or registered trademarks of SAP AG in Germany and other countries worldwide. All other product and service names mentioned are the trademarks of their respective owners. Names mentioned in this text are done so without prejudice and are for information purposes only. Products may differ from country to country.

The information contained in this publication is the property of SAP. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG.

This publication is a preliminary version and it is not subject to your license agreement or any other agreement with SAP. This publication only contains intended strategies, developments and functions of the SAP® product. This course does not commit SAP to any particular course of business, product strategy and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice.

SAP assumes no responsibility for errors or omissions in this publication. Furthermore, SAP does not accept liability for the accuracy or completeness of the information, texts, graphics, links or other items contained within this publication. This publication is provided without a warranty of any kind, either express or implied. This includes (but is not limited to) the warranties of marketability, suitability for a particular purposes and non-infringement.

SAP shall have no liability for damages of any kind. This includes any direct, special, indirect, or consequential damages that may result from the use of these materials. These limitations shall not apply in cases of intent or gross negligence.

The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in these materials. SAP does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages.

Page 5: CRM Fundamentals- II

SAP AG 2008

Course Prerequisites

Essential

Basic business knowledge of CRM processes and CRM concepts

TCRM10 – CRM Fundamentals I

Recommended

Knowledge of SAP Sales and Distribution business processes (e.g. SCM600 or certification in SCM Order Fulfillment)

Page 6: CRM Fundamentals- II

SAP AG 2008

Target Group

??

Target Group

Solution Consultants responsible for implementing Customer Relationship Management with SAP CRM

Duration

5 Days

Page 7: CRM Fundamentals- II

© SAP AG TCRM20 1-1

SAP AG 2008

Course goals

Course content

Contents:

Course Overview

Page 8: CRM Fundamentals- II

© SAP AG TCRM20 1-2

SAP AG 2008

At the conclusion of this course, you will be able to:

use the basic knowledge a CRM Solution Consultant requires for all consultant profiles

Course Goals

Page 9: CRM Fundamentals- II

© SAP AG TCRM20 1-3

SAP AG 2008

Section CRM Base CustomizingSection CRM MiddlewareSection CRM WebClient User InterfaceSection Case Study

Course Content: TCRM20 – CRM Fundamentals II

Part 1

Part 2

This SAP Consultant Education course contains several sections: CRM Base Customizing

CRM Middleware

CRM WebClient UI

Case Study

Page 10: CRM Fundamentals- II

© SAP AG TCRM20 1-4

Page 11: CRM Fundamentals- II

© SAP AG TCRM20 2-1

SAP AG 2008

Section: CRM Base Customizing

CRM Base CustomizingCRM Base Customizing

Page 12: CRM Fundamentals- II

© SAP AG TCRM20 2-2

SAP AG 2008

CRM Base Customizing – Section Outline

Units:

1. Transaction Processing

2. Activity Management

3. Partner Processing

4. Actions

5. Pricing Fundamentals

6. CRM Billing

Page 13: CRM Fundamentals- II

© SAP AG TCRM20 3-1

SAP AG 2008

Transaction Processing: Overview Diagram

9. Pricing Fundamentals

10. CRM Billing

11. CRM Middleware

12. CRM WebClient UI

Appendix

Unit1. SAP CRM 2007 – Overview

2. Account Management

3. Organizational Management

4. Product Master

5. Transaction Processing

6. Activity Management

7. Partner Processing

8. Actions

Page 14: CRM Fundamentals- II

© SAP AG TCRM20 3-2

SAP AG 2008

Transaction Processing

Structure of transactions

Transaction types

Item categories and item category determination

Basic functions in business transactions

Page 15: CRM Fundamentals- II

© SAP AG TCRM20 3-3

SAP AG 2008

Transaction Processing: Unit Objectives

At the end of this unit, you will be able to:

Give examples of the different CRM business transactions

Describe the structure of business transactions

Explain and create transaction types and item categories

Configure the basic functions of business transactions

Page 16: CRM Fundamentals- II

© SAP AG TCRM20 3-4

SAP AG 2008

Transactions are a flexible means to control and manage processes according to your company's requirements.You need to be familiar with the various functions and control mechanisms of transactions.

Transaction Processing: Business Scenario

Page 17: CRM Fundamentals- II

© SAP AG TCRM20 3-5

SAP AG 2008

Business Processes in SAP CRM

Opportunity

OrderContract

QuotationActivity

Lead

ServiceRequest

Complaint

Business transactions in SAP CRM are used to describe business processes and transactions.

A business transaction provides business structures and functions that can be used in the various processes of a company, for example, in sales, marketing or service.

The same interface and processing concepts are used for all business transactions. The various components of business transactions can be used repeatedly.

You can enter items from different business contexts in one transaction. For example, you can enter product sales, complaint items and returns items in one transaction.

Page 18: CRM Fundamentals- II

© SAP AG TCRM20 3-6

SAP AG 2008

General Structure of Transactions

Material 1 Quantity

Business Partners

Item-specific data, such asPricing relevanceATP relevanceConfirmation relevanceResource planning relevanceBilling relevance...

General data, such asDescriptionPrioritySales cyclePurchase order numberPricing procedureStatusSubject...

Business Transaction

Material 2 Quantity

Service 1 Quantity

A business transaction represents a business interaction with a business partner.

The structure of a business transaction depends on the leading business transaction category (for example, contact, opportunity, sales, service). Examples:

Tasks have only a header level.

Leads, opportunities and service transactions have a header and item level.

Sales transactions have an additional schedule line level (delivery quantities and delivery dates, possibly after an ATP check).

Page 19: CRM Fundamentals- II

© SAP AG TCRM20 3-7

SAP AG 2008

Different settings according to business transaction category

Additional business transaction categoriesDependent on leading business transaction category

Business transaction attributes and characteristics:Leading business transaction categoryControl attributes

Business Transaction Customizing: Header

Define transaction types

Assign business transaction categories

Customizing at header level

Assign blocking reasons

Allowed channels for transaction typesConsidering the business partner status

Restricting the usage of the transaction type

A business transaction can be assigned to one or more business transaction categories, depending on what the leading business transaction category is. Assigned business transaction categories allow detailed control of the transaction.

Only specific combinations of business transaction categories are possible.

Examples:

The transaction category SRVO (service transaction) has the leading business transaction category service transaction and the three assigned business transaction categories contact, sales and service transaction.

The transaction category LEAD (lead) has the leading business transaction category lead and one assigned business transaction category lead.

The transaction category TA (telesales) has the leading business transaction category sales and two assigned business transaction categories contact and sales.

Assign blocking reasons: You can use blocking reasons to block a business partner against the entry of certain business transactions. When the block applies to the transaction category, you cannot enter any business transactions for the blocked business partner.

Permitted channels for transaction types: Once you have assigned transaction types to particular channels, only these transaction types are available for selection in the input help of each corresponding channel.

Page 20: CRM Fundamentals- II

© SAP AG TCRM20 3-8

SAP AG 2008

Business Transaction Customizing: Item

Different settings according to business transaction category

Assign business transaction categoriesOnly certain combinations are permitted

Item attributes and characteristics:Controlling attributesItem object type

Define item category

Assign business transaction categories

Customizing at item level

First you define the general settings (the attributes that are the same for every type of item category). Item object type; partner determination procedure; status profile; ATP profile; action profile; date

profile; BOM explosion and configuration data.

Next you define the business context in which the item category is used. Settings differ depending on the assigned business transaction category. For example, billing reference is defined under Sales and confirmation relevance under Service Transaction.

Examples:

The item category SRVP (service product item) is assigned the two business transaction categories Sales and Service transaction.

The item category OPPT (opportunity item) is assigned the business transaction category Opportunity.

Activities do not usually have items. Customizing of item categories and item category determination is not necessary in this case. Exception: Contact reports/activity reports.

Page 21: CRM Fundamentals- II

© SAP AG TCRM20 3-9

SAP AG 2008

Customizing: Item Category Determination

Item Category Usage

Item Category Group

Transaction TypeTransaction

Product Master

Program

Default valueAlternative item categories

Main Item Category

Item Category

=

The Item Category Group field of the product master is dependent and independent of the organizational data (the Distribution Chain is dependent and the Details are independent).

The procedure for item category determination should be set up in the same way as in the SAP ERP system, especially when there are transactions that will be replicated. Otherwise, problems may occur during the upload to the ERP system.

Other user-defined item categories and their corresponding determination procedures must be set up manually. It is not possible to download Customizing from ERP.

In some situations ("complaints"), the item category determination is derived from the action definitions.

Examples for item category determination:

A sales item (NORM) in a standard sales order (TA) results in item category TAN.

A sales item (NORM) in a standard sales order (TA) that belongs to a higher-level item of item category TAN results in item category TANN once free goods determination takes place (item category usage is FREE).

A service product item (SVRP) in a standard service order (SRVO) results in item category SRVP.

Page 22: CRM Fundamentals- II

© SAP AG TCRM20 3-10

SAP AG 2008

Examples of Item Category Determination

Material 1

Service

Quotation (AG) Service order (SRVO) Service contract (SC)

NORM

SRVP

AGN SRVP SCN

SRVS

With billing plan

FAPFFAPFFAPF

… …

AG+

NORM+

< >+

< >=

AGN

SRVO+

SRVP+

< >+

< >=

SRVP

SRVO+

NORM+

< >+

SRVP=

SRVS

SC+

SRVP+

< >+

<blank>=

SCN

SC+

SRVP+

SERV+

SCN=

FAPF

AG+

0002+

< >+

< >=

AGC

0002

AGCMaterial 2

The slide illustrates some normal examples for item category determination. Quotation processing with two items. A quote is made for a stock material (item category group

sales item = NORM) and a configurable product (item category group configuration above = 0002). Due to the different products (item category groups), the system determines two different item categories (AGN and AGC).

Service order processing with two items. A quote is made for a service (item category group service product = SRVP) and a corresponding [subitem] sales item (item category group sales item = NORM). The system determines item categories SRVP and SRVS.

Alternatively, there could also be a corresponding service part item (item category group service material = SRVM). In this situation, the system would have determined the item category SRVM

Service order with billing plan. A service product is entered (item category group service product = SRVP). Additional billing plan subitems are generated by the item category usage (service billing plan = SERV). The system determines the main item category SCN and billing plan items with item category FAPF.

Page 23: CRM Fundamentals- II

© SAP AG TCRM20 3-11

SAP AG 2008

Copying Business Transactions

Copy

Copies current transaction document:

Same transaction type

Header data and item datais copied

Transaction history is not updated; no relationship to predecessor

Create Follow-Up Transaction

Data copied from a business transaction:

You can choose the transaction type for the follow-up transaction

Header data is copied

You can select items

Transaction history is updated

Prerequisite: copy control settings

The processing of follow-up transactions requires several settings in copy control Customizing: Copy control for transaction types Copy control for item categories Determination of the item category during the copy (optional)

You must also ensure that settings have been made for the target transaction (for example, item category determination).

When you copy transactions, the system produces a copy and displays it for processing. When the copied transaction is saved, the document flow is not updated; in other words, the copied transaction has no connection to the original transaction.

Customers can adjust the conditions of the copy control according to their individual requirements. You have the option of writing your own data transfer routines using BAdI (business add-in) methods. You can use the BAdI CRM_COPY_BADI to create copy routines.

Page 24: CRM Fundamentals- II

© SAP AG TCRM20 3-12

SAP AG 2008

Transaction History/Document Flow in Transactions

The transaction history allows you to display interlinkages between business transactions at header and item level.

Transaction history

Shipping activities

Billing activities

- Quotation - Replicated document- Contract- Service orders- Confirmation- …

Confirmations

- Delivery documents

- Confirmations

- Invoices- Credit memos- Debit Memos

The display of the transaction history is context-specific and depends on each transaction type.

The transaction history is updated when follow-up transactions are processed.

You can navigate from the transaction history to linked business transactions.

In some cases (for example, document replication), you can use the transaction history to navigate to a connected ERP system. However, this requires use of SAP Internet Transaction Server (ITS).

Page 25: CRM Fundamentals- II

© SAP AG TCRM20 3-13

SAP AG 2008

Customizing: Copy Control

Transaction types

Item categories

Item category determination during copying

Source Target

AG TAGeneral controlDetailed data

Source Target

AGN TANGeneral controlDetailed data

Sourceitem

category

Target item

categoryZAG1 ZTA1

Transaction Type

TA+

Copy control is required to process follow-up transactions. Copy control is mandatory for transaction types.

Copy control is mandatory for item categories if you want to copy products (items) to a follow-up document.

For example, creating a service order with service order determination.

The definition of item category determination when copying is optional and can be used if item category determination is not required in the target transaction.

Copy control can be maintained in Customizing: SAP Implementation Guide Customer Relationship Management Transactions Basic Settings Copying Control for Business Transactions .

Page 26: CRM Fundamentals- II

© SAP AG TCRM20 3-14

SAP AG 2008

ActivityE.g., customer visit

Subsequent Referencing

Object relationship profile

Transaction Type

Object relationships

Interface settings

Service order

Opportunity

Contract

Relationships

ContractService orderOpportunity

When you create an activity and then see that it should have been created as a follow-up transaction to an existing case, you can subsequently link this activity to an existing transaction.

You can subsequently link follow-up transactions from header to header.

It is not possible to subsequently link from item to item.

When you subsequently link follow-up transactions, the document flow is updated automatically. When you delete a link, the document flow is updated accordingly when you save the transaction.

To enable subsequent referencing, you have to create an object relationship profile in Customizing and assign it to a transaction type.

SAP Implementation Guide Customer Relationship Management Transactions Settings for Activities Define Object Relationship Profile

Page 27: CRM Fundamentals- II

© SAP AG TCRM20 3-15

SAP AG 2008

Basic Functions in Business Transactions

Text Determination

Date Management

Status Management

Incompleteness Check

Change History

Other basic functions are described during this course. These include: Partner processing

Action processing

Pricing

The following sales-specific functions are covered in more detail by the course CR300 "CRM Sales":

Product substitution

Free products

Credit limit check

Availability check (ATP check)

Page 28: CRM Fundamentals- II

© SAP AG TCRM20 3-16

SAP AG 2008

Texts/Notes in Transactions

Notes

Customer requirementInternal note

Header note

Notes

First note

The text of the text field in the details of a business transaction is transferred with the logon language to the first position of the "Notes" assignment block.

You can maintain different notes for each business transaction. The first note can usually be created in the overview area of a business transaction. You can create texts and notes for several other objects in the SAP CRM system. These include:

Business partners

Products

Product catalogs

Billing documents (header and item)

Texts can be maintained in different languages.

Page 29: CRM Fundamentals- II

© SAP AG TCRM20 3-17

SAP AG 2008

Text determination procedure:

Item CategoryTransaction Type

Which applications can use the procedure (that is, determine text objects)?

Which text types should be displayed?(For example, internal note, customer inquiry, report)

How should texts in the document be processed?(Mandatory or optional, changeable and so on)

How should the texts be determined?(Access sequence: template object and template text type)

Text Determination Procedure

According to your business scenario, you combine a number of text types in the text determination procedure. These texts are displayed automatically in transactions or can be entered manually.

Text objects and text types are defined in Customizing: SAP Implementation Guide → Customer Relationship Management → Basic Functions→ Text Management → Define Text Objects and Text Types.

Text determination procedures and access sequences are also defined in Customizing: SAP Implementation Guide → Customer Relationship Management → Basic Functions→ Text Management → Define Text Determination Procedure.

Page 30: CRM Fundamentals- II

© SAP AG TCRM20 3-18

SAP AG 2008

Date Management

Examples of date types in business transactions:

Activity

Salescontract

Planned date:Actual date:

Contract start:Runtime:Contract end:

Call customer:

Date type: Date rule:

Current date

Current dateOne yearContract start? + validity period

Contract end – two weeks

Date management enables you to process the dates that are relevant for you in one transaction.

Date management enables you to process the dates that are relevant for you in one document. It is used, for example, in contracts (cancellation dates and runtimes), activities (total duration of an activity), and quotations (valid to date). You can use date management in other transaction types. You define specific dates, or the system can calculate dates using date types, durations and date rules.

The date profile controls which reference objects, time duration, date types, and date rules can be used in a specific transaction type.

Page 31: CRM Fundamentals- II

© SAP AG TCRM20 3-19

SAP AG 2008

Date Profile:

Item CategoryTransaction Type

Which date types can I use?

Which durations are included?

What attributes have been given to the dates and durations?

How are the dates determined (date rules)?

Date Profile

Date types are descriptions of business transaction dates, for example, start of contract, end of contract, date of signature.

The duration is the period between two points in time. It consists of a numerical value and definable time unit.

Date profiles, date types and date rules are defined in Customizing:

SAP Implementation Guide → Customer Relationship Management → Basic Functions→ Date Management → Define Date Profile

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Date Management → Define Data Types, Duration Types and Date Rules

Page 32: CRM Fundamentals- II

© SAP AG TCRM20 3-20

SAP AG 2008

User Status(Customer status)

System Status(SAP standard status)

Status Management

Examples:OpenIn ProcessingErrorCompleteDistribution Lock

Examples:Customer ActionTo ReleaseReleasedRejectedTriggered

Can be defined in status profile in any way

Meaning determined by SAP standard

System statuses: If a status profile (for the user status) is not assigned to a transaction type/item categories, system statuses are displayed in the application (in the transaction).

In standard systems, some of the system statuses are not displayed in the CRM WebClient UI. The user only sees the statuses that are relevant to them. Other statuses that are required for the program flow are set but not always displayed.

User statuses: If a status profile (for the user status) is assigned to a transaction type/item categories, user statuses are displayed in the application (in the transaction).

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Status Management → Change Status Profile for User Status

Page 33: CRM Fundamentals- II

© SAP AG TCRM20 3-21

SAP AG 2008

Status Profile

Status Profile:

Item CategoryTransaction Type

Definition of user status With or without status number

Transaction control

Authorization key

User statuses are defined in a status profile. In status profiles you can do the following: Define the activation sequence of user statuses

Define an initial status/start status

Set a transaction status that is connected with the user status

You must assign at least one object type, such as the CRM order header, to the status profile.

Page 34: CRM Fundamentals- II

© SAP AG TCRM20 3-22

SAP AG 2008

Incompleteness Check

Order

Sold-To Party: RJM ServicesExt. Ref.:

Item Product10 M3020 M4030 M35

Message:Transaction is incomplete: Ext. Reference is missingStatus: Incomplete

The incompleteness check allows you to find out whether a transaction is complete or not.

For example, the External Reference field is a required entry field in standard sales orders.

Follow-up transaction possibleFollow-up transaction not possible

You can make settings for the incompleteness check in business transactions. You can define when a business transaction in the system should be considered incomplete and what message type the system should issue during data processing. You can restrict the incompleteness check to individual transaction types and to individual business partners.

The scope of the check can differ for each object. For example, the system checks different fields in a sales order than it checks in an opportunity.

The report CRM_ORDER_INCOMP_CHECK can be used to select incomplete transactions.

You can define the incompleteness check in Customizing. To do so, follow the Customizing path: SAP Implementation Guide→ Customer Relationship Management → Basic Functions → Incompleteness.

Page 35: CRM Fundamentals- II

© SAP AG TCRM20 3-23

SAP AG 2008

Incompleteness Check: Customizing

In Customizing, you define which fields are mandatory for which transaction type and/or item category:

Incompleteness group transaction/item

Incompleteness group business partner

Incompleteness Procedure

Transaction type/item category

Business partnermaster data

Which fields are required entry fields?

Which message type is involved (error or warning)?

How does the system react (for example, is the status set to “incomplete for delivery”)?

To set up the incompleteness check, perform these steps: Define an incompleteness group for business transactions and items. Define an incompleteness check for business partners. In the business partner master data, assign the

required business partners to the incompleteness group in the Sales Area Data on the Sales tab page.

Assign transaction types to the incompleteness groups. In the incompleteness check, the same conditions are valid for all transaction types that are assigned the same incompleteness group.

Assign item categories to the incompleteness groups. In the incompleteness check, the same conditions are valid for all item categories that are assigned the same incompleteness group.

Define the incompleteness procedures that are valid for the various subobjects of a transaction, for example, SALES for sales data or PRODUCT_I for product data at item level. In an incompleteness procedure, you can group fields that you want to check for completeness. If you do not enter data in any of these fields in the business transaction, the transaction is considered incomplete. For each field in the procedure, you must also define whether the message issued during data processing should be a warning or an error message.

Assign the incompleteness groups to the incompleteness procedures. This specifies the business transactions in which checks are carried out. If you assign an incompleteness group for business partners to an incompleteness procedure, the system carries out the check only for those business partners to whom the incompleteness group was assigned. However, if you create a transaction using that transaction type and business partner, the incompleteness procedure is valid only for the business partner, that is, the system does not display a combination of both procedures as incomplete. Only the fields from the incompleteness procedure for the business partner are displayed as incomplete.

Page 36: CRM Fundamentals- II

© SAP AG TCRM20 3-24

SAP AG 2008

Change History

The system can update change documents for transactions.

This allows you to display all changes made to a transaction, including:

What was changed (field, old value, new value)

Who made the change

When (date and time) the change was made

You can decide for each transaction type whether change documents are written.

Change History

In Customizing, you can deactivate the updating of change documents for transaction types. Go to the details of a transaction type and set the No Change Documents indicator.

You can display the change documents in the SAP GUI by choosing Extras Change Documents.

Page 37: CRM Fundamentals- II

© SAP AG TCRM20 3-25

SAP AG 2008

Transaction Processing: Unit Summary

You are now able to:

Give examples of the different CRM business transactions

Describe the structure of business transactions

Explain and create transaction types and item categories

Configure the basic functions of business transactions

Page 38: CRM Fundamentals- II

© SAP AG TCRM20 3-26

Page 39: CRM Fundamentals- II

© SAP AG TCRM20 3-27

Exercises

Unit: Transaction Processing Topic: Transactions and Related Customizing

At the conclusion of this exercise, you will be able to:

• Create and analyze a transaction

• Create a transaction type

• Describe and perform item category determination for a transaction type

You want to use a new transaction type for your trade fair business in the Sales area. You therefore copy and adjust an existing transaction type in the Implementation Guide (IMG). Before you create a transaction type, you want to understand the application and where to find the data.

Optional Exercises (Service): You want to set up a new transaction type for service transactions in the Service area.

1-1 To familiarize yourself with some of the basic mechanisms in transaction processing, you create a transaction in the CRM system.

1-1-1 Create a quotation of the type Quotation ERP for the sold-to party ##Megastore. Use First Quotation ## for the external reference.

Before you choose Quotation ERP (description of the transaction type), personalize the technical transaction type in the selection dialog for transaction types.

1-1-2 Which transaction type (technical key) represents this transaction?

_____________________

1-1-3 Which statuses are available in the quotation after you enter the sold-to party?

1-1-4 Enter the product with the number HT-1010 and a quantity of 10 PC in the item list.

Which item category is determined by the system?

_______

1-1-5 Save the transaction and note the number.

___________________ [Data sheet]

Page 40: CRM Fundamentals- II

© SAP AG TCRM20 3-28

1-2 If applicable, call the last sales transaction you saved and analyze the item category that was determined and also how it was determined.

1-2-1 Where in Customizing are the detailed settings for the transaction type that is used?

1-2-2 Where in Customizing are the detailed settings for the item category that was determined?

1-2-3 Check whether this item category contains a date profile in Customizing.

What Billing Relevance indicator does this item category have?

1-2-4 In Customizing, analyze the item category determination. What were the influencing factors or associated values found for the item category determined in the previous step? Write down both the influencing factors and associated values.

___________________________________________________

___________________________________________________

___________________________________________________

To determine the relevant item category group, call the product master again and look at the data sheet.

1-2-5 What other factors can influence the determination of an item category? Name a suitable example.

1-3 You want to create the new sales transaction type ZA## (##Quotation) in Customizing. Create it as a copy of existing transaction type AG and make some minor changes.

SAP Menu → Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

1-3-1 Search for the existing transaction type AG.

1-3-2 Select the line and choose Copy as….

1-3-3 Enter the abbreviation ZA## and the description ##Quotation (short and long text).

1-3-4 Confirm the dialog box (number of dependent entries copied) with ENTER.

1-3-5 Assign the organizational data profile ZTACADEMY to this transaction type.

1-3-6 Choose Save.

Page 41: CRM Fundamentals- II

© SAP AG TCRM20 3-29

1-4 In order to use the new transaction type, you must maintain item category determination. If you are entering a sales item (NORM), use the standard SAP item category for the quotation item rather than your own item category.

1-4-1 Set up item category determination in Customizing.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Item Category Determination

1-4-2 Search (using Position) for transaction type AG and item category group NORM (Standard item). Select the line and choose Copy as….

1-4-3 Replace transaction type AG with the new transaction type ZA##.

1-4-4 Save your entries.

1-5 Test your new transaction type by creating a new quotation (transaction type ##Quotation).

1-5-1 Enter sold-to party ##Decot and the number of product ##Screen with quantity 1.

You can also search using the input help (description = ##Screen).

Save the transaction and note the number.

___________________ [Data sheet]

Page 42: CRM Fundamentals- II

© SAP AG TCRM20 3-30

Page 43: CRM Fundamentals- II

© SAP AG TCRM20 3-31

Unit: Transaction Processing Topic: Implementing and Testing Copying Control

At the conclusion of this exercise, you will be able to:

• Describe copying control for transaction types and item categories in CRM, and implement and test this

• Create business transactions as copies or as follow-up transactions of already existing transactions

You want to use the quotation you created in a previous exercise as a basis for creating additional business transactions such as standard telesales order. To do this, you must be able to describe copying control in CRM and make the necessary entries.

2-1 In order to use your new transaction type ZA## (##Quotation) productively (that is, in order to create follow-up transactions), you must make and check the entries that are needed for transaction types and item categories (at header and item level) in the copy control.

2-1-1 Try to create a sales order of the type Telesales as a follow-up transaction for the ##Quotation you created in the previous exercise.

Does the system allow you to do this?

____________________

Explain why.

____________________________________________________

2-1-2 In the Customizing activity Define Copying Control for Transaction Types, check whether the relevant entry for copying the source transaction type ZA## to the target transaction type TA exists.

Add the missing entry.

2-1-3 Test your settings and create a transaction of the type Telesales as a follow-up transaction for ZA## (##Quotation). Make a note of the number.

___________________ [Data sheet]

2-1-4 Where can you find information about the transaction history?

Page 44: CRM Fundamentals- II

© SAP AG TCRM20 3-32

Page 45: CRM Fundamentals- II

© SAP AG TCRM20 3-33

Unit: Transaction Processing Topic: Text Determination

At the conclusion of this exercise, you will be able to:

• Explain, implement and test text determination for transactions in CRM

You want to understand and create settings for the text determination for the transaction type you created in the last exercise.

To do this, you analyze the existing text determination procedure and then make a number of changes in order to enter additional text data.

3-1 Settings for text determination

3-1-1 Which text determination procedure is used in transactions of the type ##Quotation?

________________

3-1-2 Take a look at the settings for this text determination procedure in Customizing.

What text types are used in the underlying text determination procedure?

__________________________________________________

3-1-3 What might be the source of the text data in the Header Note text type?

3-1-4 Copy the text determination procedure ORDER001. Enter ZTDP## as the text determination procedure ID and ##Text Determination Procedure as the description.

Also include the text type A003 (Preparation) in the text determination procedure.

3-1-5 Assign the text determination procedure you created (ZTDP##) to your transaction type ZA## (##Quotation).

3-1-6 Use the transaction type ZA## (##Quotation) to test whether the text determination procedure and the text type function correctly.

Create a ##Quotation and ensure that the new text type is in the Notes assignment block by creating a text of this type.

Page 46: CRM Fundamentals- II

© SAP AG TCRM20 3-34

Page 47: CRM Fundamentals- II

© SAP AG TCRM20 3-35

Unit: Transaction Processing Topic: Incompleteness

At the conclusion of this exercise, you will be able to:

• Explain, implement and test incompleteness for transactions in CRM

You want to create a new incompleteness procedure for your transaction type ZA##, ##Quotation. The transaction shall be classified as incomplete if the external reference is missing.

4-1 You want to ensure that the external reference field is maintained in sales transaction ZA##. You want an error message to be displayed if no data is entered for the field. Create the incompleteness group ZG## with the description IC Group ## for your transaction. Maintain the incompleteness procedure ZP## with the description IC Procedure ##.

4-1-1 Define the incompleteness group ZG##.

4-1-2 Assign the incompleteness group to your transaction type ZA##.

4-1-3 Create incompleteness procedure ZP## with the description IC Procedure ##.

4-1-4 Enter the details for the incompleteness procedure and define the field as External Reference so that a warning is displayed if it is not filled. Save your data.

Use the object name SALES and the field name PO_NUMBER_SOLD.

4-1-5 Create a Determination incompleteness procedure. Enter ZG## in the Incompleteness Group: Transact field (incompleteness for transaction type) and leave the field for the business partner blank. Enter ZP## in the Procedure field.

4-1-6 See if your incompleteness procedure works with business partner ##Decot. Create a new transaction of type ##Quotation.

Is an error message displayed?

Page 48: CRM Fundamentals- II

© SAP AG TCRM20 3-36

Page 49: CRM Fundamentals- II

© SAP AG TCRM20 3-37

Alternative Service Scenario: Exercises

1-1 To familiarize yourself with some of the basic mechanisms in transaction processing, you create a transaction in the CRM system.

1-1-1 Create a service transaction of the type Service Process for the sold-to party ##Megastore. Use First Service Order ## as the description.

Before you choose Service Process (description of the transaction type), personalize the technical transaction type in the selection dialog for transaction types.

1-1-2 Which transaction type (technical key) represents this transaction?

_______________

1-1-3 In the item details (assignment block Items), enter product number SRV1_4 in the Product ID field with a quantity of 2.

Which item category is determined by the system?

________

1-1-4 Save the transaction and note the number.

___________________ [Data sheet]

Page 50: CRM Fundamentals- II

© SAP AG TCRM20 3-38

1-2 If applicable, call the last service transaction you saved and analyze the item category that was determined and also how it was determined.

1-2-1 Where in Customizing are the detailed settings for the transaction type that is used?

1-2-2 Where in Customizing are the detailed settings for the item category that was determined?

1-2-3 Check whether this item category contains a date profile in Customizing.

Is the Relevant for resource planning indicator set for the item category?

What Billing Relevance indicator does this item category have?

1-2-4 In Customizing, analyze the item category determination. What were the influencing factors or associated values found for the item category determined in the previous step? Write down both the influencing factors and associated values.

___________________________________________________

___________________________________________________

To determine the relevant item category group, call the product master again and look at the data sheet.

1-2-5 What other factors can influence the determination of an item category? Name suitable examples.

Page 51: CRM Fundamentals- II

© SAP AG TCRM20 3-39

1-3 You would like to create a new service transaction type ZS## (##Service order) in Customizing. Create it as a copy of the existing transaction type ZES1 and make some minor changes.

SAP Menu → Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

1-3-1 Search for the existing transaction type ZSE1.

1-3-2 Select the line and choose Copy as….

1-3-3 Enter the abbreviation ZS## and the description ##Service order (short and long text).

1-3-4 Confirm the dialog box (number of dependent entries copied) with ENTER.

1-3-5 Assign the partner determination procedure ZTSRVH01 and the organizational data profile ZTORGS02 to this transaction type.

1-3-6 Choose Save.

1-4 In order to use the new transaction type, you must maintain item category determination. If you are entering a service item (SRVO), use item category ZSRP rather than one of your own item categories.

1-4-1 Set up item category determination in Customizing.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Item Category Determination

1-4-2 Using Position, search for transaction type ZSE1 and item category group SRVO (service item). Select the line and choose Copy as….

1-4-3 Replace transaction type ZSE1 with your new transaction type ZS##. Choose Enter.

1-4-4 Save your entries.

1-5 Test your new transaction type by creating a service order of type ##Service order.

1-5-1 Enter sold-to party ##Decot, the product ##MAINTENANCE and the quantity 1.

Set the distribution lock status for this transaction.

Save the transaction and note the number.

___________________ [Data sheet]

Page 52: CRM Fundamentals- II

© SAP AG TCRM20 3-40

Page 53: CRM Fundamentals- II

© SAP AG TCRM20 3-41

Alternative Service Scenario: Exercises

2-1 In order to use your new transaction type ZS## (##Service order) productively (that is, in order to create follow-up transactions), you must check and make the entries that are needed for transaction types and item categories (at header and item level) in copy control.

2-1-1 Try to create a service confirmation of the type Confirmation (transaction type ZSEC) as a follow-up transaction for the ##Service order you created in the previous exercise.

Does the system allow you to do this?

____________________

Explain why.

____________________________________________________

2-1-2 In the Customizing activity Define Copying Control for Transaction Types, check whether the relevant entry for copying the source transaction type ZS## to the target transaction type ZSEC exists.

Add the missing entry.

2-1-3 Test your settings and create a transaction of the type Confirmation as a follow-up transaction for ZS## (##Service order). Make a note of the number.

___________________ [Data sheet]

2-1-4 Where can you find information about the transaction history?

Page 54: CRM Fundamentals- II

© SAP AG TCRM20 3-42

Page 55: CRM Fundamentals- II

© SAP AG TCRM20 3-43

Alternative Service Scenario: Exercises

3-1 Settings for text determination

3-1-1 Which text determination procedure is used in transactions of the type ##Service Order?

________________

3-1-2 Take a look at the settings for this text determination procedure in Customizing.

What text types are used in the underlying text determination procedure?

__________________________________________________

3-1-3 Is an access sequence assigned to one of the text types used?

3-1-4 Copy the text determination procedure SRV00002. Enter ZTDP## as the text determination procedure ID and ##Text Determination Procedure as the description.

Also include the text type C003 (Recomm. solutionl) in the text determination procedure.

3-1-5 Assign the text determination procedure you created, ZTDP##, to your transaction type ZS## (##Service order).

3-1-6 Use the transaction type ZS## (##Service order) to test whether the text determination procedure and the text type work correctly.

Create a ##Service order and ensure that the new text type is in the Notes assignment block by creating a text of this type.

Page 56: CRM Fundamentals- II

© SAP AG TCRM20 3-44

Page 57: CRM Fundamentals- II

© SAP AG TCRM20 3-45

Alternative Service Scenario: Exercises

4-1 You want to ensure that the external reference field is maintained in service transaction ZS##. You want an error message to be displayed if no data is entered for the field. Create the incompleteness group ZG## with the description IC Group ## for your transaction. Maintain the incompleteness procedure ZP## with the description IC Procedure ##.

4-1-1 Define the incompleteness group ZG##.

4-1-2 Assign the incompleteness group to your transaction type ZS##.

4-1-3 Create incompleteness procedure ZP## with the description IC Procedure ##.

4-1-4 Enter the details for the incompleteness procedure and define the field as External Reference so that a warning is displayed if it is not filled. Save your data.

Use the object name SALES and the field name PO_NUMBER_SOLD.

4-1-5 Create a Determination incompleteness procedure. Enter ZG## in the Incompleteness Group: Transact field (incompleteness for transaction type) and leave the field for the business partner blank. Enter ZP## in the Procedure field.

4-1-6 See if your incompleteness procedure works with business partner ##Decot. Create a new transaction of type ##Service order.

Is an error message displayed?

Page 58: CRM Fundamentals- II

© SAP AG TCRM20 3-46

Page 59: CRM Fundamentals- II

© SAP AG TCRM20 3-47

Solutions

Unit: Transaction Processing Topic: Transactions and Related Customizing

1-1 To familiarize yourself with some of the basic mechanisms in transaction

processing, you create a transaction in the CRM system.

1-1-1 Create a quotation of the type Quotation ERP for the sold-to party ##Megastore. Use First Quotation ## for the external reference.

Choose Sales Cycle.

Choose Create → Quotation.

Choose Personalize ( ) in the dialog box that is displayed.

Select Transaction Type and move ( ) the field to the displayed columns.

Choose Save.

Choose Quotation ERP.

Sold-To Party: ##Megastore.

External Reference: First quotation ##.

1-1-2 Which transaction type (technical key) represents this transaction?

AG.

1-1-3 Which statuses are available in the quotation after you enter the sold-to party?

Available statuses: Open, In Process, Released and Completed.

1-1-4 Enter the product with the number HT-1010 and a quantity of 10 PC in the item list.

Product ID: HT-1010

Quantity: 10

You can display the item category in the Items assignment block by using the Personalization ( ) function.

Which item category is determined by the system?

The system determines the Quotation Item item category (AGN).

1-1-5 Save the transaction and note the number.

___________________ [Data sheet]

Page 60: CRM Fundamentals- II

© SAP AG TCRM20 3-48

1-2 If applicable, call the last sales transaction you saved and analyze the item category that was determined and also how it was determined.

1-2-1 Where in Customizing are the detailed settings for the transaction type that is used?

SAP Menu → Architecture and Technology → Configuration → Customizing Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

1-2-2 Where in Customizing are the detailed settings for the item category that was determined?

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Item Categories

1-2-3 Check whether this item category contains a date profile in Customizing.

Select entry AGN and click the Details icon ( ).

The item category has no date profile.

What Billing Relevance indicator does this item category have?

In the dialog structure, double-click Assignment of Business Transaction Categories.

Select the Sales transaction category and double-click Customizing Item in the dialog structure.

The item category is not relevant for billing.

Page 61: CRM Fundamentals- II

© SAP AG TCRM20 3-49

1-2-4 In Customizing, analyze the item category determination. What were the influencing factors and associated values during the determination of the item category in the previous step? Write down both the influencing factors and associated values.

• Go to the product master to determine the relevant item category group.

• Choose the Distribution Chains assignment block.

Choose Actions → Edit.

• Item Cat. Group: NORM (Sales Item)

In this case, the item category is determined with the influencing factors transaction type (AG) and item category group (sales item = NORM).

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Item Category Determination

Choose Position..., enter the above data in the dialog box, and confirm with ENTER.

The system displays the corresponding entry in the table.

Select the entry and choose Details ( icon).

The item category AGN is used as the default value. You cannot use an alternative item category.

1-2-5 What other factors can influence the determination of an item category? Name a suitable example.

As well as the transaction type and the item category group, the usage and a higher-level item category can be used to influence the item category determination.

For example, in standard sales orders (TA), the automatic free goods discount determination uses the usage FREE (free goods discount). In addition, the free goods discount item refers to a higher-level item of the TAN category.

If a sales item (NORM) is recorded in the sales order and a free goods discount is found, the standard system determines a (main) item with item category TAN and a free goods discount item with the item category TANN.

Other examples included structured products and complaint transactions.

Page 62: CRM Fundamentals- II

© SAP AG TCRM20 3-50

1-3 You want to create the new sales transaction type ZA## (##Quotation) in Customizing. Create it as a copy of existing transaction type AG and make some minor changes.

1-3-1 Search for the existing transaction type AG.

SAP Menu → Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

1-3-2 Select the line and choose Copy as….

Select the button before the line and then the icon.

1-3-3 Enter the abbreviation ZA## and the description ##Quotation (short and long text).

It is important that you change both the short and long texts to ##Quotation.

1-3-4 Confirm the dialog box (number of dependent entries copied) with ENTER.

If you are logged on in a language other than the course language, you should translate the entry you just created into the course language.

• Select Goto → Translation and then the course language. Enter a text that contains your group number.

1-3-5 Assign the organizational data profile ZTACADEMY to this transaction type.

If you are no longer in the detailed view of the transaction type, select transaction type ZA## and choose Details ( ).

In the Org. Data Prof. field, enter the value ZTACADEMY.

1-3-6 Choose Save.

Page 63: CRM Fundamentals- II

© SAP AG TCRM20 3-51

1-4 In order to use the new transaction type, you must maintain item category determination. If you are entering a sales item (NORM), use the standard SAP item category for the quotation item rather than your own item category.

1-4-1 Set up item category determination in Customizing.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Item Category Determination

1-4-2 Search (using Position) for transaction type AG and item Category group NORM (Standard item). Select the line and choose Copy as….

Choose Position...

Transaction Type: AG

Item Cat. Group: NORM

Choose ENTER.

Select the row and choose .

1-4-3 Replace transaction type AG with the new transaction type ZA##.

Transaction Type: ZA##.

Choose ENTER.

1-4-4 Save your entries.

Page 64: CRM Fundamentals- II

© SAP AG TCRM20 3-52

1-5 Test your new transaction type by creating a sales transaction with type ##Quotation.

1-5-1 Enter sold-to party ##Decot and the number of product ##Screen with quantity 1.

You can also search using the input help (description = ##Screen).

Choose Sales Cycle.

Choose Create → Quotation.

Select ##Quotation.

Sold-To Party: ##Decot.

External Reference: Second quotation ##.

In the Items assignment block:

Product ID: <number of your product>

Quantity: 10

Save the transaction and note the number.

___________________ [Data sheet]

Page 65: CRM Fundamentals- II

© SAP AG TCRM20 3-53

Unit: Transaction Processing Topic: Setting and Testing Copy Control

2-1 In order to use your new transaction type ZA## (##Quotation) productively (that

is, in order to create follow-up transactions), you must make and check the entries that are needed for transaction types and item categories (at header and item level) in the copy control.

2-1-1 Try to create a sales order of the type Telesales as a follow-up transaction for the ##Quotation you created in the previous exercise.

Does the system allow you to do this?

Choose Sales Cycle.

Choose Search → Quotations..

Sold-To Party Name: ##Decot

Choose Search.

When the search result is displayed, choose the hyperlink to go to the quotation’s details.

Choose Create Follow-Up. A dialog box is displayed.

No, it is not yet possible to create a follow-up transaction of the type Telesales.

Explain why.

After a new transaction type has been set up, only transactions of type “Business Activity” or “Task” can be created without entries having to be made in copy control.

Entries in copy control are required for all other types of follow-up transaction.

Page 66: CRM Fundamentals- II

© SAP AG TCRM20 3-54

2-1-2 In the Customizing activity Define Copying Control for Transaction Types, check whether the relevant entry for copying the source transaction type ZA## to the target transaction type TA exists.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Copying Control for Business Transactions → Define Copying Control for Transaction Types

Choose Position...

Source transaction type: ZA##

Choose ENTER.

The system moves to a line that is alphabetically closest to the transaction type ZA##. No entry with your transaction type exists (yet).

Add the missing entry.

Choose New Entries.

Source transaction type: ZA##

Target transaction type: TA

Choose ENTER and save.

You do not have to make any additional settings because you do not use your own item category in ##Quotation, the transaction Telesales uses the standard item category TAN, and a copy control entry AGN → TAN already exists (SAP standard).

Page 67: CRM Fundamentals- II

© SAP AG TCRM20 3-55

2-1-3 Test your settings and create a transaction of the type Telesales as a follow-up transaction for ZA## (##Quotation). Make a note of the number.

Choose Sales Cycle.

Choose Search → Quotations.

Sold-To Party Name: ##Decot

Choose Search.

When the search result is displayed, choose the hyperlink to go to the quotation’s details.

Choose Create Follow-Up. A dialog box is displayed.

Choose Telesales.

In the Select Items dialog box, select the item(s) that you want to transfer.

Choose Choose.

Choose Save and note the transaction number.

___________________ [Data sheet]

2-1-4 Where can you find information about the transaction history?

The Transaction History assignment block contains information about preceding transactions and follow-up transactions.

Page 68: CRM Fundamentals- II

© SAP AG TCRM20 3-56

Page 69: CRM Fundamentals- II

© SAP AG TCRM20 3-57

Unit: Transaction Processing Topic: Text Determination

3-1 Settings for text determination

3-1-1 Which text determination procedure is used in transactions of the type ##Quotation?

SAP Menu → Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

View the details of your transaction type ZA##.

The transaction type uses the text determination procedure ORDER001.

3-1-2 Take a look at the settings for this text determination procedure in Customizing.

What text types are used in the underlying text determination procedure?

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Text Management → Define Text Determination Procedure Select the text object CRM_ORDERH (Transaction Header)

Double-click the Procedure entry in the structure tree.

Select the entry ORDER001.

Double-click the Definition of Procedure entry in the structure tree.

The text types 0001 (Header Note), 1000 (Customer wishes), 0003 (Final note), 0002 (Internal note) and S001 (Problem Description) are used.

3-1-3 What might be the source of the text data in the Header Note text type?

Look at access 01 (Business partner text), which is assigned to text type 0001.

In the details of the access sequence, you can see that it searches in the Correspondence text type of the business partner. If there is text data here, it can be copied to the header note of the business transaction.

Page 70: CRM Fundamentals- II

© SAP AG TCRM20 3-58

3-1-4 Copy the text determination procedure ORDER001. Enter ZTDP## as the text determination procedure ID and ##Text Determination Procedure as the description.

Also include the text type A003 (Preparation) in the text determination procedure.

Navigate to Procedure in the structure tree.

Select the entry ORDER001 and choose Copy as… ( ).

Text determination procedure: ZTDP##

Dscrptn Proc.: ##Text determination procedure

Choose ENTER:

In the dialog box that appears, confirm that you want to copy all dependent entries.

Select the newly created text determination procedure and choose Definition of Procedure.

Also include the text type A003 (Preparation) in the text determination procedure.

Select New Entries.

Text Type: A003

Save your entries.

3-1-5 Assign the text determination procedure you created (ZTDP##) to your transaction type ZA## (##Quotation).

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

Change the details of your transaction type ZA##.

Text determination procedure: ZTDP##

Save your entries.

3-1-6 Create a ##Quotation and ensure that the new text type is in the Notes assignment block by creating a text of this type.

Yes, the new text type can be used in transaction of type ##Quotation

Page 71: CRM Fundamentals- II

© SAP AG TCRM20 3-59

Unit: Transaction Processing Topic: Incompleteness

4-1 You want to ensure that the external reference field is maintained in sales

transaction ZA##. You would like an error message if no data is entered for the field. Create the incompleteness group ZG## with the description IC Group ## for your transaction. Maintain the incompleteness procedure ZP## with the description IC Procedure ##.

4-1-1 Define the incompleteness group ZG##.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Incompleteness → Define Incompleteness Procedures

In the dialog structure, go to

Incompleteness Group: Transaction/Item Choose New Entries. Create incompleteness group ZG## with the description IC Group ##.

Save your entries.

4-1-2 Assign the incompleteness group to your transaction type ZA##.

Assignment: Transaction Type – Incompleteness Group Search for your transaction type ZA## and assign it incompleteness group ZG##.

4-1-3 Create incompleteness procedure ZP## with the description IC Procedure ##.

In the dialog structure, go to

Incompleteness Procedure Choose New Entries. Create incompleteness procedure ZP## with the description IC Procedure ##.

Page 72: CRM Fundamentals- II

© SAP AG TCRM20 3-60

4-1-4 Enter the details for the incompleteness procedure and define the field as External Reference so that an error is displayed if it is not filled. Save your data.

To see the field name, click the field, choose F1 help, and choose Technical Information. The field name is displayed in the Field Data area.

In the dialog structure, go to

Incompleteness Procedure: Detail, choose New Entries and enter the following: Object Name: SALES

Field Name: PO_NUMBER_SOLD Relevance: Header

Message Category: Warning

Business Transaction: INC1

Save your entries.

4-1-5 Create a Determination incompleteness procedure. Enter ZG## in the Incompleteness Group: Transact field (incompleteness for transaction type) and leave the field for the business partner blank. Enter ZP## in the Procedure field.

In the dialog structure, go to

Incompleteness Procedure: Determination, choose New Entries and enter the following:

Incompleteness Group: Transact.: ZG##

Procedure: ZP##

4-1-6 See if your incompleteness procedure works with business partner ##Decot. Create a new transaction of type ##Quotation.

Is an error message displayed?

Yes, an error message is displayed if the external reference field is empty.

Page 73: CRM Fundamentals- II

© SAP AG TCRM20 3-61

Alternative Service Scenario: Solutions

1-1 To familiarize yourself with some of the basic mechanisms in transaction processing, you create a transaction in the CRM system.

1-1-1 Create a service transaction of the type Service Process for the sold-to party ##Megastore. Use First Service Order ## as the description.

Choose Service Orders.

Choose Create → Service Order.

Choose Personalize ( ) in the dialog box that is displayed.

Select Transaction Type and move ( ) the field to the displayed columns.

Choose Save.

Choose Service Process.

Sold-To Party: ##Megastore.

Description: First Service Order ##.

1-1-2 Which transaction type (technical key) represents this transaction?

ZSE1. 1-1-3 In the item details (assignment block Items), enter product number SRV1_4

in the Product ID field with a quantity of 2.

Which item category is determined by the system?

The system determines the item category Service w. res. plan. (ZSRP).

1-1-4 Save the transaction and note the number.

___________________ [Data sheet]

Page 74: CRM Fundamentals- II

© SAP AG TCRM20 3-62

1-2 If applicable, call the last service transaction you saved and analyze the item category that was determined and also how it was determined.

1-2-1 Where in Customizing are the detailed settings for the transaction type that is used?

SAP Menu → Architecture and Technology → Configuration → Customizing Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

1-2-2 Where in Customizing are the detailed settings for the item category that was determined?

Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Item Categories

1-2-3 Check whether this item category contains a date profile in Customizing.

Is the Confirmation Relev. indicator set for the item category?

Select entry ZSRP and click on the Details icon ( ).

The item category contains the date profile SLA dates on item (IDES).

In the dialog structure, double-click Assignment of Business Transaction Categories.

Select the Service Transaction transaction category and double- click Customizing Item in the dialog structure.

The item category is indicated as Relevant for resource planning.

What Billing Relevance indicator does this item category have?

In the dialog structure, double-click Assignment of Business Transaction Categories.

Select the Sales transaction category and double-click Customizing Item in the dialog structure.

The item category is not relevant for billing (because the confirmation item is relevant for billing in this scenario).

Page 75: CRM Fundamentals- II

© SAP AG TCRM20 3-63

1-2-4 In Customizing, analyze the item category determination. What were the influencing factors or associated values found for the item category determined in the previous step? Write down both the influencing factors and associated values.

___________________________________________________

___________________________________________________

• Go to the product master to determine the relevant item category group.

Choose the Distribution Chains assignment block.

• Choose Actions → Edit.

Item category group SRVO (service item)

In this case, the item category determination is performed with the influencing factors transaction type (ZSE1) and item category group (SRVO).

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Item Category Determination

Choose Position..., enter the above data in the dialog box, and confirm with ENTER.

The system displays the corresponding entry in the table.

Select the entry and choose Details ( icon).

The item category ZSRP is used as a default value. There is the option of using the alternative item category ZSNP.

1-2-5 What other factors can influence the determination of an item category? Name a suitable example.

As well as the transaction type and the item category group, the usage and a main item category can be used to influence the item category determination.

For example, you want to differentiate between spare part items in the service transaction and those spare part items that are assigned directly to a service item.

In this case, you can include the item category group of the higher-level item in the determination of the item category.

Page 76: CRM Fundamentals- II

© SAP AG TCRM20 3-64

1-3 You would like to create a new service transaction type ZS## (##Service order) in Customizing. Create it as a copy of the existing transaction type ZES1 and make some minor changes.

1-3-1 Search for the existing transaction type ZSE1.

SAP Menu → Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

1-3-2 Select the line and choose Copy as….

Select the button before the line and then the icon.

1-3-3 Enter the abbreviation ZS## and the description ##Service order (short and long text).

It is important that you change both the short and long texts to ##Service order. It is important that you change both the short and long texts to ##Quotation.

1-3-4 Confirm the dialog box (number of dependent entries copied) with ENTER.

If you are logged on in a language other than the course language, you should translate the entry you just created into the course language.

Select Goto → Translation and then the course language. Enter a text that contains your group number.

1-3-5 Assign the partner determination procedure ZTSRVH01 and the organizational data profile ZTORGS02 to this transaction type.

If you are no longer in detail view of the transaction type, select your transaction type ZS## and choose Details ( ).

Enter the value ZTSRVH01 in the partner determination procedure field and the value ZTORGS02 in the Org Data Prof. field.

1-3-6 Choose Save.

Page 77: CRM Fundamentals- II

© SAP AG TCRM20 3-65

1-4 In order to use the new transaction type, you must maintain item category determination. If you are entering a service item (SRVO), use item category ZSRP rather than one of your own item categories.

1-4-1 Set up item category determination in Customizing.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Item Category Determination

1-4-2 Using Position, search for transaction type ZSE1 and item category group SRVO (service item). Select the line and choose Copy as….

Choose Position...

Transaction Type: ZSE1

Item Cat. Group: SRVO

Choose ENTER.

Select the row and choose .

1-4-3 Replace transaction type ZSE1 with your new transaction type ZS##.

Transaction Type: ZS##

Choose ENTER.

1-4-4 Save your entries.

1-5 Test your new transaction type by creating a service order of type ##Service order.

1-5-1 Enter sold-to party ##Decot, the product ##Maintenance and the quantity 1.

Choose Service Orders.

Choose Create → Service Order.

Choose ##Service Order.

Description: Second Service Order ##

Sold-To Party: ##Decot

Distribution Lock: Set the indicator

Assignment block Items.

Product ID: ##Maintenance

Quantity: 2.

Choose ENTER.

Set the distribution lock status for this transaction.

Save the transaction and note the number.

___________________ [Data sheet]

Page 78: CRM Fundamentals- II

© SAP AG TCRM20 3-66

Page 79: CRM Fundamentals- II

© SAP AG TCRM20 3-67

Alternative Service Scenario: Solutions

2-1 In order to use your new transaction type ZS## (##Service order) productively (that is, in order to create follow-up transactions), you must check and make the entries that are needed for transaction types and item categories (at header and item level) in copy control.

2-1-1 Try to create a service confirmation of the type Confirmation (transaction type ZSEC) as a follow-up transaction for the ##Service order you created in the previous exercise.

Choose Service Orders.

Choose Search → Service Orders.

Sold-To Party Name: ##Decot

Choose Search.

When the search result is displayed, choose the hyperlink to go to the details of your service order.

Choose Create Follow-Up. A dialog box is displayed.

No, it is not yet possible to create a follow-up transaction of the type Confirmation.

Explain why.

After a new transaction type has been set up, only transactions of type Contact or Task can be created without entries in copy control.

Copy control entries are required for all other types of follow-up transaction.

Page 80: CRM Fundamentals- II

© SAP AG TCRM20 3-68

2-1-2 In the Customizing activity Define Copying Control for Transaction Types, check whether the relevant entry for copying the source transaction type ZS## to the target transaction type ZSEC is missing.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Copying Control for Business Transactions → Define Copying Control for Transaction Types

Choose Position...

Source transaction type: ZS##

Choose ENTER.

The system moves to the line that is alphabetically closest to the transaction type ZS##. No entry with your transaction type exists (yet).

Add the missing entry.

Choose New Entries.

Source transaction type: ZS##

Target transaction type: ZSEC

Choose ENTER and save.

You do not have to make any additional settings because you do not use your own item category in ##Service order, the transaction Confirmation uses the standard item category SVCP, and the copy control entry ZSRP → SVCP already exists.

Page 81: CRM Fundamentals- II

© SAP AG TCRM20 3-69

2-1-3 Test your settings and create a transaction of the type Confirmation as a follow-up transaction for ZS## (##Service order). Make a note of the number.

Choose Service Orders.

Choose Search → Service Orders.

Sold-To Party Name: ##Decot

Choose Search.

When the search result is displayed, choose the hyperlink to go to the details of your service order.

Choose Create Follow-Up. A dialog box is displayed.

As well as the transactions of the type Contact and Task, you now have the option Sales → Confirmation.

Choose Confirmation.

In the Select Items dialog box, select the item(s) that you want to transfer.

Choose Choose.

Choose Save and note the transaction number.

___________________ [Data sheet]

2-1-4 Where can you find information about the transaction history?

The Transaction History assignment block contains information about preceding transactions and follow-up transactions.

Page 82: CRM Fundamentals- II

© SAP AG TCRM20 3-70

Page 83: CRM Fundamentals- II

© SAP AG TCRM20 3-71

Alternative Service Scenario: Solutions

3-1 Settings for text determination

3-1-1 Which text determination procedure is used in transactions of the type ##Service Order?

SAP Menu → Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

View the details of your transaction type ZS##.

The transaction type uses the text determination procedure SRV00002.

3-1-2 Take a look at the settings for this text determination procedure in Customizing.

What text types are used in the underlying text determination procedure?

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Text Management → Define Text Determination Procedure Select the text object CRM_ORDERH (Transaction Header)

Double-click the Procedure entry in the structure tree.

Select the entry SRV00002.

Double-click the Definition of Procedure entry in the structure tree.

The text types S001 (Problem description), S002 (Internal note) and S003 (Closing text) are used.

3-1-3 Is an access sequence assigned to one of the text types used?

No, an access sequence was not assigned to any of the text types.

Page 84: CRM Fundamentals- II

© SAP AG TCRM20 3-72

3-1-4 Copy the text determination procedure SRV00002. Enter ZTDP## as the text determination procedure ID and ##Text Determination Procedure as the description.

Navigate to Procedure in the structure tree.

Select the entry SRV00002 and choose Copy as… ( ).

Text determination procedure: ZTDP##

Dscrptn Proc.: ##Text determination procedure

Choose ENTER:

In the dialog box that appears, confirm that you want to copy all dependent entries.

Select the newly created text determination procedure and choose Definition of Procedure.

Also include the text type C003 (Recomm. solution) in the text determination procedure.

Choose New Entries.

Text Type: C003

Save your entries.

3-1-5 Assign the text determination procedure you created, ZTDP##, to your transaction type ZS## (##Service order).

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

Change the details of your transaction type ZS##.

Text determination procedure: ZTDP##

Save your entries.

3-1-6 Use the transaction type ZS## (##Service order) to test whether the text determination procedure and the text type work correctly.

Create a ##Service order and ensure that the new text type is in the Notes assignment block by creating a text of this type.

Yes, the new text type can be used in transactions of type ##Service order

Page 85: CRM Fundamentals- II

© SAP AG TCRM20 3-73

Alternative Service Scenario: Solutions

4-1 You want to ensure that the external reference field is maintained in service transaction ZS##. You want an error message to be displayed if no data is entered for the field. Create the incompleteness group ZG## with the description IC Group ## for your transaction. Maintain the incompleteness procedure ZP## with the description IC Procedure ##.

4-1-1 Define the incompleteness group ZG##.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Incompleteness → Define Incompleteness Procedure

In the dialog structure, go to

Incompleteness Group: Transaction/Item Choose New Entries. Create incompleteness group ZG## with the description IC Group ##.

Save your entries.

4-1-2 Assign the incompleteness group to your transaction type ZS##.

Assignment: Transaction Type – Incompleteness Group Search for your transaction type ZS## and assign incompleteness group ZG## to it.

4-1-3 Create incompleteness procedure ZP## with the description IC Procedure ##.

In the dialog structure, go to

Incompleteness Procedure Choose New Entries. Create incompleteness procedure ZP## with the description IC Procedure ##.

4-1-4 Enter the details for the incompleteness procedure and define the field as External Reference so that a warning is displayed if it is not filled. Save your data.

In the dialog structure, go to

Incompleteness Procedure: Detail, choose New Entries and enter the following:

Object Name: SALES

Field Name: PO_NUMBER_SOLD

Relevance: Header

Message Category: Warning

Business Transaction: INC1

Save your entries.

Page 86: CRM Fundamentals- II

© SAP AG TCRM20 3-74

4-1-5 Create a Determination incompleteness procedure. Enter ZG## in the Incompleteness Group: Transact field (incompleteness for transaction type) and leave the field for the business partner blank. Enter ZP## in the Procedure field.

In the dialog structure, go to Incompleteness Procedure: Determination, choose New Entries and enter the following:

Incompleteness Group: Transact.: ZG##

Procedure: ZP##

4-1-6 See if your incompleteness procedure works with business partner ##Decot. Create a new transaction of type ##Service order.

Is an error message displayed?

Yes, an error message is displayed if the external reference field is empty.

Page 87: CRM Fundamentals- II

© SAP AG TCRM20 4-1

SAP AG 2008

Activity Management: Overview Diagram

9. Pricing Fundamentals

10. CRM Billing

11. CRM Middleware

12. CRM WebClient UI

Appendix

Unit1. SAP CRM 2007 – Overview

2. Account Management

3. Organizational Management

4. Product Master

5. Transaction Processing

6. Activity Management

7. Partner Processing

8. Actions

Page 88: CRM Fundamentals- II

© SAP AG TCRM20 4-2

SAP AG 2008

Activity Management

Activity Management: Overview

Customizing Activities

Page 89: CRM Fundamentals- II

© SAP AG TCRM20 4-3

SAP AG 2008

Activity Management: Unit Objectives

At the end of this unit, you will be able to:

Define activities and activity management

Configure a transaction type for activities

Describe the survey integration

Describe groupware integration

Page 90: CRM Fundamentals- II

© SAP AG TCRM20 4-4

SAP AG 2008

Using different options in SAP CRM, you want to create and monitor various activities. You also want to create follow-up activities.You may have to make Customizing settings for activities in the future.

Activities: Business Scenario

Page 91: CRM Fundamentals- II

© SAP AG TCRM20 4-5

SAP AG 2008

Activity

Types of Activity

Task

Appointment

Interaction log

E-mail

Business Activities Tasks

Activities might be telephone calls, customer visits, general preparatory tasks, reminders of appointments (private and business-related), and so on.

There are four different types of activity in the application: Appointments, interaction logs, e-mails and tasks.

From a technical point of view, there are two leading business transaction categories for activities:

A business activity contains information about the interaction with the business partner on a particular date.

A task contains information about the activities that one or more employees have to complete by a particular date.

Page 92: CRM Fundamentals- II

© SAP AG TCRM20 4-6

SAP AG 2008

Structure of Activities

Details

Other assignment blocks

DescriptionAccount/contact personDate and timeCategoryImportanceStatus

Notes

Questionnaires

Actions

Dates

Attachments

Organization

Attendees

Activities are used to record business activities and tasks such as activities that are carried out on behalf of the company.

A business activity must have a partner, a start date and a finish date.

You use tasks when you want to create an activity that is not associated with a particular account. Like interactions, tasks can be public or private and can cover a wide range of possibilities, for example, the preparation of a customer presentation, or a reminder to buy a birthday card. If you mark a task as private, it cannot be viewed by other users.

The category that is assigned to the activity (transaction type) determines where this activity can be created in the application. For example,

The category 202 (Incoming Call) is assigned to the transaction type 0003 (Outgoing Phone Call).

The class Interaction Log is assigned to the category 202 (Incoming Call).

The application displays the transaction "Outgoing Phone Call" if the employee chooses Create → Interaction Log.

Page 93: CRM Fundamentals- II

© SAP AG TCRM20 4-7

SAP AG 2008

Customizing Activities

Other settingsCategory (class: appointment; e-mail; task; interaction log)Relevance to calendarPrivate appointments allowedDefault data: priority; goal; direction; subject profile

Interaction

Business transaction attributes and characteristics:Leading business transaction category: interactionProfiles and procedures: organizational data; dates

Transaction type, for example 0001 (Visit)

Assign business transaction categories

Customizing at header level

Activities are CRM business transactions and are controlled using transaction types. There are transaction settings that are activity-specific such as categories, goals, priorities and activity reasons.

SAP Implementation Guide → Customer Relationship Management → Transactions → Settings for Activities → Maintain Categories, Goals and Priorities

If required, product entries can be allowed in activities. Activity-specific item categories are needed for this.

Also, activity journals have to be set up (see the next slide).

Page 94: CRM Fundamentals- II

© SAP AG TCRM20 4-8

SAP AG 2008

Creation of a follow-up activity

Customer visitOrder

CustomerProduct...

Activities can always be created as follow-up transactions.

Customizing copy control is possible, but not necessary.

Follow-Up Activities

Telephone call

Creation of a follow-up activity

ContractCustomer...

Copy control

You can copy an existing business transaction and use it as the basis for a subsequent transaction. You then have two options: Create a follow-up transaction.

Copy a business transaction. In this case, the system creates a copy of the transaction currently in use and displays it for processing. When the copied transaction is saved, the transaction history is not updated, that is, the copied transaction has no connection to the reference document.

Copy control Customizing is not required to create a follow-up transaction.

When you copy an activity, the system produces a copy of the activity you requested and displays it for processing. When the copied transaction is saved, the transaction history is not updated, that is, the copied process does not have a reference to the reference document.

Page 95: CRM Fundamentals- II

© SAP AG TCRM20 4-9

SAP AG 2008

Transaction

Integration of Questionnaires

Customer surveys

Customer visit evaluationCustomer satisfaction surveys, and so on

The Survey Suite

SurveySurvey

Survey

Transaction type

Validity period

Category

Status

Sales organization

Distribution channel

Division

Territory hierarchy ID

Active indicator

Multiple assignment

The questionnaire in the activity is based on the Survey Tool. You can use the questionnaire for all question and answer formats that help maintain your customer relationships. The following examples show how the questionnaire can be used:

A telephone call script that leads you through the conversation with the customer

A customer feedback form

Sales call reports for your sales employees

Surveys can also be evaluated in the SAP CRM system.

You can find the Customizing settings in the IMG under Transactions → Settings for Activities → Questionnaires.

The transaction code for the CRM Survey Suite is CRM_SURVEY_SUITE.

Questionnaires are also used for transactions of the type lead, opportunity and in-house repair.

Page 96: CRM Fundamentals- II

© SAP AG TCRM20 4-10

SAP AG 2008

Activity Journals

With activity journals, you can record and update?information gathered from customer visits or telephone calls.

Activity journals can contain:

Products or product categories

Product-related information such as what products were discussed with the customer, or the number of samples given to the customer

Activity Journal

Product Discussed Number of Samples PriorityXT-2006 8 HighXT-2007 2 Medium

NotesCustomer is considering ordering XT-2006 in second quarter of 2007.

The information in the activity journal may or may not be product-related. An activity journal can contain the following information: Type and number of products discussed with customers or samples handed out to customers, for

example, in the pharmaceuticals industry

Position of products in store, for example, whether they are placed on the promotional shelf, at the check-out or near the store entrance

Customer feedback

The information gathered in activity journals can be used to:

Track the distribution of samples in the pharmaceuticals industry

Analyze sales data, for example, number of products handed out to customers

Track the progress of your sales team, for example, the number of discussions held with customers and the result of these discussions

To enable product entries in activities, you must make entries in the Customizing activity for the item category determination.

You may define additional fields for activity journals.

Examples: transaction type 0020; item categories ACT, ACT0 and ACT1

Page 97: CRM Fundamentals- II

© SAP AG TCRM20 4-11

SAP AG 2008

Integration of the Calendar – Integration of Client's Groupware

Prerequisites for a calendar entry in the SAP CRM system:The calendar indicator for each transaction type (main switch)

The calendar indicator for each partner function (partner determination procedure)

Synchronization with groupware (client)

Appointment or task in groupware with specific category

You can synchronize CRM activities with groupware calendars so that CRM business activities are displayed in other applications such as Microsoft Outlook. This is an additional function to synchronizing normal appointments from the SAP calendar.

Prerequisite: The SAP CRM replication tool must be installed on each PC locally.

Supported groupware solutions:

Microsoft Outlook 2003 and 2007

Lotus Notes 6.5 and 7.0

The CRM business activity must be assigned to a user. All SAP users must also have SAPoffice users and a user in the Outlook calendar.

Page 98: CRM Fundamentals- II

© SAP AG TCRM20 4-12

SAP AG 2008

Groupware Integration on Servers

CRM business activities and tasks

Groupwareserver

There is a bidirectional data exchange between SAP CRM and groupware solutionsServer-based for:

Tasks

Business activities

Contact partners→ Groupware: business activity(CRM → Groupware)

You can integrate CRM activity management with groupware applications (Microsoft Outlook and Lotus Notes). This means that you can synchronize business activities and tasks in your CRM calendar and groupware calendar. Data is exchanged in both directions. This means that you can display activities and the corresponding data that you have maintained in the CRM system (such as date, time, location and business partners involved) in your own office management system, and vice versa. This allows you to work more quickly and effectively because you do not have to keep referring back to your CRM calendar or your groupware calendar to check your appointments and tasks.

Groupware integration with CRM Enterprise is server-based, meaning the data is exchanged automatically in the background, without having to be triggered by the user.

The SAP Groupware Adapter on the CRM server supports the transformation of messages. It is based on SyncPoint technology.

BDoc messages are transformed into standard groupware formats (such as iCalendar and vCard) by a generic groupware adapter that uses a sophisticated XSLT mapping framework (known as the MapBox ).

SAP Groupware Connectors, which are separate from the CRM server, manage the message synchronization between the CRM server and the groupware server. Message transfer is performed using a reliable and open messaging interface based on XML-SOAP. The standard groupware object formats are transformed into special groupware object formats.

Page 99: CRM Fundamentals- II

© SAP AG TCRM20 4-13

SAP AG 2008

Activity Analyses

My ActivitiesMy Department's ActivitiesMy Colleague's Activities

Business Partner ID to

Not completedCompletedAll

Activity Date to

Business Activities TasksBoth

Organizational Data

... ...

Activity Monitor BI Content

Activity/passivity analysis

Success/failure analysis

Intensity of customer care

Activity history

My team's planned activities

Distribution of activities per organizational unit

Activity partner with open activities

...

SAP GUI

The activity monitor can be called by choosing SAP Menu Activities Activity Monitor . The activity monitor allows you to select activities using various criteria. You can adjust the list that is displayed using the SAP List Viewer (ALV) function.

For more information about this analysis and other analyses, see the documentation in SAP Library under SAP NetWeaver BI Content Customer Relationship Management CRM Analytics Cross-Scenario Analyses Activity Analysis.

Page 100: CRM Fundamentals- II

© SAP AG TCRM20 4-14

SAP AG 2008

Activity Management: Unit Summary

You are now able to:

Define activities and activity management

Configure a transaction type for activities

Describe the survey integration

Describe groupware integration

Page 101: CRM Fundamentals- II

© SAP AG TCRM20 4-15

Exercises

Unit: Activity Management Topic: Activities and the Related Customizing

At the conclusion of this exercise, you will be able to:

• Create a new transaction type for activities

• Create and edit an activity and follow-up activity.

You want to become more familiar with the activity maintenance in the CRM system for your trade fair business. You set up a new transaction type of the type trade fair activities and familiarize yourself with a number of functions in the activity maintenance.

1-1 For the customer visits that result from the trade fair activities, you set up a separate Trade Fair Activity in the system as a new transaction type with certain default values.

1-1-1 In Customizing, maintain the new goal Z## with the description ##Trial Order.

1-1-2 In Customizing, define the new category Y## with the description ##Appointment for the activities and assign it the Appointment class.

1-1-3 Copy the existing transaction type 0001 (Interaction Log), and enter ZB## as the transaction type and ##Trade Fair Visit as the name and long description.

a) Assign the organizational data profile ZTACADEMY and the action profile ACTIVITY to the new transaction type.

b) In the Customizing header area, assign your new goal ZB## to the new category Y## and set the priority to High.

c) A ##Trade Fair Visit should be relevant for the calendar. It should not be possible to create a private ##Trade Fair Visit. Set and check the corresponding indicators.

1-1-4 Now test the new transaction type by creating an activity of the type ##Trade Fair Visit for a week from today, 2.00-3.00 p.m. Use First ##Visit after trade fair as the description and ##Decot as the account.

a) Check whether the system’s default entries for priority and goal are correct.

b) Can you make the activity private?

c) Can you find the activity in the calendar of the sales representative or employee responsible? Both partners should contain employee names that are assigned your CRM logon user.

Page 102: CRM Fundamentals- II

© SAP AG TCRM20 4-16

1-2 Create a follow-up activity with questionnaire support.

1-2-1 Create a follow-up activity to the Trade Fair Activity with transaction type Survey Activity.

Use Survey of ##Decot as the description and choose a suitable date in the future.

Fill out the survey you created earlier.

Save the activity.

___________________ [Data sheet]

Page 103: CRM Fundamentals- II

© SAP AG TCRM20 4-17

Alternative Service Scenario: Exercises

1-1 For the customer visits that result from the trade fair activities, you set up a separate Trade Fair Activity in the system as a new transaction type with certain default values.

1-1-1 In Customizing, maintain the new goal Z## with the description ##Trial Order.

1-1-2 In Customizing, define the new category Y## with the description ##Appointment for the activities and assign it the Appointment class.

1-1-3 Copy the existing transaction type 0001 (Interaction Log), and enter ZB## as the transaction type and ##Trade Fair Visit as the name and long description.

a) Assign the organizational data profile ZTACADEMY and the action profile ACTIVITY to the new transaction type.

b) In the Customizing header area, assign your new goal ZB## to the new category Y## and set the priority to High.

c) A ##Trade Fair Visit should be relevant for the calendar. It should not be possible to create a private ##Trade Fair Visit. Set and check the corresponding indicators.

1-1-4 Now test the new transaction type by creating an activity of the type ##Trade Fair Visit for a week from today, 2.00-3.00 p.m. Use First ##Visit after trade fair as the description and ##Decot as the account.

a) Check whether the system’s default entries for priority and goal are correct.

b) Can you make the activity private?

c) Can you find the activity in the calendar of the sales representative or employee responsible? Both partners should contain employee names that are assigned your CRM logon user.

1-2 Create a follow-up activity with questionnaire support.

1-2-1 Create a follow-up activity to the Trade Fair Activity with transaction type Survey Activity.

Use Survey of ##Decot as the description and choose a suitable date in the future.

Fill out the survey you created earlier.

Save the activity.

___________________ [Data sheet]

Page 104: CRM Fundamentals- II

© SAP AG TCRM20 4-18

Page 105: CRM Fundamentals- II

© SAP AG TCRM20 4-19

Solutions

Unit: Activity Management Topic: Activities and the Related Customizing

1-1 For the customer visits that result from the trade fair activities, you set up a separate Trade Fair Activity in the system as a new transaction type with certain default values.

1-1-1 In Customizing, maintain the new goal Z## with the description ##Trial Order.

Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Settings for Activities → Maintain Categories, Goals and Priorities → Maintain Goals

Choose New Entries.

Goal: Z##

Description: ##Trial Order

Save your entries and choose back twice to return to the IMG menu.

1-1-2 In Customizing, define the new category Y## with the description ##Appointment for the activities and assign it the Appointment class.

SAP Implementation Guide → Customer Relationship Management → Transactions → Settings for Activities → Maintain Categories, Goals and Priorities → Maintain Categories

Choose New Entries.

Category: Y##

Description: ##Appointment

Class: Appointment

Save your entries.

Page 106: CRM Fundamentals- II

© SAP AG TCRM20 4-20

1-1-3 Copy the existing transaction type 0001 (Interaction Log), and enter ZB## as the transaction type and ##Trade Fair Visit as the name and long description.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

Select ( ) transaction type 0001 (Interaction Log) and choose Copy as… ( ).

Transaction Type: ZB##

Short Description: ##Trade Fair Visit

Long Description: ##Trade Fair Visit

Choose ENTER to execute copying and confirm the dialog box.

a) Assign the organizational data profile ZTACADEMY_## and the action profile ACTIVITY to the new transaction type.

Select the new transaction type and choose Details( ).

Organizational Data Profile: ZTACADEMY##

Action Profile: ACTIVITY.

b) In the Customizing header area, assign your new goal ZB## to the new category Y## and set the priority to High.

In the dialog structure, double-click Assignment of Business Transaction Categories.

Select the Business Activity transaction category and double-click Customizing header in the dialog structure.

Goal: ##Trial Order.

c) A ##Trade Fair Visit should be relevant for the calendar. It should not be possible to create a private ##Trade Fair Visit. Set and check the corresponding indicators.

The default settings of the indicators already meet your requirements.

Page 107: CRM Fundamentals- II

© SAP AG TCRM20 4-21

1-1-4 Now test the new transaction type by creating an activity of the type ##Trade Fair Visit for a week from today, 2.00-3.00 p.m. Use First ##Visit after trade fair as the description and ##Decot as the account.

Choose Activities.

Choose Create → Appointment.

Description: First ##Visit after trade fair

Account: ##Decot

Start Date/Time: <one week from today: 14:00>

End Date/Time: <one week from today: 15:00>

a) Check whether the system’s default entries for priority and goal are correct.

The fields are displayed and prefilled in the Appointment: Details assignment block.

In standard SAP systems, the Goal field is not displayed in the user interface.

b) Can you make the activity private?

No. The indicator is grayed-out because of the default setting and is not ready for input.

c) Can you find the activity in the calendar of the employee responsible?

Choose Calendar.

Choose Week.

Choose Next Week.

The appointment is displayed.

Page 108: CRM Fundamentals- II

© SAP AG TCRM20 4-22

1-2 Create a follow-up activity with survey support.

1-2-1 Create a follow-up activity to the Trade Fair Activity with transaction type Survey Activity.

Use Survey of ##Decot as the description and choose a suitable date in the future.

Find the activity that you created using the calendar entry (for example).

Choose More → Follow-up.

Choose Survey Activity.

Description Survey of ##Decot

Start date: Two weeks from today

Time From/To: 10:00 10:10

Fill out the survey.

Open the Questionnaires assignment block.

Choose Action Edit ( ) to fill out the survey.

Fill out the survey with answers of your choice.

Choose Back.

Choose Save.

___________________ [Data sheet]

Page 109: CRM Fundamentals- II

© SAP AG TCRM20 4-23

Alternative Service Scenario: Solutions

1-1 For the customer visits that result from the trade fair activities, you set up a separate Trade Fair Activity in the system as a new transaction type with certain default values.

1-1-1 In Customizing, maintain the new goal Z## with the description ##Trial Order.

Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Settings for Activities → Maintain Categories, Goals and Priorities → Maintain Goals

Choose New Entries.

Goal: Z##

Description: ##Trial Order

Save your entries and choose back twice to return to the IMG menu.

1-1-2 In Customizing, define the new category Y## with the description ##Appointment for the activities and assign it the Appointment class.

SAP Implementation Guide → Customer Relationship Management → Transactions → Settings for Activities → Maintain Categories, Goals and Priorities → Maintain Categories

Choose New Entries.

Category: Y##

Description: ##Appointment

Class: Appointment

Save your entries.

Page 110: CRM Fundamentals- II

© SAP AG TCRM20 4-24

1-1-3 Copy the existing transaction type 0001 (Interaction Log), and enter ZB## as the transaction type and ##Trade Fair Visit as the name and long description.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

Select ( ) transaction type 0001 (Interaction Log) and choose Copy as… ( ).

Transaction Type: ZB##

Short Description: ##Trade Fair Visit

Long Description: ##Trade Fair Visit

Choose ENTER to execute copying and confirm the dialog box.

a) Assign the organizational data profile ZTACADEMY_## and the action profile ACTIVITY to the new transaction type.

Select the new transaction type and choose Details( ).

Organizational Data Profile: ZTACADEMY##

Action Profile: ACTIVITY.

b) In the Customizing header area, assign your new goal ZB## to the new category Y## and set the priority to High.

In the dialog structure, double-click Assignment of Business Transaction Categories.

Select the Business Activity transaction category and double-click Customizing header in the dialog structure.

Goal: ##Trial Order.

c) A ##Trade Fair Visit should be relevant for the calendar. It should not be possible to create a private ##Trade Fair Visit. Set and check the corresponding indicators.

The default settings of the indicators already meet your requirements.

Page 111: CRM Fundamentals- II

© SAP AG TCRM20 4-25

1-1-4 Now test the new transaction type by creating an activity of the type ##Trade Fair Visit for a week from today, 2.00-3.00 p.m. Use First ##Visit after trade fair as the description and ##Decot as the account.

Choose Basic Functions. This is optional because you can also use the quick creation entries in the navigation bar.

Choose Create → Appointment.

Description: First ##Visit after trade fair

Account: ##Decot

Start Date/Time: <one week from today: 14:00>

End Date/Time: <one week from today: 15:00>

a) Check whether the system’s default entries for priority and goal are correct.

The fields are displayed and prefilled in the Appointment: Details assignment block.

In standard SAP systems, the Goal field is not displayed in the user interface.

b) Can you make the activity private?

No. The indicator is grayed-out because of the default setting and is not ready for input.

c) Can you find the activity in the calendar of the employee responsible?

Choose Calendar.

Choose Week.

Choose Next Week.

The appointment is displayed.

Page 112: CRM Fundamentals- II

© SAP AG TCRM20 4-26

1-2 Create a follow-up activity with questionnaire support.

1-2-1 Create a follow-up activity to the Trade Fair Activity with transaction type Survey Activity.

Use Survey of ##Decot as the description and choose a suitable date in the future.

Find the activity that you created using the calendar entry (for example).

Choose More → Follow-up.

Choose Survey Activity.

Description Survey of ##Decot

Start date: Two weeks from today

Time From/To: 10:00 10:10

Fill out the survey you created earlier.

Open the Questionnaires assignment block.

Choose Action Edit ( ) to fill out the survey.

Fill out the survey with answers of your choice.

Choose Back.

Choose Save.

___________________ [Data sheet]

Page 113: CRM Fundamentals- II

© SAP AG TCRM20 5-1

SAP AG 2008

Partner Processing: Overview Diagram

9. Pricing Fundamentals

10. CRM Billing

11. CRM Middleware

12. CRM WebClient UI

Appendix

Unit1. SAP CRM 2007 – Overview

2. Account Management

3. Organizational Management

4. Product Master

5. Transaction Processing

6. Activity Management

7. Partner Processing

8. Actions

Page 114: CRM Fundamentals- II

© SAP AG TCRM20 5-2

SAP AG 2008

Partner Processing

Partner Processing - Application

Partner Processing - Customizing

Page 115: CRM Fundamentals- II

© SAP AG TCRM20 5-3

SAP AG 2008

Partner Processing: Unit Objectives

At the end of this unit, you will be able to:Explain the options and functions associated with partner processing in business transactions

Create a partner determination procedure in Customizing

Describe access sequences, create them in Customizing and use them in the partner determination procedure

Page 116: CRM Fundamentals- II

© SAP AG TCRM20 5-4

SAP AG 2008

In transaction processing, you want to ensure that the business partners involved in a transaction are automatically determined by the system.

Partner Processing: Business Scenario

Page 117: CRM Fundamentals- II

© SAP AG TCRM20 5-5

SAP AG 2008

Partner Processing: Motivation

Which external partners are involved -for example, supplier,

payer?

Which internal partners are involved -

for example, responsible employees, service technician groups?

Which partners must be involved in a

business transaction?

Are individual partners found automatically?

Where does the system look for

involved partners?

Transaction

Partner determination controls business partner processing in transaction processing. Partner data can be checked for correctness using rules defined in Customizing. In this way, the user creates complete, consistent transactions.

All transactions in CRM involve business partners. Partner processing allows you to work with these partners efficiently and consistently.

Partner processing includes partner determination, the procedure with which the system automatically finds and enters partners in transactions.

Partner processing allows you to define partners with your company’s terminology. It also lets you specify exactly how partners are handled in transactions and how SAP CRM and SAP ECC exchange partner processing information.

Page 118: CRM Fundamentals- II

© SAP AG TCRM20 5-6

SAP AG 2008

Create transaction1.

Enter main partner/objectActivity partnerSold-to partyProspectInstallation component/object

2.

3. The partners involved are determined by the system. Contact personShip-to partyService technician group

Automatic Partner Processing

ENTER

Account

During transaction processing, the main business partner or technical object (installation component or object) is specified. During sales, this is usually the sold-to party; during an opportunity, this is the sales prospect.

Partner processing ensures that other partners involved in the transaction are determined automatically by the system.

In the case of a sales transaction, for example, these other partners are the ship-to party, the bill-to party and the payer.

In the case of an opportunity, for example, these other partners are the contact person(s) of the sales prospect and the (own) responsible employees.

Page 119: CRM Fundamentals- II

© SAP AG TCRM20 5-7

SAP AG 2008

Partner Processing in the Application

1. Mandatory partner

2. Automatic partner search

3. Manually changeable/alternative

4. Partner determination at item level also

In a transaction, partners can be determined at both header and item level. 1. Which partners must be involved in the transaction?

It is possible to define that certain partners are mandatory for a business transaction. If the determination fails or no partner was entered manually by the user, the business transaction will result in an error.

2. Are partners determined automatically?

Using access sequences (search strategies) it is possible to automatically determine partners.

3. Manually changeable

Users can change partners that were determined automatically if this setting is made for the appropriate partner function in Customizing.

Under exceptional circumstances, you can choose Alternative proposals to restart the partner search (for example, after the change of other involved partners).

4. Partners are also determined at item level.

It is possible that different partners are determined at item and header levels. For example, an employee responsible might be found due to the product category. This means that you must enter a partner determination procedure in the corresponding item categories.

Page 120: CRM Fundamentals- II

© SAP AG TCRM20 5-8

SAP AG 2008

Partner Function Category

Partner Function Category

Partner FunctionPartner

FunctionPartner

DeterminationProcedure

PartnerDeterminationProcedure

AccessSequenceAccess

Sequence

Partner ProcessingPartner Processing

Transactions

Business Partners

Transactions

Business Partners

Partner Processing in Customizing

Partner function category: This classification of responsibilities is used as a system key for identifying the partner function and the business partners who take on these responsibilities. The SAP CRM system includes SAP predefined partner function categories that cannot be changed or created again. For example, the customer partner function has the partner function category sold-to party.

Partner function: The partner functions describe the people with whom you do business. Customers can also be referred to as sold-to parties, clients, patients or tenants. Partner functions describe those partners that you use in your organization. You can assign names freely.

Partner determination procedure: Rules that determine how the system works with business partners during transaction processing. This procedure combines partner functions and access sequences and contains additional information.

Access sequence: A search strategy for determining the data sources the system uses for partner determination and the order in which the sources are used.

Page 121: CRM Fundamentals- II

© SAP AG TCRM20 5-9

SAP AG 2008

Partner Function Categories and Partner Functions

Partner function categoryEmployee

Partner functionArea manager

Partner functionSalesperson

Partner functionService employee

Relationship category

Lock

Relationship category

Lock

Relationship category

Lock

Partner functions are freely definable. Partner function categories are predefined.

Partner function categories are predefined "classifications" and are assigned partner functions. The system uses these categories to identify and work with partner functions.

Partner functions are defined in Customizing.

SAP Implementation Guide Customer Relationship Management Basic Functions Partner Processing Define Partner Functions.

When you define a partner function, you can assign a (corresponding) relationship category. This relationship category corresponds to the business partner relationship category.

For example, the relationship category is responsible for is assigned to the partner function Employee responsible.

If an access sequence is defined for determining the employee responsible from the business partner relationships, then the corresponding person must be assigned with the relationship category (is responsible to/is responsible for).

Lock: specifies whether the source partner for a partner determination is added to the results list of that determination.

For example, if the lock field is set for the contact person partner function, the sold-to party is not determined as its own contact person in a sales transaction. If, on the other hand, the lock field is not set, the sold-to party can also appear as the contact person function in the transaction.

Page 122: CRM Fundamentals- II

© SAP AG TCRM20 5-10

SAP AG 2008

The partner determination procedure basically specifies which partner functions can be found automatically in a transaction.

Partner determination procedure Telesales

Partner functions

Sold-to party

Ship-to party

Bill-to party

Payer

Employee responsible

Settings for each partner function

Min./Max. number

Can partner be changed in transaction?

Which search strategy should be used?

Which address?

Can the address be changed?

Calendar maintenance/relevance

Partner Determination Procedure

Procedure user

Interface settings

Partner determination procedures are defined in Customizing. SAP Implementation Guide Customer Relationship Management Basic Functions Partner

Processing Define Partner Determination Procedure

A partner determination procedure can be assigned to a transaction type and an item category. A partner determination procedure consists of three levels:

Procedure user (for example, sales transaction, service transaction, opportunity)

Partner functions in the procedure (for example, sold-to party, employee responsible)

To prevent every partner function that is defined in the system and corresponding partners from being included in transactions, make the setting Permitted Functions = Only Functions Assigned in Procedure.

The determination time can be set for each partner function. However, partner determination occurs only before the initial save. If a transaction is saved and then subsequently altered, no new partner processing (determination) takes place.

A simpler form of the partner determination procedure is used during installation management and Case Management.

Page 123: CRM Fundamentals- II

© SAP AG TCRM20 5-11

SAP AG 2008

An access sequence is a search strategy that provides the data sources and the order in which the system checks them during partner processing.

Sold-to party Access sequence 0001

Ship-to party Access sequence 0002

Contact person Access sequence 0003

Employee resp. Access sequence 0004

Access 10: Preceding document

Access 20: Territory Management

Access 30: Organizational model

Access 40: Relationships

Access Sequences

Partner det. proc. Telesales

Partner Functions

Access sequence 0004

Logon user (employee)

Installation component

Pricing hierarchy

Business Add-Ins

Other possible sources

Access sequences are defined in Customizing. SAP Implementation Guide Customer Relationship Management Basic Functions Partner

Processing Define Access Sequences

In the partner determination procedure, you can select which access sequence should be used to determine the partner for each partner function. If there is no access sequence in the partner determination procedure for a partner function, you can enter the partner manually.

Customer-specific sources can be defined in the form of BAdI methods.

BAdI definition COM_PARTNER_BADI

Page 124: CRM Fundamentals- II

© SAP AG TCRM20 5-12

SAP AG 2008

PrecedingDocumentPrecedingDocument

OrganizationalData

OrganizationalData

Business PartnerRelationships

Business PartnerRelationships Current PartnersCurrent Partners

Partner FunctionsPartner Functions

Partner Determination ProcedurePartner Determination Procedure

Transaction TypeTransaction TypeCustomizingSettings

Process inSAP CRM

Partner Processing: Overview

Access SequencesAccess Sequences

In Customizing, the business transaction (for example, quotation, order, service contract) is assigned to the transaction type Business transaction types.

Procedure users are assigned to the partner determination procedure.

The business transaction type and procedure user must match in order to assign a partner determination procedure to a transaction type.

Page 125: CRM Fundamentals- II

© SAP AG TCRM20 5-13

SAP AG 2008

Partner Processing: Unit Summary

You are now able to:Explain the options and functions associated with partner processing in business transactions

Create a partner determination procedure in Customizing

Describe access sequences, create them in Customizing and use them in the partner determination procedure

Page 126: CRM Fundamentals- II

© SAP AG TCRM20 5-14

Page 127: CRM Fundamentals- II

© SAP AG TCRM20 5-15

Exercises

Unit: Partner Processing Topic: Analyze and Set Up Partner Processing

At the conclusion of this exercise, you will be able to:

• Describe and explain the fundamental concepts of CRM partner processing

• Create both a partner determination procedure and a sequence access in Customizing

Within your trade fair business framework, you want to set up partner processing for the transaction type ##Quotation according to your own requirements. You want to utilize business partner relationships and enter the contact persons in the document as partners.

1-1 Analyze partner processing for the sales transaction ##Quotation in Customizing. At the same time, create a quotation with transaction type ##Quotation in the CRM WebClient UI. Use the business partner ##Decot as the sold-to party.

1-1-1 Which partner functions were automatically found by the system for this particular sales transaction?

_______________________________________

_______________________________________

_______________________________________

_______________________________________

_______________________________________

Does the system also determine a contact person?

1-1-2 What access sequence is used to search for the employee responsible?

_______________________

1-1-3 Can you maintain other partners in the transaction manually? If so, do this.

Page 128: CRM Fundamentals- II

© SAP AG TCRM20 5-16

1-2 Set up partner processing. You want to use a partner determination procedure for the transaction of the type ##Quotation that will determine at least one of the customer’s contact persons.

1-2-1 Copy the partner determination procedure Telesales (00000001) with all its dependent entries to ZPS##. Name the new partner determination procedure PartnerDetProc ##.

1-2-2 Create a new access sequence ZZ##, ##Sold-To Party – Relationships with individual accesses and which searches for a partner within the relationships maintained in the business partner master record. Enter 10 for the batch and dialog sequences, Business partner relationships as the source, and Sold-to Party (CRM) as the partner function.

1-2-3 Add the partner function Contact Person (CRM ), which the system finds automatically, to the partner determination procedure ZPS##.

The partner function Contact Person (CRM) should occur at least once and no more than three times.

For determination, use the access sequence ##Sold-to Party - Relationships, which you created in the previous exercise.

You do not have to maintain the remaining fields.

1-2-4 Make sure that the address usage Goods receipt for partner function Ship-to party is used. For all other partner functions the standard address should be determined within transactions.

1-2-5 Assign the partner determination procedure ZPS## to transaction type ZA## (##Quotation).

1-2-6 Test the new partner determination procedure by creating the sales transaction ##Quotation. Does the system now determine the contact person who was stored as a relationship to the business partner (see Business Partners exercises)?

____________________________

Page 129: CRM Fundamentals- II

© SAP AG TCRM20 5-17

1-3 Comprehension questions on partner processing

1-3-1 What concept or construct makes partner processing particularly flexible? Explain why.

_____________________________________________________

_____________________________________________________

_____________________________________________________

_____________________________________________________

1-3-2 Can you define your own partner functions in Customizing?

___________________________

1-3-3 Can you define your own partner function categories?

___________________________

1-3-4 What (business partner) relationship category is evaluated if you try to determine the partner function Employee responsible using an access sequence that searches in the business partner’s relationships?

Optional: Test this by assigning the access sequence ZZ## to the partner function Employee responsible. Afterwards, maintain the corresponding relationship for the business partner ##Decot and use an existing employee, for example, Lou Windham (employee ID 400440).

Page 130: CRM Fundamentals- II

© SAP AG TCRM20 5-18

Page 131: CRM Fundamentals- II

© SAP AG TCRM20 5-19

Alternative Service Scenario: Exercises

1-1 Analyze partner processing for the service transaction ##Service Order in Customizing. At the same time, create a quotation with transaction type ##Service Order in the CRM WebClient UI. Use the business partner ##Decot as the sold-to party.

1-1-1 Which partner functions were automatically found by the system for this particular service transaction?

_______________________________________

_______________________________________

_______________________________________

_______________________________________

_______________________________________

_______________________________________

_______________________________________

Does the system also determine a contact person?

Is it Michele ##Contact?

1-1-2 What access sequence is used to search for the employee responsible?

_______________________

1-1-3 Can you manually maintain additional partners in the partner view? If so, do this.

Page 132: CRM Fundamentals- II

© SAP AG TCRM20 5-20

1-2 Set up partner processing. You want to use a partner determination procedure for the transaction of the type ##Service Order that will determine the contact person Michele ##Contact.

1-2-1 Copy the partner determination procedure Service Order Header (ZTSRVH01) with all its dependent entries to ZPS##. Name the new partner determination procedure PartnerDetProc ##.

1-2-2 Create a new access sequence ZZ##, ##Sold-To Party – Relationships with individual accesses and which searches for a partner within the relationships maintained in the business partner master record. Enter 10 for the batch and dialog sequences, Business partner relationships as the source, and Sold-to Party (CRM) as the partner function.

1-2-3 Change the ZPS## partner determination procedure and assign the access sequence you just created to the Contact person (CRM) partner function.

In addition to this, the partner function Contact Person (CRM) should occur at least once and no more than three times.

1-2-4 Assign the partner determination procedure ZPS## to transaction type ZS## (##Service Order).

1-2-5 Test the new partner determination procedure by creating the service transaction ##Service Process. Does the system determine the contact person who was stored as a relationship to the business partner (see the business partners exercises)?

____________________________

Page 133: CRM Fundamentals- II

© SAP AG TCRM20 5-21

1-3 Comprehension questions on partner processing

1-3-1 What concept or construct makes partner processing particularly flexible? Explain why.

_____________________________________________________

_____________________________________________________

_____________________________________________________

_____________________________________________________

1-3-2 Can you define your own partner functions in Customizing?

___________________________

1-3-3 Can you define your own partner function categories?

___________________________

1-3-4 What (business partner) relationship category is evaluated if you try to determine the partner function Employee responsible using an access sequence that searches in the business partner’s relationships?

Optional: Test this by assigning the access sequence ZZ## to the partner function Employee responsible. Afterwards, maintain the corresponding relationship for the business partner ##Decot and use an existing employee, for example, Lou Windham (employee ID 400440).

Page 134: CRM Fundamentals- II

© SAP AG TCRM20 5-22

Page 135: CRM Fundamentals- II

© SAP AG TCRM20 5-23

Solutions

Unit: Partner Processing Topic: Analyze and Set Up Partner Processing

1-1 Analyze partner processing for the sales transaction ##Quotation in Customizing.

At the same time, create a quotation with transaction type ##Quotation in the CRM WebClient UI. Use the business partner ##Decot as the sold-to party.

1-1-1 Which partner functions were automatically found by the system for this particular sales transaction?

SAP Menu → Architecture and Technology → Configuration → Customizing Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

The partner determination procedure 00000001 is assigned to transaction type AG (Quotation ERP).

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure The partner determination procedure 00000001 contains the following seven partner functions:

Sold-to party, ship-to party, bill-to party, payer, sales manager, sales employee, and employee responsible.

Does the system also determine a contact person?

The partner function Contact Person (CRM) is not determined automatically because it is not listed in the partner determination procedure.

Page 136: CRM Fundamentals- II

© SAP AG TCRM20 5-24

1-1-2 What access sequence is used to search for the employee responsible?

IMG → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure

Double-click Partner Functions in Procedure in the dialog structure on the left-hand side.

Select the Employee responsible partner function.

Choose Details ( ).

IDES. form /user (technical key Z006)

1-1-3 Can you maintain other partners in the transaction manually? If so, do this.

Go to the CRM WebClient UI and choose Edit List in the Parties Involved assignment block.

Choose Insert.

Choose the Sales manager function and enter the name Mark Freeman (number 406122).

Choose Back.

Page 137: CRM Fundamentals- II

© SAP AG TCRM20 5-25

1-2 Set up partner processing. You want to use a partner determination procedure for the transaction of the type ##Quotation that will determine at least one of the customer’s contact persons.

1-2-1 Copy the partner determination procedure Telesales (00000001) with all its dependent entries to ZPS##. Name the new partner determination procedure PartnerDetProc ##.

IMG → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure

Select the entry 00000001 (Telesales) and choose Copy As. Confirm the dialog box and copy all dependent entries. Name the new partner determination procedure PartnerDetProc ##.

Save your data and go back to the IMG.

1-2-2 Create a new access sequence ZZ##, ##Sold-To Party – Relationships with individual accesses and which searches for a partner within the relationships maintained in the business partner master record. Enter 10 for the batch and dialog sequences, Business partner relationships as the source, and Sold-to Party (CRM) as the partner function.

IMG → Customer Relationship Management → Basic Functions → Partner Processing → Define Access Sequences

Choose New Entries and enter ZZ## as the ID and ##Sold-To Party – Relationships as the description.

Select the new access sequence and choose Individual Accesses.

Choose New Entries.

Enter the following data:

Batch Sequence: 10

Dialog Sequence: 10

Source: Business Partner Relationships

Partner function: Sold-to Party (CRM)

Save the data and go back to the Implementation Guide.

Page 138: CRM Fundamentals- II

© SAP AG TCRM20 5-26

1-2-3 Add the partner function Contact Person (CRM ), which the system finds automatically, to the partner determination procedure ZPS##.

The partner function Contact Person (CRM) should occur at least once and no more than three times.

For determination, use the access sequence ##Sold-to Party - Relationships, which you created in the previous exercise.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure Select the partner determination procedure ZPS## then double-click Partner Functions in Procedure. Choose New Entries.

Partner function: Contact person (CRM)

Number of Occurrences (Lowest): 1

Number of Occurrences (Highest): 1

Access Sequence ##Sold-To Party – Relationships

1-2-4 In the details of partner function “Ship-To Party”, choose Receive goods in the Address for Trans dropdown box.

In the details of all other partner functions, set the Standard address only indicator.

1-2-5 Assign the partner determination procedure ZPS## to transaction type ZA## (##Quotation).

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

Search for transaction type ZA## and change the details. Enter ZPS## in the Partner Determ.Proc. field.

1-2-6 Test the new partner determination procedure by creating the sales transaction ##Quotation. Does the system now determine the contact person who was stored as a relationship to the business partner (see Business Partners exercises)?

Choose Home.

Choose Sales Cycle.

Choose Create → Quotation.

Select ##Quotation.

Sold-To Party: ##Decot

Choose ENTER.

No dialog box should be displayed regarding unclear address determination.

Display the Parties Involved assignment block.

The system finds the contact person Michele ##Contact.

Page 139: CRM Fundamentals- II

© SAP AG TCRM20 5-27

1-3 Comprehension questions on partner processing

1-3-1 What concept or construct makes partner processing particularly flexible? Explain why.

Access sequences enable the formulation of search strategies to search for individual partners. For example, the Employee Responsible can be determined through organizational data determination or, if no partners are found, it can be entered manually by the system user.

1-3-2 Can you define your own partner functions in Customizing?

Yes, it is possible to define your own partner functions to fit your personal requirements.

1-3-3 Can you define your own partner function categories?

Partner function categories cannot be enhanced in Customizing.

Page 140: CRM Fundamentals- II

© SAP AG TCRM20 5-28

1-3-4 What (business partner) relationship category is evaluated if you try to determine the partner function Employee responsible using an access sequence that searches in the business partner’s relationships?

SAP Menu → Architecture and Technology → Configuration → Customizing Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure The partner function 00000014 (Employee responsible) is assigned to the relationship category Is Responsible BP For.

Optional: Test this by assigning the access sequence ZZ## to the partner function Employee responsible. Afterwards, maintain the corresponding relationship for the business partner ##Decot and use an existing employee, for example, Lou Windham (business partner number 400440).

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure Select partner determination procedure ZPS## then double-click Partner Functions in Procedure.

Select partner function Employee responsible and display its details.

In the access sequence field, enter the access sequence you just created.

Maintain an Is Responsible BP For relationship as explained in the relevant business partner exercise.

Create a new ##Quotation and test whether your settings were implemented correctly.

Page 141: CRM Fundamentals- II

© SAP AG TCRM20 5-29

Alternative Service Scenario: Solutions

1-1 Analyze partner processing for the service transaction ##Service Order in Customizing. In a separate session, create a service order with transaction type ##Service Order. Use the business partner ##Decot as the sold-to party.

1-1-1 Which partner functions were automatically found by the system for this particular service transaction?

SAP Menu → Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

The ZSERV006 partner determination procedure is assigned to transaction type ZSE1 (Service Process).

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure The partner determination procedure ZSERV006 contains the following nine partner functions:

Sold-to party, bill-to party, payer, activity partner, employee responsible, contact person, vendor, service technician group and ship-to party/service recipient.

Does the system also determine a contact person?

Is it Michele ##Contact?

Although the system determines the Contact person (CRM) partner function, it does not find Michele ##Contact.

1-1-2 What access sequence is used to search for the employee responsible?

IMG → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure

Display the details for the Employee responsible partner function.

Employee from user (ZCHM) 1-1-3 Can you manually maintain additional partners in the partner view? If so, do

this.

Go to the CRM WebClient UI and choose the Parties Involved assignment block.

Choose Insert.

If possible, enter another partner function (partner), for example, the employee responsbile Mark Freeman (number 496122).

Page 142: CRM Fundamentals- II

© SAP AG TCRM20 5-30

1-2 Set up partner processing. You want to use a partner determination procedure for the transaction of the type ##Service Order that will determine the contact person Michele ##Contact.

1-2-1 Copy the partner determination procedure Service Order Header (ZTSRVH01) with all its dependent entries to ZPS##. Name the new partner determination procedure PartnerDetProc ##.

IMG → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure

Select the entry ZTSRVH01 and choose Copy As. Confirm the dialog box and copy all dependent entries. Name the new partner determination procedure PartnerDetProc ##.

Save your data and go back to the IMG.

1-2-2 Create a new access sequence ZZ##, ##Sold-To Party – Relationships with individual accesses and which searches for a partner within the relationships maintained in the business partner master record. Enter 10 for the batch and dialog sequences, Business partner relationships as the source, and Sold-to Party (CRM) as the partner function.

IMG → Customer Relationship Management → Basic Functions → Partner Processing → Define Access Sequences

Choose New Entries and enter ZZ## as the ID and ##Sold-To Party – Relationships as the description.

Select the new access sequence and choose Individual Accesses.

Choose New Entries.

Enter the following data:

Batch Sequence: 10

Dialog Sequence: 10

Source: Business Partner Relationships

Partner function: Sold-to Party (CRM)

Save the data and go back to the IMG.

Page 143: CRM Fundamentals- II

© SAP AG TCRM20 5-31

1-2-3 Change the ZPS## partner determination procedure and assign the access sequence you just created to the Contact person (CRM) partner function.

In addition to this, the partner function Contact Person (CRM) should occur at least once and no more than three times.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure Select the partner determination procedure ZPS## then double-click Partner Functions in Procedure. Choose the partner function Contact person (CRM).

Number of Occurrences (Lowest): 1

Number of Occurrences (Highest): 3

Access Sequence ##Sold-To Party – Relationships 1-2-4 Assign the partner determination procedure ZPS## to transaction type ZS##

(##Service Order).

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

Search for transaction type ZS## and change the Details. Enter ZPS## in the Partner Determ.Proc. field.

1-2-5 Test the new partner determination procedure by creating the service transaction ##Service Order.. Does the system now determine the contact person who was stored as a relationship to the business partner (see Business Partners exercises)?

Choose Home.

Choose Service Orders.

Choose Create → Service Order.

Choose ##Service Order.

Sold-To Party: ##Decot

Choose ENTER.

Display the Parties Involved assignment block.

The system finds the contact person Michele ##Contact.

Page 144: CRM Fundamentals- II

© SAP AG TCRM20 5-32

1-3 Comprehension questions on partner processing

1-3-1 What concept or construct makes partner processing particularly flexible? Explain why.

Access sequences enable the formulation of search strategies to search for individual partners. For example, the Employee Responsible can be determined through organizational data determination or, if no partners are found, it can be entered manually by the system user.

1-3-2 Can you define your own partner functions in Customizing?

Yes, it is possible to define your own partner functions to fit your personal requirements.

1-3-3 Can you define your own partner function categories?

Partner function categories cannot be enhanced in Customizing.

1-3-4 What (business partner) relationship category is evaluated if you try to determine the partner function Employee responsible using an access sequence that searches in the business partner’s relationships?

SAP Menu → Architecture and Technology → Configuration → Customizing

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure

The partner function 00000014 (Employee responsible) is assigned to the relationship category Is Responsible BP For.

Optional: Test this by assigning the access sequence ZZ## to the partner function Employee responsible. Afterwards, maintain the corresponding relationship for the business partner ##Decot and use an existing employee, for example, Lou Windham (business partner number 400440).

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Partner Processing → Define Partner Determination Procedure

Select partner determination procedure ZPS## then double-click Partner Functions in Procedure.

Select partner function Employee responsible and display its details.

In the access sequence field, enter the access sequence you just created.

Maintain an Is Responsible BP For relationship as explained in the relevant business partner exercise.

Create a new ##Service Order and test if your settings were implemented correctly.

Page 145: CRM Fundamentals- II

© SAP AG TCRM20 6-1

SAP AG 2008

Actions: Overview Diagram

9. Pricing Fundamentals

10. CRM Billing

11. CRM Middleware

12. CRM WebClient UI

Appendix

Unit1. SAP CRM 2007 – Overview

2. Account Management

3. Organizational Management

4. Product Master

5. Transaction Processing

6. Activity Management

7. Partner Processing

8. Actions

Page 146: CRM Fundamentals- II

© SAP AG TCRM20 6-2

SAP AG 2008

Actions

Overview of Actions

Customizing of Actions

Page 147: CRM Fundamentals- II

© SAP AG TCRM20 6-3

SAP AG 2008

Actions: Unit Objectives

At the end of this unit, you will be able to:

Explain the options for processing actions

Configure actions

Use the action monitor to launch actions

Page 148: CRM Fundamentals- II

© SAP AG TCRM20 6-4

SAP AG 2008

You want to set up your business transactions so that, under certain circumstances, follow-up processes or transactions are triggered automatically. In addition to issuing forms, this also includes generating follow-up activities, for example.

Actions: Business Scenario

Page 149: CRM Fundamentals- II

© SAP AG TCRM20 6-5

SAP AG 2008

Condition:Action:

Set quotation to completed

Validity period expired

Create follow-up activity,such as a phone call

Two weeks before contract end

Print the order confirmationOrder

Order free of errors

Examples for Actions

Quotation

Contract

Repair Generate a diagnosis item

Repair item not completed

Actions refer to the Post Processing Framework (PPF) Basis Components, which can automatically trigger output, follow-up activities or workflows.

SAP provides approximately 180 action profiles that can be used in "Application" transaction processing (CRM_ORDER). Other application such as billing (BILLING) and Case Management (CRM_CASE) also use action processing.

Page 150: CRM Fundamentals- II

© SAP AG TCRM20 6-6

SAP AG 2008

Action Processing: Workflow

Start Condition

Action Profile

Action(s)

Schedulecondition

Scheduleautomatically

Processing TimeImmediatelyWhen SavingSelection Report

Action List

Schedule newactions

Scheduled actions

Schedule manually

Yes

No

Fulfilled

Fulfilled

Action profiles may be found using additional settingsActions can be freely defined according to the demands of your company’s processesConditions can be time-dependent using dates and date rules (date profile)

Transaction Type Item Category

Processing TypesSmart FormWorkflowMethods

An action profile is determined from the corresponding transaction type or item category. You assign an action profile directly to a transaction type/item category.

You define an action profile determination (condition technique; the same as pricing).

An actions is always stored in relation to an action profile as an action definition.

You can control action processing using various settings and parameters:

Action changeable or executable in dialog

Processing time

Partner dependence

Action merging

Processing types

You should not usually model dependencies between actions.

Page 151: CRM Fundamentals- II

© SAP AG TCRM20 6-7

SAP AG 2008

Conditions

Start ConditionSchedule Condition

The schedule condition decides whether an action should be scheduled for processing. An action is therefore generated (visible) only if the schedule condition is met.

The start condition is checked before the action is executed. The action is executed only if the start condition is met.

Net value greater than $ 1,000,000

Contract Contract Contract cancellation

Schedule condition: If the schedule condition (of an action) is not met, the action is no longer available in the transaction.

Start condition:

Actions that are available in the transaction can only be executed if the start condition is met.

Condition definition

There are two modes for defining conditions:

Mouse-oriented PC mode

Direct text entry mode (traditional)

User settings can be made to change between both modes.

When editing conditions, you can use expressions and constants and connect them with operators, for example, Status = 'in process'.

Conditions can be checked for proper syntax and tested.

Page 152: CRM Fundamentals- II

© SAP AG TCRM20 6-8

SAP AG 2008

Processing Time

Processing Time

Immediately When Saving Selection Report

Complaint

Visit

Quotation

Subsequent itemCredit memo

CustomerOrder

If you select Immediately as the processing time, the action is started as soon as the start condition is fulfilled.

If you configure the system so that processing starts when saving, the action is started when the transaction is saved.

If you define processing with the selection report and the start condition has been fulfilled, the action is started after the execution of a selection report. This processing type is particularly useful for actions that are used for deadline monitoring (such as monitoring the Service Level Agreements).

Actions are displayed in transactions that support actions and to which an action profile is assigned. You can display a list of actions scheduled for the transaction on the Actions tab page of the transaction. The following information is displayed in the list for each action:

Status (action scheduled, action processed)

Description (purpose of action)

Conditions (settings for action definition and conditions are displayed)

Creator, creation date

Page 153: CRM Fundamentals- II

© SAP AG TCRM20 6-9

SAP AG 2008

Processing Types

Release procedure for quotation depending on net value

Processing TypesProcessing Types

Smart FormsSmart Forms WorkflowWorkflow MethodsMethods

CustomerOrder

Visit

Quotation Opportunity

Task

E-mail

SAP Smart Forms are used for activities such as printing, e-mailing and faxing documents such as order confirmations.

Actions can create an event to start a workflow. Methods are Business Add-In (BAdI) implementations. You can define your own BAdI implementation to adapt actions to your processes and needs. (EXEC_METHODCALL_PPF is the relevant BAdI.)

There are many BAdI implementations supplied by SAP that are used in the standard transactions.

Examples for standard methods include the following:

COPY_DOCUMENT (create a follow-up document)

COMPLETE_DOCUMENT (set status completed within document)

CREDIT_MEMO (create credit memo item)

REPAIR_ITEM (create a repair item)

1O_EVENT_CREATE (create a workflow event)

Page 154: CRM Fundamentals- II

© SAP AG TCRM20 6-10

SAP AG 2008

Example: Actions in a Quotation

Action profile Quotation

ActionsComplete quotation(QUOTATION_COMPLETE)

Feedback from customer(QUOTATION_FEEDBACK)

Print quotation (QUOTATION_PRINT)

Release quotation(QUOTATION_RELEASE)

Start release workflow(QUOTATION_RELEASE_WORKFLOW)

Quotation reminder(QUOTATION_REMINDER)

1. Complete quotationSchedule automatically Yes

Processing time Selection report

Can be executed online Yes

Partner-dependent/partner function No

Action merging Maximum of one successful action

Determination technology Conditions

Processing type Method COMPLETE_DOCUMENT

Object type (user)

Date Profile

Context class

2. Print quotationSchedule automatically Yes

Processing time Immediate

Can be executed online Yes

Partner-dependent/partner function No

Action merging Maximum of one unprocessed action per action definition

Determination technology Conditions

Processing type Smart Form CRM_ORDER_CONFIRMATION_01

The assignment of an action profile to an object type (the relationship to the leading business transaction type of a transaction category) controls which transaction types can be used by the action profile.

Action are always determined for each action profile separately and, as the slide shows, may contain different detail settings.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Change Actions and Conditions → Define Action Profiles and Actions

Conditions are defined using a separate function.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Change Actions and Conditions → Define Conditions

The start transaction for editing action profiles and conditions is SPPFCADM.

The application (for transaction processing) is CRM_ORDER.

Page 155: CRM Fundamentals- II

© SAP AG TCRM20 6-11

SAP AG 2008

Customizing: Action 1 - Complete Quotation

Quotation

Valid until 30.06.2008

Status: Completed

July 2008

Status open?

QuotationExpired?

Quotation

Completion

None

Scheduleautomatically

New ActionSchedule

Selection ReportSchedule manually

NoFulfilled

Method:Status Change

ActiveYes

Fulfilled

Action List

This slide depicts the workflow of action processing for the action "complete quotation" within the context of the corresponding Customizing settings.

Page 156: CRM Fundamentals- II

© SAP AG TCRM20 6-12

SAP AG 2008

Customizing: Action 2 - Print Quotation

QuotationQuotation:Dear...

We offer... the following conditions...

Sincerely,

None

Quotation

Print

None

Scheduleautomatically

ImmediatelyInactive

NoFulfilled

Smart Forms mail(CRM_ORDER_CONFIRMATION_01

Action ListActive

YesFulfilled

Schedule newactions

This slide depicts the workflow of action processing for the action "complete quotation" within the context of the corresponding Customizing settings.

Page 157: CRM Fundamentals- II

© SAP AG TCRM20 6-13

SAP AG 2008

Address,Ship-to party

Company data

General data

Order items

Quotation item

SAP Smart Forms: Layout of Messages

Use SAP Smart Forms to design your forms

You can use the SAP Smart Forms graphics tool to design the layout of message forms. SAP CRM contains several Smart Forms for messages: Form CRM_ORDER_CONFIRMATION_01 (suitable for faxes, letters, and e-mail)

Form CRM_LEAD_PRINT (suitable for faxes, letters and e-mails)

Form CRM_ORDER_SERVICE (suitable for faxes, letters and e-mails)

SAP Smart Forms offer the advantage of adapting forms without requiring programming knowledge, thanks to a completely graphical user interface.

When you request a printout of a form, the application program obtains the relevant data to be used and prints it on the form. Data retrieval and form logic are separated from one another.

SAP Smart Forms replace SAPscript forms.

Page 158: CRM Fundamentals- II

© SAP AG TCRM20 6-14

SAP AG 2008

Action Monitor

The action monitor gives you an overview of all scheduled and processed actions and their statuses.You can trigger repeat action processing and display output (preview)You can define selection variants and use them for background processing.

SAP GUI

You can use the action monitor to monitor and trigger the processing of actions for several transactions.

The action monitor program, RSPPFPROCESS, originates from the Post Processing Framework (PPF). You can use this program to check the processing of the actions (for example, output, follow-on documents).

If you set the Processing using selection report processing time for an action in Customizing (for example, for a message), you can select the actions with this program and initiate their processing. This is particularly useful for actions that are used for deadline monitoring (such as Service Level Agreements: First reaction and solutions times for service orders).

It can also be useful to use the action monitor to process actions with the processing time When Saving if, for example, time-dependent conditions were fulfilled after a certain time without any changes to the transaction. The program should be executed regularly so that actions are also started in these cases.

Page 159: CRM Fundamentals- II

© SAP AG TCRM20 6-15

SAP AG 2008

Actions: Unit Summary

You are now able to:

Explain the options for processing actions

Configure actions

Use the action monitor to launch actions

Page 160: CRM Fundamentals- II

© SAP AG TCRM20 6-16

Page 161: CRM Fundamentals- II

© SAP AG TCRM20 6-17

Exercises

Unit: Actions Topic: Action Definitions and Customizing

At the conclusion of this exercise, you will be able to:

• Describe how an action of the type ‘order confirmation’ is determined within a quotation

• Create an action profile using a wizard

• Assign an action profile to a transaction type and test it

You want to print completed quotations. Printing is controlled by action processing; you therefore need to know how to set up and process actions.

1-1 Create a ##Quotation and see whether you can display or issue a corresponding form.

1-1-1 Create a quotation of the type ##Quotation for the customer ##Decot. Offer the customer 10 pieces of the material with the description ##Screen.

1-1-2 Display the relevant actions for the quotation.

a) Which entries are displayed in the corresponding assignment block?

b) Does the list include the action Print Quotation Manually? If necessary, schedule the action manually.

c) What processing status does this action have?

1-1-3 Try to execute the action Complete offer. Is this possible? Explain why.

1-1-4 Change the Valid-to date of the quotation to today and save. Do not under any circumstances execute the Complete offer action in the CRM WebClient UI.

Save your quotation.

_____________

1-1-5 Display the print preview of the quotation that was determined.

Page 162: CRM Fundamentals- II

© SAP AG TCRM20 6-18

1-1-6 Use the Action Monitor transaction in the SAP GUI to select and execute the Complete offer action for your quotation.

If you want to select the action that was found in the quotation you created, enter the <*transaction number> in the application key field.

1-2 In Customizing, find out how automatic determination takes place for the Print Quotation Manually.

1-2-1 Which action profile is used by transaction type ZA## (##Quotation)?

1-2-2 Analyze this action profile. When is the action processed and the quotation form issued?

1-2-3 Check the details of the action definition to find out why you could not execute the action from transaction processing.

Page 163: CRM Fundamentals- II

© SAP AG TCRM20 6-19

Optional

2-1 You want to create an action profile for your ##Trade Fair Visit that helps you create a follow-up activity once the preceding activity is completed.

2-1-1 Go to the IMG and use the wizard to create an action profile for transactions.

After starting the wizard use the following data:

Action Profile: ZACTIONPROFILE##

Description: Action Profile Follow-up Activities ##

Date Profile: 000000000001

Object Type Name: BUS2000126

Choose Continue.

Enter ZFOLLOWUP## as the action definition and Follow-up Activity Sales Call ## as the description

Choose Continue.

Time of Processing: Immediate processing

Schedule Automatically: <do no select>

Display in Toolbox: <do no select>

Changeable in Dialog: <Set the indicator>

Executable in Dialog: <Set the indicator>

Choose Continue.

The action should not be partner-dependent.

Choose Continue.

Select Method Call.

Choose Continue.

Use F4 help in Method field to select method COPY_DOCUMENT.

Choose change icon ( ) in Determine Proc. Parameter.

Create a container element with the create icon ( ).

Element: PROCESS_TYPE

Description: Transaction type

Short Description: Action Transaction Type

Enter an ABAP Dictionary reference.

Structure: CRMD_ORDERADM_H

Field: PROCESS_TYPE

Assign the initial value 0001 (Interaction Log).

Choose Confirm and then select Adopt entries.

Choose Continue.

Page 164: CRM Fundamentals- II

© SAP AG TCRM20 6-20

Enter an appropriate text.

Choose Continue.

You do not want to use any conditions in the first step. Choose Continue twice.

In the wizard, click Complete.

2-1-2 Assign the action profile to transaction type ZB## (##Trade Fair Visit).

2-2 Test your settings.

2-2-1 Create a new contact of the type ##Trade Fair Visit (ZB##). Specify a business partner, description, and process the action.

2-3 Next, you want to add a schedule condition to your action. When your trade fair visit is complete (and only then), you want to be able to create a follow-up activity of the type appointment.

2-3-1 Define a schedule condition for your Follow-up Activity Appointment ## action. Go to the IMG and start defining the condition.

Choose Edit Condition. Enter Activity completed ## as the name. Click the hyperlink to define the condition.

Expand the container object CRM Bus. Activity.

Using the editor, form an expression User Status = Complete (status profile CRMACTIV).

Transfer the condition and save it.

2-3-2 Test your settings by creating another trade fair visit.

Can you schedule the action immediately after creating the transaction?

Complete the trade fair visit by setting the status accordingly.

Can you schedule the action now?

Page 165: CRM Fundamentals- II

© SAP AG TCRM20 6-21

Alternative Service Scenario: Exercises

1-1 Create a ##Service Order and see whether you can display and issue a corresponding form.

1-1-1 Create a service order of the type ##Service Order for the customer ##Decot. You offer the customer 4 AU of the ##Maintenance service.

1-1-2 Display the relevant actions for the service order.

a) Which entries are displayed in the corresponding assignment block?

b) Does the list include the action Print Service Order Manually? If necessary, schedule the action manually.

c) What processing status does this action have?

1-1-3 Display the print preview of the determined order confirmation.

1-1-4 Use the Action Monitor transaction in the SAP GUI to select and execute the Print Service Process Manually action for your service order.

If you want to select the action that was found in the quotation you created, enter the <*transaction number> in the application key field.

1-2 Use Customizing to analyze how automatic determination takes place for the Print Service Process Manually action.

1-2-1 Which action profile is used by transaction type ZS## (##Service Order)?

1-2-2 Analyze this action profile. When is the action processed and the quotation form issued?

Page 166: CRM Fundamentals- II

© SAP AG TCRM20 6-22

Page 167: CRM Fundamentals- II

© SAP AG TCRM20 6-23

Optional

2-1 You want to create an action profile for your ##Trade Fair Visit that helps you create a follow-up activity once the preceding activity is completed.

2-1-1 Go to the IMG and use the wizard to create an action profile for transactions.

After starting the wizard use the following data:

Action Profile: ZACTIONPROFILE##

Description: Action Profile Follow-up Activities ##

Date Profile: 000000000001

Object Type Name: BUS2000126

Choose Continue.

Enter ZFOLLOWUP## as the action definition and Follow-up Activity Sales Call ## as the description

Choose Continue.

Time of Processing: Immediate processing

Schedule Automatically: <do no select>

Display in Toolbox: <do no select>

Changeable in Dialog: <Set the indicator>

Executable in Dialog: <Set the indicator>

Choose Continue.

The action should not be partner-dependent.

Choose Continue.

Select Method Call.

Choose Continue.

Use the F4 help in the Method field to select method COPY_DOCUMENT.

Choose change icon ( ) in Determine Proc. Parameter.

Create a container element with the create icon ( ).

Element: PROCESS_TYPE

Description: Transaction type

Short Description: Action Transaction Type

Enter an ABAP Dictionary reference.

Structure: CRMD_ORDERADM_H

Field: PROCESS_TYPE

Assign the initial value 0001 (appointment).

Choose Confirm and then select Adopt entries.

Page 168: CRM Fundamentals- II

© SAP AG TCRM20 6-24

Choose Continue.

Enter an appropriate text.

Choose Continue.

You do not want to use any conditions in the first step. Choose Continue twice.

In the wizard, click Complete.

2-1-2 Assign the action profile to transaction type ZB## (##Trade Fair Visit).

2-2 Test your settings.

2-2-1 Create a new contact of the type ##Trade Fair Visit (ZB##). Specify a business partner, description, and process the action.

2-3 Next, you want to add a schedule condition to your action. When your trade fair visit is complete (and only then), you want to be able to create a follow-up activity of the type appointment.

2-3-1 Define a schedule condition for your Follow-up Activity Appointment ## action. Go to the IMG and start defining the condition.

Choose Edit Condition. Enter Activity completed ## as the name. Click the hyperlink to define the condition.

Expand the container object CRM Bus. Activity.

Using the editor, form an expression User Status = Complete (status profile CRMACTIV).

Transfer the condition and save it.

2-3-2 Test your settings by creating another trade fair visit.

Can you schedule the action immediately after creating the transaction?

Complete the trade fair visit by setting the status accordingly.

Can you schedule the action now?

Page 169: CRM Fundamentals- II

© SAP AG TCRM20 6-25

Solutions

Unit: Actions Topic: Action Definitions and Customizing

1-1 Create a ##Quotation and see whether you can display or issue a corresponding

form.

1-1-1 Create a quotation of the type ##Quotation for the customer ##Decot. Offer the customer 10 pieces of the material with the description ##Screen.

Choose Sales Cycle.

Choose Create → Quotation.

Select ##Quotation.

Sold-To Party: ##Decot

Product ID: <Your material>

Choose ENTER.

1-1-2 Display the relevant actions for the quotation.

a) Which entries are displayed on the corresponding tab page?

Open the Scheduled Actions assignment block.

Various scheduled and unprocessed actions are displayed: Call Customer Again About Offer, Automatic Release of Offers, Start Release Procedure for Offers, Quotation Reminder, Complete Offer and Call Customer Again About Offer (Alert).

b) Does the list include the action Print Quotation Manually?

No, the list does not include this action.

Schedule this action manually.

Choose the Schedule New Actions.

Select the Print Quotation Manually action.

Choose Schedule.

The system display the message Action was executed immediately after scheduling.

c) What processing status does this action have?

Choose Back.

Choose Show Executed Actions.

The status of the action is Processed.

Page 170: CRM Fundamentals- II

© SAP AG TCRM20 6-26

1-1-3 Try to execute the action Complete offer. Is this possible? Explain why.

Choose the corresponding Execute Action hyperlink. The system displays the error message Start Condition is Not Fulfilled.

This is because the Valid-to date of the quotation has not yet been reached.

1-1-4 Change the Valid-to date of the quotation to today and save. Do not under any circumstances execute the Complete offer action in the CRM WebClient UI.

The valid-to date can be found in the Quotation Details assignment block.

Save your quotation.

_____________

1-1-5 Display the print preview of the quotation that was determined.

Choose More → Preview Output function at the top of the quotation.

1-1-6 Use the Action Monitor transaction in the SAP GUI to select and execute the Complete offer action for your quotation.

SAP Menu → Sales → Monitoring → Action Monitor

Action Definition: QUOTATION_COMPLETE

Application Key: <*Number of your quotation>

Promotion Status: 0 (Not processed)

Time of Processing: Processing Using Selection Report

Choose Execute ( ).

When the results are displayed, select the relevant action and choose Process ( ).

Page 171: CRM Fundamentals- II

© SAP AG TCRM20 6-27

1-2 In Customizing, find out how automatic determination takes place for the Print Quotation Manually.

1-2-1 Which action profile is used by transaction type ZA## (##Quotation)?

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Assign Action Profile to the Business Transaction Type Select the transaction type ZA##. Display the Details.

The action profile is QUOTATION.

1-2-2 Analyze this action profile. When is the action processed and the quotation form issued?

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Change Actions and Conditions → Define Action Profiles and Actions

Select the action profile QUOTATION. Display the details of action definition QUOTATION_PRINT.

The processing time is Immediate Processing.

Page 172: CRM Fundamentals- II

© SAP AG TCRM20 6-28

Page 173: CRM Fundamentals- II

© SAP AG TCRM20 6-29

Optional

2-1 You want to create an action profile for your ##Trade Fair Visit that helps you create a follow-up activity once the preceding activity is completed.

2-1-1 SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Create Actions With Wizard Enter the data specified in the exercise.

2-1-2 Assign the action profile to transaction type ZB## (##Trade Fair Visit).

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Assign Action Profile to the Business Transaction Type Go to the details for transaction type ZB## and enter ZACTIONPROFILE## in the action profile field.

2-2 Test your settings.

2-2-1 Create a new contact of the type ##Trade Fair Visit (ZB##). Specify a business partner, description, and process the action.

Choose Activities.

Choose Create → Appointment.

Choose ##Trade Fair Visit

Description: Trade Fair Visit ##

Account: ##Decot

Choose ENTER.

Go to the Schedules Actions assignment block.

Execute the action.

Page 174: CRM Fundamentals- II

© SAP AG TCRM20 6-30

2-3 Next, you want to add a schedule condition to your action. When your trade fair visit is complete (and only then), you want to be able to create a follow-up activity of the type appointment.

2-3-1 Define a schedule condition for your Follow-up Activity Appointment ## action. Go to the IMG and start defining the condition.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Change Actions and Conditions → Define Conditions

Double-click your action profile in the upper-left corner.

Choose the Schedule Condition tab page.

Choose Edit Condition.

Click the hyperlink to create the condition.

Open your current container object CRM Bus. Activity. Double-click User Status. Click the operator “=”.

Call the input help (F4) in the Constant field.

Enter status profile CRMACTIV.

Choose status E0003 Complete and press Enter.

Transfer and save the condition.

2-3-2 Test your settings by creating another trade fair visit.

Create an activity of the type ##Trade Fair Visit for the activity partner ##Decot. Maintain fictional data.

Choose Activities.

Choose Create → Appointment.

Choose ##Trade Fair Visit

Description: Trade Fair Visit ##

Account: ##Decot

Choose ENTER.

Go to the Scheduled Actions assignment block.

Execute the action.

Can you schedule the action immediately after creating the transaction?

No, this is not yet possible because the activity does not have the correct status.

Complete the trade fair visit by setting the status accordingly.

In the Appointment Details assignment block, set the status to Completed.

Can you schedule the action now?

Yes, the action can now be scheduled.

Page 175: CRM Fundamentals- II

© SAP AG TCRM20 6-31

Alternative Service Scenario: Solutions

1-1 Create a ##Service Order and check whether you can issue a corresponding form.

1-1-1 Create a service order of the type ##Service Order for the customer ##Decot. You offer the customer 4 AU of the ##Maintenance service.

Choose Service Orders.

Choose Create → Service Order.

Choose ##Service Order.

Sold-To Party: ##Decot

Product ID: ##Maintenance

Choose ENTER.

1-1-2 Display the actions that the system has found for this service order.

a) Which entries are displayed in the corresponding assignment block?

You can see the action: Autom. IBase Update.

b) Does the list include the action Print Service Order Manually? If necessary, schedule the action manually.

No, the list does not include this action.

Schedule the action manually.

Choose Schedule New Actions.

Select the Print Service Process Manually action.

Choose Schedule.

c) What processing status does this action have?

Choose Back.

Choose Show Executed Actions.

Once the action is executed, it is displayed with status Processed.

1-1-3 Display the print preview of the determined order confirmation.

Choose the Print Preview function at the top of the quotation.

1-1-4 Use the Action Monitor transaction in the SAP GUI to select and execute the Print Service Process Manually action for your service order.

SAP Menu → Service → Action Monitor

Action Definition: ZSERVICEVORGANG(AUFTRAGGEBER)

Application Key: <*Number of your service process>

Action Status: 0 (Not processed)

Time of Processing: Processing Using Selection Report

Choose Execute ( ). When the results are displayed, select the relevant action and choose Process ( ).

Page 176: CRM Fundamentals- II

© SAP AG TCRM20 6-32

1-2 Use Customizing to analyze how automatic determination takes place for the Print

Service Process Manually action.

1-2-1 Which action profile is used by transaction type ZS## (##Service Order)?

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Assign Action Profile to the Business Transaction Type Select the transaction type ZS##. Display the Details.

The action profile is ZSERVICE_ORDER (IDES service process).

1-2-2 Analyze this action profile. When is the action processed and the quotation form issued?

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Change Actions and Conditions → Define Action Profiles and Actions

Select the action profile ZSERVICE_ORDER. Display the details of the action definition ZSERVICEVORGANG(AUFTRAGGEBER).

The processing time is Processing using selection report.

Page 177: CRM Fundamentals- II

© SAP AG TCRM20 6-33

Optional

2-1 You want to create an action profile for your ##Trade Fair Visit that helps you create a follow-up activity once the preceding activity is completed.

2-1-1 SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Create Actions With Wizard Enter the data specified in the exercise.

2-1-2 Assign the action profile to transaction type ZB## (##Trade Fair Visit).

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Assign Action Profile to the Business Transaction Type Go to the details for transaction type ZB## and enter ZACTIONPROFILE## in the action profile field.

2-2 Test your settings.

2-2-1 Create a new contact of the type ##Trade Fair Visit (ZB##).

Enter a business partner and a description and go to the Actions tab page. Is the action scheduled yet?

Choose Service Operations.

Choose Create → Appointment.

Choose ##Trade Fair Visit

Description: Trade Fair Visit ##

Account: ##Decot

Choose ENTER.

Go to the Scheduled Actions assignment block.

Execute the action.

Page 178: CRM Fundamentals- II

© SAP AG TCRM20 6-34

2-3 Next, you want to add a schedule condition to your action. When your trade fair visit is complete (and only then), you want to be able to create a follow-up activity of the type appointment.

2-3-1 Define a schedule condition for your Follow-up Activity Appointment ## action. Go to the IMG and start defining the condition.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Actions → Actions in Transaction → Change Actions and Conditions → Define Conditions

Double-click your action profile in the upper-left corner.

Choose the Schedule Condition tab page.

Choose Edit Condition.

Click the hyperlink to create the condition.

Open your current container object CRM Bus. Activity.

Double-click User Status.

Click the operator “=”.

Call the input help (F4) in the Constant field.

Enter status profile CRMACTIV.

Choose status E0003 Complete and press Enter.

Transfer and save the condition.

2-3-2 Test your settings by creating another trade fair visit.

Choose Service Operations.

Choose Create → Appointment.

Choose ##Trade Fair Visit

Description: Trade Fair Visit ##

Account: ##Decot

Choose ENTER.

Go to the Scheduled Actions assignment block.

Can you schedule the action immediately after creating the transaction?

No, this is not yet possible because the activity does not have the correct status.

Complete the trade fair visit by setting the status accordingly.

In the Appointment Details assignment block, set the status to Completed.

Can you schedule the action now?

Yes, the action can now be scheduled.

Page 179: CRM Fundamentals- II

© SAP AG TCRM20 7-1

SAP AG 2008

Pricing Fundamentals: Overview Diagram

9. Pricing Fundamentals

10. CRM Billing

11. CRM Middleware

12. CRM WebClient UI

Appendix

Unit1. SAP CRM 2007 – Overview

2. Account Management

3. Organizational Management

4. Product Master

5. Transaction Processing

6. Activity Management

7. Partner Processing

8. Actions

Page 180: CRM Fundamentals- II

© SAP AG TCRM20 7-2

SAP AG 2008

Pricing Fundamentals

Pricing Overview

Functional Principle of Pricing

Condition Maintenance in SAP CRM

Page 181: CRM Fundamentals- II

© SAP AG TCRM20 7-3

SAP AG 2008

Pricing Fundamentals: Unit Objectives

At the end of this unit, you will be able to:

Describe the Internet Pricing and Configurator (IPC)

Understand the essential features of the condition technique

Describe the pricing functions

Make certain settings in pricing Customizing

Carry out condition maintenance in SAP CRM

Page 182: CRM Fundamentals- II

© SAP AG TCRM20 7-4

SAP AG 2008

You want to familiarize yourself with the pricing and condition maintenancefunctions in the SAP CRM system.

Pricing Fundamentals: Business Scenario

Page 183: CRM Fundamentals- II

© SAP AG TCRM20 7-5

SAP AG 2008

SAP InternetSales in ERPSAP InternetSales in ERP

……SAP SRMSourcing SAP SRMSourcing

SAP CRMMobile Sales

Mobile Service

SAP CRMMobile Sales

Mobile Service

SAP CRMCRM Web Channel

SAP CRMCRM Web Channel

SAP CRMInteraction Center

SAP CRMInteraction Center

Pricing and Tax Determination in SAP CRM

SAP IPCSAP IPC

The Internet Pricing and Configurator (IPC) is responsible for pricing throughout the entire SAP CRM application.

The Internet Pricing and Configurator is used for pricing in SAP CRM scenarios. Pricing information in the Internet (CRM Web Channel), CRM Enterprise and mobile clients (such as laptops) is processed by this component only (“one face to the customer”).

The IPC is only switched off in the rare case of a SAP CRM implementation without any pricing or configuration functions. For more information, see SAP Note 702735.

Page 184: CRM Fundamentals- II

© SAP AG TCRM20 7-6

SAP AG 2008

IPC Implementation Scenarios

The data is maintained in the SAP CRM system.The IPC accesses the data in the CRM database.

Data is maintained in the SAP ERP system.The SAP ERP system supplies the CRM system with this data and the IPC accesses the CRM database.

.

IPC RFCMiddleware

CRM

Customizing &conditions

RFCIPC

ERP

Customizing &conditions

CRM

Customizing &conditions

IPC implementation scenarios Scenarios without ERP integration:

You set up pricing Customizing in SAP CRM and maintain the conditions there. This data is only available in SAP CRM and cannot be transferred to the SAP ERP system. Exception: Trade Promotion Management.

Naming convention: standard Customizing objects normally start with a digit.

Scenarios with ERP integration:

You set up pricing Customizing in the ERP system and maintain the conditions there. Both the Customizing and the master data can be transferred from the ERP system to SAP CRM via the middleware.

You cannot change the transferred Customizing in SAP CRM.

The transferred conditions cannot be changed in SAP CRM. However, you can declare exceptions.

Naming convention: standard Customizing objects normally start with a letter. You use this scenario when you want to use ERP billing for certain CRM business transactions.

Page 185: CRM Fundamentals- II

© SAP AG TCRM20 7-7

SAP AG 2008

Pricing Procedure

Pricing Procedure

1. Price PR00

2. Customer Discount K007

3. Sales Promotion KA00

RVAAUS

Pricing Procedure = Calculation Rule

… …

The pricing procedure defines the valid condition types and their calculation sequence in the transaction.

The pricing procedure also defines the following:

Which subtotals are created and displayed on the pricing screens

If a condition type is mandatory

How far the manual processing of pricing is possible

Which requirements must be fulfilled in order that a specific condition type is taken into account.

Pricing procedures are defined in Customizing.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Pricing → Define Settings for Pricing → Create Pricing Procedure

Pricing procedures have a source (CRM or R/3).

Page 186: CRM Fundamentals- II

© SAP AG TCRM20 7-8

SAP AG 2008

OrganizationalData

Pricing Procedure

1. Price 0PR0

2. Customer Discount 0K07

3. Sales Promotion 0KA0

0CRM1

Sales Organization

O 50002101

Customer Pricing ProcedureStandard

Distribution Channel 10

Document Pricing Procedure A

Determination of Pricing Procedure

Customer Group

determines

Transaction Type

Process

1

(Division)

The determination of the pricing procedure must be set up manually. You can set a division, but it is not required (as is the case in SAP ECC).

The following elements influence the determination of the pricing procedure:

Sales organization

Distribution channel

Document pricing procedure (can be assigned to a transaction type)

Customer pricing procedure (assignment in the business partner – sales area data – billing data)

Division (optional)

The pricing procedure is determined in Customizing under the following path:

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Pricing → Pricing in the Business Transaction → Determine Pricing Procedures.

Page 187: CRM Fundamentals- II

© SAP AG TCRM20 7-9

SAP AG 2008

Condition Types

Value from Amount

- 1 %- 2 %- 4 %

Amount

$ 1 per 1 kg

FreightKF00

Calculation type: percentageScale base type: value scale

Calculation type: amount/weight

$ 100$ 1000

$ 10000

Discount %K007

The condition type defines the characteristics and attributes of a condition. You can define a condition type for every type of price, surcharge, or discount that occurs in your business transactions.

The condition type determines the category of a condition and how it is used. The calculation type and the scale base type can be defined for each condition type.

Each condition type can be set as an automatic surcharge or an automatic discount.

Condition types are defined in Customizing under SAP Implementation Guide → Customer Relationship Management → Basic Functions → Pricing → Define Settings for Pricing → Create Condition Types.

Condition types have a source system (local = CRM or other system (such as R/3).

ECC or R/3 condition types can be loaded into the SAP CRM system (Customizing download object CRM_PRC_CNDTYP).

SAP CRM condition types cannot be loaded into the ERP system.

Some ERP condition types cannot be used in SAP CRM.

The term price element is used in the application instead of condition type.

Page 188: CRM Fundamentals- II

© SAP AG TCRM20 7-10

SAP AG 2008

Access Sequence

Access Sequence K027:

1. Customer-specific discountCondition table: Customer/Sales Organization

2. Discount for price group Condition table: Price Group/Sales Organization

3. General discount for the sales organizationCondition table: Sales Organization

Condition Type K027:

Access Sequence = Search Strategy

An access sequence is a search strategy that the system uses to search for valid data in a specific condition type.

It comprises one or more accesses that are each defined by specifying a condition table.

The sequence of the accesses controls the priority of the individual condition records. The accesses tell the system where to start searching after a valid condition record.

Create an access sequence for each condition type for which you create condition records.

Access sequences are defined in Customizing:

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Pricing → Define Settings for Pricing → Create Access Sequences

Condition types have a source system (local = CRM or another system (such as R/3).

Page 189: CRM Fundamentals- II

© SAP AG TCRM20 7-11

SAP AG 2008

Condition Table

Condition table fields:Sales organizationDistribution channelDivisionSold-to party

Condition table Z007 customer/sales organization:

A condition table defines the combination of fields (keys) that identify an individual condition record.

Condition table: a table that defines the combination of fields that an individual condition record consists of. The condition table consists of a combination of search and result fields.

Condition records are always created using a specific key.

Use tables to help you define the structure of condition record keys.

The key fields of a condition table must appear together at the start of the table, in other words, non-key fields must not appear between any two key fields.

Condition tables are defined in Customizing under the following path: SAP Implementation Guide → Customer Relationship Management → Basic Functions → Pricing → Define Settings for Pricing → Create Condition Tables.

Name ranges for condition tables:

SAP condition tables 001 – 500 created in the ERP system: SAP001 – SAP500

Customer condition tables 501 – 999 created in the ERP system: CUS501 – CUS999

SAP condition tables created in the CRM system: SAPxxxxx

Customer condition tables created in the CRM system: CUSxxxxx

Page 190: CRM Fundamentals- II

© SAP AG TCRM20 7-12

SAP AG 2008

Condition Technique

ScaleFrom 1 PC: 100 EUR per PCFrom 50 PC: 95 EUR per PC

PR00 95 EUR/PCK007 -2%

Transaction

Product A 55 PC

Access SequenceCondition tables1. Access: Customer/MaterialSecond Access: Material

ZPR0

Pricing Procedure

1. Price PR00

2. Customer discount K007

3. Sales Promotion KA00

RVAA01

Condition Type

Access sequence ZPR0

PR00

Condition RecordsValid record not available

Valid record available

for PR00

The system reads the first condition type of the pricing procedure and determines the assigned access sequence. This step, together with the following steps, is repeated for each condition type in the pricing procedure.

The system reads the access sequence with the condition tables. The sequence of the condition tables forms the search strategy for determining the individual condition records. Each condition table contains the field combinations according to which the system should search in the condition records, for example business partner – product - price.

The system searches for valid condition records for the condition tables. If the system does not find a valid condition record for the first condition table, it carries on and searches for a condition record for the next condition table.

Once the system has found a valid condition record for a condition table, it makes the result available to pricing in the form of prices and discounts.

If the search procedure contains more than one condition type, the system repeats the search for condition records for each condition type.

In the SAP CRM system, the free goods, campaign and product determination functions are executed with the pricing mechanism (condition technique).

Different kinds of condition groups – for example, prices, discounts, surcharges, freight or taxes – can be determined.

Page 191: CRM Fundamentals- II

© SAP AG TCRM20 7-13

SAP AG 2008

Condition Records

1st PeriodMarch 01 to April 30

Sales organization 1000

Distribution channel: 01

Customer: C1

Material: M1

2nd PeriodMay 01 to May 30

Level at whichthe condition

is defined

$ 1000 - 1 %$ 2000 - 2 %$ 3000 - 3 %

$ 1000 - 2 %$ 2000 - 3 %$ 3000 - 4 %

Special offer discount:

Data about conditions is stored incondition records:

Data about conditions is stored in condition records. You can limit a price agreement to a specific period. To do this, specify a validity period. This can be useful when you want to have different price lists for different years or have discounts valid only for the duration of a special offer.

The values in a condition record (price, markup, discount) can be maintained according to a value scale. You can specify an unlimited number of levels in a value scale.

Page 192: CRM Fundamentals- II

© SAP AG TCRM20 7-14

SAP AG 2008

Condition Maintenance

You can start condition maintenance from the following objects in CRM:

Business partners

Business partner hierarchies

Products

Contracts (price agreements)

Campaigns (discounts)

You can also maintain conditions in general condition maintenance

General condition maintenance in the SAP CRM system is called using the SAP GUI: SAP Menu → Master Data → Prices and Conditions → Maintain Conditions. If you want to edit conditions for standard CRM business processes, enter CRM in the application

field and a suitable (condition) maintenance group.

You can merge the required condition types/condition tables using the condition maintenance groups in Customizing. In general condition maintenance, the context GCM allows you to make the corresponding selection of condition types/condition tables.

Page 193: CRM Fundamentals- II

© SAP AG TCRM20 7-15

SAP AG 2008

Condition Maintenance Groups and Contexts

Condition type 1Condition type 2Condition type 3 Condition type 7

Condition type 6

Condition type 8

Condition type 9

Condition type 5Condition type 4

Condition Maintenance Group

Maintenance ContextGeneral (GCM)

Business partner

Contract

Campaign

...

A condition maintenance group bundles condition tables and types for condition maintenance. There is a special view in condition maintenance for this.

The SAP CRM system contains general condition maintenance (GCM) as well as special maintenance contexts. In GCM, you can maintain the conditions that are in condition maintenance groups and which are assigned to the GCM maintenance context.

You can define separate condition maintenance groups and the assignment of maintenance contexts in Customizing:

SAP Implementation Guide Customer Relationship Management Master Data Conditions and Condition Technique Condition Technique: Basics Create Maintenance Group

SAP Implementation Guide Customer Relationship Management Master Data Conditions and Condition Technique Condition Technique: Basics Define Maintenance Groups for Context

Page 194: CRM Fundamentals- II

© SAP AG TCRM20 7-16

SAP AG 2008

Pricing Analysis in Transactions: Example

OrderCustomer: Miller

Product Quantity

M328 10 PC

$9301 pc$93Net Value

1 pc

1 kg

1 pc

1 pc

1 pc

per

$970$97Final Amount

$+ 40$+ 2 Shipment Costs

$- 50$- 5Product Discount

$- 20%- 2Customer Discount

$1000$100Gross

$1000$100Material Price

CurrValueUoMRateCondition

You can carry out a pricing analysis. This is a log that gives you an overview of the transactions in automatic pricing.

You can use this information to check how the individual pricing elements from the item are calculated in the system.

The system displays information about each pricing transaction as well as the last pricing transaction that was carried out. This enables you to compare pricing transactions. This can be useful after failed searches or price changes.

Condition analysis is not available in the CRM WebClient UI. It can only be accessed using the SAP GUI and when the corresponding transaction is created or changed.

User parameter PRC_TRACE = X must be set.

Page 195: CRM Fundamentals- II

© SAP AG TCRM20 7-17

SAP AG 2008

Pricing: Functions

Item level pricing, formulas for more complex pricing

Manual changes at item and header levels

Different calculation types

Two-dimensional scales, scales with different scale bases

Validity periods

Currency conversion, quantity conversion, and unit of measurement conversion

Free goods discount (inclusive and exclusive bonus quantities)

Differences between pricing in SAP CRM and SAP ECC or SAP R/3. The following condition types are not supported in SAP CRM: EK01, EK02, BO01 to BO05,

AZWR, RL00, MW15, VRPS, EDI1, EDI2.

Mass copying of condition records is not possible in SAP CRM.

Change documents are not available in SAP CRM.

Archiving of pricing conditions is not possible in SAP CRM.

For technical reasons in SAP CRM, you cannot display the underlying condition record from condition maintenance in a transaction.

Unlike SAP ECC, there are several pricing program runs in SAP CRM. This means that is also possible to compare different pricing runs. This might be useful after price changes or during an error search, for example.

The pricing type cannot be predefined in SAP CRM when new pricing is started.

Page 196: CRM Fundamentals- II

© SAP AG TCRM20 7-18

SAP AG 2008

Outcome

IPC

Tax Determination via TTE

SAP CRM

Transaction Tax Engine (TTE)

Tax DeterminationTax Calculation

Tax RatesTax Exemptions

Deductibility

Rules TaxDetermination

Tax EventTax LocationTax Type(s)Tax Rate(s)

Tax Document

CRM Sales and Service, CRM Billing

BP Sales Org. / VendorAddress

Country or regionJurisdiction code

Tax registration numbers

CustomerAddress

Country or regionJurisdiction code

Tax Registration NumberTax Types and Groups

ProductTax Types and Groups

TransactionDateCRM Item Object Type

If you create billing documents using CRM Billing, the taxes are determined via the Transaction Tax Engine.

The TTE determines and calculates tax based on the condition records and tax exemption licenses. The TTE uses the transferred data to determine the tax event, tax type(s) and the corresponding tax record.

To start the call of the Transaction Tax Engine, you need define the condition type 0TTE (for tax calculation and the net price) or 1TTE (for tax calculation and the gross price). We recommend that you use the 0CRM01 pricing procedure.

As of SAP CRM 4.0, there is a persistent tax document. This document is stored permanently in the system and can be accessed at all times. The persistent tax document comprises all input and output data for a particular TTE tax determination and calculation.

The simulation transaction TTE_SIMULATION supports:

Testing of all Customizing parameters

Testing of all tax calculation results

Saving of documents

Page 197: CRM Fundamentals- II

© SAP AG TCRM20 7-19

SAP AG 2008

Pricing Fundamentals: Summary

You are now able to:

Describe Internet Pricing and Configurator (IPC)

Understand the essential features of the condition technique

Describe the pricing functions

Make certain settings in pricing Customizing

Carry out condition maintenance in SAP CRM

Page 198: CRM Fundamentals- II

© SAP AG TCRM20 7-20

Page 199: CRM Fundamentals- II

© SAP AG TCRM20 7-21

Exercises

Unit: CRM Pricing Topic: Condition Maintenance and Customizing

At the conclusion of this exercise, you will be able to:

• Maintain conditions in the CRM system

• Perform certain basic Customizing settings related to pricing in transactions

You want to set up your sales and service transactions so that when transactions are processed, pricing is carried out and the relevant pricing elements are found for each business transaction. In addition, you want to familiarize yourself with condition maintenance in CRM.

1-1 Conditions and condition maintenance in the CRM system

1-1-1 Create a sales transaction of the type Sales Process with the account ##Megastore and enter the product HT-1010 with a quantity of 10 pieces.

1-1-2 Check the item details of the transaction to see whether the system has found a customer discount.

Display the sales process item in the Prices assignment block.

1-1-3 Can you enter the price element customer discount with a value of 5% manually?

Page 200: CRM Fundamentals- II

© SAP AG TCRM20 7-22

1-1-4 In future transactions of this type, customers should always receive a customer discount of 3%. This agreement should last from today until the end of the year.

Maintain a condition master record in the CRM system accordingly.

SAP Menu → Master Data→ Prices and Conditions → Maintain Conditions

Application: CRM

Maintenance group: BUPADISCOU

Sales area: Sales US; 30; 00

1-1-5 Create another sales order of the type Sales Process with the account ##Megastore and enter the product HT-1010 with a quantity of 10 pieces.

Is the customer discount found automatically?

Save the transaction and note the number.

_______________

1-2 Customizing Pricing

1-2-1 What factors influence the determination of a pricing procedure? Where in the system are the specific values of the factors for your special business transactions in the previous exercise (1-1)?

Influencing factor 1______________________________________

Origin: ___________________________________________

Influencing factor 2______________________________________

Origin: ___________________________________________

Influencing factor 3______________________________________

Origin: ___________________________________________

Influencing factor 4______________________________________

Origin: ___________________________________________

Influencing factor 5______________________________________

Origin: ___________________________________________

1-2-2 Which pricing procedure is determined for your data in the transaction? Find this out by checking the assignmnet table in Customizing.

Page 201: CRM Fundamentals- II

© SAP AG TCRM20 7-23

1-3 Set up a new condition maintenance group in Customizing.

1-3-1 You want to display the customer-specific material price, which you created in ERP (condition type PR00), in general condition maintenance.

To do this, set up a separate condition maintenance group – ZCMG## (maintenance group ##) – containing the corresponding condition table/condition type. Use a suitable description.

Specify that this condition maintenance group is in the GCM (general condition maintenance) context.

1-3-2 In general condition maintenance, check whether you can display condition master records of condition type PR00 in the condition maintenance group ZCMG##.

Page 202: CRM Fundamentals- II

© SAP AG TCRM20 7-24

Page 203: CRM Fundamentals- II

© SAP AG TCRM20 7-25

Alternative Service Scenario: Exercises

1-1 Conditions and condition maintenance in the CRM system

1-1-1 Create a service order of the type ##Service Order with the account ##Decot and enter the product ##Maintenance with a quantity of 2 AU.

1-1-2 Check the item details of the transaction to see whether the system has found a customer discount price element.

Display the service process item in the Prices assignment block.

1-1-3 Can you enter the price element customer discount with a value of 5% manually?

1-1-4 In future transactions of this type, customers should always receive a customer discount of 3%. This agreement should last from today until the end of the year.

Maintain a condition master record in the CRM system accordingly.

SAP Menu → Master Data→ Prices and Conditions → Maintain Conditions

Application: CRM

Maintenance group: BUPADISCOU

Sales area: IDES TR, 10, 00

1-1-5 Create another service order of the type ##Service Order with the account ##Decot and enter the product ## Maintenance with a quantity of 2 AU.

Is the customer discount found automatically?

Save the transaction and note the number.

_______________ [→ Data sheet]

Page 204: CRM Fundamentals- II

© SAP AG TCRM20 7-26

1-2 Customizing Pricing

1-2-1 What factors influence the determination of a pricing procedure? Where in the system are the specific values of the factors for your special business transactions in the previous exercise (1-1)?

Influencing factor 1______________________________________

Origin: ___________________________________________

Influencing factor 2______________________________________

Origin: ___________________________________________

Influencing factor 3______________________________________

Origin: ___________________________________________

Influencing factor 4______________________________________

Origin: ___________________________________________

Influencing factor 5______________________________________

Origin: ___________________________________________

1-2-2 Which pricing procedure is determined for your data in the transaction? Find this out by checking the assignmnet table in Customizing.

1-3 Set up a new condition maintenance group in Customizing.

1-3-1 You want to edit the customer discount that you created in the last exercise (condition type 0K07) in a condition maintenance group that is set up specifically for this purpose.

To do this, set up a separate condition maintenance group – ZCMG## (maintenance group ##) – containing the corresponding condition table/condition type. Use a suitable description.

Specify that this condition maintenance group is in the GCM (general condition maintenance) context.

1-3-2 In general condition maintenance, check whether you can display condition master records of condition type 0K07 in condition maintenance group ZCMG##.

Page 205: CRM Fundamentals- II

© SAP AG TCRM20 7-27

Solutions

Unit: CRM Pricing Topic: Condition Maintenance and Customizing

1-1 Conditions and condition maintenance in the CRM system

1-1-1 Create a sales transaction of the type Sales Process with the account ##Megastore and enter the product HT-1010 with a quantity of 10 pieces.

Choose Sales Cycle.

Choose Create → Sales Order.

Choose Sales Process.

Sold-To Party: ##Megastore.

External Reference: Pricing ##.

Product ID: HT-1010

Quantity: 10

1-1-2 Check the item details of the transaction to see whether the system has found a customer discount.

Choose the icon next to the item that you have just created in the Items assignment block.

In the item details, open the Prices assignment block.

The list of displayed price elements does not include a customer discount entry.

1-1-3 Can you enter the price element customer discount with a value of 5% manually?

Choose Edit List in the Prices assginment block.

Choose New.

Price Element: Customer Discount

%: 5

The minus sign (-) is added automatically.

Choose Back and save the transaction.

Page 206: CRM Fundamentals- II

© SAP AG TCRM20 7-28

1-1-4 In future transactions of this type, customers should always receive a customer discount of 3%. This agreement should last from today until the end of the year.

Maintain a condition master record in the CRM system accordingly.

SAP Menu → Master Data→ Prices and Conditions → Maintain Conditions Application: CRM

Maintenance group: BUPADISCOU

Choose Execute ( ).

In the data area for the Condition Type (CCtC) field on the right, enter the value 0K07 and confirm your entry. Enter:

Sales Organization: Sales US

Distribution Channel: 30

Division: 00

Customer: <number of ##Megastore>

Amount: 3

Valid From: Today

Valid-to Date: End of year

Save your data.

1-1-5 Create another sales order of the type Sales Process with the account ##Megastore and enter the product HT-1010 with a quantity of 10 pieces.

Choose Sales Cycle.

Choose Create → Sales Order.

Choose Sales Process.

Sold-To Party: ##Megastore.

External Reference: Pricing ##.

Product ID: HT-1010

Quantity: 10

Choose the icon next to the item that you have just created in the Items assignment block.

In the item details, open the Prices assignment block.

Is the customer discount found automatically?

The list of displayed price elements now includes the customer discount entry.

Save the transaction and note the number.

_______________

Page 207: CRM Fundamentals- II

© SAP AG TCRM20 7-29

1-2 Customizing Pricing

1-2-1 What factors influence the determination of a pricing procedure? Where in the system are the concrete values of the factors for your business transactions from the previous exercise?

The determination of the pricing procedure can be affected by the following factors:

Influencing factor 1: Sales organization

Specific value: Sales US (O 50000609)

Origin: Assignment block: Organizational Data

Influencing factor 2: Distribution channel

Specific value: Internet Sales (30)

Origin: Assignment block: Organizational Data

Influencing factor 3: Division

Specific value: --

Origin: Assignment block: Organizational Data

Influencing factor 4: Document pricing procedure

Specific value: CRM (9)

Origin: Transaction type [ZSAL]

Influencing factor 5: Customer Pricing Procedure

Specific value: Standard (1)

Origin: Account

-----------------------------------------------------------------------------------------

Additional information for influencing factors 1-3 The organizational data is found in the Organization Data assignment block in the details of the transaction.

Additional information for influencing factor 4 (document pricing procedure)

Choose Architecture and Technology → Configuration → Customizing.

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

Select entry ZSAL and choose Details ( ).

In the dialog structure, double-click Assignment of Business Transaction Categories.

Select the Sales transaction category and double-click Customizing header in the dialog structure.

The document pricing procedure is CRM (9).

Additional information for influencing factor 5 (customer pricing procedure)

Page 208: CRM Fundamentals- II

© SAP AG TCRM20 7-30

Choose Account Management.

Choose Search → Accounts.

Search for acount ##Megastore.

Open the Sales Area Data assignment block for the account ##Megastore.

Choose edit action ( ) for the sales area.

US Sales & Service; Internet Sales; -- The customer pricing procedure is Standard (1).

1-2-2 Which pricing procedure is determined for your data in the transaction? Find this out by checking the assignmnet table in Customizing.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Pricing → Pricing in the Business Transaction → Determine Pricing Procedures Choose Position.

Sales Organization ID: O 50000609 (Use the input help)

Distribution Channel: 30

Division: < >

Document Pricing Procedure: 9

Customer Pricing Procedure: 1

Choose ENTER.

The pricing procedure found is 0CRM01.

Page 209: CRM Fundamentals- II

© SAP AG TCRM20 7-31

1-3 Set up a new condition maintenance group in Customizing.

1-3-1 You want to display the customer-specific material price, which you created in ERP (condition type PR00), in general condition maintenance.

To do this, set up a separate condition maintenance group – ZCMG## (maintenance group ##) – containing the corresponding condition table/condition type. Use a suitable description.

Specify that this condition maintenance group is in the GCM (general condition maintenance) context.

SAP Implementation Guide → Customer Relationship Management → Master Data → Conditions and Condition Techniquie → Condition Technique: Basics → Create Maintenance Group

Choose New Entries.

Maintenance group: ZCMG##

Description: Maintenance group ##

Confirm your entry, select it and choose Condition Maintenance Group: Detail in the dialog structure on the left.

Choose New Entries.

Counter: 1

Application: CRM

Usages: PR

Condition table: SAP305

Condition Type: PR00

Description: Customer-spec. material price ##

Save your entries.

SAP Implementation Guide → Customer Relationship Management → Master Data → Conditions and Condition Technique → Condition Technique: Basics → Define Maintenance Groups for Context

Maintenance context: GCM

Choose Copy

Choose New Entries.

Group: ZCMG##

Save your entries.

Page 210: CRM Fundamentals- II

© SAP AG TCRM20 7-32

1-3-2 In general condition maintenance, check whether you can display condition master records of condition type PR00 in the condition maintenance group ZCMG##.

SAP Menu → Master Data→ Prices and Conditions → Maintain Conditions Application: CRM

Maintenance group: ZCMG##

Choose Execute.

In the dialog structure on the left, select the fields Condition Type and Sold-To Party (use STRG-key!).

Choose Select records ( ).

In the dialog box that is displayed, enter the following:

Condition Type: PR00

Sold-To Party: 3271

Choose Execute.

The condition records are displayed. However, it is not possible to change the master record because it was transferred from the ERP system and was not intended for processing in the SAP CRM system.

Page 211: CRM Fundamentals- II

© SAP AG TCRM20 7-33

Alternative Service Scenario: Solutions

1-1 Conditions and condition maintenance in the CRM system

1-1-1 Create a service process of the type ##Service Order with the account ##Decot and enter the product ##Maintenance with a quantity of 2 AU.

Choose Service Orders.

Choose Create → Service Order.

Choose ##Service Order.

Sold-To Party: ##Decot.

External Reference: Pricing ##.

Product ID: ##Maintenance

Quantity: 2

1-1-2 Check the item details of the transaction to see whether the system has found a customer discount price element.

Choose the icon next to the item that you have just created in the Items assignment block.

In the item details, open the Price Details assignment block.

The list of displayed price elements does not include a customer discount entry.

1-1-3 Can you enter the price element customer discount with a value of 5% manually?

Choose Edit List in the Price Details assginment block.

Choose New.

Price Element: Customer Discount

%: 5

The minus sign (-) is added automatically.

Choose Back and save the transaction.

Page 212: CRM Fundamentals- II

© SAP AG TCRM20 7-34

1-1-4 In future transactions of this type, customers should always receive a customer discount of 3%. This agreement should last from today until the end of the year.

Maintain a condition master record in the CRM system accordingly.

SAP Menu → Master Data→ Prices and Conditions → Maintain Conditions Application: CRM

Maintenance group: BUPADISCOU

Choose Execute ( ).

In the data area for the Condition Type (CCtC) field on the right, enter the value 0K07 and confirm your entry. Enter:

Sales Organization: IDES TR

Distribution Channel: 10

Division: 00

Customer: <Number of ##Decot>

Amount: 3

Valid From: Today

Valid-to Date: End of year

Save your data.

1-1-5 Create another service order of the type ##Service Order with the account ##Decot and enter the product ##Maintenance with a quantity of 2 AU.

Choose Service Orders.

Choose Create → Service Order.

Choose ##Service Order.

Sold-To Party: ##Decot.

External Reference: Pricing ##.

Product ID: ##Maintenance

Quantity: 2

Choose the icon next to the item that you have just created in the Items assignment block.

In the item details, open the Price Details assignment block.

Is the customer discount found automatically?

The list of displayed price elements now includes the customer discount entry.

Save the transaction and note the number.

_______________

Page 213: CRM Fundamentals- II

© SAP AG TCRM20 7-35

1-2 Customizing Pricing

1-2-1 What factors influence the determination of a pricing procedure? Where in the system are the concrete values of the factors for your business transactions from the previous exercise?

The determination of the pricing procedure can be affected by the following factors:

Influencing factor 1: Sales organization

Specific value: IDES TR (O 50005807)

Origin: Assignment block: Organizational Data

Influencing factor 2: Distribution channel

Specific value: Endkundenverkauf (10)

Origin: Assignment block: Organizational Data

Influencing factor 3: Division

Specific value: --

Origin: Assignment block: Organizational Data

Influencing factor 4: Document pricing procedure

Specific value: Service Process (S)

Origin: Transaction type [ZSAL]

Influencing factor 5: Customer Pricing Procedure

Specific value: Standard (1)

Origin: Account

-----------------------------------------------------------------------------------------

Additional information for influencing factors 1-3 The organizational data is found in the Organization Data assignment block in the details of the transaction.

Additional information for influencing factor 4 (document pricing procedure)

Choose Architecture and Technology → Configuration → Customizing.

Choose SAP Reference IMG.

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Define Transaction Types

Select entry ZS## and click on the Details icon ( ).

In the dialog structure, double-click Assignment of Business Transaction Categories.

Select the Sales transaction category and double-click Customizing header in the dialog structure.

The document pricing procedure is called Service Process (S).

Additional information for influencing factor 5 (customer pricing procedure)

Page 214: CRM Fundamentals- II

© SAP AG TCRM20 7-36

Choose Account Management.

Choose Search → Accounts.

Search for acount ##Megastore.

Open the Sales Area Data assignment block for the account ##Megastore.

Choose edit action ( ) for the sales area.

[IDES CRM Training Company; Final customer sales; --] The customer pricing procedure is Standard (1).

1-2-2 Which pricing procedure is determined for your data in the transaction? Find this out by checking the assignmnet table in Customizing.

SAP Implementation Guide → Customer Relationship Management → Basic Functions → Pricing → Pricing in the Business Transaction → Determine Pricing Procedures Choose Position.

Sales Organization ID: O 50005807 (Use the input help)

Distribution Channel: 10

Division: < >

Document Pricing Procedure: S

Customer Pricing Procedure: 1

Choose ENTER.

The pricing procedure found is 0CRM02.

Page 215: CRM Fundamentals- II

© SAP AG TCRM20 7-37

1-3 Set up a new condition maintenance group in Customizing.

1-3-1 You want to display the customer-specific material price, which you created in ERP (condition type 0K07), in general condition maintenance.

To do this, set up a separate condition maintenance group – ZCMG## (maintenance group ##) – containing the corresponding condition table/condition type. Use a suitable description.

Specify that this condition maintenance group is in the GCM (general condition maintenance) context.

SAP Implementation Guide → Customer Relationship Management → Master Data → Conditions and Condition Techniquie → Condition Technique: Basics → Create Maintenance Group

Choose New Entries.

Maintenance group: ZCMG##

Description: Maintenance group ##

Confirm your entry, select it and choose Condition Maintenance Group: Detail in the dialog structure on the left.

Choose New Entries.

Counter: 1

Application: CRM

Usages: PR

Condition table: SAP007

Condition Type: 0K07

Description: Customer-spec. Material price ##

Save your entries.

SAP Implementation Guide → Customer Relationship Management → Master Data → Conditions and Condition Techniquie → Condition Technique: Basics → Define Maintenance Groups for Context

Maintenance context: GCM

Choose Copy

Choose New Entries.

Group: ZCMG##

Save your entries.

Page 216: CRM Fundamentals- II

© SAP AG TCRM20 7-38

1-3-2 In general condition maintenance, check whether you can display condition master records of condition type 0K07 in the condition maintenance group ZCMG##.

SAP Menu → Master Data→ Prices and Conditions → Maintain Conditions Application: CRM

Maintenance group: ZCMG##

Choose Execute.

In the dialog structure on the left, select the fields Condition Type.

Choose Select records ( ).

In the dialog box that is displayed, enter the following:

Condition Type: PR00

Choose Execute.

The condition records are displayed and can be changed since this data was created in CRM.

Page 217: CRM Fundamentals- II

© SAP AG TCRM20 8-1

SAP AG 2008

CRM Billing: Overview Diagram

9. Pricing Fundamentals

10. CRM Billing

11. CRM Middleware

12. CRM WebClient UI

Appendix

Unit1. SAP CRM 2007 – Overview

2. Account Management

3. Organizational Management

4. Product Master

5. Transaction Processing

6. Activity Management

7. Partner Processing

8. Actions

Page 218: CRM Fundamentals- II

© SAP AG TCRM20 8-2

SAP AG 2008

CRM Billing

Billing Process Overview

Billing Customizing

Page 219: CRM Fundamentals- II

© SAP AG TCRM20 8-3

SAP AG 2008

Billing: Unit Objectives

At the end of this unit, you will be able to:

Explain the document flow in SAP CRM

Create and describe billing documents

Name the Customizing settings relevant for CRM Billing

Page 220: CRM Fundamentals- II

© SAP AG TCRM20 8-4

SAP AG 2008

Billing: Business Scenario

You want to use CRM Billing to invoice service transactions and customer orders. You need to familiarize yourself with the general concepts of CRM Billing, the process details, and the relevant Customizing settings.

Page 221: CRM Fundamentals- II

© SAP AG TCRM20 8-5

SAP AG 2008

Integration of Billing in the Service Scenario: Service Order Management

Requests quotation

7

4

2

3

5

1

8

6

Converts the quotation into a

service order

Acceptsquotation

Creates and submits

quotation

Executes assignment,

enters confirmation

Creates and optimizes

assignments

Performs analyses

Createsinvoice

Page 222: CRM Fundamentals- II

© SAP AG TCRM20 8-6

SAP AG 2008

Integration of Billing in the Sales Scenario:Quotation and Order Processing in SAP CRM

Creates opportunity

74

23

5

1

6

Monitors status of order

Creates sales order

Creates quotation

Creates invoiceCreates delivery then picks,

packs and posts goods issue

Analyzes sales processes

Page 223: CRM Fundamentals- II

© SAP AG TCRM20 8-7

SAP AG 2008

System Landscape

SalesSales& Service& Service BillingBilling BI

SAP CRM

SAP ECC

FI/COLELE

In SAP CRM, you can issue invoices for various business transactions. These include invoices for:

Sales orders (with or without reference to delivery)

Service contracts, service orders, service confirmations, confirmation processing

You can use CRM Billing to combine service order items and sales order items in the invoices. This simplifies communication with your customers.

If you want to invoice only CRM sales orders and you are currently using SAP Sales and Distribution (SAP SD), you have the option of using either SD Billing or CRM Billing. You should normally use CRM Billing to invoice contracts, service orders, confirmations and complaints.

The ERP component SAP FI-AR (accounts receivable accounting) or FI-CA (Contract Accounts Receivable and Payable) must be implemented if you wish to post billing documents in financial accounting.

The billing component in SAP CRM is a billing engine application that is generated beforehand. When you make Customizing settings for billing, make these for the CRM Billing application.

Page 224: CRM Fundamentals- II

© SAP AG TCRM20 8-8

SAP AG 2008

Sales

Service

Delivery

Externaldata

Process Overview

Output Printer,e-mail, …

Transfer SAP FI/CO

Extraction BIContent

ConnectNon-SAPsystems

Inputprocessing

Billing Outputprocessing

The billing process consists of three steps:Input processingBillingOutput processing

Billingdue list

Billingdocuments

During input processing, CRM Billing takes over billing-relevant items from different business transactions and saves them as billing due list items.

As of CRM Release 5.0, you can use an external interface to copy data from non-SAP systems to the CRM Billing due list. It supports the following formats:

IDoc; XML SOAP via HTTP; XML via SAP NetWeaver Exchange Infrastructure

For more information, see the documentation for function module CRMXIF_BEA_DL_CRMB_SAVE.

If possible during billing, the system groups related billing due list items from different CRM business transactions into a joint billing document. The billing due list can process due list items as part of an individual billing or as part of collective billing. It is also possible to perform the execution in the background.

Output processing consists of invoice output, the transfer to SAP Financials, and retrieval in SAP BW. The output is performed using SAP Smart Forms. The posting of billing data takes place either in SAP FI-AR or in SAP FI-CA. CRM Billing provides all relevant billing data for statistical reports (BI Content).

Page 225: CRM Fundamentals- II

© SAP AG TCRM20 8-9

SAP AG 2008

Input Processing

Billing due list is created

Billing-relevant business transactions ortransaction items

ContractsService confirmationsDeliveriesOrders…

The billing due list items contain all the data neededfor billing

Automatic

When you save a business transaction in which at least one item is relevant to billing, the system automatically transfers the data from this billing request item to the billing due list in CRM Billing.

CRM Billing uses the data from Customizing to determine the item category in CRM Billing for the transferred data record. When the system cannot determine an item category (if, for example, the item category determination is not set up completely), the system has to reject the transferred data record because billing is not possible without the item categories (the billing due list is incomplete).

CRM Billing saves all successfully processed and completed data as billing due list items.

You can search for billing due list items using various selection criteria.

You can display the details of each billing due list item.

There are two ways of setting a billing block:

You give the business transaction item billing block status.

The billing item category is blocked for billing by the corresponding indicator.

Page 226: CRM Fundamentals- II

© SAP AG TCRM20 8-10

SAP AG 2008

Billing Process

Billing MethodsIndividual billing (dialog)

Collective billing (dialog)

Collective billing (background)

Collective billing (job-controlled)

Order DeliveryBilling document splitInvoices

Invoices

DeliveryMerging

Sales

ServiceInvoices

You can use copying requirements to control the conditions under which a transaction's item are billed.

As a sub process of general billing, CRM Billing transfers billing due list items to billing document items and assigns these to the billing document headers. Therefore, billing documents (for example, invoices, credit memos and debit memos) are created from items which come from a wide range of CRM business transactions.

Split criteria in billing document header data includes the billing unit, payer, bill-to-party, billing document type, billing date, terms of payment and the Split Criteria field. You can also influence the split criteria using the copying requirements. To do so, follow the Customizing path: SAP Implementation Guide → Customer Relationship Management → Billing → Define Copying Requirements.

Page 227: CRM Fundamentals- II

© SAP AG TCRM20 8-11

SAP AG 2008

Billing Documents

Paid party Billing typeBilling dateBilling unit…

Header data

Item dataProductQuantityPrices and conditionsSold-to party…

Billing documents are not exchanged between the CRM and ERP systems.

As long as the invoices have not been transferred to accounting, you can make certain changes to the invoices (such as changing the value date, the prices and texts).

CRM invoices generate the sales data for the rebate.

You can cancel individual billing documents and also execute collective cancellations. The system transfers cancellation information to financial accounting automatically.

Page 228: CRM Fundamentals- II

© SAP AG TCRM20 8-12

SAP AG 2008

Billing Execution

CRM WebClient UITransactions billed manually

SAP GUIVariants for collective billing run

Billing of individual transaction items

We recommend that you perform billing using the CRM WebClient UI. There are several user roles that contain a billing work center. In the screenshot on the slide above, the work center has been activated for the SERVICEPRO user role.

Perform billing in the SAP GUI if

You are using variants to perform collective billing. Variants are a group of predefined selection criteria for billing.

You want to bill individual transaction items (for example, a monthly invoice from a service order).

Page 229: CRM Fundamentals- II

© SAP AG TCRM20 8-13

SAP AG 2008

Output Processing

_ _ _ __ _ _ __ _ _ __ _ _ _

Output Transfer Extraction Connect

ERP BIExternal Interface(XIF Adapter)

Output processing in CRM Billing aids the transfer of follow-up applications and SAP tools with billing document data and is split into the following processes: Output of invoicing documents through different output media (for example, printer, fax, e-mail or

external output management systems)

Transfer of billing data to a range of SAP ERP accounting applications

Provision of data for SAP Business Information Warehouse (SAP BI)

Connection of any non-SAP application to the external interface of CRM Billing – You can find more information about connection under Interfaces for connecting to external systems.

CRM Billing allows you to issue invoices in the following output methods: printer, fax, e-mail, archive, and external printing channels (via the XML interface in CRM Billing).

Smart Forms process the invoice in the layout you require. The formation of a specific invoice depends on the billing type of the corresponding action (for example invoices, credit memos, debit memos or cancellation documents).

You can monitor the transfer to accounting (status; error handling).

You can carry out the transfer to accounting separately (at a later point in time).

You can set up account determination either simply or flexibly (condition technique).

Page 230: CRM Fundamentals- II

© SAP AG TCRM20 8-14

SAP AG 2008

Billing Option: Billing Plans

Periodic billing(for example, contracts)

January 1 2 3 4

5 6 7 8 9 10 1112 13 14 15 16 17 1819 20 21 22 23 24 2526 27 28 29 30 3131

February 1 2 3 4

5 6 7 8 9 10 1112 13 14 15 16 17 1819 20 21 22 23 24 2526 27 2828

March 1 2 3 4

5 6 7 8 9 10 1112 13 14 15 16 17 1819 20 21 22 23 24 2526 27 28 29 30 3131

EUR 740.00 EUR 740.00 EUR 740.00

Milestone billing(for example, projects)

January 11 2 3 4

5 6 7 8 9 10 1112 13 14 15 16 17 1819 20 21 22 23 24 2526 27 28 29 30 31

March 1 2 3 4

5 6 7 8 9 10 1112 13 14 1515 16 17 1819 20 21 22 23 24 2526 27 28

May 1 2 3 4

5 6 7 8 9 10 1112 13 14 15 16 17 1819 20 21 22 23 24 2526 27 28 29 30 3131

20% = EUR 100.00 40% = EUR 200.00 40% = EUR 200.00

Payer

Billing plan procedure + Transaction type/item category ⇒ Billing plan type

The billing plan specifies when a certain amount is invoiced. Service contracts and leasing scenarios in particular use billing plans.

As of CRM 5.0, it is also possible to map usage-based billing. Billing plans are also used in this case.

You set up billing plan types and billing plan determination in Customizing:

SAP Implementation Guide → Customer Relationship Management → Transactions → Basic Settings → Billing Plan

Page 231: CRM Fundamentals- II

© SAP AG TCRM20 8-15

SAP AG 2008

Customizing Organizational Data

BUSales Organization 1

Sales Organization 2

Sales Organization 3

Service organization BU

Company Code 1

Company Code 2

SAP Reference IMG

Customer Relationship Management

Master Data

Organizational Management

Cross-System Assignments ...

Billing-specific assignments of organizational units

The billing unit (BU) is a CRM business partner that has the role Billing Unit. For more information, see the IMG documentation: SAP Implementation Guide → Customer Relationship Management → Billing → Define Billing

Organizational Unit

The billing unit can be defined separately and independently of the sales or service organization.

You can assign more than one sales organization to a billing unit (cross-sales organization billing)

Billing units are assigned uniquely to company codes.

Page 232: CRM Fundamentals- II

© SAP AG TCRM20 8-16

SAP AG 2008

Billing Document Customizing: Unit Summary

SAP Reference IMG

Customer Relationship Management

BillingDefine number ranges

Define billing-relevance of the business transaction items

Define billing types

Define item categories

Define item category determination

Billing document-specific Customizing settings

In order to use all CRM Billing functions, you must maintain all the activities in the Implementation Guide under the Billing node. To find the billing node, choose the following path in the Implementation Guide (transaction SPRO): Customer Relationship Management → Billing.

Under Define Billing Types, determine the billing types for CRM Billing. A billing type specifies a billing document's characteristics and properties. The billing type attributes determine how the system behaves during billing.

Under Define Billing Item Categories , enter the item categories for CRM Billing. The item category determines the properties and characteristics of the billing due list items and the billing items. The item category attributes specify how the system behaves during input processing and billing.

Under Item Category Determination, make the settings for item category determination in CRM Billing. Item category determination is used to define the item category for CRM Billing using data from CRM business transactions. There are two ways of doing this:

In the Assign Item Categories activity, you can assign the item category in CRM Billing to a specific combination of transaction type (process type of source application) and an item category of the relevant CRM business transaction.

Page 233: CRM Fundamentals- II

© SAP AG TCRM20 8-17

SAP AG 2008

Example: Customizing of the Service Confirmation

Service (SRVP)

Service part (SRVM)

Service order (SRVO)

Expense (SRVE)

Service (SVCP*)

Service part (SVCM*)

Confirmation (SRVC)

Expense (SVCE*)

Item category determination (for billing):Source transaction type + Source item type Billing item category

SRVC + SVCP SCNSRVC + SVCM SCNSRVC + SVCE SCN

* = Relevant for billing

Billing Customizing

Item categories (for billing):Details of item type SCN (extract)

- Billing type F2SV- Billing block

Billing types (for billing):Details of the billing type F2SV (Extract)

- Number range- Pricing procedure

Account

AccountPricing procedure

This slide shows extracts from standard SAP CRM Customizing. The example shows the confirmation of a service order with three typical items that are not relevant for billing. A confirmation transaction is created with other item types as a follow-up transaction.

In the example, the (transaction) item types of the confirmation are set as relevant for billing. In standard systems, the billing relevance is set to Transaction-related billing after completion. In this situation, it is necessary to complete the confirmation and the service order for billing. You also then use the Release for Billing function. If the billing relevance is set to Order-related billing acc. to order quantity, the billing due list is created when the confirmation is completed.

In billing Customizing, the "determination" is set by the billing item categories. In the example, item category SCN is determined.

If required, an enhanced item category determination can be set up in Customizing.

The default value for the billing type is stored in the details of billing item category SCN. This is F2SV in the example.

Note that the contents of the pricing procedure of the transaction to be billed must match the pricing procedure of the billing type (ideally they should be the same). You can ensure that this is the case by setting the "Copy Pricing Procedure" indicator for the billing type. If you do this, you do not have to assign a pricing procedure to the billing type.

Page 234: CRM Fundamentals- II

© SAP AG TCRM20 8-18

SAP AG 2008

Example: Customizing of a Delivery-Related Sales Order

Sales (TAN*)

Sales Order/CRM (TA)

Delivery item (TAN)

Delivery/ERP (LF)

Item category determination (for billing):Source transaction type + Source item type Billing item category

TA + TAN TANDLF + TAN TAN

* = Relevant for billing

Billing Customizing

Item categories (for billing):Details of item type TAND (extract)

- Dependent item

Item categories (for billing):Details of item type TAN (extract)

- Billing type F2- Billing block

Account

Prices/Partners

Business partners

Quantities/Weights

The example on this slide and the next illustrates a distribution-relevant CRM sales order (the replicated ERP sales order is not shown on this page) with delivery processing in the ERP system. Billing takes place in the CRM system. Note: The transaction types and transaction item categories that are shown here are different from those in standard systems.

The transaction item category of the CRM sales order is set a relevant for (CRM) billing. Standard CRM systems contain the billing relevancies Delivery-Related Billing [F] and Delivery-Related Billing – No Zero Quantities [G].

In this situation, an invoice requires two entries in billing item category determination. Note that the (first) billing item category that is found and which is generated by the CRM order item is flagged as a dependent item. This billing due list item cannot be selected in the billing due list.

After successful delivery processing (and goods issue posting), a second billing due list item is generated which may then be invoiced.

Note that the price determination settings and price conditions must be maintained in CRM when delivery-related CRM Billing is used.

Page 235: CRM Fundamentals- II

© SAP AG TCRM20 8-19

SAP AG 2008

Billing Due List During Delivery-Related CRM Billing

Sales (TAN) Delivery item(TAN)

Delivery/ERP (LF)

Delivery-relatedbilling (F/G)

Sales Order/CRM (TA)

Sales (TAN)Delivery-relatedCRM Billing (Q/R)

Sales Order/ERP (TA)

Billing due list item 1

TAND

Billing due list item 2

TAN

Account

Prices/Partners

Account Business partners

Quantities/Weights

The CRM sales order displayed above generates a (first) billing due list item. After further processing in the ERP system, delivery processing generates a second billing due list item.

When you set the Dependent Item indicator in Customizing for CRM Billing, you can define billing item categories so that the billing due list items which they contain from the data transfer are dependent on another business transaction. Only the data of this business transaction that is transferred later can be billed. So, for example, order item TAND is a dependent item which cannot be selected in the billing due list. If the delivery occurs in the ERP system and delivery item TAN is transferred to CRM Billing, item TAN can be billed.

Note: A special setting can be made to change the underlying system configuration of CRM. This setting is from Service Parts Management (SPM) and there are certain minimum system requirements for its use. When this setting is made, new sales orders are no longer transferred from SAP CRM to SAP ECC. Instead, unchecked deliveries are created immediately in SAP ECC. An unchecked delivery is a delivery document that contains requested delivery dates and quantities that were transferred from the sales order. In a subsequent program run in the background, SAP ECC converts the unchecked deliveries into checked deliveries.

Page 236: CRM Fundamentals- II

© SAP AG TCRM20 8-20

SAP AG 2008

Additional Customizing Settings

Additional Customizing Settings: "Services"SAP Reference IMG

Customer Relationship Management

Basic FunctionsPricing

Partner determination

Text determination

Integration Settings

SAP Reference IMG

Customer Relationship Management

Billing

IntegrationTransfer to accounting

Transfer to Global Trade Services (GTS)

In service-related Customizing, you make settings for the services in CRM Billing: pricing, partner processing, text processing, and action processing.

Under integration-related Customizing, you make settings for integrating billing with accounting applications. Settings regarding document types, accounts and tax codes for accounting documents are made here.

Page 237: CRM Fundamentals- II

© SAP AG TCRM20 8-21

SAP AG 2008

Configuring the Billing Application

Enhanced item category determinationEnhanced account determinationXIF connection to input processingIntegration with Contract Accounting (FI-CA)Supplementary invoiceIntercompany billingMulti-level intercompany billingInvoice split using conditionsGTS integrationBilling correctionRetroactive billingCountry-specific functions

You can adjust the billing application

The billing engine framework enables you to adjust the CRM Billing invoice application flexibly.

For details of the additional functions in the context of CRM Billing, see

SAP Implementation Guide → Customer Relationship Management → Billing → Configure Application

Page 238: CRM Fundamentals- II

© SAP AG TCRM20 8-22

SAP AG 2008

CRM Billing: Unit Summary

You are now able to:

Explain the document flow in SAP CRM

Create and describe billing documents

Name the Customizing settings relevant for CRM Billing

Page 239: CRM Fundamentals- II

© SAP AG TCRM20 8-23

Exercises

Unit: CRM Billing Topic: Creating Billing Documents

At the conclusion of this exercise, you will be able to:

• Understand the organizational units needed for billing and the assignments of these units

• Work with the billing due list and create individual billing documents

• Carry out certain necessary Customizing settings to set up CRM Billing

You want to settle sales and service transactions with CRM Billing and so you want to familiarize yourself with this application.

1-1 Relevant Organizational Data for CRM Billing.

1-1-1 Check if one or more billing units exist in the CRM system. Make a note of the IDs/numbers.

Search for accounts that have the role Billing Unit.

1-1-2 Check Customizing to see which of these billing units was assigned to the sales organization Sales US.

1-1-3 Check Customizing to see which company code is assigned to the billing unit.

Page 240: CRM Fundamentals- II

© SAP AG TCRM20 8-24

1-2 Create a new order of the type Sales Transaction (ZSAL) for the customer ##Megastore and the product HT-1000 (1 piece) then maintain it in the ERP system.

1-2-1 Create the order in the CRM system and check whether it was transferred to the ERP system.

Save the order and note the number.

__________________ [→ Data sheet]

1-2-2 Call the ERP system and perform the following logistical follow-up functions.

a) Deliver your order.

SAP Menu → Logistics → Sales and Distribution → Shipping and Transportation → Outbound Delivery → Create → Single Document → With Reference to Sales Order

Make a note of the delivery number.

_____________ [→ Data sheet]

b) Pick the outbound delivery.

SAP Easy Access Menu → Logistics → Sales and Distribution → Shipping and Transportation → Picking→ Create Transfer Document → Single Document

Alternative access from the delivery itself: Menu: Subsequent Functions → Picking

Note the delivery number if it has not yet taken place.

_____________ [→ Data sheet]

1-2-3 Check the CRM system to see whether your transaction is in the billing due list.

1-2-4 Post the goods issue for your outbound delivery in the ERP system.

1-2-5 Check the CRM system again to see whether your transaction is in the billing due list.

1-2-6 Create a billing document for your entry/transaction.

_____________ [→ Data sheet]

1-2-7 Are accounting documents generated in the ERP system?

_________________________________

Page 241: CRM Fundamentals- II

© SAP AG TCRM20 8-25

1-3 Check the relevant Customizing for CRM Billing.

1-3-1 Check the Billing-relevance indicator for the item category ZSAL (which was determined in your transaction).

______________

1-3-2 Find out which item category for billing is assigned to your source process category LF (Delivery) in source item category ZSAL.

______________

1-3-3 Take a look at the details for this item category. What billing type is used by default? Do billing due list items need to be released before they can be billed?

Page 242: CRM Fundamentals- II

© SAP AG TCRM20 8-26

Page 243: CRM Fundamentals- II

© SAP AG TCRM20 8-27

Alternative Service Scenario: Exercises

1-1 Relevant organizational data for CRM Billing.

1-1-1 Check if one or more billing units exist in the CRM system. Make a note of the IDs/numbers.

Search for accounts that have the role Billing Unit.

1-1-2 Check Customizing to see which of these billing units is assigned to the sales organization Sales US.

1-1-3 Check Customizing to see which company code is assigned to the billing unit.

1-2 Create a service confirmation of the type Confirmation (ZSEC) for customer ##Megastore with product SRV1_4 (2 AU) and the executing service employee Lou Windham. Enter a duration of 60 minutes.

1-2-1 Create the confirmation in the CRM system and complete it by setting the relevant status.

Save the confirmation and note the number.

__________________ [→ Data sheet]

1-2-2 Create a billing document for your confirmation.

1-2-3 Are accounting documents generated in the SAP ERP system?

_________________________________

1-3 Check the relevant Customizing for CRM Billing.

1-3-1 Check the Billing-relevance indicator for the item category SVCP (which was determined in your transaction).

______________

1-3-2 Find out which item category for billing is assigned to your source transaction category ZSEC (Confirmation) and source item category SVCP.

______________

1-3-3 Take a look at the details for this item category. What billing type is used by default? Do billing due list items need to be released before they can be billed?

Page 244: CRM Fundamentals- II

© SAP AG TCRM20 8-28

Page 245: CRM Fundamentals- II

© SAP AG TCRM20 8-29

Solutions

Unit: CRM Billing Topic: Creating Billing Documents

1-1 Relevant Organizational Data for CRM Billing.

1-1-1 Check if one or more billing units exist in the CRM system. Make a note of the IDs/numbers.

Choose Account Management.

Choose Search → Accounts.

Role is: Billing Unit

Choose Search (ENTER).

If your search is successful:

Numbers of the billing units:

407491, 401013, 400021, 408800, 33, 405890, 406383 and possibly others also.

1-1-2 Check Customizing to see which of these billing units was assigned to the sales organization Sales US.

SAP Implementation Guide → Customer Relationship Management → Master Data → Organizational Management → Cross-System Assignment of Organizational Units → Assign Billing Units to Sales Organizations

Billing Unit 33 is assigned to sales organization O 50000609 (Sales US).

1-1-3 Check Customizing to see which company code is assigned to the billing unit.

SAP Implementation Guide → Customer Relationship Management → Master Data → Organizational Management → Cross-System Assignment of Organizational Units → Assign Company Codes to Billing Units

Company Code 3000 is assigned to Billing unit 33.

Page 246: CRM Fundamentals- II

© SAP AG TCRM20 8-30

1-2 Create a new order of the type Sales Transaction (ZSAL) for the customer ##Megastore and the product HT-1000 (1 piece) then maintain it in the ERP system.

1-2-1 Create the order in the CRM system and check whether it was transferred to the ERP system.

Choose Sales Cycle.

Choose Create → Sales Order.

Choose Sales Process.

Sold-To Party: ##Megastore.

External Reference: Billing##

Product ID: HT-1000

Quantity: 1

Save the order and note the number.

__________________ [→ Data sheet]

1-2-2 Call the ERP system and perform the following logistical follow-up functions.

a) Deliver your order.

SAP Menu → Logistics → Sales and Distribution → Shipping and Transportation → Outbound Delivery → Create → Single Document → With Reference to Sales Order Shipping point: 3800

Selection date: <one week from today>

Order: <Your order number>

Choose Continue ( ).

Save the outbound delivery.

___________ [→ Data sheet]

b) Pick the outbound delivery.

SAP Easy Access Menu → Logistics → Sales and Distribution → Shipping and Transportation → Picking→ Create Transfer Document → Single Document Warehouse Number: 038.

Delivery: <Your delivery number>

Foreground/Background: Background

Adopt Pick Quantity: 1

Choose Continue ( ).

The transfer order is created.

Page 247: CRM Fundamentals- II

© SAP AG TCRM20 8-31

1-2-3 Check the CRM system to see whether your transaction is in the billing due list.

In the CRM WebClient UI:

Choose Billing.

Choose Search → Billing Due List Items.

Sold-To Party ID: <Number of your sold-to party>

Choose Search.

There is no entry for your process because goods issue for the outbound delivery has not yet been posted.

1-2-4 Post the goods issue for your outbound delivery in the ERP system.

SAP Easy Access Menu → Logistics → Sales and Distribution → Shipping and Transportation → Outbound Delivery → Change → Single Document Delivery: <Your delivery number>

Without going to the details of the delivery you choose Post Goods Issue.

1-2-5 Check the CRM system again to see whether your transaction is in the billing due list.

Choose Billing.

Choose Search → Billing Due List Items.

Sold-To Party ID: <Number of your sold-to party>

Choose Search.

Now there will be an entry with your delivery number.

1-2-6 Create a billing document for your entry/transaction.

Select the line ( ) with your entry.

Choose Individual Billing.

Choose Continue.

Choose Save.

_____________ [→ Data sheet]

1-2-7 Are accounting documents generated in the ERP system?

Yes, accounting documents are generated automatically in this situation. Use the hyperlink in the billing due list to go to the details of the billing document that you have just created.

Alternatively choose Billing followed by Search→ Billing Documents.

In the details of the billing document, an Accounting document entry is displayed in the Follow-Up Transactions assignment block.

Choose the hyperlink and, if necessary, log on with the user data of the ERP system.

Page 248: CRM Fundamentals- II

© SAP AG TCRM20 8-32

1-3 Check the relevant Customizing for CRM Billing.

1-3-1 Check the Billing-relevance indicator for the item category ZSAL (which was determined in your transaction).

______________

SAP Implementation Guide → Customer Relationship Management → Billing → Define Billing Relevance of Item Categories

Go to item category ZSAL.

Billing relevance: Delivery-Related CRM Billing.

The corresponding ERP item type in the sales order as billing relevance Q (delivery-related CRM billing).

Page 249: CRM Fundamentals- II

© SAP AG TCRM20 8-33

1-3-2 Find out which item category for billing is assigned to your source process category LF (Delivery) in ERP and source item category ZSAL.

SAP Implementation Guide → Customer Relationship Management → Billing → Item Category Determination → Assign Item Categories

Choose CRMB (CRM Billing).

Go to the line with Source Process Category LF and Source Item Category ZSAL.

Billing item category ZDEL is assigned.

1-3-3 Take a look at the details for this item category. What billing type is used by default? Do billing due list items need to be released before they can be billed?

SAP Implementation Guide → Customer Relationship Management → Billing → Define Billing Item Categories

Choose CRMB (CRM Billing).

Take a look at the details for item category ZDEL ( ).

The billing type Invoice (F2) is the default value.

The billing block indicator is not set; in other words, invoices do not have to be released.

Page 250: CRM Fundamentals- II

© SAP AG TCRM20 8-34

Page 251: CRM Fundamentals- II

© SAP AG TCRM20 8-35

Alternative Service Scenario: Solutions

1-1 Relevant organizational data for CRM Billing.

1-1-1 Check if one or more billing units exist in the CRM system. Make a note of the numbers.

Choose Accounts & Products.

Choose Search → Accounts.

Role is: Billing Unit

Choose Search (ENTER).

If your search is successful:

Numbers of the billing units:

407491, 401013, 400021, 408800, 33, 405890, 406383 and possibly others also.

1-1-2 In Customizing, find out which of these billing units is assigned to the sales organization Sales US.

SAP Implementation Guide → Customer Relationship Management → Master Data → Organizational Management → Cross-System Assignment of Organizational Units → Assign Billing Units to Sales Organizations

Billing Unit 33 is assigned to sales organization O 50000609 (Sales US).

1-1-3 Check Customizing to see which company code is assigned to the billing unit.

SAP Implementation Guide → Customer Relationship Management → Master Data → Organizational Management → Cross-System Assignment of Organizational Units → Assign Company Codes to Billing Units

Company Code 3000 is assigned to Billing unit 33.

Page 252: CRM Fundamentals- II

© SAP AG TCRM20 8-36

1-2 Create a service confirmation of the type Confirmation (ZSEC) for customer ##Megastore with product SRV1_4 (2 AU) and the executing service employee Lou Windham. Enter a duration of 60 minutes.

1-2-1 Create the confirmation in the CRM system and complete it by setting the relevant status.

Choose Service Orders.

Choose Create → Service Confirmation.

Choose Confirmation.

Description: CRM Billing ##

Executing Service Employee: 400440 (Lou Windham)

Sold-To Party: Number of ##Megastore

Product ID: SRV1_4

Quantity: 2 (AU)

Choose edit item ( ) and enter an Actual Duration of 60 Minutes.

Choose Back.

Choose the status Completed.

Choose Save.

__________________ [→ Data sheet]

1-2-2 Create a billing document for your confirmation.

Choose Basic Functions.

Choose Search → Billing Due List Items.

Sold-To Party ID: <Number of your sold-to party>

Choose Search.

Select the line ( ) with your entry.

Choose Individual Billing.

Choose Continue.

Choose Save.

_____________ [→ Data sheet]

1-2-3 Are accounting documents generated in the ERP system?

Yes, accounting documents are generated automatically in this situation. Use the hyperlink in the billing due list to go to the details of the billing document that you have just created.

Alternatively choose Billing followed by Search→ Billing Documents.

In the details of the billing document, an Accounting document entry is displayed in the Follow-Up Transactions assignment block.

Choose the hyperlink and, if necessary, log on with the user data of the ERP system.

Page 253: CRM Fundamentals- II

© SAP AG TCRM20 8-37

1-3 Check the relevant Customizing for CRM Billing.

1-3-1 Check the Billing-relevance indicator for the item category SVCP (which was determined in your transaction).

SAP Implementation Guide → Customer Relationship Management → Billing → Define Billing Relevance of Item Categories

Go to item category SVCP.

Billing relevance: Transaction-Related billing According to Order Quantity

1-3-2 Find out which item category for billing is assigned to your source process category ZSEC (Confirmation) and source item category SVCP.

SAP Implementation Guide → Customer Relationship Management → Billing → Item Category Determination → Assign Item Categories

Choose CRMB (CRM Billing).

Go to the line with Source Process Category ZSEC and Source Item Category SVCP.

Billing item category SCN is assigned.

1-3-3 Take a look at the details for this item category. What billing type is used by default? Do billing due list items need to be released before they can be billed?

SAP Implementation Guide → Customer Relationship Management → Billing → Define Billing Item Categories

Choose CRMB (CRM Billing).

Take a look at the details for item category SCN ( ).

The billing type Invoice Service Transaction (ZFSE) is the default value.

The Billing Block indicator is not set; in other words, invoices do not have to be released.

Page 254: CRM Fundamentals- II

© SAP AG TCRM20 8-38

Page 255: CRM Fundamentals- II

© SAP AG TCRM20 9-1

SAP AG 2008

Section: CRM Middleware

CRM MiddlewareCRM Middleware

Page 256: CRM Fundamentals- II

© SAP AG TCRM20 9-2

SAP AG 2008

CRM Middleware – Section Outline

Units:

1. Data Exchange with ERP Backend

2. Data Exchange with Third-Party Back End

3. The BW (BI) Adapter (Overview)

4. CRM Middleware Operations

5. The Groupware Adapter (Overview)

Page 257: CRM Fundamentals- II

© SAP AG TCRM20 10-1

SAP AG 2008

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Introduction

Customizing & Condition Synchronization

Load R/3 CRM

Load CRM R/3

Page 258: CRM Fundamentals- II

© SAP AG TCRM20 10-2

SAP AG 2008

Data Exchange with R/3: Unit Objectives

At the conclusion of this unit, you will be able to:Describe the synchronization scenarios for Customizing dataDescribe the synchronization scenarios for Business data and forConditions.Start data flow with CRM Middleware

Page 259: CRM Fundamentals- II

© SAP AG TCRM20 10-3

SAP AG 2008

CRM Server Architecture

CRM Server

SAP Web Application Server

CRM Middleware(main part)

CRM Server Applications• Interaction Center• Internet Sales• Marketing Planning and Campaign

Management• ...

Business Objects• Product• Business Partner • Business Transaction• ...

BW Adapter*

CRM Adapter CRM Adapter (Validation(Validation

Service)Service)

XIF Adapter(XML / IDoc)

ASCII Adapter

R/3 Adapter*R/3 Adapter*

Mobile Client Adapter

* R/3 and BW are the CRM adapter names and the names used through out CRM help and this class. Technically the current system names for these products are SAP ERP an SAP BI.

CRM Database

The data exchange between the CRM System and external systems is performed via CRM Middleware Adapters. The adapters map and convert data between various formats.

For Data Exchange with SAP Backend-Systems a R/3 Adapter is part of the CRM Middleware. The data exchange to the SAP backend is based on qRFC. The R/3 Adapter converts the data into the CRM Data Container, the Business Document (BDoc).

The CRM System supports the handling of CRM business objects, like customers and prospects, activities and opportunities, products and product catalogs in a variety of CRM components like Internet Sales, Internet Service, Interaction Center, Telesales, Campaign Management and various others. The CRM Server Applications exchange data with the CRM Middleware via the CRM Adapter.

The SAP NetWeaver Application Server is the successor to the SAP Basis System. The kernel release used with CRM 5.0 is 7.00.

Page 260: CRM Fundamentals- II

© SAP AG TCRM20 10-4

SAP AG 2008

Message Flow Overview

ExternalSystem

CRM

CRM Database

InboundAdapter

InboundMessage Flow

Validation Service

CRM-Application

OutboundMessage Flow

Data Container

Service 1

Service n

...

mBDoc

OutboundAdapter

ExternalSystem

Data Container

CRM Data Container Outbound-Interface

Inbound-Interface

mBDoc

mBDoc

Inbound processing: Incoming data of different formats, that is, BAPI structures from a SAP R/3 Backend, synchronization BDoc messages, XML/SOAP or IDocs, are converted into messaging BDoc messages.

Validation: the integrity of incoming data is validated by the respective application. In case of a successful validation, the data unit is passed on to outbound processing. In case the incoming data is not valid, the BDoc message will remain in the message flow with an error status.

Outbound processing: the receiving systems, for example, SAP R/3 Backend, external systems or Mobile Clients, are determined. Then the BDoc message is passed to the corresponding outbound adapter, which converts the message into the data formats of the receivers.

Page 261: CRM Fundamentals- II

© SAP AG TCRM20 10-5

SAP AG 2008

CRM SAP System

Message Flow for SAP R/3 Backend

CRM Database

R/3Adapter

InboundMessage Flow

Validation Service

CRM-Application

OutboundMessage Flow

BAPIMTCS

Service 1

Service n

...

mBDoc

R/3Adapter

mBDoc

Outbound-Interface

Inbound-Interface

BAPIMTCS

R/3

Plu

g-In

mBDoc

CR

M M

iddl

ewar

e

The data exchange via the CRM Middleware requires that an R/3 Plug-In is installed on SAP R/3. Note: New and extended interfaces for integrating SAP R/3, SAP R/3 Enterprise, and SAP ERP Central Component (SAP ECC) will no longer be delivered with their own add-on (SAP R/3 Plug-In). As of SAP ECC 6.0, they will be contained directly in SAP ECC.PI 2004.1 is therefore the final separate delivered SAP R/3 Plug-In release.

The SAP R/3 Backend (one or several SAP R/3 Backends) serves as

Provider for customizing and business data (master data, transaction data)

Receiver of business data for further execution (currently primarily with mySAP Financials and mySAP SCM for accounting and logistics execution)

The CRM release 5.0 can be used as a stand-alone system, that means that R/3 Backend is no longer required for the execution of CRM-related tasks.

In CRM, the R/3 Adapter communicates with the R/3 System via remote enabled functions of the R/3 Plug-In.

Page 262: CRM Fundamentals- II

© SAP AG TCRM20 10-6

SAP AG 2008

SAP R/31. Check assigned logical

system name2. Create/Check RFC destination 3. Maintain table CRMRFCPAR4. Maintain table CRMCONSUM

CRM1. Check assigned logical

system name2. Create/Check RFC destination 3. Create/Check Site-Definition4. Maintain table CRMCONSUM

SAP CRM SAP R/3

Connection: CRM – SAP R/3

R3 Site

RFC-Destination

RFC-Destination

CRMRFCPAR

Consumer ‘EXT’ = ‘active’ Consumer ‘CRM’ = ‘active’

Communication between CRM System and R/3 System is based on Remote Function Call (RFC). On the R/3 side, you have to create an RFC Destination to the CRM system. Then activate CRM as consumer in table CRMCONSUM and maintain the table CRMRFCPAR. Through this table, the determination of the RFC destinations for the data transfer is connected with the consumer, client, object name and transfer type. For example, you can send data to a consumer in an initial download only, and not in a delta download.

In the CRM system, you have to create an RFC Destination to the R/3 backend and a R/3 Site with the tool Administration Console. The R/3 Site references the RFC-Destination. Activate R/3 OLTP as consumer in table CRMCONSUM.

Page 263: CRM Fundamentals- II

© SAP AG TCRM20 10-7

SAP AG 2008

R/3 Site in Administration Console

11

Choose Object Type

Choose Display22

Context Menu ‚Display‘

33Site Details

SMOEAC

Connection to R/3 Backend

The Administration Console may be accessed via the menu: Architecture and Technology → Middleware → Administration → Administration Console (or via the transaction SMOEAC).

The following steps are required to check a site within the Administration Console:

Choose Object Type Site

Choose Icon ‘Display’

Expand node ‘R/3’

Mark Site and choose Context Menu ‘Display’ or use double click to navigate to the detail view

To find out the RFC Destination, choose icon ‘Site Attribute’.

Page 264: CRM Fundamentals- II

© SAP AG TCRM20 10-8

The following steps are required to create a new site.

Create / Check the RFC-Destination to the R/3 System with transaction SM59. Test the Connection and ensure, the RFC User in R/3 System has appropriate authorizations.

Create Site in Administration Console:

- Select the Create button.

- Provide the site details, such as: site name and a site description, select the site type R/3

- Specify the site attributes depending on the site type, for example, an RFC destination for R/3 Backends.

- Finish the creation process by choosing the Save button.

There are two SAP roles that specify the authorization to create or maintain objects within the Administration Console:

role SAP_CRM_MWAC_ADMINISTRATOR for employees, sites, organizational units and subscriptions and

role SAP_CRM_MWAC_CUSTOMIZER for replication objects and publications

Page 265: CRM Fundamentals- II

© SAP AG TCRM20 10-9

SAP AG 2008

Sites are administered via the Administration Console (transaction SMOEAC)

Creation of an R/3 site:Choose type R/3

Site attributes for R/3 sites

RFC – Destination logical system R/3 release

Site Attributes for R/3 Site

must be entered

manually

automaticallydetermined

automaticallydetermined

R/3 Sites are determined by an RFC destination, a logical system, and the release of the R/3 Backend.

Four steps are required to create a new site.

Find out name of RFC Destination to R/3 System and test the destination. Create a new destination if necessary.

Start Administration Console and select the Create button.

Provide the site details, such as

- A site name and a site description,

- Select the site type R/3 Backend,

- Specify the site attributes depending on the site type, for example, an RFC destination for R/3 Backends.

Finish the creation process by choosing the Save button.

There are two SAP roles that specify the authorization to create or maintain objects within the Administration Console:

role SAP_CRM_MWAC_ADMINISTRATOR for employees, sites, organizational units and subscriptions and

role SAP_CRM_MWAC_CUSTOMIZER for replication objects and publications

Page 266: CRM Fundamentals- II

© SAP AG TCRM20 10-10

SAP AG 2008

Customizing Synchronization

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Introduction

Customizing & Condition Synchronization

Load R/3 CRM

Load CRM R/3

Initial Load R/3 CRM

Page 267: CRM Fundamentals- II

© SAP AG TCRM20 10-11

SAP AG 2008

Initial R/3 to CRM Load of Customizing Data

R/3

R/3 Table

Generic Extractor

CRS_FIRST_DOWNLOAD_TRIGGER

CRM

CRM Table

R3AS: Start Initial Loadfor Customizing Adapter Object

R/3-Adapter

Mapping FMqRFC

qRFC1 2

3

4

BAPIMTCS

For several Customizing Objects, there is a predefined data transfer from R/3 to CRM available, even if the structure of the Customizing tables are different in R/3 and CRM. The data of one or more database tables are grouped in Customizing Adapter Objects. The data of a Customizing Adapter Object can be transferred from R/3 to CRM system with an initial load. Within this section, the Customizing Adapter Object will be explained in detail.

You can use the download monitor (transaction R3AM1) to control the initial load.

Example: Customizing Adapter Object DNL_CUST_KTOKD

R/3 Table T077D and T077X

CRM Table CRMC_T077D and CRMC_T077x,

Mapping Function Module CRM_BUPA_MAP_KTOKD_CI.

R/3: CRMSUBTAB: Name of the generic Extractor for Objects of Object class CUSTOMIZING: CRS_CUSTOMIZING_EXTRACT

Page 268: CRM Fundamentals- II

© SAP AG TCRM20 10-12

SAP AG 2008

Customizing Adapter Object (1)

R/3 Tables

FilterCriteria

R3AC3

1

Use Architecture and Technology → Middleware → Data Exchange → Object Management → Customizing Objects or Transaction R3AC3 to display Customizing Adapter Objects in CRM.

All Customizing Adapter Objects are assigned to Object Class CUSTOMIZING.

In the Initial Flow Contexts tab, you find the supported CRM Middleware Flow Context with source and target Sites.

In the Tables/Structures tab, you find the names of the database tables to be selected in source system.

To create filter criteria, choose the Icon Filter Settings in tab Tables/Structures. The next graphic explains how to create filter criteria.

Page 269: CRM Fundamentals- II

© SAP AG TCRM20 10-13

SAP AG 2008

Customizing Adapter Object (2)

R/3 Site

Table fields as filter criteria

Filter Option

R3AC3

1

Specify the R/3 Site. The site has to be created beforehand in the Administration Console (SMOEAC), because the corresponding RFC destination will be used for synchronization.

Specify the table fields for the where clause within the data extractor in R/3.

Specify the Filter Options (Options: Filter in source and target database, filter only in target database, filter only in source database).

Save the Filter criteria. The Filter criteria will be automaticaly synchronized with R/3.

Page 270: CRM Fundamentals- II

© SAP AG TCRM20 10-14

SAP AG 2008

Customizing Adapter Object (3)

Mapping Function Module

1

The Customizing data is transported to the CRM System via qRFC in generic structure BAPIMTCS. The Mapping Function Module maps this data to the structure of the CRM table and updates the CRM Table.

There is no MBDoc created and no Message Flow started.

Page 271: CRM Fundamentals- II

© SAP AG TCRM20 10-15

SAP AG 2008

Finding the Adapter Object Involved: SE16 on table SMOFTABLES

1. Find table in ERP for the Associated data (“F1 on the field). ( in this case via customizing search for “terms of payment”) Find Table = T052

2. In CRM access table “SMOFTABLES”. Search for entries via the field “R3TABNAME” This table has all the adapter objects and the sending and receiving table names.

Find: Adapter Object = DNL_CUST_PRICE

3. Execute the load or “request*” for this object, using transaction R3AS.

Sometimes it’s a “V”_iew, requiring another click for more details.

The load of a BP from R/3 to CRM failed due to missing “Terms of payment”. Now what do I?

Customizing tables do not always have SAP supplied adapter objects. For example the regions table does not have a supplied customizing object.

You can build your own adapter object to transfer data if you feel it is necessary. In your exercise you will transfer a custom table with a customized adapter object not supplied by SAP.

Using Best Practices, a list of adapters and when to execute them is provided.

In our training system, the ERP system has a payment term Z500. Z500 is not yet in the CRM system. Using a search for Terms of payment in transaction SPRO this can be shown. Please let your instructor demo the execution of the Initial Down Load of payment terms to pass this customizing data to CRM, using transaction R3AS.

In addition to the missing “terms of payment z500” , you will have an exercise to find the adapter object for “Academic Titles”

Page 272: CRM Fundamentals- II

© SAP AG TCRM20 10-16

SAP AG 2008

Inbound and Outbound Queues for Customizing Adapter Objects

R/3

R/3 Table

GenericExtractor

CRM

CRM Table

R3AS: Start Initial Load

R/3-Adapter

Mapping FM

qRFC

qRFC

OutboundQueueR3AI*

InboundQueueR3AI*

CRS_FIRST_DOWNLOAD_TRIGGEROutboundQueueR3AI*Registration in

Outbound Scheduler(SMQS)

Registration in Inbound Scheduler(SMQR) Registration in

Outbound Scheduler(SMQS)

2

When you start an initial load with transaction R3AS for a specific customizing adapter object, the data request is sent from the CRM system to the R/3 Backend via qRFC.

The naming convention for the qRFC queues used in initial load is R3AI_<Customizing Adapter Object> (R3A: R/3 Adapter; I: initial Load)

Runtime behavior:

You start the Initial Load for single Customizing Adapter Object in CRM System via transaction R3AS

The started report transfers the data request to the R/3 system. The RFC Destination of the corresponding R/3 Site is used for the data transfer. For Customizing Data the data request contains the names of the R/3 Customizing Tables and the filter conditions

Within R/3 the generic extractor for Customizing data selects the database tables assigned to the Customizing Adapter Object and triggers the data transfer per qRFC.

The data is transferred to the CRM Server via qRFC (function module BAPI_CRM_SAVE)

The R/3 Adapter converts the data to the structure of the CRM customizing table and stores the data to the database.

Page 273: CRM Fundamentals- II

© SAP AG TCRM20 10-17

SAP AG 2008

qRFC Outbound Queue Monitoring: SMQ1

If errors occur on the remote system, the outbound queue entriesremain in the sender system and can be administered here

SMQ1

QueueDetails

To access the Outbound Queue Monitor, go to Middleware -> Monitoring -> Queues -> Display Outbound RFC Queues or use transaction SMQ1.

Although the LUWs belonging to a queue are stored in the tRFC tables ARFCSSTATE and ARFCSDATA, you cannot maintain or display these LUWs using tRFC monitoring (Transaction SM58). You must use the outbound queue administration transaction SMQ1.

The outbound queue data (queue attributes and pointers to the relevant LUWs in the tRFC tables) is stored in table TRFCQOUT, which you can display and maintain using Transaction SMQ1. The following functions are available:

List queues

Display queues, including a list of associated LUWs and function modules (with input data)

Start/stop transmitting the queues

Delete queues or queue entries (Warning: deleting queues might cause inconsistencies)

If an error occurs in an LUW on the remote receiver system, the function modules of the queue entries are rolled back there. The relevant LUW and all of the other LUWs in the queue remain in the queue and in the tRFC tables on the sender system. After correcting the error, you can use Transaction SMQ1 to transmit the LUW of the queue again (via Edit → Execute LUW).

You find detail information about qRFC status in note 378903.

Page 274: CRM Fundamentals- II

© SAP AG TCRM20 10-18

SAP AG 2008

qRFC Inbound Queue Monitoring: SMQ2

SMQ2

QueueDetails

To access the Inbound Queue Monitor, go to Middleware -> Monitoring -> Queues -> Display Inbound RFC Queues or use transaction SMQ2.

The LUWs belonging to a queue are stored in the tRFC tables TRFCQIN, TRFCQSTATE and TRFCQDATA. However, you cannot maintain or display these LUWs using tRFC monitoring (Transaction SM58). You must use the inbound queue administration transaction SMQ2.

The inbound queue data (queue attributes + pointers to the relevant LUWs in the tRFC tables) are stored in table TRFCQIN. The status you can find in table TRFCQSTATE, the data in table TRFCQDATA. You can display and maintain the inbound qRFC using Transaction SMQ2. The following functions are available:

List queue

Display queues with a list of accompanying LUWs and function modules including input data

Start/stop transmitting the queues

Delete queues or queue entries (Warning: deleting queues might cause inconsistencies)

If an error occurs in a LUW, the function modules of the queue entries are rolled back there. The relevant LUW and all dependent other LUWs in the queue remain in the queue and in the inbound qRFC tables. After correcting the error, you can use Transaction SMQ2 to transmit the LUW of the queue again.

You find detail information about qRFC status in note 378903.

Page 275: CRM Fundamentals- II

© SAP AG TCRM20 10-19

SAP AG 2008

R/3

Generic Extractor for Customizing Data

R/3 Table

Generic Extractor

CRS_FIRST_DOWNLOAD_TRIGGER

CRM

CRM Table

R3AS: Start Initial Loadfor CustomizingAdapter Object

R/3-Adapter

Mapping FMqRFC

qRFC

BAPIMTCS

PlugIn

3

You find the name of the generic Extractor in table CRMSUBTAB:

Start transaction SM30 in R/3.

Choose table CRMSUBTAB.

Search for Object Class CUSTOMIZING and Download.

The Function module CRS_CUSTOMIZING_EXTRACT is assigned in column Function Name.

CRM will store the name of the customizing tables assigned to the customizing adapter object to the generic extractor. The generic extractor checks the filter criteria and selects the data from the customizing tables. The data will be converted to transfer structure BAPIMTCS. This data package will be transferred per qRFC to the R/3 Adapter of CRM.

Page 276: CRM Fundamentals- II

© SAP AG TCRM20 10-20

SAP AG 2008

Inbound Processing in CRM System

R/3

R/3 Table

Generic Extractor

CRS_FIRST_DOWNLOAD_TRIGGER

CRM

CRM Table

R3AS: Start Initial Loadfor CustomizingAdapter Object

R/3-Adapter

Mapping FMqRFC

qRFC

BAPIMTCS

4

The R/3 Adapter calls the Mapping Function Module for the specific Customizing Adapter Object and passes the data container to the function module. The Mapping Function Module converts the BAPIMTCS data into the structure of the CRM customizing tables and updates the tables. The mapping rules are implemented within the Mapping Function Module.

Page 277: CRM Fundamentals- II

© SAP AG TCRM20 10-21

SAP AG 2008

Transferring Conditions: I

Conditions are used in sales and billing and tax processing.

Examples of Condition types include: Gross Price “PR00” or Customer Discount “K007”.

The conditions are stored in Condition Tables, for example table “007” .

In the exercise, you entered a value for condition type K007 for your customer in this table!

The pricing or billing or tax determination process works by “accessing” these tables looking for the appropriate condition types and their values. For example:

Is there a discount for Product “X” and Customer “Y” ? Is there a “loyalty” discount for the customer “Y” ? Should they be combined?

Best Practice Building Block: CRM Master and Transaction Data Replication (C03) has extensive information on conditions.

To view the ERPP condition table customizing use transaction “V/05”.

For more information about the Customizing download of the condition technique, see SAP Help Portal under SAP Customer Relationship Management -> Components and Functions -> Basic Functions -> Pricing -> Data Exchange for Conditions.

Page 278: CRM Fundamentals- II

© SAP AG TCRM20 10-22

SAP AG 2008

Transferring Conditions: II

Pricing is one of the hardest configuration areas in ERP or CRM.

The Condition Types, the Searching Rules (access Sequences) and Pricing & Tax Determination Procedures are 100% customizable.

Customizing

Access SequencesPricing Procedures

Condition Types

Master DataValues for Condition Types

by key combination:BP X for Product Y in Sales

ORG S = Price 10

Example: DNL_CUST_CND_PR **

Adapter Object

Condition tables (with the master data) have object names, each beginning with DNL_COND.

Example: DNL_CND_A007

Both Customizing and Master data for conditions are classified under“Condition Objects”

** Other adapter objects for customizing conditions also apply as the condition technique is used for much more than just Pricing (PR). For example CUSTOMIZING OBJECTS INCLUE:

DNL_CUST_BON (Rebate usage: rebate agreement types, condition maintenance groups)

DNL_CUST_CAD (Campaign determination usage: condition type list, exclusion groups)

DNL_CUST_CND (Rebate, campaign determination, free goods, pricing, and product determination usages: maintenance control, metadata condition tables, access sequences, condition types)

DNL_CUST_CNDALL (Rebate, campaign determination, free goods, pricing, and product determination usages: maintenance control, metadata condition tables, access sequences, condition types, procedures, exclusion groups, pricing element upper/lower limits)

DNL_CUST_CND_BO (Rebate usage: maintenance control, metadata condition tables)

Page 279: CRM Fundamentals- II

© SAP AG TCRM20 10-23

DNL_CUST_CND_CD (Campaign determination usage: maintenance control, metadata condition tables, access sequences, condition types)

DNL_CUST_CND_FG (Free goods usage: maintenance control, metadata condition tables, access sequences, condition types)

DNL_CUST_CND_PD (Product determination usage: maintenance control, metadata condition tables, access sequences, condition types)

DNL_CUST_CND_PR (Pricing and rebate usages: maintenance control, metadata condition tables, access sequences, condition types)

DNL_CUST_FGD (Free goods usage: procedures, exclusion groups)

DNL_CUST_PDD (Product determination usage: procedures, exclusion groups, product substitution: reason)

DNL_CUST_PRC (Pricing and rebate usages: procedures, exclusion groups, upper/lower limits for pricing elements)

For the actual condition types and their values (Master Data), condition tables have object names, each beginning with DNL_COND.

Not all of the condition tables have download objects. You can create new objects with transaction R3AC5.

Page 280: CRM Fundamentals- II

© SAP AG TCRM20 10-24

SAP AG 2008

Initial Load R/3 to CRM

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Introduction

Customizing & Condition Synchronization

Load R/3 CRM

Load CRM R/3

Initial Load R/3 CRM

Delta Load R/3 CRM

Page 281: CRM Fundamentals- II

© SAP AG TCRM20 10-25

SAP AG 2008

Data Exchange Between an R/3-Backend and CRM

CRM R/3

Initial Load and Delta Load controlled byObject Management

Load Objects can be exchanged between a source and a target system, for example, between an SAP R/3 Backend and the CRM Server. Examples are business partner master data and product master data. They are grouped as follows:

Business objects

Customizing objects

Condition objects

The objects are stored in the table SMOFOBJECT.

Please consider that the question of which objects are loaded to which target systems depends on the business process and has to be defined for each application. Generally, Initial Loads and Delta Loads may be performed from R/3 to CRM and vice-versa.

Page 282: CRM Fundamentals- II

© SAP AG TCRM20 10-26

SAP AG 2008

Initial Load R/3 to CRM for Business Data

R/3

R/3 Tables

Specific Extractor

CRS_FIRST_DOWNLOAD_TRIGGER

CRM

CRM Database

R3AS: Start Initial Loadfor BusinessAdapter Object

R/3 InboundAdapter

InboundMessageFlow

qRFC

qRFC

Validation ServiceCRM-Application

3

4

2

5

OutboundMessageFlow

BAPIMTCS

mBDoc

1

The data flow for initial download consists of the following steps: - With the CRM transaction R3AS, an initial download trigger is raised. - The RFCs are queued and processed in a sequence (dependent or independent objects).

- In the back-end system, a function module call (object specific extractor module call) is used to extract the requested data.

- A BAPIMTCS data container is created with the selected data to be sent to the CRM Middleware server.

- The data is transferred to the CRM System using qRFC.

- In the R/3 Adapter, the data is mapped to a mBDoc and then passed to the Inbound Message Flow.

- The inbound message flow triggers the validation service. The data is passed through the CRM Adapter to the CRM Application. The CRM Application validates the data and updates the relevant CRM database tables. After successful validation, the outbound message flow is triggered.

For information about initial download performance, see SAP Note 350176.

Page 283: CRM Fundamentals- II

© SAP AG TCRM20 10-27

SAP AG 2008

Business Adapter Objects (1)

Flow ContextMI0 for

InboundMessage Flow

Source Site Type

Target Site Type

R3AC1

1

You can display and maintain Business Adapter Objects with transaction R3AC1.

In Initial Flow Contexts tab, you find the supported source and target site types and the corresponding Flow Context.

Page 284: CRM Fundamentals- II

© SAP AG TCRM20 10-28

SAP AG 2008

Business Adapter Objects (2)

R3AC1

1

In Tables/Structures Within Object tab, you find the names of the R/3 tables used by the extractor.

Page 285: CRM Fundamentals- II

© SAP AG TCRM20 10-29

SAP AG 2008

Business Adapter Objects (3)

Source Site R/3

Filter Option

Filter Criteria

R3AC1

1

Filter options are set in the CRM system and allow the filtering of business objects in the source system only, in the target system only or in both the source and the target system. However, business data is usually filtered in the source system to reduce the amount of data transmitted from R/3. In this case, the filter criteria is applied before the data is sent to the CRM Server.

Purpose:

Reduce the data volume between the R/3 Backend and the CRM Server

Keep the R/3 specific data within the R/3 Backend

Filter settings are part of customizing the system.

The transaction to specify the filter criteria can be found under: Middleware B Data Exchange B Object Management B Business Object (transaction R3AC1). Choose a business object and Filter Settings tab. You can use all predefined fields (stored in table SMOFFILFLD) .

Saving a filter entry triggers the automatic transfer to the Plug-In in R/3. The CRM system uses the RFC destination of the corresponding Site. Therefore a site to R/3 has to be maintained first (transaction SMOEAC). Filter settings are stored in table SMOFFILTAB and refer to table fields. Within R/3 the filter settings are stored to database table CRMFILTAB.

The filters are also available for Delta Loads (R/3 Backend to the CRM Server).

Page 286: CRM Fundamentals- II

© SAP AG TCRM20 10-30

SAP AG 2008

Business Adapter Objects (4)

R3AC1

1

In Mapping Modules: R/3 to CRM tab, you find the function module that converts the BAPIMTCS data into a messaging BDoc.

Page 287: CRM Fundamentals- II

© SAP AG TCRM20 10-31

SAP AG 2008

Inbound and Outbound Queues for Business Adapter Objects

R/3

R/3 Table

SpecificExtractor

CRMR3AS: Start Initial Load

R/3-Adapter

qRFC

qRFC

OutboundQueueR3AI*

InboundQueueR3AI*

CRS_FIRST_DOWNLOAD_TRIGGEROutboundQueueR3AI*

InboundMessageFlow

mBDoc

Registration in Inbound Scheduler(SMQR)

2

The data transport is based on qRFC technology. The naming convention for the qRFC queues used in initial load is R3AI_<Business Adapter Object> (R3A: R/3 Adapter; I: initial Load)

The specific extractor for business data selects the database tables assigned to the Business Adapter Object and triggers the data transfer per qRFC.

Page 288: CRM Fundamentals- II

© SAP AG TCRM20 10-32

SAP AG 2008

R/3 (Plug-In): Object Specific Extractor

R/3

R/3 Tables

Specific Extractor

CRS_FIRST_DOWNLOAD_TRIGGER

CRMR3AS: Start Initial Loadfor Business Adapter Object

R/3-Adapter

qRFC

qRFC

BAPIMTCS

PlugIn

InboundMessageFlow

mBDoc

3

You find the name of the object specific extractor in table CRMSUBTAB in R/3.

Page 289: CRM Fundamentals- II

© SAP AG TCRM20 10-33

SAP AG 2008

R/3 Inbound Adapter

R/3

R/3 Tables

Specific Extractor

CRS_FIRST_DOWNLOAD_TRIGGER

CRMR3AS: Start Initial Loadfor BusinessAdapter Object

R/3 InboundAdapter

InboundMessageFlow

qRFC

qRFC

BAPIMTCS

mBDoc

ConvertsBAPIMTCS tomBDoc and

starts Inbound Flow

4

The R/3 Inbound Adapter creates a messaging BDoc and converts the data from BAPIMTCS data container into the mBDoc structure. Then the Inbound Message Flow starts.

Page 290: CRM Fundamentals- II

© SAP AG TCRM20 10-34

SAP AG 2008

BDocs: Messaging BDoc Types (1)

mBDoc

/1CRMG0/CRMW_BUPA_HEAD002

BUS_EI_MAIN

Messaging BDoc Types

mBDoc types consist of two partsClassical part

Hierarchical segment structure

Modeled with the BDoc Modeler

Generated structure

Contains data relevant for receiver determination

Extension part

Complex data type

Modeled with DDIC (SE11)

Contains the transaction data

4

A messaging BDoc consists of up to two parts: Part 1: classical part

This part is mandatory.

The classical part consists of a BDoc header and segments, which may be arranged in a hierarchical fashion. The segments of the classical part are not mapped to database tables.

This part is to be modeled with the BDoc Modeler (SBDM).

Only the classical part is used to determine the receivers of mBDoc messages.

Part 2: Extension part

This part is optional.

The complex data type is modeled with the Data Repository Tools (SE11).

The extension does only exist for messaging BDocs.

The extension part is used to hold delta or extract data intended to pass into the CRM Server application (inbound case) or to send to remote systems (outbound case).

The extension part cannot be used for receiver determination.

When replicating data (for example, from CRM to R/3), a messaging BDoc type is like an envelope, with data inside the envelope (Extension part) which CRM middleware cannot access, and data on the envelope (classical part), which the CRM middleware can access. Each application uses different address information, so that, for example, sales orders can be routed according to the sales organization to different back-end systems.

Page 291: CRM Fundamentals- II

© SAP AG TCRM20 10-35

SAP AG 2008

BDocs: Messaging BDoc Types (2)

Messaging BDoc Types (continued)

Two simple replication types are supportedSimple intelligent replication = by definition of replication rules

Simple bulk replication = everybody gets all or nothing

No storing of the replicated objects status

No realignment supported (data cannot be redistributed here)

No dependencies supported

4

Replication characteristics are consistent with the transient nature of the mBDoc, that is, only the whole BDoc can be either distributed to all possible recipients (bulk replication) or to a few of them (simple intelligent replication). It is not possible to select certain parts of the mBDoc for replication and exclude others as is the case for sBDocs that are designed for the mobile world. In the mobile world, there is a large number of databases so that more sophisticated data distribution techniques - such as realignment - are useful. This is not valid for the data exchange for messaging BDocs; because of the simple replication, no distribution data are stored in tables and therefore, a realignment for messaging BDocs is not possible.

Page 292: CRM Fundamentals- II

© SAP AG TCRM20 10-36

SAP AG 2008

BDoc Modeler: Transaction SBDM

BDocs: Exploring a BDoc Type

SBDM

Segment Structureof BDoc type BUPA_MAINwith header segment fields

4

The BDoc Modeler (SBDM) is a tool used for displaying, creating, and enhancing BDoc types. The existing BDoc types are listed in the BDoc overview (navigation tree) of the BDoc Modeler. Here you can select and expand a BDoc type to display its structure. The structure shows the hierarchy of the data segments.

Note that the definition and enhancement of BDoc types require knowledge of the application. The CRM Middleware does not have the business logic to create or enhance BDocs. From this point of view, it is just a data container to transport and process BDoc messages.

BDoc modeling features:

Modeling of messaging BDoc types

Assignment of one or more synchronization BDocs type to a messaging BDoc type (n:1 relationship)

Assignment of site types (see Data Exchange unit) to synchronization and messaging BDoc types

Page 293: CRM Fundamentals- II

© SAP AG TCRM20 10-37

SAP AG 2008

Flow Context for Inbound Message Flow: MI0

CRM Database

R/3-InboundAdapter

Inbound Message Flow

CRM-Application

FlowContext

MI0

Validation Service 0001

BAPIMTCS

Outbound Message Flow

FlowContext

MO1

Call Outbound Adapter 0002

mBDoc

Simple Replication Service 0001

5

For the inbound message flow, there is only one service available: the validation service. We will explain the concept of flow context in detail with the outbound message flow.

You find the name of the validation function module per mBDoc Type in transaction SMW3FDIF.

For example: For mBDoc BUPA_MAIN the validation service is implemented with function module CRM_BUPA_MAIN_VAL

After successful validation, the middleware starts the corresponding outbound message flow with flow context MO1 or MO2 in case of mass processing. Usually the flow context MO1 contains the following services:

Simple Replication Service: This service is looking for valid receivers interested in the data. The configuration of subscriptions is explained in detail in Business Data Upload section.

Call Outbound Adapters

Page 294: CRM Fundamentals- II

© SAP AG TCRM20 10-38

SAP AG 2008

View Flow Contexts

SMO8FD

Flow Context

Service in a Flow Context

5

The available flow contexts for a BDoc Type may be viewed via the transaction Middleware → Message Flow → Display and Check Flow Definitions (SMO8FD).

Each flow context consists of a sequence of services (function modules).

The messaging flow context:

MI0 Validate (MI: Messaging flow Inbound): Synchronization inbound flow, XML adapter and R/3 adapter pass data to the CRM database. For initial load from SAP R/3, the validate method is called before the notification method.

Page 295: CRM Fundamentals- II

© SAP AG TCRM20 10-39

SAP AG 2008

Select the objects to be loaded from the R/3 backend or from theCRM database

Select the source and target sites

Start the initial load

Starting the Initial Load

The transaction to start the Initial Load can be found under: Middleware → Data Exchange → Initial Load → Start (R3AS).

If the initial load does not finish successfully, consult SAP Note 443900, which gives useful advice for a general error analysis.

Page 296: CRM Fundamentals- II

© SAP AG TCRM20 10-40

SAP AG 2008

Monitoring the Initial Load

Monitoring tools:

Monitoring Initial Load: R3AM1

qRFC-Monitoring: Outbound Queue Scheduler: SMQS

Outbound Queue: SMQ1

Inbound Queue Scheduler: SMQR

Inbound Queue: SMQ2

BDoc Monitoring:

BDoc Datails: SMW01

BDoc Summary: SMW02

Middleware Trace: SMWT

Middleware Monitoring Cockpit: SMWP

To monitor the initial load call: Middleware → Data Exchange → Initial Load → Monitor Objects (R3AM1).

The data sent from SAP R/3 can be found in the inbound queue in the CRM Server (transaction code SMQ2). The data will only be saved in the outbound queue in SAP R/3 if the connection has been interrupted or the parameters have been set specifically to do this (transaction code SMQ1).

The Middleware Trace Monitor is a tool to track message flows, record events from this and provide information for evaluation. It can be accessed either from transaction Display BDoc Messages (SMW01), through menu path Middleware → Monitoring → Message Flow → Display Middleware Trace or directly with Transaction SMWT.

You may also use the Middleware Monitoring Cockpit to view the status of Initial Loads. The Middleware Monitoring Cockpit can be accessed via Middleware → Monitoring → Central Monitoring → Monitoring Cockpit (SMWP).

Page 297: CRM Fundamentals- II

© SAP AG TCRM20 10-41

SAP AG 2008

Display BDoc Message Summary

You can use this function to display BDoc messages in an aggregated view on the basis of various criteria.

From the aggregated view, you can call up the individualdisplay of BDoc messages by choosing a BDoc Type.

SMW02

There is also an overview function of BDoc messages: Middleware → Monitoring → Message Flow → Display BDoc Message Summary (Transaction SMW02). A list of BDoc messages aggregated according to BDoc types and message status displays. The Counter column displays the number of messages.

Page 298: CRM Fundamentals- II

© SAP AG TCRM20 10-42

SAP AG 2008

Display BDoc Message

Select a BDoc message

Display MW Trace

Display the classical part

Display the data part

Display the Errors

SMW01

Load & Request

Display Neighbours

Trouble-shooting

The function Display BDoc Messages lists all BDoc messages (transaction SMW01: Middleware → Monitoring → Message Flow). It displays:

The BDoc ID and BDoc type, the BDoc state, the flow context, the queue name, and the date and time when the BDoc message was sent.

The flow control trace, the data and error segments, the service in which the error occurred (last service reached), and the recipient list.

As of CRM 5.0: the associated Loads and Requests, the neighbour objects (parent BDoc message, child BDoc message, return-to-sender confirmation BDoc message) and troubleshooting (SAP Help documentation related to BDoc types in specific status and context)

Successfully processed messages appear with a green light, those still in progress appear with a yellow light, and those with a terminal error condition appear with a red light.

If a message is in process and does not get processed within a reasonable amount of time, it is possible to restart the message, view the message content, or discard the message. A BDoc message may be processed in one of the following ways:

Mark as deleted (Deleting BDoc messages can cause data inconsistencies)

Retry processing

Page 299: CRM Fundamentals- II

© SAP AG TCRM20 10-43

SAP AG 2008

Display BDoc Messages classical/extension part (important information for error handling)

Display BDoc Details

SMW01

The function Display BDoc Messages allows the display of the content of the individual BDoc messages that sometimes could be essential for error handling.

You can select this screen with:

SMW01 → select relevant a mBDoc message → select extended data → click on the table icon of results → choose shift F7 (first icon in the pushbutton bar)

SMW01 → select relevant a sBDoc message → select classical data → click on the table icon of results → choose shift F7 (first icon in the pushbutton bar)

Page 300: CRM Fundamentals- II

© SAP AG TCRM20 10-44

SAP AG 2008

Performance Issues: Initial Load

CRM Server SAP Backend

1

2

3

Start initial load / DataExtraction when backend

system load is low

Use parallel processing, depending on system load

on CRM Server

Take system load of CRM Server for inbound

processing into account

Detailed information about the parallel processing of the initial download can be found in the best practices document mySAP CRM Initial Download configuration and SAP Note 350176. Parallel processing is also possible for the initial data load from/to SAP BW and non-SAP systems.

Page 301: CRM Fundamentals- II

© SAP AG TCRM20 10-45

SAP AG 2008

Delta Load R/3 to CRM

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Introduction

Customizing & Condition Synchronization

Load R/3 CRM

Initial Load R/3 CRM

Delta Load R/3 CRM

Load CRM R/3

Page 302: CRM Fundamentals- II

© SAP AG TCRM20 10-46

SAP AG 2008

Delta Load R/3 to CRM: Data Flow

R/3

R/3 Tables

Business TransactionEvent

CRM

CRM Database

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

1

2

OutboundMessageFlow

BAPIMTCS

mBDoc

Change BusinessData

NotificationService

3

4

5

The delta loads allow a continuous synchronization of predefined adapter objects (except customizing data) between R/3 backends and the CRM server, that means that data updates are sent to the CRM Server immediately. Received data is processed automatically. qRFC is used for the serialization.

The delta load is activated after a successful initial load.

More information about the general analysis of the delta load from the R/3 Backend to the CRM server consult SAP Note 430980. To analyze the Delta Load from the CRM Server to the R/3 Backend, refer to SAP Note 431345.

The data flow is best explained through an example (changing customer master data):

After changing and saving a customer or contact within the R/3 dialog program, the business transaction event 1321 is raised.

The complex data structure is then translated into BAPIMTCS structures. The filter deletes all data that do not comply to the filter conditions maintained within CRM transaction R3AC1. Afterwards, the logical destination is determined from the customizing table CRMRFCPAR.

An outbound queue in R/3 with the queue name R3AD_* is created. Next the outbound scheduler sends the LUW data to the qRFC inbound queue of the CRM system.

The R/3 adapter in CRM maps the BAPIMTCS structures into an mBDoc.

The MW Flow calls the validation service. It looks in table SMW3BDOCIF for the application function module that validates and saves the BDoc data. Example, for BUPA_MAIN the validation function is CRM_BUPA_MAIN_VAL.

Page 303: CRM Fundamentals- II

© SAP AG TCRM20 10-47

SAP AG 2008

R/3

PlugIn

Object Classes

R/3 Tables

Business TransactionEvent (Implementation)

CRM

Object class

BAPIMTCS

Online Transaction:Create / Change Business DataBusiness

TransactionEvents

Business Adapter Objects

ReplicateActivationof BTEs

The object class controls the activation and deactivation of delta loads for groups of Business Adapter Objects. The Business Adapter Objects can be assigned to an object class. Additionally, names of Business Transaction Event (BTE) are assigned to the object class.

You can maintain object classes in transaction R3AC4.

The implementation of the Business Transaction Events is part of the R/3 Plug-In.

If a BTE is activated in R/3, the program to maintain Business Data will trigger the BTE when updating a database table. The BTE converts the data into BAPIMTCS structure.

You can see which BTEs are available in table TBE31 in R/3. This table can be accessed through transaction FIBF. Go to Environment -> Info system (P/S)-> SAP Applications.

You can check, whether the BTEs are activated for a single application in table TBE11. Choose transaction FIBF Environment-> Identification -> SAP Applications. CRM Extractors are usually assigned to application BC-MID.

You can deactivate Delta Load on Adapter Object Level in table CRMRFCPAR in R/3 Backend.

Page 304: CRM Fundamentals- II

© SAP AG TCRM20 10-48

SAP AG 2008

Activating the Delta Load

R3AC4

Business Transaction Events per

Object Class

Starting an Initial Load from an R/3 Back-End activates the Delta Load in the R/3 Plug-In (BTEs)

The delta load is automatically activated after a successful initial load. You can check the activated BTEs in R/3 with transaction SM30 in the database table TBE31.

Manual (de)activation of BTEs is possible with the transaction: Middleware → Data Exchange → Delta Load from R/3 Back-End → Set Up Delta Load (R3AC4) in the CRM system.

Sometimes it can make sense to activate the delta load for certain objects without having performed an initial load first. For an Internet Sales scenario, for example, it may not always be necessary to load already processed sales orders from an R/3 backend to the CRM server. In this case, it is sufficient to manually activate the delta load for sales orders.

Deactivation of the delta load for an object class will be automatically synchronized with R/3 backend.

Page 305: CRM Fundamentals- II

© SAP AG TCRM20 10-49

SAP AG 2008

Delta Load R/3 to CRM: Data Transfer per qRFC

R/3

R/3 Tables

BusinessTransactionEvent

CRM

R/3-Adapter

qRFC OutboundQueueR3AD*

InboundQueueR3AD*

InboundMessageFlow

mBDoc

Queue naming convention: R3AD_<obj_name part><ID part>

Registration in Inbound Scheduler(SMQR)

During an initial load, all delta messages are collected by stopping the delta queues. This ensures that all delta messages that are created during the initial load are not lost and that the order in which they occur remains the same.

After a successful initial load, the stopped delta queues will be released so that the delta messages can be processed. Note that this also guarantees that the CRM Server receives delta messages only for business objects, which have been loaded to the CRM Server before.

Page 306: CRM Fundamentals- II

© SAP AG TCRM20 10-50

SAP AG 2008

Delta Load R/3 to CRM: Mass Update

R/3

R/3 tables

BusinessTransactionEvent

CRM

R/3 Adapter

qRFC

OutboundqueueMASS_CRM_*

InboundqueueMASS_CRM_*

Inboundmessageflow

mBDoc

Queue naming convention: MASS_CRM_*

Report CRM0_BUNDLE_AND_START_QUEUES

InboundqueueR3AD*

What is mass data? Mass data is created, for example

If a field must be changed in all business partners.

If all pricing conditions are updated.

If all material master records are updated to the most recent status.

Up to now, in these cases, individual delta outputs were sent from the ERP back end to the CRM system in a remote function call (RFC) and processed there separately.

The concept of mass data processing works as follows:

After you implement a change in the ERP back end, the data is first collected in mass queues in the ERP back end (queue name: MASS_CRM_*).

The data is bundled using the CRM0_BUNDLE_AND_START_QUEUES report and is placed in inbound queues on the CRM system via RFC (MASS_CRM_*).

When the mass queues are processed in CRM, the data is placed in delta queues (R3AD*) either individually or in blocks, depending on the requirements of the respective application.

Subsequent processing occurs in the application.

Initial loads and data requests are not affected by this concept.

Page 307: CRM Fundamentals- II

© SAP AG TCRM20 10-51

SAP AG 2008

SAP R/31. Maintain table CRMOBJHIER 2. Maintain table CRMMASSUPD for

each adapter object3. Start Report

CRM0_BUNDLE_AND_START_QUEUES

CRM1. Maintain table CRMOBJHIER 2. Maintain table CRMMASSUPD for

each adapter object3. Use R3AC1 or R3AC5 to activate

Mass Update (tab “block processing”)

4. Register MASS* queues with SMQR

SAP CRM SAP R/3

CRMOBJHIER

Customizing Mass Data Processing

CRMOBJHIER

R/3 Plug-In

CRMMASSUPD CRMMASSUPD

CRMMASSUPD_CUSR3AC5

Replicateactivationof block

processing

R3AC1

The function is delivered in CRM 5.0 as 'Cannot be Activated'; in the ERP back end, the necessary changes are contained in PI_BASIS 2005.1 Support Package 5 or PI 2004.1 Support Package 10.

Step 1.: Maintain the CRMOBJECTHIER table in the CRM system and in the ERP back-end system.

Step 2.: Modify the CRMMASSUPD table (for each object adapter) toallow activation --> see the application notes for further information. The change must be implemented in both CRM and in the ERP back end.

Step 3.: Use Transaction R3AC1 or R3AC5 to activate mass data processing in the CRM system.

Step 4.: In the CRM system, you must register the MASS* inbound queue in Transaction SMQR.

Step 5.: After you execute the data changes in the ERP back end, you must start the CRM0_BUNDLE_AND_START_QUEUES report to send the data to the CRM system. You can also schedule this report as a background job.

Note:

Entries in the CRMMASSUPD table must be synchronous in CRM and in the ERP back end.

Entries in CRMOBJECTHIER must be synchronous in CRM and in the ERP back end --> There must be entries for interdependencies (see the application-specific notes)

Entries in CRMMASSUPD_CUS must be synchronous in CRM and in the ERP back end. You can use the 'Synchronize' button in Transactions R3AC1 and R3AC5 (in the CRM system) to do this.

More information can be found in SAP Note 802804

Page 308: CRM Fundamentals- II

© SAP AG TCRM20 10-52

SAP AG 2008

Data Load CRM to R/3

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Introduction

Customizing Synchronization

Load R/3 CRM

Load CRM R/3

Initial Load CRM->R/3

Delta Load CRM->R/3

Page 309: CRM Fundamentals- II

© SAP AG TCRM20 10-53

SAP AG 2008

Data Exchange from CRM to R/3-Back-End

CRM R/3

Delta Load controlled by Administration Console

Initial Load controlledby ObjectManagement and Administration Console

Load Objects can be exchanged between a source and a target system, for example, between an SAP R/3 Backend and the CRM Server. Examples are business partner master data, orders, and product master data. They are grouped as follows:

Business objects

Customizing objects

Condition objects

The objects are stored in the table SMOFOBJECT.

Please consider that the question of which objects are loaded to which target systems depends on the business process and has to be defined for each application. Generally speaking, initial loads and delta loads may be performed from R/3 to CRM and vice-versa (and CRM to CDB in case of a mobile scenario). Examples:

Conditions will only be loaded from the R/3 Backend to the CRM Server.

Sales orders will usually be loaded from CRM Server to R/3 Backend for further execution. There is no initial load, only a delta load.

The delta load from the CRM Server to the R/3 Backend is defined via the assignment of R/3 sites to subscriptions.

Page 310: CRM Fundamentals- II

© SAP AG TCRM20 10-54

SAP AG 2008

Outbound Message Flow

CRM

CRM Database

R/3 OutboundAdapter

CRM-Application

Outbound Message Flow

FlowContextMO*

CRMAdapter

mBDoc

mBDoc

Call Outbound Adapter 0002

Simple Replication Service 0001

The simple replication service determines which systems should receive the message. This could be one or more R/3 or non-SAP systems.

Page 311: CRM Fundamentals- II

© SAP AG TCRM20 10-55

SAP AG 2008

Initial Load CRM to R/3

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Introduction

Customizing Synchronization

Load R/3 CRM

Load CRM R/3

Initial Load CRM->R/3

Delta Load CRM->R/3

Page 312: CRM Fundamentals- II

© SAP AG TCRM20 10-56

SAP AG 2008

Business Adapter Objects

Source Site Type: CRM

Target Site Type: R/3

R3AC1

MappingModule CRM

to R/3

Flow Context: MO4

You can display Business Adapter Objects with transaction R3AC1. The upload scenario is supported for a Business Adapter Object, if there is an initial flow context available with CRM as source site type and R/3 as target site type. The corresponding flow context is MO4.

In Mapping Modules CRM to R/3 tab, you find the function module used for the transformation of the business data to the BAPIMTCS data container.

Page 313: CRM Fundamentals- II

© SAP AG TCRM20 10-57

SAP AG 2008

CRM

Initial load CRM to R/3: Data Extract in CRM System

CRM Database

CRM-Application:specific Extractor

OutboundMessage Flow

FlowContextMO4

AdaptermBDoc

2

R3AS: Start Initial Loadfor BusinessAdapter Object

CRS_FIRST_DOWNLOAD_TRIGGER

qRFC

qRFC

3

BAPIIDLIST

QueueCRI_*R3AI

QueueR3AI*

1

Registration in Inbound Scheduler(SMQR)

You start the initial upload with transaction R3AS. Choose the business adapter object, CRM as source Site type and R/3 as target Site type: The Report for the initial load calls the function module CRS_FIRST_DOWNLOAD_TRIGGER per qRFC. The nameconvention for the Queue is R3AI*

The function module CRS_FIRST_DOWNLOAD_TRIGGER calls the Business Adapter Object specific Extractor. You can find out the name of the extractor from customizing table CRMSUBTAB. Search for consumer EXT and the name of the Adapter object in column OBJNAME.

The Extractor function module selects the GUIDs of the relevant data and transfers the List of the IDs per qRFC to the Adapter. The name convention for the Queue is CRI*R3AI.

As next step the BDocs are created and passed to the Outbound Message Flow.

Page 314: CRM Fundamentals- II

© SAP AG TCRM20 10-58

SAP AG 2008

Initial load CRM to R/3: Data Flow

R/3

R/3 Tables

Object SpecificFunction Module

CRM

R/3 OutboundAdapter 5

OutboundMessage Flow

FlowContextMO4

mBDoc

AdaptermBDoc

CRM_UPLOAD_TRIGGER

4

BAPIMTCS

qRFC

Outb. QueueCRI*R3AU

6

You start the initial upload with transaction R3AS. Choose the business adapter object, CRM as source Site type and R/3 as target Site type: Within the Outbound message flow, the flow context MO4 controls the services to be called.

The R/3 Outbound Adapter converts the BDoc to the BAPIMTCS structure and transfers the data per qRFC to the SAP Receiver. The nameconvention of the Queue is CRI*R3AU

In the target system the function module CRM_UPLOAD_TRIGGER controlls the inbound processing. CRMSUBTAB contains the object specific function module.

Storage of object references and record based key assignment.

Error-free rollback in case of program abort or repeated data sending of identical data by checking the reference ID before creating the data on R/3 database.

Page 315: CRM Fundamentals- II

© SAP AG TCRM20 10-59

SAP AG 2008

Initial load CRM to R/3 : Data Flow Acknowledgement

R/3

R/3 Tables

Object SpecificFunction Module

CRM

R/3 OutboundAdapter

OutboundMessageFlow

Flow ContextMO4

CRM_UPLOAD_TRIGGER

R/3 InboundAdapter

BAPIMTCS

qRFC

7

The object specific Function Module recognizes whether the same data has already been created by checking table CRMKEY. So unnecessary updates in the Backend can be provided. The Function module writes the data to the database (a delta event for the reply message will be automatically triggered).

A delta load message with the message ID, the status and error messages is created and send back to the CRM system.

Page 316: CRM Fundamentals- II

© SAP AG TCRM20 10-60

SAP AG 2008

Table lookup

Found (BDoc type, Context)?

Yes: Done ☺

No: table lookup

Found (BDoc type, Context)?

Yes: Done ☺

No: table lookup (Context)

Customer EnhancementsCustomer Enhancements

SAP StandardSAP Standard

Customizing the Outbound Processing

SMW3FDSTDBDoc type independent

Flow DefinitionsMO1,2,4

SMW3FDBDOCBDoc type dependent

Flow DefinitionsE.g., WB_BLOB_LD_WRITE

SMW3FDCUSTCustomer enhancementsMOA,B

Processing order:

The messaging flow contexts: MO1 Notification (MO: Messaging flow Outbound): Delta distribution of one instance to subscribed sites and additional consumers such as BW adapter or mobile bridge triggered by CRM Server Application.

MO2 Notification (multiple): Delta distribution of more than one instance (multiple case) to subscribed sites and additional consumers such as the BW adapter.

MO4 Initial Load CRM → R/3: Data extract starting at Admin. Console (from CRM to external sites R/3, XIF, Groupware Adapter).

Table SMW3FDSTD contains the SAP standard flow definitions in the form of flow contexts. The SAP standard flow definitions are controlled by context entries in the BDoc type-specific and customer-specific tables. Table SMW3FDBDOC contains flow definitions that are BDoc type-specific but not customer-specific. If you want to override the standard flow, make the same entries for the same contexts as in the standard flow table SMWFDSTD. Table SMW3FDCUST contains the customer-specific and BDoc-specific flow definitions in the form of flow contexts. These entries override the BDoc type-specific flow and the standard flow. Additional definitions (for example, for the validation service, can be found in table SMW3BDOCIF).

Page 317: CRM Fundamentals- II

© SAP AG TCRM20 10-61

SAP AG 2008

View Flow Contexts for BUPA_MAIN

SMO8FD

Flow Context

Services in a Flow Context

The complete definition a specific BDoc can be checked using transaction SMO8FD: Middleware → Message Flow → Display and Check Flow Definitions

Page 318: CRM Fundamentals- II

© SAP AG TCRM20 10-62

SAP AG 2008

Delta Load CRM to R/3

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Introduction

Customizing & Condition Synchronization

Load R/3 CRM

Load CRM R/3

Initial Load CRM->R/3

Delta Load CRM->R/3

Page 319: CRM Fundamentals- II

© SAP AG TCRM20 10-63

SAP AG 2008

Different Types of Replication

Replication = Message forwarding to one or more sites

BDoc

Different Types:Simple Bulk replication

Simple Intelligent replication

?

?

BDoc messages are replicated to sites . Messaging BDoc types are used within the CRM Middleware and passed to the R/3 Adapter.

Two different replication types can be distinguished:

Simple bulk replication: If the site is subscribed, messages are replicated for all instances.

Simple intelligent replication. Replication depending on field values (filter criteria).

However, every BDoc type can only be replicated via one replication type.

Page 320: CRM Fundamentals- II

© SAP AG TCRM20 10-64

SAP AG 2008

BDocType

1:1 relation Replication objects are generated from BDoc types.

The replication object specifies the replication type.

One or several replication objects can be assigned to a publication.

For simple bulk replication (used for mBDocs) only one subscription is assigned to a publication

Subscriptions can be assigned to one or several sites.

Subscription

SiteID SiteID

Replication Object

PublicationPublication

Simple Bulk Replication: Replication Modeling

SiteID

1

2

3

4

1

n

The data exchange between the CRM Server and the sites is defined in a replication model. Business object types are represented technically by means of BDoc types. One single replication object is generated from a BDoc type using the Administration Console (1:1 relation).

Sites can then subscribe to one or more publications to receive the data relevant for their work.

The simple bulk replication is the simplest replication type.

Page 321: CRM Fundamentals- II

© SAP AG TCRM20 10-65

SAP AG 2008

Middleware Objects

Customizing Adapter Object /Business Adapter Object

BDoc

Replication Object

Publication

Subscription

Site

Usually created by SAP

Created by Customer

Use Middleware ObjectNavigator to check existing MiddlewareObjects

Use Admin Consoleto create Sites and Subscriptions

Use Middleware Object Navigator (Transaction CMWMON) to check existing Middleware Objects and their relations.

Use Admin Console (Transaction SMOEAC) to create customer specific objects like Sites and Subscriptions.

Page 322: CRM Fundamentals- II

© SAP AG TCRM20 10-66

SAP AG 2008

BDocType

1:1 relationThe replication object of type “intelligent” specifies potential fields for filter criteria

One replication object can have one or several publications assigned

A publication specifies the actual fields used for filter criteria

One or several subscriptions can be assigned to a publication

Subscriptions specify the field values for filter criteria

Subscriptions can be assigned to one or several sites

Subscription

SiteID SiteID

Replication Object

Simple Intelligent Replication: Replication Modeling

SiteID

1

2

3

4

Subscription SubscriptionABC017

ABC019

DEF

PublicationPublicationPublicationPublication

Simple Intelligent Replication: Specification of criteria fields may be used to select the business objects of a particular logical type (for example, all customers in a particular postal code area). A certain basic set of publications is delivered in standard, but can be extended.

Example: The replication object customer contains the Sales area field, which is defined as a criteria field. On the basis of the contents of this field, the objects are made available to the various sites. The postal code is a distribution criterion for the replication object customer. A value range has been defined for it in the criteria fields. For example, criteria values between 30,000-40,000 are now established for site ID=A1.

Page 323: CRM Fundamentals- II

© SAP AG TCRM20 10-67

SAP AG 2008

Admin Console: View Replication Objects

SMOEAC

Detailed information

Corresponding BDoc type

Assigned publications

Replication type

Replication Objects can be viewed via transaction SMOEAC. Choose Object Type Replication Object.

Page 324: CRM Fundamentals- II

© SAP AG TCRM20 10-68

SAP AG 2008

Admin Console: View Publications

SMOEAC

Detailed information

Replication type

Assigned replication

object

Publication name

Publications can be viewed via transaction SMOEAC. Choose Object Type Publication.

Page 325: CRM Fundamentals- II

© SAP AG TCRM20 10-69

SAP AG 2008

Administration Console: Viewing Subscriptions

Subscription name and type

Detailed information

Actual values for fields

SMOEAC

Subscriptions can be viewed via transaction SMOEAC. Choose Object Type Subscriptions.

Page 326: CRM Fundamentals- II

© SAP AG TCRM20 10-70

SAP AG 2008

Admin Console: Assign Subscriptions to a Site

Deleteassignment

Create assignment

A subscription can be assigned to a site. Choose Object Type Site. Select the site you want to assign a new subscription. Go into change mode (F9) and select tab strip Subscription in the information area. Here you can assign or delete a subscription.

Page 327: CRM Fundamentals- II

© SAP AG TCRM20 10-71

SAP AG 2008

Delta Load CRM to R/3: Data Flow

CRM

CRM Database

CRM-Application

OutboundMessage Flow

FlowContextMO1 + MOA

CRMAdapter

3

2

1

qRFC

Inb QueueCSA*

Call Outbound Adapter 0002

Simple Replication Service 0001

mBDoc

Registration in Inbound Scheduler(SMQR)

The CRM Application creates data on database and creates an BDoc within one LUW. The BDoc is passed to the Outbound Flow via qRFC. The name convention for the Queue is CSA*.

For single data the Flow Context is MO1 and MOA. For multiple data MO2 and MOB.

Within these Flow Contexts the Replication Service is called to find out the subscribed receivers. For each Receiver the Outbound Adapter is called.

In our case the data is to be transferred to the R/3 System.

Page 328: CRM Fundamentals- II

© SAP AG TCRM20 10-72

SAP AG 2008

CRM

OutboundMessage Flow

FlowContextMO1 + MOA

Call Outbound Adapter 0002

Simple Replication Service 0001

qRFC: Delta Load CRM to R/3

R/3

R/3 Tables

Object SpecificFunction Module

R/3 OutboundAdapter

4

mBDoc

CRM_UPLOAD_TRIGGER

5

BAPIMTCS

qRFC

mBDoc

6

Outb. QueueR3AU*

In our case the data is to be transferred to the R/3 System. The R/3 Outbound Adapter is called to convert the BDoc into a BAPIMTCS datacontainer.

The BAPIMTCS datacontainer is transferred to the receiver via qRFC. The name convention for the Queue is R3AU*

Page 329: CRM Fundamentals- II

© SAP AG TCRM20 10-73

SAP AG 2008

Data Exchange with R/3: Unit Summary

You are now able to:Describe the synchronization scenarios for Customizing data

Describe the synchronization scenarios for Business data and for Conditions.

Start data flow with CRM Middleware

Page 330: CRM Fundamentals- II

© SAP AG TCRM20 10-74

Page 331: CRM Fundamentals- II

© SAP AG TCRM20 10-75

Exercises

Unit: Data Exchange with ERP Backend Topic: General Configuration

At the conclusion of this exercise, you will be able to:

• Describe the RFC connections and table entries that are necessary to connect the CRM Server with the ERP Backend

As a CRM Middleware administrator/consultant, you are in charge of administering the data replication between the CRM System and the ERP Backend.

This exercise deals with the basic CRM Middleware configuration settings which have to be made to enable data replication between the CRM System and the ERP Backend.

1-1 Take a look at the connections between the CRM server and the backend system

Do not perform any changes! 1-1-1 Log on to the ERP backend system. The instructor will provide you the

server name and system number.

Is CRM as data consumer of R/3 Adapter functionality activated? Which RFC connection is used to connect the ERP backend system to the CRM server? Which user is used for this RFC connection? Perform a connection test.

1-1-2 Log on to the CRM system. The instructor will provide you the server name and system number.

Is CRM activated as data consumer of R/3 Adapter functionality? Which RFC connection is used to connect the CRM server to the ERP backend system? Which user is used for this connection? Perform a connection test.

Page 332: CRM Fundamentals- II

© SAP AG TCRM20 10-76

Page 333: CRM Fundamentals- II

© SAP AG TCRM20 10-77

Unit: Data Exchange with ERP Backend Topic: Finding an Adapter Object

At the conclusion of this exercise, you will be able to:

• Determine if an Adapter Object is delivered by SAP for some specific data fields.

As a CRM Middleware administrator/consultant, you are in charge of administering the data replication between the CRM System and ERP Backends.

This exercise provides for practice in finding the appropriate Business adapter object..

2-1 Your goal is to determine if a delivered Adapter Object is available to extract the “Academic Title” customizing you previously entered in R/3

2-1-1 What is the technical name of the table in the ERP system where the academic title you created is stored (created in exercise 1.2). _____________________

2-1-2 In CRM determine if an Adapter Object exists for this table. If so record it

here:

2-1-3 In CRM open the adapter object and verify the table TSAD21 is in fact included. The transaction is either R3AC1 ( Business Objects), or R3AC3 ( Customizing Objects), or R3AC5 (Condition Objects).

Is it included ? ____________

Note: Please tell the instructor you are finished with this and they might execute the initial load again to bring your titles over to CRM.

Page 334: CRM Fundamentals- II

© SAP AG TCRM20 10-78

Page 335: CRM Fundamentals- II

© SAP AG TCRM20 10-79

Unit: Data Exchange with ERP Backend Topic: Customizing Adapter Object: Initial Load

At the conclusion of this exercise, you will be able to:

• Start an initial load of customizing data

As a CRM Middleware administrator/consultant, you are in charge of administering the data replication between the CRM System and ERP Backends.

This exercise deals with the basic process of extracting customizing data from R/3 to CRM.

Hint: Your Instructor has deregistered the inbound queue R3AI_ZCR555* of the CRM server.

3-1 Display and create a filter for the Customizing Adapter Object ZCR555_## in CRM System.

3-1-1 Determine corresponding ERP (customizing) database table. A. _____________________

3-1-2 Create a filter on the field CONTINENT with the value EUROPE. The filter should only be execute only in the source system.

3-2 Determine Content of ERP (Customizing) database table ZCR555_R3_##

3-2-1 Logon to the ERP backend system. Start the data browser (transaction SE16) and enter the name of the database table (A). How many entries are stored in the database table?

C.______________________

3-2-2 How many entries pass the filter criteria stored in the customizing adapter object?

D.______________________

3-3 Logon to the CRM System. Start the initial load for Customizing Adapter Object ZCR555_##

3-3-1 Start initial load with transaction R3AS. Choose Object ZCR555_## and start the initial load with icon Execute.

Page 336: CRM Fundamentals- II

© SAP AG TCRM20 10-80

3-4 Check status of initial load with initial load monitoring

3-4-1 Start Initial Load Monitoring (transaction R3AM1). Choose Object ZCR555_## and choose Execute.

3-5 Create a second session and start the inbound qRFC monitor. (transaction SMQ2)

3-5-1 Navigate to detail view for queue name R3AI_ZCR555_##. Activate this queue manually. (Do not register the queue R3AI_ZCR555* with QIN- scheduler).

3-6 Check status of initial load with initial load monitoring again.

3-6-1 Start Initial Load Monitoring (transaction R3AM1). Choose Object ZCR555_## and choose Execute.

3-7 Check the entries of corresponding CRM (customizing) database table ZCR555_CRM_##.

2-7-1 Start Data Browser (transaction SE16) in CRM System. Enter table ZCR555_CRM_## and choose execute.

Page 337: CRM Fundamentals- II

© SAP AG TCRM20 10-81

Unit: Data Exchange with ERP Backend Topic: Business Adapter Objects: Delta Load

At the conclusion of this exercise, you will be able to:

• check the customizing for Delta Load corresponding to a Business Adapter Object

• Determine the flow contexts for a BDoc type

Various settings are required to process delta loads. Each setting is define below.

4-1 Display Business Adapter Object

4-1-1 Start Object Management for Business Adapter Objects (transaction R3AC1). Navigate to detail view of Business Adapter Object MATERIAL.

4-1-2 Determine Source and Target Site Types and the corresponding Flow Contexts supported for the Initial Load. Target Site Type: ______________________ Source Site Type: ______________________ Flow Context: ______________________

4-1-3 Determine the linked BDoc Type. mBDoc-Type:______________________

4-1-4 Determine the linked Object Class. Object Class:______________________

Page 338: CRM Fundamentals- II

© SAP AG TCRM20 10-82

4-2 Display corresponding mBDoc Type.

4-2-1 Start the BDoc Modeler and navigate to detail view of BDoc PRODUCT_MAT.

4-2-2 Navigate to detail view of related data type COMT_PROD_MATERIAL_BDOC_TAB. Navigate to detail view of line type COMT_PROD_MATERIAL_BDOC. Write down the components of this complex line type: ______________________ ______________________ ______________________ ______________________ ______________________ ______________________ ______________________

4-2-3 Choose icon Hierarchy Display to get a hierarchy representation in a separate window. Do not close this window.

4-3 Analyze Delta Load Customizing in CRM System

4-3-1 Use transaction R3AC4 to analyze Delta Load customizing. Find out the names of the Business Transaction Events corresponding to the Object Class MATERIAL. ______________________ ______________________ ______________________

4-3-2 Check whether the Delta Load is activated.

4-4 Analyze Delta Load Customizing in ERP System

4-4-1 Check, whether these Business Transaction events are activated in the ERP system. Use transaction FIBF and choose Environment-> Infosystem (P/S). Enter the numbers of the Business Transaction Events with left-hand zeros and choose Execute. Use icon Display Active Components to check, whether the Middleware Components for Delta Load are activated.

Page 339: CRM Fundamentals- II

© SAP AG TCRM20 10-83

4-5 Compare CRM-Product CR555_## with R/3-Material CR555_## and change the Material description in the ERP System.

4-5-1 Since we are only verifying data, in CRM: choose the older CRM5.0 transaction COMMPR01.

4-5-2 In ERP: Choose SAP Menu →Logistics→ Materials Management → Material Master → Material → Change→ Immediately (transaction MM02). Enter Material number CR555_## and choose Select views. Choose Basic Data 1, Basic Data 2 and Sales Org. Data 1. Choose Sales Organization 3020 and Distr. Channel 30.

4-5-3 Compare Description, Sales Organization and Distribution Channel.

4-5-4 In ERP: Change the Description (short text) and save the material.

4-6 Analyze, whether the Delta Load has been processed successfully:

4-6-1 Start the BDoc Monitoring (transaction SMW01) and display the corresponding mBDoc. Enter BDoc Type PRODUCT_MAT, send and date time today. Search for an entry with Queue name R3AD_MATERIACR555_##. Mark the line and choose BDoc Message →Display → Extended Part

4-6-2 Within the detail view choose icon Column and compare with the complex structure of mBDoc Type PRODUCT_MAT (task 4-2).

4-6-3 Search for the changed short text within the mBDoc.

4-6-4 Check the Short text of the product with transaction COMMPR01 again.

Page 340: CRM Fundamentals- II

© SAP AG TCRM20 10-84

Page 341: CRM Fundamentals- II

© SAP AG TCRM20 10-85

Unit: (Optional) Data Exchange with ERP Backend Topic: BDocs and Flow Contexts

At the conclusion of this exercise, you will be able to:

• Examine the structure of a BDoc type

• Determine the flow contexts for a BDoc type

BDoc types are the main data structure within the CRM Middleware for data processing. The internal structure of BDoc types can be viewed using the BDoc Modeler.

BDoc messages are processed within the CRM Middleware by several services. The services that are called for a BDoc type can be looked for via the flow context.

5-1 Examine the structure of the mBDoc type for the Business Partner.

5-1-1 Start the BDoc Modeler.

5-1-2 Determine the structure of the messaging BDoc type for business partner.

5-2 Determine some flow contexts for BDoc types.

5-2-1 Which services are called in the Messaging Flow for business partners a) during the inbound processing?

1.______________________

b) during the outbound processing (normal delta processing)?

1.______________________

2.______________________

3.______________________

Page 342: CRM Fundamentals- II

© SAP AG TCRM20 10-86

Page 343: CRM Fundamentals- II

© SAP AG TCRM20 10-87

Unit: Data Exchange with ERP Backend Topic: Delta Load from CRM to ERP and

Replication Administration

At the conclusion of this exercise, you will be able to:

• Use the Administration Console to view CRM Middleware administrative data

• Create and replicate a business partner

As a Middleware administrator/consultant employee, you are in charge of administering the data replication from the CRM Middleware to external systems. Your role is to define sites and subscribe sites to publications.

This exercise deals with the basic tasks of CRM Middleware administration that is, using (creating) sites and subscribing sites to publications. Your tool to perform these tasks is the Middleware Administration Console.

6-1 Previously you created an order in the ERP system and verified it was transferred to CRM. This exercise shows the underlying middleware setup that supports the delta transfer from CRM to R/3. This involves familiarization with the Administration Console.

6-1-1 Start the Administration Console.

6-1-2 Examine the existing publications and subscriptions. View all subscriptions of the SAP R/3 site shown on your logon sheets. Also record the subscription that ensured that all orders taken in CRM would arrive in ERP

Where do you find all subscriptions for a publication?

__________________________________________________

Are there criteria values assigned to the subscriptions?

__________________________________________________

What subscription involve the transfer of orders. What replication object and therefore what BDOC is this subscription connected to?

__________________________________________________

Page 344: CRM Fundamentals- II

© SAP AG TCRM20 10-88

Page 345: CRM Fundamentals- II

© SAP AG TCRM20 10-89

Solutions

Unit: Data Exchange with ERP Backend Topic: General Configuration

1-1 Take a look at the connections between the CRM server and the backend system.

Do not perform any changes! 1-1-1 Log on to the SAP ERP backend system.

Is CRM as data consumer of ERP Adapter functionality activated? Which RFC connection is used to connect the ERP backend system to the CRM Server. Which user is used for this RFC connection? Perform a connection test.

Call transaction SE16 in the SAP ERP system and enter table CRMCONSUM and press button Table Contents.

Press button Execute.

The table field CONSUMER gives you the name of the data consumer. Check if the flag in field ACTIV is set.

Call transaction SE16 in the SAP ERP system and enter table CRMRFCPAR and press button Table Contents.

Press button Execute.

The parameter CRM * gives you the name of the RFC-destination (field RFCDEST). It may be DTZ_800.

Call transaction SM59. Open ABAP Connections. Search for the RFC connection from table CRMRFCPAR.

Double click on the RFC connection.

The user is named here. It may be CRMREMOTE.

Choose the TEST CONNECTION button.

Page 346: CRM Fundamentals- II

© SAP AG TCRM20 10-90

1-1-2 Log on to the CRM system.

Is CRM activated as data consumer of ERP Adapter functionality? Which RFC connection is used to connect the CRM server to the SAP ERP backend system? Which user is used for this connection? Perform a connection test.

Call transaction SE16 in the CRM system and enter table CRMCONSUM and press button Table Contents.

Press button Execute.

The table field CONSUMER gives you the name of the data consumer . Search for consumer CRM and check if the flag in field ACTIV is set.

Call transaction SMOEAC (Architecture & Technology →Middleware→Administration→ Administration Console) in the CRM system. Choose Sites as Object Type and click the Display Objects button.

Choose the R/3 site(double click it) and display the Site Attributes(use the button site attributes). The name of the corresponding RFC destination (field PARAMVAL) is displayed. It may be DII_800.

Call transaction SM59. Open ABAP Connections. Search for the RFC connection.

Double click on the RFC Connection.

The user is named here. It may be CRMREMOTE.

Click the TEST CONNECTION button.

Page 347: CRM Fundamentals- II

© SAP AG TCRM20 10-91

Unit: Data Exchange with ERP Backend Topic: Finding an Adapter Object

At the conclusion of this exercise, you will be able to:

• Determine if an Adapter Object is delivered by SAP for some specific data fields.

2-1 Your goal is to determine if a delivered Adapter Object is available to extract the “Academic Title” customizing you previously entered in R/3

2-1-1 What is the technical name of the table in the ERP system where the academic title you created is stored (created in exercise 1.2). _____________________

SPRO →Cross Application Components→SAP Business Partner → Business Partner →Persons → Name Components → Maintain Academic Titles. Select entry 0001, and press “F1”. Now select and record TSAD2.

2-1-2 In CRM determine if an Adapter Object exists for this table. If so record it here:

Transaction SE16 Enter table name “SMOFTABLES”, Enter TSAD2 in the field “R3TABNAME” and press . Record OBJNAME “DNL_CUST_BASIS”

2-1-3 In CRM open the adapter object and verify the table TSAD21 is in fact included. The transaction is either R3AC1 ( Business Objects), or R3AC3 ( Customizing Objects), or R3AC5 (Condition Objects).

Is it included ? ____________

Use the “position” button and enter DNL_CUST_BASIS using the correct transaction picked from the 3 above. Select the DNL_CUST_ BASIS object row an choose “F2”. Access the tables/structures tab to find that TSAD2 table is included.

Note: Please tell the instructor you are finished with this and they might execute the initial load again to bring your titles over to CRM.

Page 348: CRM Fundamentals- II

© SAP AG TCRM20 10-92

Page 349: CRM Fundamentals- II

© SAP AG TCRM20 10-93

Unit: Data Exchange with ERP Backend Topic: Customizing Adapter Object: Initial Load

3-1 Display and create a filter for the Customizing Adapter Object ZCR555_## in CRM System.

3-1-1 Choose transaction R3AC3 and mark the line with Customizing Adapter Object ZCR555_##. Use Icon Choose to navigate to detail view. Choose tab tables/structures and take the table name from column table( source site). The table name is ZCR555_R3_##.

3-1-2 Create a filter on the field CONTINENT with the value EUROPE. The filter should only be execute only in the source system.

Choose icon Filter in the tab tables/structures and choose name of source site R/3.Add the filter: field CONTINENT, OP = EQ, LOW =EUROPE .

Choose Save.

3-2 Determine Content of ERP (Customizing) database table ZCR555_R3_##

3-2-1 Logon to the ERP backend system. Start the data browser (transaction SE16) and enter the name of the database table (A). How many entries are stored in the database table?

Enter ZCR555_R3_## and choose Execute. The number of entries depends on the system.

3-2-2 How many entries pass the filter criteria stored in the customizing adapter object?

Take the Filter settings into account, you have determined in task 2-2-2.

3-3 Logon to the CRM System. Start the initial load for Customizing Adapter Object ZCR555_##

3-3-1 Start initial load with transaction R3AS. Choose Object ZCR555_## and start the initial load with icon Execute. You get a popup with message about the status of initial load.

3-4 Check status of initial load with initial load monitoring

3-4-1 Start Initial Load Monitoring (transaction R3AM1). Choose Object ZCR555_## and choose Execute. The status should be ‘running’.

Page 350: CRM Fundamentals- II

© SAP AG TCRM20 10-94

3-5 Create a second session and start the inbound qRFC monitor. (transaction SMQ2)

3-5-1 Navigate to detail view for queue name R3AI_ZCR555_##. Activate this queue manually. (Do not register the queue R3AI_ZCR555* with QIN- scheduler).3-6 Check status of initial load with initial load monitoring again.

3-6-1 Start Initial Load Monitoring (transaction R3AM1). Choose Object ZCR555_## and choose Execute. The initial load should have been finished.

3-7 Check the entries of corresponding CRM (customizing) database table ZCR555_CRM_##.

3-7-1 Start Data Browser (transaction SE16) in CRM System. Enter table ZCR555_CRM_## and choose execute. You should find the corresponding entries in the CRM table.

Page 351: CRM Fundamentals- II

© SAP AG TCRM20 10-95

Unit: Data Exchange with ERP Backend Topic: Business Adapter Objects: Delta Load

4-1 Display Business Adapter Object

4-1-1 Start Object Management for Business Adapter Objects (transaction R3AC1). Double click on Business Adapter Object MATERIAL to navigate to the detail view.

4-1-2 Determine Source and Target Site Types and the corresponding Flow Contexts supported for the Initial Load. Target Site Type: CRM Source Site Type: ERP Flow Context: MI0 (mBDoc Validate)

4-1-3 Determine the linked BDoc Type. mBDoc-Type:PRODUCT_MAT

4-1-4 Determine the linked Object Class. Object Class:MATERIAL

4-2 Display corresponding mBDoc Type.

4-2-1 Start the BDoc Modeler Architecture and Technology→ Middleware → Development → Meta Object Modeling→ BDoc Modeler (transaction SBDM ) When you use the transaction for the first time, a dialog box asks for a display selection. For the exercise, select BDoc Class Messaging. Later on, you may change your selection by using the Filter button or CTRL+F6.

Enter PRODUCT_MAT in field "name" and choose Execute.

4-2-2 Navigate to detail view of related data type Double click on PRODUCT_MAT to navigate to the detail view. Double click on COMT_PROD_MATERIAL_BDOC_TAB and double click on COMT_PROD_MATERIAL_BDOC in the following window. There are the following components of this complex line type: HEADER DATA INTERLINK CONDITIONS KNOWLEDGEBASE DOCUMENTS CONTROL

4-2-3 Choose icon Hierarchy Display to get a hierarchy representation in a separate window. Do not close this window.

Page 352: CRM Fundamentals- II

© SAP AG TCRM20 10-96

4-3 Analyze Delta Load Customizing in CRM System

4-3-1 Use transaction R3AC4 to analyze Delta Load customizing. Find out the names of the Business Transaction Events corresponding to the Object Class MATERIAL.

00001250

00001270

00004051

4-3-2 Check whether the Delta Load is activated.

Choose the icon “back” to get to the initial screen. The delta load is activated, when the check box Inactive is unchecked

4-4 Analyze Delta Load Customizing in ERP System

4-4-1 Check, whether these Business Transaction Events are activated in ERP system. Use transaction FIBF and choose Environment-> Infosystem (P/S). Enter the numbers of the Business Transaction Events with left-hand zeros and choose Execute. Use icon Display Active Components to check, whether the Middleware Components for Delta Load are activated.

4-5 Compare CRM-Product CR555_## with ERP-Material CR555_## and change the Material description in the ERP System.

4-5-1 Since we are just verifying data, in CRM: choose the prior CRM 5.0 transaction code COMMPR01.

4-5-2 In ERP: Choose SAP Menu →Logistics→ Materials Management → Material Master→ Material→ Change→ Immediately (transaction MM02). Enter Material number CR555_## and choose Select views. Choose Basic Data 1, Basic Data 2 and Sales Org. Data 1. Choose Sales Organization 3020 and Distr. Channel 30.

4-5-3 Compare Description, Sales Organization and Distribution Channel.

4-5-4 In ERP: Change the Description (short text) and save the material.

4-6 Analyze, whether the Delta Load has been processed successfully:

4-6-1 Start the BDoc Monitoring (transaction SMW01) and display the corresponding mBDoc. Enter BDoc Type PRODUCT_MAT, send and date time today. Search for an entry with Queue name R3AD_MATERIACR555_##. Mark the line and choose BDoc Message →Display→ Extended Part

4-6-2 Within the detail view choose icon Column and compare with the complex structure of mBDoc Type PRODUCT_MAT (task 4-2).

4-6-3 Search for the changed short text within the mBDoc.

4-6-4 Check the Short text of the product with transaction COMMPR01 again.

Page 353: CRM Fundamentals- II

© SAP AG TCRM20 10-97

Unit: (Optional) Data Exchange with ERP Backend Topic: BDocs and Flow Contexts

5-1 Examine the structure of a BDoc type.

5-1-1 Start the BDoc Modeler.

Architecture and Technology→ Middleware → Development → Meta Object Modeling→ BDoc Modeler (transaction SBDM)

5-1-2 Examine structure of the messaging BDoc type for business partner.

When you use the transaction for the first time, a dialog box asks for a display selection. For the exercise, select BDoc Class Messaging. Later on, you may change your selection by using the Filter button or CTRL+F6.

"The messaging BDoc type used for the exchange of Business Partners is called BUPA_MAIN. It is marked as a messaging BDoc type and has the site types ERP, Idoc and XML assigned to it (Go To->Site Type Mapping)."

The header CRMW_BUPA_HEAD contains among other things the BP number and the BP GUID. The extension is labeled Related Data Type, for BUPA_MAIN it is named BUS_EI_MAIN. It may be viewed using transaction SE11 (Data Dictionary)."

5-2 Determine some flow contexts for a BDoc type.

5-2-1 Which services are called in the messaging flow for business partners?

The transaction to display flow contexts may be found in the menu under Architecture and Technology → Middleware → Message Flow → Display and Check Flow Definitions (transaction SMO8FD).

Enter the BDoc type BUPA_MAIN and start the function Execute. The system will now display the available messaging flow contexts for business partner.

The messaging flow context Validate (MI0) only contains the validation service: CRM_BUPA_MAIN_VAL.

The flow contexts for the distribution of change messages are the Notification (MO1) and Notification Multiple (MO2) contexts. They contain the following services:

1. SMOH_REPLICATION_WRAPPER_MSG

2. SMW3_ OUTBOUNDADP_CALLADAPTERS

3. BP_MAIN_CRM_TO_CDB (the mobile bridge, optional).

The Replication Wrapper calls the Replication service. The function module SMW3_OUTBOUNDADP_CALLADAPTERS calls the outbound adapter.

Page 354: CRM Fundamentals- II

© SAP AG TCRM20 10-98

Page 355: CRM Fundamentals- II

© SAP AG TCRM20 10-99

Unit: Data Exchange with ERP Backend Topic: Delta Load from CRM to ERP and

Replication Administration

6-1 Previously you created an order in the ERP system and verified it was transferred to CRM. This exercise shows the underlying middleware setup that supports the delta transfer from CRM to R/3. This involves familiarization with the Administration Console.

6-1-1 Start the Administration Console.

Start the Administration Console with transaction SMOEAC or from the menu:

Architecture and Technology→ Middleware → Administration → Administration Console 6-1-2Examine the existing publications and subscriptions. View all subscriptions of the R/3 site shown on your logon sheets.

Where do you find all subscriptions for a publication?

All subscriptions of a site are listed for the object type

Site → <site_type> → <site_name> → Subscriptions

You can view the subscriptions for a particular publication by selecting the object type Publications. Press the button Display objects and choose menu path Publications → <publication_name>.

Are there criteria values assigned to the subscriptions?

Whether criteria can be (or have to be) used depends on the replication type of the relevant publication. Publications of type simple bulk (msg) for messaging BDocs and of type bulk(s) for synchronization BDocs cannot be filtered using criteria values.

What subscription involve the transfer of orders. What replication object and therefore what BDOC is this subscription connected to?

Expanding the R/3 site, one of the subscriptions is “All Business Transactions”. Selecting this subscription and accessing the Replication Objects Tab, you will find the replication object BUS_TRA NS_MSG. Clicking on it brings you to the screen that shows this replication object is tied to the BDoc Name BUS_TRANS_MSG.

Page 356: CRM Fundamentals- II

© SAP AG TCRM20 10-100

Page 357: CRM Fundamentals- II

© SAP AG TCRM20 11-1

SAP AG 2004

Data Exchange with Third-Party Back End

XIF AdapterXIF AdapterXIF Adapter

Page 358: CRM Fundamentals- II

© SAP AG TCRM20 11-2

SAP AG 2004

Data Exchange with Third-Party Back End:Unit Objectives

At the conclusion of this unit, you will be able to:Describe data exchange via the XIF Adapter

Page 359: CRM Fundamentals- II

© SAP AG TCRM20 11-3

SAP AG 2004

The External Interface Adapter

The External Interface Adapter (XIF) has been available since SAP CRM 3.0

It can be used for:Initial load of data objects

Continuous data exchange of data objects in real time

It works bilaterally: Business objects (data) can be sent andreceived:

From mySAP CRM to external systems

From external systems to mySAP CRM

It uses two standard formats:XML/SOAP

ALE/IDoc

It is extensible without modifying the program code

Example: RosettaNet B2B mappingsIt is published in the SAP Interface Repository (http://ifr.sap.com)

From SAP CRM 3.0, business data objects such as orders or business partners can be sent in SOAP/XML or IDoc format using external interfaces (XIF).

From the CRM system to external systems

From external system to the CRM system

Data objects can be loaded initially via file transfer using the DX/LSMW Workbench and they can be sent permanently to the CRM system.

Data objects can be loaded initially using the CRM Middleware adapter framework in external systems, loaded in a data file, or be sent permanently by CRM in external systems via appropriate application transactions.

Page 360: CRM Fundamentals- II

© SAP AG TCRM20 11-4

SAP AG 2004

Back-End Integration Overview with the XIF Adapter

mySAPmySAP CRMCRM

SAP Business Connector

EDI and ALE Systems (3rd party)

ExternalExternalSystemSystem

EAI Tool(3rd party)

Data MigrationTool (third-party)

P2P direct call

XML/SOAP

IDOC/tRFC

ASCII File

IntegrationBroker(CRM

Middleware)

CRM Applications

R/3 Adapter

BW Adapter

BAPI

DX WorkbenchLSMW

Web App Server

Web App Server

IDoc File

Direct http:

SAP Exchange Infrastructure

XIF Adapter

SAP Business Connector is freely available for customers at http://service.sap.com/connectors. CRM includes DX Workbench and a mapping tool for file-based initial data load.

15 certified third-party ALE message handling systems (BEA, IBM MQSeries, NEON, TIBCO)

58 certified third-party ALE converters (CrossWorlds, Harbinger, Mercator, Oberon, Sterling)

57 certified third-party EDI subsystems (Actis, Harbinger, Premenos, Seeburger, Sterling)

14 certified third-party migration interface partner tools (Artuad. ETI*Extract, NSX, SOPRA)

Details of certified third-party products can be found at http://www.sap.com/csp.

Page 361: CRM Fundamentals- II

© SAP AG TCRM20 11-5

SAP AG 2004

The XIF Adapter: Exchanged Business Objects

Products

Prices conditions

Business partners

Business partner

hierarchy

Business trans-

actions*

NonNon--R/3 R/3 bbackack endendor or oold ld ssystemystem

Invoices

mySAP CRM

(*) Lead, opportunity, sales order, service order, and so on

export importThe selection and direction of exchanged objects is determined by the supported integrated business scenarios

Page 362: CRM Fundamentals- II

© SAP AG TCRM20 11-6

SAP AG 2004

XIF AdaptermBDoc

XML file

IDoc

CRM Server /CRM Middleware

Externalsystems

The External Interface (XIF) Adapter provides:

A service in the message flow

IDoc and XML interfaces for external systems

The XIF Adapter: Overview

The XIF Adapter provides:

Services in the CRM Server messaging flow

Bulk-message-capable IDoc and XML interfaces for external systems

More information about the XIF Adapter may be found in SAPNet via the alias /crm-ci.

Page 363: CRM Fundamentals- II

© SAP AG TCRM20 11-7

SAP AG 2004

CRM Server

External Interface Adapter

mBDoc extension Complex data type

Mapping

SOAP framework

SAP BusinessConnector

ALE inbound/ outbound function

SOAP-XML

IDoc

tRFC

httpThird-party middleware

Flat file

... ...

... ...

FILE

CRM Middleware

ValidationMessagingflowmBDoc

External system

External Interface Adapter

In outbound transactions – for example, creating or changing a data object within an application transaction – an mBDoc is created and transferred to the CRM Middleware. Possible external receivers for the mBDoc are determined within the CRM Middleware and are transferred to the XIF Adapter together with the mBDoc. The data in the mBDoc is converted in the XIF Adapter into an XML-like complex data structure and an appropriate basic service (SOAP, ALE) is started that sends the data object to the external receiver, for example, via a third-party Middleware tool.

In inbound transactions, incoming messages in XML or IDoc format are received by the XIF Adapter via the basic services (SOAP, ALE) and are converted into the structures in the mBDoc. The CRM Middleware then starts, calling an appropriate application validation service that updates the application after successful checks on the message.

Page 364: CRM Fundamentals- II

© SAP AG TCRM20 11-8

SAP AG 2004

CRM Server

CRM Middleware

The External Interface Adapter: SOAP/XML

External Interface Adapter

SAP BusinessConnector

XML-SOAPhttp

XML

XML messaging

system

MessagingflowmBDoc

CRM application

XML

SAP Exchange

Infra-structure

XML

More detailed overview of SOAP/XML processing: SOAP/XML messages can be sent to the SAP Exchange Infrastructure (SAP XI), where the XML message can be mapped into other XML schemas. The XML messages can be routed to other business systems.

SOAP/XML messages can be sent to XML messaging systems that convert the XML into other XML schemas based on mapping rules and send these messages to other applications based on routing rules.

For CRM to SAP Business Connector communication, IDocs should be used. An IDoc transfer is quicker in comparison to SOAP/XML because the IDoc document contains no metadata information (tags) and, therefore, the size of document sent down the line is substantially smaller in comparison.

Page 365: CRM Fundamentals- II

© SAP AG TCRM20 11-9

SAP AG 2004

CRM Server

CRM Middleware

External Interface Adapter IDocIDoc

MessagingflowmBDocmBDoc

CRM application

The External Interface Adapter: IDoc

Third-party ALE

converters

tRFCtRFC

File

XMLXML

Third-party ALE

messaging system

SAP Business

Connector

IDocIDoc

EDI/ IDocEDI/ IDoc

EDIsubsystem EDIEDI

File

Flat filein IDoc format

XMLXMLSAP

Exchange Infra-

structure

More detailed overview of IDoc Processing. IDocs can be used to send messages to the SAP Exchange Infrastructure, where an IDoc XML document will be established and mapped into other XML schemas. The XML messages can be routed to other business systems.

IDocs can be used to send messages to the SAP Business Connector, where an IDoc XML document will be established and mapped into other XML schemas, such as Rosetta Net, xCBL, or the customer’s own schema.

IDocs can be used to send messages to a flat file.

IDocs can be used to send messages to an ALE converter, where IDocs are mapped into standardized message formats (EDI communication).

IDocs can be used to send messages to an ALE messaging system. In contrast to an ALE converter, the message handler will not perform any conversion or mapping, but instead receives IDocs and sends them to applications for processing.

IDocs can be used to send messages to an EDI subsystem. In contrast to an ALE converter, the EDI subsystem does not use direct program-to-program communication to transfer IDocs.

Page 366: CRM Fundamentals- II

© SAP AG TCRM20 11-10

SAP AG 2004

Create an RFC destination SM59: TCP/IP Connection

Create a logical system SALE: for example, BC_CRMXIF

Create a Receiver Port WE21: Transactional RFC or File

Create a partner profile WE20: Partner Type LS with created logical system, Maintain Message Type for Outbound Parameters

Enter outbound parameters WE20: for example, Transfer IDocs at once, Basis Type CRMXIF_*_SAVE_M01, Message Type CRMXIF_*_SAVE_M, Receiver Port as maintained

Create a siteSMOEAC: Site with site type External Interface for IDocs with maintained partner profile

Maintain subscriptions for publicationsSMOEAC: Object Type Subscription, assign maintained site to subscription

Assign maintained site to interface typeCRMXIF_C1: maintain BDoc Type and Interface Type (CRMXIF_*_SAVE) for the new site

Customizing IDoc Outbound Processing

When using IDocs for outbound processing, the settings displayed above must be made.

Page 367: CRM Fundamentals- II

© SAP AG TCRM20 11-11

SAP AG 2004

Create an HTTP destination SM59: HTTP Connections to external systems

Create a siteSMOEAC: Site with site type External Interface for XML and assign HTTP destination

Maintain subscriptions for publicationsSMOEAC: Object type Subscription, assign maintain site to subscription

Assign maintained site to interface typeCRMXIF_C1: maintain BDoc Type and Interface Type (CRMXIF_*_SAVE) for the new site

Customizing SOAP/XML Outbound Processing

When using SOAP/XML for outbound processing, the settings displayed above must be made.

Page 368: CRM Fundamentals- II

© SAP AG TCRM20 11-12

SAP AG 2004

Customizing Inbound Processing

Customizing IDoc inbound Create logical system via SALE Prepare Sender- and Receiver Systems

Setup Logical Systems Name Logical System.

Create a partner profile via transaction WE20 (Partner Type LS).

Enter a suitable message type CRMXIF_*_SAVE_M (CRMXIF_*_SAVE_S) in the inbound parameters.

Customizing SOAP/XML inboundNo Customizing is required in the CRM system for receiving SOAP/XML documents.

CRM HTTP port setting via transaction SMICM ? Goto ? Services.

When using IDocs or SOAP/XML for outbound processing, the settings displayed above must be made.

Page 369: CRM Fundamentals- II

© SAP AG TCRM20 11-13

SAP AG 2004

You are now able to:Describe data exchange via the XIF Adapter

Data Exchange with Third-Party Back End: Unit Summary

Page 370: CRM Fundamentals- II

© SAP AG TCRM20 11-14

Page 371: CRM Fundamentals- II

© SAP AG TCRM20 11-15

Exercises(Optional)

Unit: XIF Adapter Topic: External Interface for IDocs

At the conclusion of this exercise, you will be able to:

• Examine the customizing for the XIF Adapter (IDocs)

• Create a site for the XIF Adapter (IDocs) for outbound processing

• Analyze the message flow of the XIF Adapter

During outbound processing, possible external receivers for the mBDoc are determined within the CRM Middleware and are transferred to the XIF Adapter together with the mBDoc. The data in the mBDoc is converted in the XIF Adapter into an IDoc, which can be sent to external receivers.

1-1 Examine the customizing for the XIF Adapter (IDocs). We assume that you are familiar with ALE/EDI customizing within an SAP system. Please review the following steps. Some of these steps may not be necessary depending on the transfer protocol used (trfc or file transfer)

1-1-1 Is a logical system name created that can be used in the ALE model as receiver system?

1-1-2 Is a TCP/IP RFC destination created in the receiver system (transaction SM59)?

1-1-3 Is a receiver port defined? Where are the IDocs written?

1-1-4 Is a partner profile created?

1-1-5 Are outbound parameters defined?

1-2 Create a site of type External Interface for IDOCs.

1-2-1 Start the administration console and create a new site with the name CR555-##.

1-2-2 Assign the subscription All Business Partners (MESG) to the new site.

1-3 Assign the site to an interface type.

1-4 Change the P.O. Box number in the address data of your “GROUP##A” business partner from prior exercise. Do this in the CRM system.

1-5 Check the receivers of the messaging Bdoc.

1-6 Check the created IDoc.

Page 372: CRM Fundamentals- II

© SAP AG TCRM20 11-16

Page 373: CRM Fundamentals- II

© SAP AG TCRM20 11-17

Solutions (Optional)

Unit: XIF Adapter Topic: External Interface for IDocs

1-1 Examine the customizing for the XIF Adapter (IDocs). We assume that you are familiar with ALE/EDI customizing within an SAP system. Please review the following steps. Some of these steps may not be necessary depending on the transfer protocol used (trfc or file transfer)

1-1-1 Is a logical system name created that can be used in the ALE model as a receiver system?

To view the logical system name, display transaction SALE and choose

IDoc Interface/Application Link Enabling (ALE) → Basic Settings→ Logical Systems → Define Logical System (transaction BD54).

Look for entry XIF_SYSTEM.

1-1-2 Is a TCP/IP RFC destination created in the receiver system (transaction SM59)?

There is no RFC destination defined for XIF_SYSTEM because in our example, the IDoc is written to a file (not sent via tRFC).

Page 374: CRM Fundamentals- II

© SAP AG TCRM20 11-18

1-1-3 Is a receiver port defined? Where are the IDocs written?

To view the receiver port, display transaction WE21.

Receiver ports can be defined for transactional RFCs or files. In our example, the IDoc is written to a file.

Open the FILE node in the navigation tree on the left-hand side. Double-click on XIF-Port.

On the right-hand side, you find detailed information about the receiver port. The IDocs are written to the logical path EDI_GLOBAL_PATH.

Optional: If you want to know to to which physical path the logical path is assigned, double click on entry EDI_GLOBAL_PATH. The transaction FILE is displayed.

Select the entry EDI_GLOBAL_PATH in the table on the right-hand side and choose node Assignment of Physical Paths to Logical Paths in the dialog tree on the left-hand side.

Choose Position and select Windows NT as syntax group. Double-click on the syntax group Windows NT.

The physical path is shown as follows: <P=DIR_GLOBAL>/<FILENAME> (DIR_GLOBAL = /usr/sap/<SID>/SYS/global)

1-1-4 Is a partner profile created?

To view the partner profile, display transaction WE20.

Open the Partner Type LS (Logical System) node in the navigation tree on the left-hand side. You find the logical system XIF-SYSTEM. Double-click on XIF-SYSTEM.

On the right-hand side you find detailed information about the partner profiles (inbound and outbound) of logical system XIF-SYSTEM.

1-1-5 Are outbound parameters defined?

Yes, for logical system XIF-SYSTEM, outbound parameters are defined. Double-click on message type CRMXIF_PARTNER_SAVE_M in the outbound profile of logical system XIF-SYSTEM.

You find the receiver port XIF-PORT and the IDoc type CRMXIF_PARTNER_SAVE_M01 in the Outbound Options tab.

Page 375: CRM Fundamentals- II

© SAP AG TCRM20 11-19

1-2 Create a site of type External Interface for IDOCs.

1-2-1 Start the administration console and create a new site with the name CR555-##.

Display transaction SMOEAC.

To create a new site, choose object type Sites and choose the Create Object button (F6).

Enter the name and a description and choose the site type External Interface for IDOCs. For Site Attributes, select EDI partner number = XIF-SYSTEM and EDI partner type = LS.

Save your site.

1-2-2 Assign the subscription All Business Partners (MESG) to the new site.

Press the Assign button in the Subscriptions tab (only visible in change mode: F9). Type *MESG* in the "name" field and select subscription All Business Partners (MESG) from the search results. Save your site.

1-3 Assign the site to an interface type.

Display the Assign Site to Interface Types view (transaction CRMXIF_C1).

Go into change mode and choose New Entries.

Maintain BDoc type BUPA_MAIN and Interface name CRMXIF_PARTNER_SAVE for your site (CR555-##). Save your entries

1-4 Change the P.O. Box number in the address data of your “Group##A business partner from a prior exercise. Do this in the CRM system.

In the CRM system, use transaction BP.

Page 376: CRM Fundamentals- II

© SAP AG TCRM20 11-20

1-5 Check the receivers of the messaging BDoc.

In the CRM system, use transaction SMW01 or choose Architecture & Technology →Middleware → Monitoring → Message Flow → Display Bdoc Messages.

Identify the BDoc with your business partner’s data.

Select the BDocs of type BUPA_MAIN.

In the Display BDoc Messages screen, select your BDoc, select it, and choose Receivers (Show BDoc Msg Errors/Receivers ). You find a new receiver of site type XIF_IDOC.

1-6 Check the created IDoc.

To display the IDoc monitor, choose transaction BD87.

Look for IDocs in Status “Data passed to Port OK or Data passed to port(status 30) and Message Type CRMXIF_PARTNER_SAVE_M.

You may want to further analyze the IDoc by choosing Display IDocs.

Page 377: CRM Fundamentals- II

© SAP AG TCRM20 12-1

SAP AG 2008

The BW (BI) Adapter (Overview)

The BW (BI) AdapterOverview of the BI Adapter

The BW system is now referred to as a BI (Business Intelligence ) system.

Page 378: CRM Fundamentals- II

© SAP AG TCRM20 12-2

SAP AG 2008

The BW Adapter: Unit Objectives

At the conclusion of this unit, you will be able to:

Understand the purpose and technology of the BW Adapter

Understand roles and responsibilities for typical projects involving BI and CRM.

Page 379: CRM Fundamentals- II

© SAP AG TCRM20 12-3

SAP AG 2008

Landscape for Delta Extraction

SiteprovidersXML R/3

R/3R/3R/3

BWA

BWA checks:- DS: Delta active?- Archiving BDoc?

MobileClients

Site providersMobile clients

Messaging flow(simple intelligent)

Determinationof recipients

Messaging BDoc:classic (segments relevant for distribution)

+ Container

m

Synchronization flowCDB SsSynchronization

BDoc

Mobilebridge

MappingmBDoc - sBDoc Validation

SAPIBW

CDB

ADB

CRM Online

CRM API

BWA: BW Adapter mBDoc: Messaging Business Document

sBDoc: Synchronization Business Document

CDB: Consolidated Database

ADB: Application Database

The BW Adapter is called during nearly 100% of the time by the middleware messaging flow. Only in very rare situations does the Synchronization flow invoke the BW Adaper. In a manner similar to the function of the R/3 adapter (where the R/3 adapter converts a BDOC into a BAPIMTCS layout), the BW adapter converts the BDOC to a layout (structure) expected by the BW (now called BI) system.

Page 380: CRM Fundamentals- II

© SAP AG TCRM20 12-4

SAP AG 2008

CRM Extraction Framework: Delta Processing

BW Service API

Flow

BW Delta Queue (SMQ1)

Delta request

DB

CRM Application

Delta information

Middleware part of BW Adapter

Mapping part of BW AdapterBDOC

1. SAP Mapping (DataSource specific)

2. Optional CustomerEnhancements

DType

Extract structure

BW Adapter

Messaging FlowCRM Middleware

BDOC

An extract, structure is the

layout of fields in a format required

by BI (BW) .

A BADI can be implemented to look up additional fields not on

the BDOC yet needed by SAP BI.

For the R/3 adapter, the task was to convert a BDOC to the flat structure BAPIMTCS that could be placed in the outbound Queue an then sent to R/3.

Similarly the BW Adapter ( it should now be called the BI adapter) has the task of taking a BDOC and converting it to a structure that BI can utilize. This structure is called an Extract Structure.

The Extract structure (a collection of related business fields) plus the technical extraction methodology from a functional perspective is referred to as a BI data source. An example of a data source is CRM_OPPT_H

Since the same BDOC ( like BUS_TRANSACTION_MESSAGE) can be use to process many different documents (orders, quotes....) the Document type (Dtype) and the BDOC together are used to identify the appropriate BW Adapter meta data. This meta data consist of the Mapping logic between the BDOC and the appropriate BI data source (extract Structure.)

Step 2 shows the option of looking up additional fields during customer specific business add ins (BADIs).

The middleware flow calls the BW adapter, then the BW adapter writes to the Outbound Queue. The BI people call this queue the BW Delta Queue. (transaction RSA7) . The BW Delta Queue is just a BW specific program to that reads the outbound queue of CRM for just the BW data sources an no other queue entries. It also has the ability to show the data contained in the queue in a easy to read way.

One main difference between R/3 and BI when it comes to the Outbound Queue is that the Queue demon does not process the BI queues automatically. The data sits in the outbound queue (know to BI as the Delta Queue) until the BI team asks for the data via a BI object called a Info Package

Page 381: CRM Fundamentals- II

© SAP AG TCRM20 12-5

SAP AG 2008

BW Adapter (BWA) Basic Function

Messaging flow(simple intelligent)

BDOCs

SAPI

BWABDOCBDOC

SAP BW Extract structure

Out Bound Queue=

BW Delta Queue

PSA(Raw Data)

CRMCRM

SAP BI SYSTEM

BI Data Source

BI Cubes/DSOMaster Data

TRANSFORMATION

IMPORTANT TRANSACTIONSThe BW Adapter:

BWA1=(review Meta

Data)BWA5* =

Activation

BEx Querys

Definitions: Data Source ( A BI term for a collection of raw data fields that are related from a source system (CRM) and a technical means to extract these fields. The collection of fields is defined as an ABAP structure called a BW Extract structure. The PSA is a physical table on BI to temporarily store the raw data for efficient processing by BI and for data back up purposes.

- Example: The CRM data source 0CRM_SALES_ACT_1 includes an extract structure that will contain fields from the CRM activity ( Activity Partner, From and To dates, Reason Codes and about 50 other fields relating to CRM activities).

BI Transformations are mapping and cleansing rules for data in route form a RAW format (CRM BDOC fields) to a BI reporting target, for example a BI Cube. A BI cube is a multi dimensional collection of tables joined relationally to provide a robust and efficient object for queries.

The BW adapter (BWA, in the figure above) is called as a part of the messaging flow (99.9% ) of the time and only in rare cases called by the synchronization flow. Once activated, the BW adapter is tasked with converting the hierarchical BDOC object to the flat structure required by BI.

Page 382: CRM Fundamentals- II

© SAP AG TCRM20 12-6

The main reason for the BW adapter in CRM is to capture delta (change or new records) and prepare it to be retrieved by BI. As part of the processing the BW adapter checks to see delta is activated ( a BI function) for a specific set of data ( called a data source). If it is active then the records contained in the BDOC are written to the outbound queue using the name of the data source to uniquely identify it. To reduce confusion and hide unneeded data, the BI Delta Queue is a functional name given to the out bound QRFC queue. The data in this queue is not immediately sent to BI, but rather waits in the queue until a specific request is made for the delta data of a specific source, using an BI object called an InfoPackage. A special transaction, RSA7 is used BI the BI team to see the data in the queue (Outbound Queue) , identified as a BI datasource.

The ServiceAPI (SAPI) is a generic interface that processes the InfoPackage and coordinates data transfer to BI. The service API is installed as part of the “Plug in” software component and it is the same on both R/3 (SAPERP) or CRM.

The BWA1 Transaction allows the review of the meta data, used by the BW adapter (the mapping rules between the DataSource (extract structure) an the BDOC.) The BWA5 transaction is used to activate the BW Adapter functionality for a specific BI DataSource. It must be executed for each Business Content data source in addition to the standard RSA5 transaction currently use by your BW team. However, if BI content is activated using the normal tools included in BI, the CRM components (RSA5/BWA5) will be activate automatically.

Note: not all CRM to BI transfer is done via the BWA. In many cases, for low data volume data sources, the extraction process is exactly like that of R3 (SAP ERP), and the CRM specific BW adapter is not needed.

In CRM 5.0 an later activation via BWA5 is not necessary, it is performed automatically when the BI DataSource is activated.

Page 383: CRM Fundamentals- II

© SAP AG TCRM20 12-7

SAP AG 2008

The BW Adapter as a Part of the Messaging Flow

The CRM_UPLOAD_BW_SRV is the call for the BW adapter.

Check and Display Flow Definitions Transaction SM08FD

The in most cases the Messaging Flow is the part of the process that invokes the BW adapter. Remembering the information from the previous slid, the BW Adapter then converts the BDOC structure to a flat “extract structure” containing fields for a specific business purpose. This data is then written to the outbound queue.

Page 384: CRM Fundamentals- II

© SAP AG TCRM20 12-8

SAP AG 2008

The BW Adapter and Its Meta Data

Transaction BWA1

There is a different mapping logic executed by the BW adapter for each BW data source.

Selection Conditions Mapping Extract StructureMeta Data

BI (BW) Requires Extract Structure fields

Segment Name and Flds come from the

CRM BDOC

A BI Data Source is a BI specific object which defines a collection of fields to be extracted ( IE. An Extract Structure)

A small list of examples of BI Data Sources (each having their own extract structure) include:

0CRM_OPPT_H = Opportunity Header

0CRM_OPPT_I = Opportunity Items

0CRM_SRV_CONFIRM_H = Service Confirmations

0CRM_SALES_ACT_1 = Activities

The BW Adapter has the task to take a specific BDOC and Document, then select the appropriate Meta Data (In the above example 0CRM_OPPT_H) and execute the assigned mapping logic.

The data in the structure is then Written to the Out Bound Queue (known to BI people as the Delta Queue)

The instructor will explain that this is not the CR900 Analytics class focusing on BI and CRM. That said, the meta data for the BW adapter is automatically activated for use (for CRM 5.0 and after) when the associate BI data source is activated by the functional BI team.

Page 385: CRM Fundamentals- II

© SAP AG TCRM20 12-9

SAP AG 2008

BI Delta Queue (RSA7) VS the Outbound Queue (SMQ1)

When shown in the BI specific Delta Queue

transaction, the queues are shown without the *BW*

BI Delta (RSA7)

qRFC Monitor (Out Bound Queue = SMQ1)

The BI display icon shows the data in the Queue better than in

SMQ1

Data Source Specific BI Queues Begin with (BW)

Notice that the BI specific transaction RSA& shows just the BI related queues corresponding to the BI Data Source name, while the generic SMQ1 transaction shows all the queues even the ones headed R/3 or Mobile sites or other systems.

Both RSA7 and SMQ1 read the same QRFC tables.

One big difference is that the BW related queues are not processed automatically by the Queue Out demon. Rather the data is designed to stay in the out bound queue until the BW application team executes a BI Info Package.

Page 386: CRM Fundamentals- II

© SAP AG TCRM20 12-10

SAP AG 2008

Basic Project Tasks and Responsibilities CRM >> BI

STEP 1: Technical RFC connection Between BI an CRM

STEP 5: User /Power user/ Analyst Query Design and effective use.

STEP 2: Identification / Activation of BI Content, including CRM data sources and BWA objects

STEP 4: Nightly Extraction and Monitoring of BI loads and debugging problems..

C = CRM Application Person.B = BI Application Person. (BI Backend)

A = ABAPerF = BI/CRM Functional Analyst

N

N = Core Netweaver / Basis Prof.

F/BABCSTEP 3: Enhancement of CRM Data Sources and BI Objects

B/FB/F

In step one the basis person is responsible for making the appropriate RFC connections between BI and the sources systems including CRM.

Business Content Consists of : BI Queries, Cubes and data sources and in the case of CRM, the BW Adapter objects for BDoc Mapping. Additional BI content includes

Page 387: CRM Fundamentals- II

© SAP AG TCRM20 12-11

SAP AG 2008

BW Adapter: Unit Summary

You should now be able to:

Understand the purpose and echnology of the BW Adapter

Understand roles and responsibilities for typical projects involving BI and CRM.

Page 388: CRM Fundamentals- II

© SAP AG TCRM20 12-12

Page 389: CRM Fundamentals- II

© SAP AG TCRM20 12-13

Exercise(Optional)

Unit: BW Adapter Lesson: BW Adapter Overview

At the conclusion of this exercise, you will be able to:

• Understand the functional Purpose of the BW Adapter

• Review the Meta Data of the BW Adapter.

• Understand the Difference between transaction RSA7 and SMQ1.

Your company is using BI for CRM reporting. You have been asked to help the BI team extract data. Since some of the data sources for BI from CRM utilize the the BW adapter, rather than simple table or view reads, you need to better understand the functions of this adapter, as a part of CRM middleware.

The preparation for this exercise should be done by the instructor. They should save an activity, either via the older transaction CRMD_ORDER or via the new CRM 2007 WebUI . The activity should have the description “test” for the activity partner “300034”.

1. In the CRM system verify that the BI team has installed business content related to activities and as a result the meta data for the BW Adapter for data source 0CRM_SALES_ACT_1 has been activate..

Note: In version 5.0 and higher this is done behind the sceens by the BI team. They do not realize this extra step is done automatically to support extraction by the BW adapter. In contrast, this does not happen for data being sourced from R/3.

2. Review the mapping logic from the fields on the BDOC to the fields required by the BI team as part of the BI Data Source 0CRM_SALES_ACT_1.

3 Review the Activity sitting in the outbound queue. However instead of choosing the harder to use SMQ1 transaction. Use the BI specific RSA7 transaction.

Note: The BW system will most likely be called “XD0CLNT900” , or the instructor will tell you the name. Our BI system is NOT B3TCLNT800, but it is good to realize that each destination BI system (if you had more than one) would have it’s own queue to read.to extract CRM delta records. Also note that the records in this queue are not automatically send to BI they will accumulate until the BI team requests them by executing a BI Infopackage. This normally would happen about once per day.

Page 390: CRM Fundamentals- II

© SAP AG TCRM20 12-14

Page 391: CRM Fundamentals- II

© SAP AG TCRM20 12-15

Solution(Optional)

Unit: BW Adapter Lesson: BW Adapter Overview

The preparation for this exercise should be done by the instructor. They should save an activity, either via the older transaction CRMD_ORDER or via the new CRM 2007 WebUI . The activity should have the description “test” for the activity partner “300034”.

1. In the CRM system verify that the BI team has installed business content related to activities and as a result the meta data for the BW Adapter for data source 0CRM_SALES_ACT_1 has been activate..

In CRM access transaction BWA5. Scroll down to the data source: 0CRM_SALES_ACT_1, and verify that the “Active” check box is in fact checked. Note: In version 5.0 and higher this is done behind the sceens by the BI team. They

do not realize this extra step is done automatically to support extraction by the BW adapter. In contrast, this does not happen for data being sourced from R/3.

2. Review the mapping logic from the fields on the BDOC to the fields required by the BI team as part of the BI Data Source 0CRM_SALES_ACT_1.

In CRM access transaction BWA1..

Enter 0CRM_SALES_ACT_1 an press the “Display” button.

On the MetaData tab note the BDOC involved is BUS_TRANSACTION_MESSAGE.

Now select the “Mapping” tab to see how the fields from the BDOC are mapped to the fields on the BI Data Source’s Extract Structure.

Page 392: CRM Fundamentals- II

© SAP AG TCRM20 12-16

3 Review the Activity sitting in the outbound queue. However instead of choosing the harder to use SMQ1 transaction. Use the BI specific RSA7 transaction.

Note: The BW system will most likely be called “XD0CLNT900” , or the instructor will tell you the name. Our BI system is NOT B3TCLNT800, but it is good to realize that each destination BI system (if you had more than one) would have it’s own queue to read.to extract CRM delta records. Also note that the records in this queue are not automatically send to BI they will accumulate until the BI team requests them by executing a BI Infopackage. This normally would happen about once per day.

In CRM access transaction RSA7. Select the row 0CRM_SALES_ACT_1. for the BW system (most likely XD0CLNT900)

Now press the “Display Data Entries” and then press . The instructor’s activity should be on the BOTTOM of the list. Optionally try to use SMQ1 to review the data. It is harder to read!

Page 393: CRM Fundamentals- II

© SAP AG TCRM20 13-1

SAP AG 2008

CRM Middleware Operations

CRM Operations

Data Integrity Manager & Requests

Error Handling

Troubleshooting

Monitoring

Page 394: CRM Fundamentals- II

© SAP AG TCRM20 13-2

SAP AG 2008

Utilize Monitoring Tools

Set up Error handling Features

Understand the tools available to compare and sync objects across systems.

Troubleshoot errors.

At the conclusion of this unit, you will be able to:

CRM Middleware Operations: Unit Objectives

Page 395: CRM Fundamentals- II

© SAP AG TCRM20 13-3

SAP AG 2008

CRM Middleware: Monitoring

Data Exchange with R/3 Backend

Data Exchange with R/3 Backend

Data Integrity Manager & Requests

Error Handling

Troubleshooting

Monitoring

Page 396: CRM Fundamentals- II

© SAP AG TCRM20 13-4

SAP AG 2008

CRM Middleware Monitoring Cockpit

GenerationBDoc type: structures

BDoc type: other runtime objects

Replication objects

Publications

Generation of flow definitions

Runtime informationR/3 Adapter status information

BDocs in the flow

SMWP

The CRM Middleware Monitoring Cockpit provides status information and also serves as a navigation platform to access important administration and monitoring tools. Traffic lights indicate the status of the individual entries. The field in the right-hand column contains the date of each status determination.

The CRM Middleware Portal can be accessed through the menu: Middleware → Monitoring → Central Monitoring → Monitoring Cockpit (SMWP).

Prerequisites for running the Monitoring Cockpit:

The two background processes (checked in GoingLive Analysis session) have to be scheduled

- SMWP_BATCH: to update the displayed runtime information

- SMWP_GE_BATCH: to update the generation (= design time) information,

The reason for updating the runtime and design time information through two separate background processes is that the runtime information needs to be updated more frequently (maybe every hour) than the design time information (maybe once a day).

Page 397: CRM Fundamentals- II

© SAP AG TCRM20 13-5

SAP AG 2008

Display BDoc Messages

SMW01

Select a BDoc message

Display MW Trace

Display the classical part

Display the data part

Display the Errors

SMW01

Load & Request

Display Neighbours

Trouble-shooting

The function Display BDoc Messages lists all BDoc messages (transaction SMW01: Middleware → Monitoring → Message Flow). It displays: The BDoc ID and BDoc type, the BDoc state, the flow context, the queue name, the date and time when the BDoc message was sent.

The flow control trace, the data and error segments, the service in which the error occurred (last service reached), and the recipient list.

Successfully processed messages appear with a green light, those still in progress with a yellow light, and those with a terminal error condition appear with a red light.

If a message is in process and does not get processed within a reasonable amount of time, it is possible to restart the message, view the message content, or discard the message. A BDoc message may be processed in one of the following ways:

Mark as deleted (Note: deleting BDoc messages can cause data inconsistencies)

Retry processing

Page 398: CRM Fundamentals- II

© SAP AG TCRM20 13-6

SAP AG 2008

Bdoc Messages: Error Analysis

Display the Error

Segment

SMW01

Use transaction SMW01 to display the reason for an error in the BDoc processing. Select the BDoc, then you choose the errors button. Any errors within the middleware display. If the processing in the middleware did not result in an error nothing displays. In that case, you have to choose the button receivers, as the error occurred because the receiver had problems with processing the data.

To display only the BDocs that had errors: In the selection screen mark the flag BDOC state: Errors or choose a selection for each status E01, E02, E03, E04 or any combination thereof.

More information about BDoc error solving will be published in a Best Practice document. See also SAP Note 768503.

Page 399: CRM Fundamentals- II

© SAP AG TCRM20 13-7

SAP AG 2008

BDoc Recovery Framework (1)

SMW01

1

Mark BDoc

chooseDelete saving

IDs

BDoc Message recovery mechanism improves error handling: BDocs in Error status should be marked as „deleted“ to avoid re-processing that might lead to inconsistencies.

By marking the BDoc as deleted “saving its IDs” the object ID is added to the BDoc Recovery Work List which allows for further analysis in transaction SMW3RC.

Page 400: CRM Fundamentals- II

© SAP AG TCRM20 13-8

SAP AG 2008

BDoc Recovery Framework (2)

SMW3RC

Mark for Post

Mark for Request

Create DIMAInstance

Mark completed

Two main selection options are possible from SMW3RC: Displaying the work list and displaying the process list.

The work list is the list of BDoc messages which needs to be recovered. As soon as a BDoc message is deleted in SMW01 by saving the identifiers, it is stored into that work list.

This list can be analyzed by the administrator who must decide which operation is adequate for processing the data. Possible operations are:

Extracting the data from CRM (Post)

Create a Request from R/3

Create a DIMA comparison

Mark the BDoc message as completed

As soon as the administrator has selected the desired operation, the entries are removed from the work list and stored into the process list.

From the process list, it is possible to start the desired operation.

For mass processing of the process list use transaction SMW3RCW

Page 401: CRM Fundamentals- II

© SAP AG TCRM20 13-9

SAP AG 2008

qRFC Outbound Scheduler Monitoring

INACTIVE is the normal status

Check Last update to see if the outbound scheduler is running ok

Check whether the required destinations (e.g. for the R/3 system) are registered

SMQS

The outbound scheduler is usually not constantly working. Therefore, its status is usually shown as INACTIVE.

It only starts working if new entries are stored in the outbound queue.

To find out if it is running, check row Last update. To update the display, choose the Refresh button.

If the outbound scheduler is processing a quantity of qRFC-LUWs, its status shows as WAITING.

Note: Only registered queues can be processed. You can stop outbound processing by deregistering the RFC destination (for maintenance only).

Page 402: CRM Fundamentals- II

© SAP AG TCRM20 13-10

SAP AG 2008

qRFC Inbound Scheduler Monitoring

INACTIV is the normal status

Check Last update to see if the inbound scheduler is running ok

Check whether the required queue names (e.g. R3A*) are registered

SMQR

The inbound scheduler is configured based on queue names (which is different from the outbound scheduler SMQS which handles destinations). This means that if new queues are used, they have to be configured otherwise these entries will not be processed.

In SM59 there should exist an internal destination called NONE

(RFC connection type "I"). However, you cannot maintain a user here.

Furthermore in SM59 there should be for each queue (e.g. R3A*, CSA*, CRM*) a logical destination (RFC connection type "L"), which contains in field "Reference entry" the internal destination NONE. In the tab strip "Logon/Security" you can maintain the logon information for the CRM-internal RFC user (user type "Communications"). Later on the RFC requests are processed with this dedicated user. By using even several logical destinations as proposed above you can later distinguish by the user stamp from which queue a business document was created or changed.

Now you can register the corresponding inbound queues in SMQR (R3A*, CSA*, CRM*, and so on) per transaction SMQR. At registration the created logical destination is entered into the field USERDEST, and is afterwards visible in the column "Destination with LOGON data". This causes now that every inbound queue is processed with its specific logical destination (and therefore with a dedicated user).

Page 403: CRM Fundamentals- II

© SAP AG TCRM20 13-11

SAP AG 2008

Kernel

Outbound processing

BDoc type

+ +

=

Message Flow Statistics

Statistic monitor for BDoc types, sites and queues

SAP R/3 kernel application statistics

BDocBDoc

BDoc

BDoc

BDoc

Wait Time CPU Time Database Time

Inbound processing

Response Time

The message flow statistics are launched via: Middleware → Monitoring → Message Flow → Display Message Flow Statistics (SMWMFLOW).

To activate Message Flow Statistics, choose Goto → Activate Statistics. Here the Kernel application statistics and the Middleware message flow statistics can be individually activated. Additional information on how to active the monitors can be found in the SAP Library.

The time to process BDoc messages in the CRM Middleware can display using the Message Flow Statistics for BDoc types, sites, and queues. This monitor shows the total execution time for a BDoc message, which consists of the time it was waiting in an inbound queue plus the processing time. The processing time is the sum of the time the BDoc spent in the inbound adapter and in the two Flows. This monitor displays either the average execution time for all BDoc messages of one type or the execution time for only one single BDoc message.

The kernel application statistics provide the CPU time and the database time that was used to process all BDoc messages of a BDoc type. The response time includes the CPU time and the database time. Note that the database time also includes some CPU time, so that these two times not necessarily sum up to the response time (compare SAP Note 351207). It is also possible to display the executed times for the various services that were called with the selected BDoc type by selecting the Per service button.

The SAP R/3 kernel application statistic monitor requires definition of the standard CCMS batch jobs.

Page 404: CRM Fundamentals- II

© SAP AG TCRM20 13-12

SAP AG 2008

Middleware Trace

Display the details

Select the object

1

2

From Display BDoc Messages, you can access the middleware trace. An alternative menu path is to the middleware trace with additional information is: Middleware → Monitoring → Message Flow → Display Middleware Trace (SMWT).

You need to perform settings via Middleware → Monitoring → Message Flow → Set up Middleware Trace (SMWTAD) to use the function Display Middleware Trace (table SMOFPARSFA is no longer used for parameter settings of the Middleware Trace). Please see the SAP Library.

The Display BDoc Message Summary function lists the same BDocs as Display BDoc Messages but grouped according to site, message type (E, A, W, S, and I), and BDoc type.

An alternative menu path is to the Bdoc Message Summary is: Middleware → Monitoring → Message Flow → Display BDOC Message Summary (SMW02).

Page 405: CRM Fundamentals- II

© SAP AG TCRM20 13-13

SAP AG 2008

Unprocessed BDoc Messages

Display the total number of unprocessed BDoc messages, grouped by BDoc type and client. You can use thisinformation to check the systemstatus for monitoring purposes, or before you install a supportpackage.

SMW03

From the menu, choose Architecture and Technology → Middleware → Monitoring → Message Flow → Display Unprocessed BDoc Message Summary.

Page 406: CRM Fundamentals- II

© SAP AG TCRM20 13-14

SAP AG 2008

CRM SAP R/3

StatusInformation

DeltaLoad

Hints for an Error Analysis (Load Example)

Check Display BDoc Messages including the middleware trace informationCheck the outbound queueCheck the table BDOC_TRACK in the SAP R/3 SystemCheck the outbound queue of the SAP R/3 SystemCheck the inbound queue of the CRM System

Outbound Queue

Data Upload to Application

Inbound Queue

Outbound Queue

3

45

12

Possible error situation: A business object has been changed in a CRM Server Application, but the change (delta load) is not received in SAP R/3.

In case of errors or missing data updates in the target system, you may perform the following steps:

Check Display BDoc Messages including the middleware trace information

Check the outbound queue

Check the table BDOC_TRACK in SAP R/3 (shows information on the data handling of the SAP R/3 application)

Check the outbound queue of SAP R/3

Check the inbound queue of the CRM System

Furthermore, verify the RFC destination and the logical system assigned to your site (in the Admin Console) and the CRM Middleware parameter settings in the CRM System and SAP R/3 (for example, CRMRFCPAR).

More information about BDoc error solving will be published in a Best Practice document. See also SAP Note 768503.

Page 407: CRM Fundamentals- II

© SAP AG TCRM20 13-15

SAP AG 2008

Message Flow Monitoring: Task Sheet for Administrator

• Several times daily and upon errorSMQ1+SMQ2qRFC Monitoring

• Daily

• Upon error

SMWMFLOWMessage Flow Statistics

• Upon error

• After Bdoc changes or changes in services or flow

SMO8FDCheck Flow Definitions

• Several times daily depending on business process

• Upon error

SMW01/SMW02BDoc Messages/Summary

• Upon errorSMWTMiddleware Trace• Upon errorSMW03Summary of unprocessed

BDoc messages

• Several times daily depending on business process

• Upon error

SMWPMiddleware Monitoring Cockpit

Monitoring Frequency Periods and Events

Monitoring Type

CRM Server Monitoring Activities /Functions

Page 408: CRM Fundamentals- II

© SAP AG TCRM20 13-16

SAP AG 2008

CRM Middleware: Error Handling

CRM OperationsCRM Operations

Data Integrity Manager & Requests

Error Handling

Troubleshooting

Monitoring

Page 409: CRM Fundamentals- II

© SAP AG TCRM20 13-17

SAP AG 2008

CRM Database

InboundAdapter

InboundMessageFlow

CRM-Application

FlowContext

MI0

Validation Service 0001

Data Container

OutboundMessageFlow

FlowContext

MO1

Call Outbound Adapter 0002

mBDoc

Simple Replication Service 0001

Integration of the Central Error Handling Service

Services may return an error

status

CES

Central Error Handling Service

performs error actions

The central error handling service (CES) is started by Flow Control after receiving internal or external error conditions, for example, if a service returns the error code E.

Each service uses the CES for error handling. The information about the subsequent service is kept in the flow definition.

The central unit of all error information is the error segment, which is part of all BDoc messages and contains, for example, the:

Message type

Service return code

Last service

Depending on the error segment information, the CES starts CES actions. Possible CES Actions include Workflow, Mail.

Page 410: CRM Fundamentals- II

© SAP AG TCRM20 13-18

SAP AG 2008

Error Handling Strategy

ActionsDetectederrors

Undetectederrors

Preventionby regular monitoring

Messageto system

administrator

StandardSAP tools

Use ofprocessingmonitors

Automaticallygenerated

Computing Center

Management System

Exa

mpl

e

Communication log Download queues/objectsMessage flow monitorRFC log filesMonitor of queued RFC

General strategy: The modular architecture of the middleware server allows central error handling, where each service or adapter can return error messages or codes to the overall process control. Depending on these codes, different error actions can be triggered, leading to a resolution of the problem.

In addition, regular monitoring by the system administrator prevents or detects other error conditions.

In SAP Basis systems, to access the Computing Center Management System (CCMS), choose the menu path: Tools → Administration → Computing Center → Management System.

Page 411: CRM Fundamentals- II

© SAP AG TCRM20 13-19

SAP AG 2008

Error Handling: Flow Control

Service i

Error

Service i+1

No

Error HandlerYes

WorkflowEvent

Mail

Looks for possible error actionsFrom most specific level: BDoc type and last serviceTo least specific level: default action

Executes all actions found in first matching level in the order specified by preceding number

Error Actions

By definition, an error has occurred when a service returns an A or E in the field MSGTY of the standard interface parameter BAPIRET2 and there is no subsequent service specified in the flow definition for this particular situation.

WORKFLOW EVENT: A standard event is preconfigured and appears by default in the inbox of all CRM middleware users. When the event is executed, you can view the message and decide whether to:

Delete the message

Resume the message

Resume processing with the next service

MAIL: An e-mail message is sent to a specified user. This e-mail may contain the BDoc message and processing information.

Page 412: CRM Fundamentals- II

© SAP AG TCRM20 13-20

SAP AG 2008

Different assignment of error actions are possible:

Error Handling Configuration

SMW00 Standard Error Action (valid for all messages)

Error Action for a specific BDoc type (only valid for messages of this BDoc type)

Error Action for a specific Site type (only valid for messages of this site type)

Error Action for aborted messages (detected by the Watch-Dog-Program)

The following error actions are possible: Workflow Event; E-Mail.

Different assignments of error actions are possible:

Standard Error Action (valid for all messages)

Error Action for a Specific BDoc Type

Error Action for a Specific Site Type

Error Action for Aborted Messages

These four logical levels are used in reverse order to determine the error actions to be carried out. If no specific error action has been assigned to a message, the least specific action (this means the default action) starts.

You can choose the following actions for a message:

Workflow event: the start event SERVICEERROROCCURRED of object type MIDMESSAGE has been prepared (the end event is SERVICEERRORFINISHED). This event triggers a work item of standard task TS75110000 (MIDMESSAGE.ShowMessage). As the event is executed, you can view the message and decide on what to do with it (Deletion, Resubmission, Resume Processing with the next service).

E-mail function.

Use transaction SMW3WD to find aborted BDoc Messages.

Page 413: CRM Fundamentals- II

© SAP AG TCRM20 13-21

SAP AG 2008

Data Integrity Manager & Requests

CRM Operations

Data Integrity Manager & Requests

Error Handling

Troubleshooting

Monitoring

Page 414: CRM Fundamentals- II

© SAP AG TCRM20 13-22

SAP AG 2008

Data Consistency

CRM R/3

Data Integrity ManagerSynchronization of transactional data

RequestsFor data with no delta load capability

In certain cases, you need tools to correct data inconsistency, for example, after you have to reset one system (incomplete recovery). SAP provides tools to detect inconsistencies and repair inconsistencies.

The Data Integrity Manager is a tool within CRM (transaction SDIMA) and can be used to repair inconsistent customizing settings between CRM and the R/3 Backends.

The Request loads selected data from SAP R/3 System to the CRM database or from an CRM database to an R/3 system. Both are triggered on the CRM system with Transaction R3AR4. The request overwrites entries for customizing objects and business data. Therefore, it behaves like an initial load. The request filters complement the adapter object filters, by further narrowing the data load and therefore permitting more refined filtering. Requests are used to synchronize data with no delta load capability like customizing.

Page 415: CRM Fundamentals- II

© SAP AG TCRM20 13-23

SAP AG 2008

Cross-component data integrity

Functions at a glanceFramework for comparing and re-synchronizing databases

Comparison of business objectsAt object instance level

At field level

Synchronization of business objectsLoading of missing objects

Synchronization of object details

Enhanced: Data Integrity Manager

CRM Server

Re-synchronize

SAP R/3 Back End

Compare

With the Data Integrity Manager (DIMa), you can detect and repair inconsistencies between objects across components within the SAP CRM system landscape.

An SAP CRM system landscape usually consists of more than one database. Every SAP CRM system has a CRM database. In most cases, data exchange with one or more SAP R/3 back-end systems is necessary. A consolidated database is the basis for data exchange with mobile clients. It is very important to keep the objects in the different databases or datasets synchronized.

The Data Integrity Manager compares data in different components and displays inconsistencies. The data comparisons are always carried out for the CRM database and an R/3 back-end database, and the CRM database and the consolidated database.

For many objects, it is also possible to synchronize the data via the Data Integrity Manager.

There are two compare types available in the Data Integrity Manager: header compare and detail compare.

A header compare checks if an object instance exists in both databases.

A detail compare compares all data of an object instance found in both databases.

Some objects may not allow a header compare. The detail compare is then carried out.

Page 416: CRM Fundamentals- II

© SAP AG TCRM20 13-24

SAP AG 2008

Explicit Requests for Individual Data

With a Request, selected data can be downloaded from the R/3 backend to the CRM database (or vice versa).

R/3 SystemR3AR4

Start of a Request is similar to an initial load

CRM Server

CRM Middleware

R/3 DB

CRM DB

Requests may be started using the menu Middleware → Data Exchange → Synchronization → Start Requests (R3AR4).

The Request loads selected data from SAP R/3 to the CRM database or from an CRM database to R/3. Both are triggered on the CRM system with Transaction R3AR4. The request overwrites entries for customizing objects and business data. Therefore, it behaves like an initial load. The request filters complement the adapter object filters, by further narrowing the data load and permitting therefore more refined filtering.

The request filters are merged with the general Adapter Object filters.

Caution: General Adapter Object filters for the table fields are ignored during a Request, if the filters of that request are defined for the same table fields. The reason for this is that the extractors, that is, the modules that extract the data from the database, combine filters for the same table fields with an or statement. If the filter of a request is also combined with an or statement, the result would be the entire data volume of the initial load. Please keep this in mind, if you define filters for Requests.

Requests can also be scheduled using background jobs (report SMOF_REQUESTN).

With a dedicated request, the possibility exists to repair a BDoc error. Mark the faulty BDoc as deleted in Transaction SMW01 and start the request for the object (for example, BUPA_MAIN) with the special filter settings.

Caution: This workaround should only be used if the object has not been changed after the change you want to redo. Otherwise, data inconsistencies could occur. Check carefully with the application consultants before using this method!

Page 417: CRM Fundamentals- II

© SAP AG TCRM20 13-25

SAP AG 2008

Create Request

R3AR2

11

22

To create a new request, start transaction R3AR2. Switch to change mode and choose New Entries.

Enter a request name and the corresponding adapter object. Choose Enter to actualize the object class and the other attributes.

You can navigate to the maintenance of the selection criteria by double-clicking Request Detail. Choose New Entries and enter the table name and field name of the source table in sender system. Choose the value or the interval for the database selection.

Page 418: CRM Fundamentals- II

© SAP AG TCRM20 13-26

SAP AG 2008

qRFC: Request for Business Adapter Objects

R/3

R/3 Table

SpecificExtractor

CRMR3AR4: Start Request

R/3-Adapter

qRFC

qRFC

OutboundQueueR3AR*

InboundQueueR3AR*

CRS_FIRST_DOWNLOAD_TRIGGEROutboundQueueR3AR*

InboundMessageFlow

mBDoc

Registration in Inbound Scheduler(SMQR)

The naming convention for the queues of the qRFC is R3AR_<Business Adapter Object> (R3A: R/3 Adapter; R: Request) for explicit requests for individual data.

Page 419: CRM Fundamentals- II

© SAP AG TCRM20 13-27

SAP AG 2008

Troubleshooting Initial Load R/3 to CRM

CRM Operations

Initial Load from R/3 to CRM

Delta Load from R/3 to CRM

Load from CRM to R/3

Troubleshooting

Data Integrity Manager & Requests

Error Handling

Monitoring

Page 420: CRM Fundamentals- II

© SAP AG TCRM20 13-28

SAP AG 2008

Initial Load for Business Data: Monitoring

R/3

R/3 Tables

Specific Extractor

CRM

CRM Database

R3AS: Start Initial Loadfor BusinessAdapter Object

R/3 InboundAdapter

InboundMessageFlow

qRFC

qRFC

Validation ServiceCRM-Application

OutboundMessageFlow

mBDoc

In Download Monitor R3AM1

?

In BDoc Monitor SMW01?

All needed data available? (CRM Application or SE16)

The download Monitor r3am1 gives the status of the Initial Load of a Business object. The BDoc monitor smw01 gives the status of single BDoc messages. To find out which BDoc type is used for a Business object, check the object management (r3ac1, r3ac3 or r3ac5). You will find the corresponding BDoc in the details of a Business object.

To check if the data is complete, check the corresponding application transactions or tables where the data is stored.

Request and DIMa problems can be checked in the same way as Initial loads with a few exceptions:

The monitor is not r3am1 but r3ar3 for the request and contained in sdima for DIMa Instances

The queue names are different: R3AR* for Request and R3AH* or R3AT* for DIMa

Loads from CRM to CDB can be checked in the same way as loads from R/3 to CRM with a few exceptions:

Everything that has to be checked in R/3 for loads from R/3 should be checked in CRM instead

The queue name is is different, it starts with CRI or CDB

Usually, no specific destination is used but destination NONE

Page 421: CRM Fundamentals- II

© SAP AG TCRM20 13-29

SAP AG 2008

Load Has Not Been Started

R/3

R/3 Tables

Specific Extractor

CRM

CRM Database

R3AS: Start Initial Loadfor BusinessAdapter Object

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

OutboundMessageFlow

mBDoc

In Download Monitor R3AM1

qRFC

Parent Objectsmissing?

LoadProblem?

Check, if object has parent objects: Parent objects are stored in table SMOFOBJPAR and can be viewed in the object management (r3ac1, r3ac3 or r3ac5).

Check, if parent objects have been loaded successfully.

Check, if number of running Initial loads, Requests and DIMa Instances is higher than SMOFPARSFA parameter MAX_PARALLEL_PROCESSES.

Check the download monitor (r3am1), the request monitor (r3ar3) and DIMa (sdima). The corresponding tables are SMOFDSTAT, SMOFRSTAT and SDIMASTAT. All entries in those tables with status running have to be added to give the total number of processes.

If there are not enough free processes, the order in which the loads are started is as follows:

- start Initial loads for objects which do not have any parent object at all.

- Start Initial Loads for objects that have parent objects that have green status.

- Start Requests.

- Start DIMa instances.

Page 422: CRM Fundamentals- II

© SAP AG TCRM20 13-30

SAP AG 2008

Load Has Been Aborted

R/3

R/3 Tables

Specific Extractor

CRM

CRM Database

R3AS: Start Initial Loadfor BusinessAdapter Object

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

OutboundMessageFlow

mBDoc

In Download Monitor R3AM1

qRFC

Load has been aborted manually. Restart the Initial Load. Load has been aborted automatically. The Load of data from CRM to R/3 has not been successful, check as for Upload.

Aborting an Initial load:

If you need to abort an Initial Load, aborting the load in the download monitor r3am1 will not be sufficient. Follow these steps:

Abort the Initial Load in r3am1.

Check for the correct process in R/3 or CRM transaction sm50 and cancel it. Make sure that you cancel the correct process to avoid data loss. The user of the process should be the user maintained in the RFC destination in sm59.

Delete the queue entries in smq1 or smq2. There can be queue entries in both queues.

It is dangerous to delete Initial loads and you should be certain of what you are doing!

Page 423: CRM Fundamentals- II

© SAP AG TCRM20 13-31

SAP AG 2008

Load is running

R/3

R/3 Tables

Specific Extractor

CRM

CRM Database

R3AS: Start Initial Loadfor BusinessAdapter Object

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

OutboundMessageFlow

In Download Monitor R3AM1

OutboundQueue (SMQ1)

OutboundQueue (SMQ1)

Inbound Queue (SMQ2)

qRFC

Short Dump (ST22)

Check in the download monitor r3am1 if the number of blocks that have been processed increases. If so, the load is still running and you have to wait. If the blocknumber does not increase or even is “0”, check the following:

Has the data request reached SAP R/3?

Check for queue entries in CRM Outbound queue (smq1).

If the blocknumber in the Download Monitor r3am1 shows 0 blocks:

Check the destinations for R/3 (in CRM) in sm59.

Has the data been extracted in R/3?

Check for short dumps in st22 in R/3.

Has the data been sent to CRM?

Check for queue entries in qRFC Outbound queue (smq1)

If the blocknumber in the Download Monitor r3am1 shows 0 blocks:

Check the destinations for CRM (in R/3) in sm59

Check which consumer is used for the object in the object management

Check table CRMCONSUM in R/3 if the consumer is active

Check for the given consumer in table CRMRFCPAR in R/3 if an entry exists for the object

Has the data reached CRM?

Page 424: CRM Fundamentals- II

© SAP AG TCRM20 13-32

Check for queue entries in CRM Inbound queue (smq2) Check in the flow trace smw01 if there are Bdocs in error state

Check for short dumps in st22 in CRM

Table CRMRFCPAR:

Table CRMRFCPAR is valuated in the way that an entry for a specific object will always be taken if it exists. If no specific entry exists, an entry with objectname “*” will be taken. The same goes for the load type. If no entry exists, the Initial load will roll back to smq1 in CRM with a SYSFAIL, saying that no CRM is connected.

If the flag DISCARDDAT (dicard data, ignore data) is set to “X”, no data is sent.

Status of queue entries:

Queuenames for an Initial load start with R3AI.

If Queue entries exist in status READY, check smqs (for smq1) or smqr (for smq2) . If Queue entries exist in status SYSFAIL, analyse the error, correct it and restart the queue. SYSFAILS often are the cause of dumps. If you get a SYSFAIL in the outbound queue in CRM, check the R/3 system for dumps and vise versa.

If Queue entries exist in status RUNNING, wait for the Load to finish.

NEVER DELETE A QUEUE ENTRY MANUALLY

RFC Destination:

Check, if the RFC destination points to the correct system. If an Initial load is started in system A and selects data in system B and the RFC destination is called SYSTEMA but points to system C instead, the data will be send to system c where they are not processed. System A will never get an answer and the Load will remain in status running with 0 blocks loaded.

Page 425: CRM Fundamentals- II

© SAP AG TCRM20 13-33

SAP AG 2008

BDoc Error

R/3

R/3 Tables

Specific Extractor

CRM

CRM Database

R3AS: Start Initial Load

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

OutboundMessageFlow

mBDoc

In BDoc Monitor SMW01

qRFC

Validation Error?

TechnicalError?

Check in the BDoc Monitor smw01 if it is a technical error or a validation error. For technical errors, check if there are corresponding short dumps in st22.

For validation errors, check the error messages and correct the problem.

Note: Restarting an erroneous BDoc may cause data inconsistency if changes to the Business object have been done afterwards. If you are not sure if the Business object was changed in the meantime, compare the two objects and check which one is correct. Then define a Request for the Business object and start it. You can then set the erroneous Bdoc manually to completed. If you are sure that no changes have been made, you can restart the erroneous Bdoc.

Page 426: CRM Fundamentals- II

© SAP AG TCRM20 13-34

SAP AG 2008

Data Is Not Complete

R/3

R/3 Tables

Specific Extractor

CRM

CRM Database

R3AS: Start Initial Load

R/3 InboundAdapter

InboundMessageFlow

qRFC

CRM-Application

OutboundMessageFlow

mBDoc

In Download Monitor R3AM1

qRFC

Test with CRM Application or SE16

In BDocMonitor SMW01Validation

Service

Check Business Adapter Object (transaction R3AC1): Check the filter criteria: Is a filter condition reason for missing data? Check Tab ‘Tables / Structures in Object’ : is the flag ‘inactive’ marked for a needed table?

Check Middleware Trace (smwt) for messages

How do combined filters work?

If more than one filter condition is maintained, filters are combined so that filter conditions on the same field of the same table are combined using the logical OR while filters on different tables or fields are combined using the logical AND.

Example: Tablename Fieldname Operator Value KNA1 KUNNR EQ 0000012345 KNA1 KUNNR GE 0000020000 KNA1 BRSCH EQ ABC KNVV VKORG EQ 1000 This will result in all Business Partners of branch ABC and sales organization 1000 which have the customer numbers 0000012345 OR a number greater or equal to 0000020000.

Note: You cannot create filter conditions like ( Field A equal 1 and field B equal X ) OR ( Field A equal 3 and field B equal Y ).

Page 427: CRM Fundamentals- II

© SAP AG TCRM20 13-35

SAP AG 2008

Troubleshooting Delta Load from SAP R/3 to SAP CRM

CRM Operations

Initial Load from R/3 to CRM

Delta Load from R/3 to CRM

Load from CRM to R/3

Trouble Shooting

Data Integrity Manager & Requests

Error Handling

Monitoring

Page 428: CRM Fundamentals- II

© SAP AG TCRM20 13-36

SAP AG 2008

Delta Download: Check Customizing

R/3

R/3 Tables

Business TransactionEvent

CRM

CRM Database

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

mBDoc

Change BusinessData

BTEs for BC-MID active

(FIBF) ?

Delta Load per Object/Consum

er active in CRMFRCPAR

(SM30)?

Delta Loadactive (R3AC4)

CRM Consumeractive in

CRMCONSUM (SM30)?

Is the Delta Load active? Check, if the applications BC-MID and NDI are active in table TBE11 in R/3

Check, if the Events are active

- In CRM go to transaction r3ac4 and check for the events

- In R/3 check, if those events can be found in table TBE31

Event handling

In transaction r3ac4 all events are listed that are needed for the different objects. These events are automatically activated if an Initial load is started. You can use r3ac4 to manually activate or deactivate events. Events are client independent, therefor it is not possible, to deactivate the event if it shall be deactivated for one client in R/3. If you want to deactivate it completely, you have to do that manually. Deactivating an Event in r3ac4 leads to an entry in CRMRFCPAR that has the flag “Discard data” set to “X” and thus prevents the data from being sent to CRM.

Table CRMRFCPAR:

Table CRMRFCPAR is valuated in the way that an entry for a specific object will always be taken if it exists. If no specific entry exists, an entry with objectname “*” will be taken. The same goes for the load type. If no entry exists, no answer will be send.

Page 429: CRM Fundamentals- II

© SAP AG TCRM20 13-37

SAP AG 2008

Delta Download: Error Within SAP R/3

R/3

R/3 Tables

Business TransactionEvent

CRM

CRM Database

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

mBDoc

Change BusinessData

Entries in OutboundQueue (SMQ1)?

Initial Load still running?(R3AM1)

RFC Destination working?

OutboundQueue

registered? (SMQS)

Has the data been send to CRM? Check for queue entries in R/3 Outbound queue (smq1)

Check the destinations for CRM (in R/3) in sm59

Check table CRMCONSUM in R/3 for all active consumers

Check for all active consumers in table CRMRFCPAR in R/3 if an entry exists for the object

If the queue is stopped, check if an Initial Load or Request is running

Check the filter definitions

Status of queue entries:

If there is a STOP entry for a queue beginning with R3AD and a “*” at the end, this usually is set due to a running Initial Load or Request. These have to be finished before any Delta Load is allowed to be processed.

For more details about the structure of queue entries, refer top previous slide on load is running.

Where to check the filter definition:

You can check the filter definition in CRM in the object management (r3ac1, r3ac3 or r3ac5). Check, for which consumer the filter has been set. Check, if the consumer used in R/3 table CRMRFCPAR matches the consumer of the filter criteria.

Page 430: CRM Fundamentals- II

© SAP AG TCRM20 13-38

SAP AG 2008

Delta Download: Error in CRM (1)

R/3

R/3 Tables

Business TransactionEvent

CRM

CRM Database

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

mBDoc

Change BusinessData

Entries in Inbound Queue

(SMQ2)?

Initial Load still running?(R3AM1)

Inbound Queue registered?

(SMQR)

no entry in BDoc Monitor

(SMW01)?

Has the CRM received the data? Check for queue entries in CRM Inbound queue (smq2)

Check in the flow trace smw01 if there are error messages for the BDoc

Check for short dumps in st22 in CRM

If too much data gets to CRM

Check note 788822.

Implement all the notes referred to in that note

check all customizing settings described in that note.

Status of queue entries:

For more details about the structure of queue entries, refer top previous slide on load is running.

Page 431: CRM Fundamentals- II

© SAP AG TCRM20 13-39

SAP AG 2008

Delta Download: Error in CRM (2)

R/3

R/3 Tables

Business TransactionEvent

CRM

CRM Database

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

OutboundMessageFlow

mBDoc

Change BusinessData

NotificationService

in BDocMonitor

(SMW01)?

Validation Error?

TechnicalError?

Page 432: CRM Fundamentals- II

© SAP AG TCRM20 13-40

SAP AG 2008

Troubleshooting Load from CRM to R/3

CRM Operations

Initial Load from R/3 to CRM

Delta Load from R/3 to CRM

Load from CRM to R/3

Troubleshooting

Data Integrity Manager & Requests

Error Handling

Monitoring

Page 433: CRM Fundamentals- II

© SAP AG TCRM20 13-41

SAP AG 2008

No Data Replication to R/3 Site

CRM

OutboundMessage Flow

FlowContextMO1 + MOA

Call Outbound Adapter 0002

Simple Replication Service 0001

No Receivers in BDoc Monitor (SMW01)

InboundMessageFlow

Validation Service

R/3 Site deactive?

(AdminConsole)

Subscriptionmissing? (Admin

Console)

Is the R/3 site receiver of the data?

Does an R/3 site exist with the correct RFC Destination (check in smoeac)

Check, if there is a corresponding subscription for the object and the R/3 Site (smoeac)

Page 434: CRM Fundamentals- II

© SAP AG TCRM20 13-42

SAP AG 2008

No Data Replication to R/3 Site: Delta Load

CRM

CRM Database

CRM-Application

OutboundMessage Flow

FlowContextMO1 + MOA

CRMAdapter

qRFC

Inb QueueCSA*

Call Outbound Adapter 0002

Simple Replication Service 0001

mBDoc

in InboundQueue (SMQ2)?

Inbound Queue registered?

(SMQR)

The CRM Application creates data on database and creates an BDoc within one LUW. The BDoc is passed to the Outbound Flow via qRFC. The name convention for the Queue is CSA*.

For single data the Flow Context is MO1 and MOA. For multiple data MO2 and MOB.

Within these Flow Contexts the Replication Service is called to find out the subscribed receivers. For each Receiver the Outbound Adapter is called.

In our case the data is to be transferred to the R/3 System.

Page 435: CRM Fundamentals- II

© SAP AG TCRM20 13-43

SAP AG 2008

CRM

OutboundMessage Flow

FlowContextMO*

Call Outbound Adapter 0002

Simple Replication Service 0001

No Data Transfer

R/3

R/3 TablesR/3 OutboundAdapter

mBDoc

CRM_UPLOAD_TRIGGER

qRFC

mBDoc

Outb. QueueR3AU*

RFC Destination correct in R/3 Site? (Admin

Console)

RFC Destination correct (SM59)

RFC User locked or missing authorizations? (SU01)

in Outbound Queue(SMQS)?

Object SpecificFunction Module

In our case the data is to be transferred to the R/3 System. The R/3 Outbound Adapter is called to convert the BDoc into a BAPIMTCS datacontainer.

The BAPIMTCS datacontainer is transferred to the receiver via qRFC. The name convention for the Queue is R3AU*

Has the data been sent to R/3?

Check for queue entries in CRM Outbound queue

Check the destinations for R/3 (in CRM) in sm59

Page 436: CRM Fundamentals- II

© SAP AG TCRM20 13-44

SAP AG 2008

No Answer from R/3

R/3

R/3 Tables

Business TransactionEvent

CRM

CRM Database

R/3 InboundAdapter

InboundMessageFlow

qRFC

Validation ServiceCRM-Application

OutboundMessageFlow

mBDoc

Change BusinessData

NotificationService

in BDocMonitor

(SMW01)?

The BDoc monitor will shows if the R/3 has not sent an answer yet; the status will be “Send to receiver, not all have responded”. Check the receivers for errors.

Has the CRM received an answer?

Does the Delta load work – check as for Delta Loads

Check for queue entries in R/3 Outbound queue (smq1)

Check the destinations for CRM (in R/3) in sm59

Check table CRMCONSUM in R/3 for all active consumers

Check for all active consumers in table CRMRFCPAR in R/3 if an entry exists for the object

Check for queue entries in CRM Inbound queue (smq2)

Check in the flow trace smw01 if there are error messages for the BDoc

Check for short dumps in st22 in CRM

Page 437: CRM Fundamentals- II

© SAP AG TCRM20 13-45

SAP AG 2008

You are now able to:

CRM Middleware Operations: Unit Summary

Utilize Monitoring Tools

Set up Error handling Features

Understand the tools available to compare and sync objects across systems.

Troubleshoot errors.

Page 438: CRM Fundamentals- II

© SAP AG TCRM20 13-46

Page 439: CRM Fundamentals- II

© SAP AG TCRM20 13-47

Exercises

Unit: Middleware Operations

Topic: Monitoring of Data Loads

At the conclusion of this exercise, you will be able to:

• Track the progress of a data load.

• Understand the effect of the registration and deregistration of the RFC queues.

As an administrator you need to track the progress of data loads. You need to be able to know when and when not to reprocess filed BDOC messages, and be able to review queued records.

Preparation notes: Your Instructor has deregistered the inbound queue of the CRM server. The instructor used transaction SMQR and deregistered Queues R3AD* which will kill all R/3 to CRM delta. In addition, he/she has ensured the locking mechanism SE38 >> ZSENQON is on! In addition to this, there is some customizing in the CRM system that is not in ERP which will cause you more problems.

1-1 In the ERP system, change the P.O. Box number in the address data of your business partner with the name and search term GROUP##A to 23435 from 23434 in the SAP ERP system. Then save your entry and verify if the CRM system has received the change. Use Change mode in CRM, for exercise purposes only.

1-2 Because the inbound processing has not yet taken place, you may view the relevant inbound queue (open a new session). Try and find the data contained in a logical unit of work (LUW).

1-3 Activate the queue for your business partner manually. Did this cuase th eupdate to succeed?

1-4 Display the reason your update failed.

Page 440: CRM Fundamentals- II

© SAP AG TCRM20 13-48

1-5 Perform the action suggested by the error message and get out of the locking situation.

1-6 Try and reprocess your BDoc. Enter the copied BDoc ID number in the selection screen. Refresh the screen. What happens?

*************** STOP ****************** Let all students catch up to this point!

At this point remind the instructor that you are complete and that he/she should reregister R3AD* queues, using SMQR on CRM.

1-7 Change the business partner (Group##A)again , this time add the region ZZZ. Make this change from the CRM “BP” transaction in change mode. To make sure we do not have a locking issue back out of the transaction in VD02 in ERP.

1-8 Check whether the business partner now has a new region (ZZZ) in the ERP system. If it is not there, perform an extensive error tracking.

1-8-1 Check, if the business partner is updated with region ZZZ in the ERP system.

1-8-2 Check the inbound queue of the ERP system.

1-8-3 Check the outbound queue of the CRM system.

1-8-4 Check the BDoc message.

1-9 (OPTIONAL STEP) Now repeat the step above this time for the partner 4003## you created in the initial exercise, remember it did not make it to CRM. Why did it fail? ___________________________________________________

Middleware Operations

Page 441: CRM Fundamentals- II

© SAP AG TCRM20 13-49

Solutions

Unit: Middleware Operations

Topic: DIMA

Before this exercise starts, remind your instructor to load region ZZZ as a valid region for Country FR in the ERP system using the path SPRO>>> SAP Netweaver >> general settings >> Set countries >> insert regions.

2-1 Create a DIMA instance limited to the BP you created in step 1-7 in the prior exercise. Do a header then a detailed compare and then create a request to fix any discrepancy between the details of the BP in CRM vs. the Customer in the ERP system.

2-1-1 Create a DIMA instance filtering on your specific customer. Check, if the business partner is created in the ERP system. Use the information in the table below.

Field Name or Data Type Values

Dima Instance Group##

Dima Object Customer

Filter Mode C Dima Filter Only

Start Compare on Wizard Completion

“Check this box”

Filter Settings After adding a filter row:

Table KNA1

Field Name KUNNR

Option EQ

Low* 10 digit customer number from R/3 add leading zeros as needed. Use the number from your “Group## A” business partner.

0000__ __ ___ ___ ___ ___

2-1-2 Refresh the result to see the execution of your DIMA instance. And evaluate the status lights. You just performed a header compare.

2-1-3 Start a detailed compare.

Page 442: CRM Fundamentals- II

© SAP AG TCRM20 13-50

2-2 Create a Request designed to fix the ERP customer master (adding the ZZZ region). Execute the request to accomplish the fix. Note: You might need to ask the instructor to run job ZSENQOFF to allow group n access, to configuration tables.

2-2-1 Create the request using the information below:

Request Header Information:

Request name: CR500GR## Adapter Object: BUPA_MAIN Object Class: BUPA

Request Detail Table Name: BUT000 Field Name: PARTNER INCL/EXCL : I ( inclusive defined set / array) OPTION: EQ (equality) LOW: “YOUR BP NUMBER” (0000__ __ __ __ __ __)

2-2-2 Now start your request. Use the following.

Request Name: CR500GR## Source System: CRM (In caps) Target System: R/3 ( In caps)

2-2-3 Verify the ERP customer is updated with region “ZZZ”.

Page 443: CRM Fundamentals- II

© SAP AG TCRM20 13-51

Middleware Operations Solutions

Unit: Middleware Operations

Topic: Troubleshooting

Before this exercise starts, your instructor will “break the system”. It is your job to figure out why your newly created customer from the ERP system is not loading to CRM.

Note: You are not to fix the problem as it will be unfair to the other

students. In addition, please do not tell the other students what you find, just tell the instructor and they will congratulate you! You should also not change any configuration that will break anything else, again to be fair to

all.

Page 444: CRM Fundamentals- II

© SAP AG TCRM20 13-52

3-1 Create a customer in ERP. This time use account group 001 (sold to party) Create the customer with the external number 999## in Paris, FR. Use the search term and name “Group##C” in ERP as a copy of 301145 using the following data: This time you will assign the customer an external number, and you will use the account group 0001. You must also add tax classifications of “0” for DE and the US.

Field Name or Data Type Values

Account Group 0001 (sold to party)

Customer 999##

Sales Organization 3020

Distribution Channel 30

Division 00

***** REFERENCE ****

Customer 300045

Sales Organization 3020

Distribution Channel 30

Reference Division 00

******New information ****

City Paris

Country FR

Tax Classification DE 0

Tax Classification US 0

3-2 Verify that the customer 999## was created in CRM.

Did it make it to CRM? ___________

Page 445: CRM Fundamentals- II

© SAP AG TCRM20 13-53

3-3 Troubleshoot the problem. Below are some things to check. They are not necessarily in the correct order, but a great suggestion! We also suggest you access many of them by branching off the CRM Middleware monitoring cockpit.

.

3-3-1 Access the middleware monitoring cockpit, this will be your starting point for evaluation. Although the status lights might not be updated due to the fact that the jobs that update the status on the cockpit have different scheduled frequency, it is still a good place to start, as it will have links to many things you should check.

From SMWP, verify that the SAP_MW_COCKPIT_COLLECTOR_710 job is actually running every hr. Also check to see if your CRM system is linked to the ERP system. Verify the logical and RFC destination system is, in fact, the correct one.

3-3-2 Check the Queues in R/3 and CRM to see if they have not been processed.. Is your BP involved in a blocked queue?

3-3-3 Check for BDOC errors. Is your customer 999## involved in any BDOC message errors?

3-3-4 Investigate the filters assigned to the adapter object for materials from R/3. Make sure your implementation was not filtering out some objects so they are not transferred to CRM on purpose.. In order to do this you must first find out which adapter object is involved with the KNA1 table, this is the table that stores the customer data in R/3.

Note: At the end of the exercise (after all students have completed it) please remind the instructor to remove the filter they added to “break the system” or just set the inactive flag!

Page 446: CRM Fundamentals- II

© SAP AG TCRM20 13-54

Page 447: CRM Fundamentals- II

© SAP AG TCRM20 13-55

Solutions

Unit: Middleware Operations

Topic: Monitoring of Data Loads

Preparation notes: Your Instructor has deregistered the inbound queue of the CRM server. The instructor used transaction SMQR and deregistered Queues R3AD* which will kill all R/3 to CRM delta. In addition, he/she has ensured the locking mechanism SE38 >> ZSENQON is on! In addition to this, there is some customizing in the CRM system that is not in ERP which will cause you more problems.

1-1 In the ERP system, change the P.O. Box number in the address data of your business partner with the name and search term GROUP##A to 23435 from 23434 in the SAP ERP system. Then save your entry and verify if the CRM system has received the change.

Use transaction VD02 or this path in the ERP system:

Logistics → Sales and Distribution → Master Data → Business Partners → Customers → Change → Sales and Distribution

In CRM use transaction BP ( no path as this is the older CRM 5.0 GUI based transaction in CHANGE mode) :

Select the icon and then access change mode with the icon.

Even though you are just looking access change mode!

The change is not displayed because the inbound processing has been interrupted. The instructor has deactivated the standard RFC scheduler via

Architecture and Technology→ Middleware → Administration → Register/Deregister Queues

Do not register the inbound queue!

Page 448: CRM Fundamentals- II

© SAP AG TCRM20 13-56

1-2 Because the inbound processing has not yet taken place, you may view the relevant inbound queue (open a new session). Try and find the data contained in a logical unit of work (LUW).

Middleware → Monitoring → Queues → Display Inbound RFC Queues (transaction SMQ2)

The queue name is R3AD_CUSTOME0000xxxxxx (xxxxxx stands for your customer number). Queue names are controlled by the CRM Server Applications. Because the CRM Middleware has not processed the data yet, the conversion from the BAPI structures into a BDoc has not taken place.

To view the data, choose:

Middleware → Monitoring → Queues → Display Inbound RFC Queues (transaction SMQ2)

Select the queue line, choose Display selection, select the line and click Choose, choose Display LUW. The logical unit of work (LUW) contains the data in a BAPI structure. You’ll find your P.O. Box number by using the Find button. Enter your P.O. Box number with 3 blanks between the digits.

1-3 Activate the queue for your business partner manually.

Choose:

Middleware → Monitoring → Queues → Display Inbound RFC Queues (transaction SMQ2)

Select your queue R3AD_CUSTOME0000xxxxxx (xxxxxx stands for your customer number). Choose Display Selection. On the following screen press the Active queue button or press F6.

Check, if your entries have been processed by pressing the Refresh button. Check if your change can be displayed in the CRM system:

Master data → Business Partner → Maintain Business Partners (BP)

The data has not changed.

Page 449: CRM Fundamentals- II

© SAP AG TCRM20 13-57

1-4 Display the reason your update failed.

Middleware → Monitoring → Message Flow → Display BDoc Messages (SMW01)

Use your user id at the top of the screen and use the radio button( last hour for example) toreduce the list.

Identify the BDoc with the data of your business partner ( look at the queue name) ADS .In the Display BDoc Messages screen, select your BDoc and choose the icon.

Go back and check the BDoc for any error information. Copy the BDoc ID number for later use.

In the Display BDoc Messages screen, select your BDoc and choose Error (or Display Error Segments). Among some warnings you find the following error message: “Business Partner <customer number> is currently being processed by <your user name>.”

1-5 Perform the action suggested by the error message and get out of the locking situation.

In CRM transaction BP use the icon to leave the transaction. You do not need to save.

Page 450: CRM Fundamentals- II

© SAP AG TCRM20 13-58

1-6 Try and reprocess your BDoc. Enter the copied BDoc ID number in the selection screen. Refresh the screen. What happens?

Middleware → Monitoring → Message Flow → Display BDoc Messages (SMW01)

Select your BDoc in error status, go to BDoc message → Process → Reprocess to process or use the appropriate button Reprocess to process Message. Your BDoc, which had been in error status, now has a Confirmed status. The BDoc flow Validate caused the writing of the data to the CRM database. This change to the CRM database triggered a new BDoc flow (Notification), which in turn created a new messaging BDoc, which this time is destined for any receivers identified by the Replication Service (for example, a back-end system or the synchronization in case the mobile bridge for the BDoc type has been activated).

Check if the change is now displayed for your business partner. The change should be displayed now.

*************** STOP ****************** Let all students catch up to this point!

At this point remind the instructor that you are complete and that he/she should reregister R3AD* queues, using SMQR on CRM.

1-7 Change the business partner (Group##A)again , this time add the region ZZZ. Make this change from the CRM “BP” transaction in change mode. To make sure we do not have a locking issue back out of the transaction in VD02 in ERP.

Page 451: CRM Fundamentals- II

© SAP AG TCRM20 13-59

1-8 Check whether the business partner now has a new region (ZZZ) in the ERP system. If it is not there, perform an extensive error tracking.

1-8-1 Check, if the business partner is updated with region ZZZ in the ERP system.

To view the data, choose:

Logistics → Sales and Distribution → Master Data → Business Partners → Customers → Display → Sales and Distribution (transaction VD03)

The business partner has not been updated in the ERP System.

1-8-2 Check the inbound queue of the ERP system.

To view the data execute in the ERP system transaction SMQ2.

The inbound queue of the ERP system is empty.

1-8-3 Check the outbound queue of the CRM system.

To view the data, choose:

Middleware → Monitoring → Queues → Display Outbound RFC Queues (transaction SMQ1)

The outbound queue is empty.

Page 452: CRM Fundamentals- II

© SAP AG TCRM20 13-60

1-8-4 Check the BDoc message.

To view the data, choose:

Middleware → Monitoring → Message Flow → Display BDoc Messages (SMW01)

Identify the BDoc with the data of your business partner.

Select the BDocs of type BUPA_MAIN,. Both the Overview and Detail View show the BP number as part of the queue name.

Go back and check the BDoc for any error information.

In the Display BDoc Messages screen, select your BDoc and choose the

icon and then the icon in the errors.

The BDoc State is not processed. The error segment displays (select the icon in the Errors Column: The region ZZZ is not defined for country FR.

Note the other sites are for the Groupware adapter which in our system has not been 100% installed, so no response is generated, which normally ends in a “yellow” status.

1-9 (OPTIONAL STEP) Now repeat the step above this time for the partner 4003## you created in the initial exercise, remember it did not make it to CRM. Why did it fail? ___________________________________________________ It failed because the BP is already in CRM. It can not create two different Business Partners using the same number. This is a critical problem! Bad configuration of the number ranges in CRM Vs the ERP system can not be allowed. These number range mappings are set up via ERP transaction PIDE. We are not going to fix this problem in this class as it is a business issue that should not arise with proper configuration.

Middleware Operations

Page 453: CRM Fundamentals- II

© SAP AG TCRM20 13-61

Solutions

Unit: Middleware Operations

Topic: DIMA

Before this exercise starts, remind your instructor to load region ZZZ as a valid region for Country FR in the ERP system using the path SPRO>>> SAP Netweaver >> general settings >> Set countries >> insert regions.

2-1 Create a DIMA instance limited to the BP you created in step 1-7 in the prior exercise. Do a header then a detailed compare and then create a request to fix any discrepancy between the details of the BP in CRM vs. the Customer in the ERP system.

Page 454: CRM Fundamentals- II

© SAP AG TCRM20 13-62

2-1-1 Create a DIMA instance filtering on your specific customer. Check, if the business partner is created in the ERP system. Use the information in the table below.

Follow the CRM path: Architecture and Technology → Middleware → Data Exchange → Synchronization → Data Integrity Manager ( transaction SIMA)

Select the “New DIMa Instance” button:

Using the “continue” button on the bottom of the wizard, enter the information in the table below: When you get to the filter settings step you will need to select the + (insert row ) icon to add a filter.

When you are finished using the wizard, the last step of pressing “complete” will execute the DIMa.

Field Name or Data Type Values

Dima Instance Group##

Dima Object Customer

Filter Mode C Dima Filter Only

Start Compare on Wizard Completion

“Check this box”

Filter Settings After adding a filter row:

Table KNA1

Field Name KUNNR

Option EQ

Low* 10 digit customer number from R/3 add leading zeros as needed. Use the number from your “Group## A” business partner.

0000__ __ ___ ___ ___ ___

Page 455: CRM Fundamentals- II

© SAP AG TCRM20 13-63

2-1-2 Refresh the result to see the execution of your DIMA instance. And evaluate the status lights. You just performed a header compare.

After a minute or 2 click the Refresh Icon, and double click on the folder “one object exists in both systems”. Review the results in the right side of the screen that show the BP exists in BOTH CRM and ERP.

2-1-3 Start a detailed compare.

Select the row on the results table, and then follow the path DIMA >>> Start Detailed compare (or use the drop down box next to the compare icon). After a minute or two, click the refresh icon and then select the red status light.

Now scroll to the right on the revised results row and click on the check box for the messages. It should SAY ZZZ does not exist in R/3.

Page 456: CRM Fundamentals- II

© SAP AG TCRM20 13-64

2-2 Create a Request designed to fix the ERP customer master (adding the ZZZ region). Execute the request to accomplish the fix. Note: You might need to ask the instructor to run job ZSENQOFF to allow group n access, to configuration tables.

2-2-1 Create the request using the information below:

Request Header Information:

Request name: CR500GR## Adapter Object: BUPA_MAIN Object Class: BUPA

Request Detail Table Name: BUT000 Field Name: PARTNER INCL/EXCL : I ( inclusive defined set / array) OPTION: EQ (equality) LOW: “YOUR BP NUMBER” (0000__ __ __ __ __ __)

Follow path: Architecture and Technology→Middleware→Data Exchange `→Synchronization→Define Requests.

First select new entries and create the Header, then select the header and branch to the details. Save your request.

2-2-2 Now start your request. Use the following.

Request Name: CR500GR## Source System: CRM (In caps) Target System: R/3 ( In caps)

Follow path: Architecture and Technology→Middleware→Data Exchange →Synchronization→Start Requests.

2-2-3 Verify the ERP customer is updated with region “ZZZ”.

Either wait a minute or two and check your customer via ERP transaction VD03, or first use the path:Architecture and Technology→Middleware→Data Exchange `→Synchronization→Monitor Requests to see if it finished ok..

Page 457: CRM Fundamentals- II

© SAP AG TCRM20 13-65

Middleware Operations Solutions

Unit: Middleware Operations

Topic: Troubleshooting

Before this exercise starts, your instructor will “break the system”. It is your job to figure out why your newly created customer from the ERP system is not loading to CRM.

Note: You are not to fix the problem as it will be unfair to the other

students. In addition, please do not tell the other students what you find, just tell the instructor and they will congratulate you! You should also not change any configuration that will break anything else, again to be fair to

all.

Page 458: CRM Fundamentals- II

© SAP AG TCRM20 13-66

3-1 Create a customer in ERP. This time use account group 001 (sold to party) Create the customer with the external number 999## in Paris, FR. Use the search term and name “Group##C” in ERP as a copy of 301145 using the following data: This time you will assign the customer an external number, and you will use the account group 0001. You must also add tax classifications of “0” for DE and the US.

Field Name or Data Type Values

Account Group 0001 (sold to party)

Customer 999##

Sales Organization 3020

Distribution Channel 30

Division 00

***** REFERENCE ****

Customer 300045

Sales Organization 3020

Distribution Channel 30

Reference Division 00

******New information ****

City Paris

Country FR

Tax Classification DE 0

Tax Classification US 0

Transportation Zone F000010000 (Northern France)

Access transaction code VD01.

Enter the Data in the above table and choose , press again to respond to the warning about the fact that the Reference Account Group is not the same as the one you are now using.

Enter “Group##C” in both the Name and Search Term fields and the city of Paris and country of FR. Also add the transportation zone F000010000.

Save.

You may need to enter the tax staus of “1” for each country in the following screen.

Save.

Page 459: CRM Fundamentals- II

© SAP AG TCRM20 13-67

3-2 Verify that the customer 999## was created in CRM.

Did it make it to CRM? ___________

Access the older CRM5.0 transaction “BP” : Select the open icon and enter the customer # 999##.

The answer should be no, the 999## had a problem getting to the CRM system. It has been stuck somewhere. You need to figure out why in the remainder of this exercise.

Page 460: CRM Fundamentals- II

© SAP AG TCRM20 13-68

3-3 Troubleshoot the problem. Below are some things to check. They are not necessarily in the correct order, but a great suggestion! We also suggest you access many of them by branching off the CRM Middleware monitoring cockpit.

.

3-3-1 Access the middleware monitoring cockpit, this will be your starting point for evaluation. Although the status lights might not be updated due to the fact that the jobs that update the status on the cockpit have different scheduled frequency, it is still a good place to start, as it will have links to many things you should check.

From SMWP, verify that the SAP_MW_COCKPIT_COLLECTOR_710 job is actually running every hr. Also check to see if your CRM system is linked to the ERP system. Verify the logical and RFC destination system is, in fact, the correct one.

From the cockpit using the path: Architecture and Technology → Middleware → Monitoring→ Central Monitoring→Monitoring Cockpit (SMWP)

Verify that the initial view is SAP_ALL, if not change it to this view by using the drop down box at the top left of the screen. Note: By changing the view, you can focus in on one specific branch of full “SAP_ALL” monitoring tree. Save this view as your favorite view, so that it will be sure to come in the next time by selecting the “Set as Start View button”

Select the legend icon and review the meaning of the symbols on the monitoring cockpit. Verify that the job to update the status lights is running every hour: Open the branch called “Background Jobs” and double click the job “Collector for the monitoring Cockpit.” Now double click any run of the job executions in the overview screen. Now select the “start condition button” an the then the period values button. ??? Is the Frequency hourly? Yes!

Now find

Runtime Information→Adapter status information → Parameters In R/3 backends > R/3 →Parameters for Object load management

Now double click “Entries with RFC-Destination for the local CRM system” Note the table name of CRMRFCPAR and click “Display”. In this R/3 CRMRFCPAR table look for entry CRM to verify which CRM system is the user for this R/3 system (you might not notice you are no now in your ERP system!).

Page 461: CRM Fundamentals- II

© SAP AG TCRM20 13-69

3-3-2 Check the Queues in R/3 and CRM to see if they have not been processed. Is your BP involved in a blocked queue?

IN SMWP (the monitoring cockpit ), access Runtime Information →Data Exchange Using QRFC Queues → QRFC Queues in R/3 Backends →R/3 → Loads for CRM Server → now Double Blocked Queues (SMQ1 on the ERP system)

QRFC Queues in CRM server →Data Exchange with R/3 backend →Loads from R/3 back end → Blocked Queues (SMQ2 on CRM)

3-3-3 Check for BDOC errors. Is your customer 999## involved in any BDOC message errors?

Although the monitoring cockpit has direct links to the BDOC errors, using the path: Run Time Information → CRM Middleware BDOC message in the flow→ Status of Bdoc Messages( this accesses SMW02- BDOC Message Summary), it might be better to: Use SMW01, to access the details. Answer: NO

3-3-4 Investigate the filters assigned to the adapter object for materials from R/3. Make sure your implementation was not filtering out some objects so they are not transferred to CRM on purpose.. In order to do this you must first find out which adapter object is involved with the KNA1 table, this is the table that stores the customer data in R/3.

Check business adapter object. To find it use the Table SMOFTABLES and enter the R/3 customer master table KNA1 in the R3TABNAME field.

The adapter Object is CUSTOMER_MAIN.

Find this adapter object “CUSTOMER_MAIN” in Object Management via path Architecture and Technology→ Middleware → Data Exchange→ Object Management →Business Objects (transaction R3AC1). Review it settings. Is it active? Does it have any filters coming from the R/3 source. YES it does! “Your company= your crazy instructor” decided not to transfer Business Partners (TABLE KNA1 , field KUNNR) with the numbers between 0000099900 and 0000099950

Note: At the end of the exercise (after all students have completed it) please remind the instructor to remove the filter they added to “break the system” or just set the inactive flag!

Page 462: CRM Fundamentals- II

© SAP AG TCRM20 13-70

Page 463: CRM Fundamentals- II

© SAP AG TCRM20 14-1

SAP AG 2008

The Groupware Adapter Overview)

Groupware AdapterOverview of the Groupware Adapter

Moving contacts and Appointments between groupware an CRM is the purpose of the groupware adapter.

Page 464: CRM Fundamentals- II

© SAP AG TCRM20 14-2

SAP AG 2008

The Groupware Adapter: Unit Objectives

At the conclusion of this unit, you will be able to:

Understand the purpose and basic technology of the Groupware Adapter.

Note: This unit should just be treated as an exposure/ overview, the appendix contains more detailed information to be used when thisfunctionality is being implemented. It will not be included as part of the certification test.

Page 465: CRM Fundamentals- II

© SAP AG TCRM20 14-3

SAP AG 2008

Landscape for Groupware Adapter

CRM Server

GroupwareServer

XMLBD ocMessage

CRM Middleware

SAP NetWeaver Application Server

MessageConversion

SAP MapBox

SAPGroupwareConnector/

SAPGroupwareConnectorProxy XML

Vcard/iCalendar

Groupware Adapter

BusinessPartners

BDocMessage

Activities

Data such as business partners and activities can be exchanged between SAP CRM and the Groupware solution in both directions. The business partners and activities are provided to Groupware users as contacts and tasks or appointments and vice versa.

The following diagram illustrates the data flow in Groupware integration: -

• The data Exchange between CRM and Groupware is performed via a Groupware Adapter and Groupware Connector. The Groupware adapter is called as part of messaging flow of CRM Middleware. On subsequent slides each component will be discussed in a little more detail.

Page 466: CRM Fundamentals- II

© SAP AG TCRM20 14-4

Various notes that are related to the Groupware adapter:

General Groupware integration

Note Number Short Description

1071992ABAP MapBox Fixes for CRM 5.0 SP09

1096187Fixes for CatsList.xml - ABAP MapBox

1096928ABAP MapBox Fixes for CRM 5.0

1097065CRM ABAP MapBox changes to 5.2

SAP Groupware connector notes

843407Installation Guide

957409Groupware Exchange Connector Troubleshooting Guide

959294Groupware Adapter Customizing and User Guide. This SAP Note describes the Customizing settings for the Java-based MapBox. You can also use it for settings in the ABAP-based MapBox, because the only difference is the way in which the data is saved.

Page 467: CRM Fundamentals- II

© SAP AG TCRM20 14-5

SAP AG 2008

Integration Architecture: Groupware Adapter.

Groupware Integration Architecture

SAPMapBox

CRM Applications

GroupwareAdapter

CRM Middleware

CRM Server

DCOM/RMI

Ms Exchange Server

orLotus Domino

Server

SAPGroupwareConnector

SAP NetWeaverApplication Server

GroupwareServer (s)

GroupwareServer (s)

ConnectorProxy

SOAPVia

HTTP

GroupwareNative API

ConnectorProxy

Groupware Adapter: The Groupware Adapter on the CRM server supports the conversion of messages. It is based on the SyncPoint technology. BDoc messages are converted to standard Groupware formats (iCalendar and vCard). A mapping framework is used here, the MapBox and the payload interface (SOAP-based messaging interface for the exchange of data between the CRM server and the Groupware Connector). iCalendar and vCard are the Internet standards for the display of Groupware calendar objects and contacts. Predefined mappings are delivered for Groupware integration.

The V Card or I calendar XML data is sent from the mapbox via the internet standard HTTP protocol, as a SOAP message. The Groupware connector provides a response that the item was or was not processed.

It is the job of the Exchange server (Lotus Domino or MS Exchange) to communicate the new contacts or activities to the employee the next time they log in. The process also works in reverse.

Page 468: CRM Fundamentals- II

© SAP AG TCRM20 14-6

SAP AG 2008

Integration Architecture: MapBox and SAP Groupware Connector.

SAP Groupware Connector:

Executes message synchronization between the CRM server and the Groupware server.

Syncs calendar and contact information bylinking to the specific Groupware server(Lotus or MS Exchange) using the communication technology and API provided by each vendor. Downloaded from Service marketplace.

MapBox:

Converts the XML BDOC format to the more standard ICalendar and VCard XML formats.

Now delivered as an ABAP Based program. As part of the Netweaver Application Server.

SAPMapBox

CRM Applications

GroupwareAdapter

CRM Middleware

CRM Server

DCOM/RMI

Ms Exchange Server

orLotus Domino

Server

SAPGroupwareConnector

SAP NetWeaverApplication Server

GroupwareServer (s)

GroupwareServer (s)

ConnectorProxy

SOAPVia

HTTP

GroupwareNative API

ConnectorProxy

For CRM 5.0 after Patch 09 you must make a setting to use the ABAP version of the Mapbox VS the Java Version:

The below steps may already be done in a later patch levels of CRM6.0, but check to make sure.

Step 1.) Go to Transaction SM30.

Step 2.) Enter the View name as ISPCFG as below:

Step 3.) Click on New Entries.

Enter the value “CRM_MAPBOX” in Parameter name and

“X” in Parameter Value. *Note: Do NOT delete the other entry in the ISPCFG Table

In addition if you want to log the MapBox functions in the Application Log (trans SLG1) , you need add an “X” to the “parameter value” 2 field. To review the logs entries generated by the mapbox, access SLG1 and enter CMW_MBX in the Object field, then execute.

Page 469: CRM Fundamentals- II

© SAP AG TCRM20 14-7

SAP AG 2008

Groupware Adapter Set up I: Sites in Admin Console

1) Groupware Adapter 01 (mBDoc)

This site enables exchange of Activities and Tasks between CRM Activity Management / Workforce Management and groupware.In addition, it enables bidirectional exchange of business partner master data with the public contact folder of Groupware.

2) Groupware Adapter 02 (sBDoc)

This site enables the transfer of business partner data into the private folder of each Groupware user

Note: These sites are maintained in the CRM training server.

You must create sites for the groupware adapter using site types below:

Procedure:

1. Log on to the CRM server and choose Architecture and Technology → Middleware → Administration → Administration Console (Transaction SMOEAC).

The Administration Console: Object Navigator screen appears.

2. Select Site from the Object Type drop-down list.

3. Choose Object → Create from the application menu or the corresponding symbol from the application toolbar.

The Administration Console: Add Site screen appears.

4. Under Object Information: Site, enter the following details:

- Field name Description Req./Opt./Dep. User action and values

- Name Indicates the name of the site Req. Enter a name for the site.

- Description Specifies the description of the site Opt. Enter a description for the site.

- Type Indicates the site type Req. Select the Groupware Adapter 01 (mBDoc) site type from the drop-down list.

5. Save the site.

6. To create the site based on Groupware Adapter 02 (sBDoc) site type, repeat steps 3 to 5. However, in step 4, select the Groupware Adapter 02 (sBDoc) site type.

Page 470: CRM Fundamentals- II

© SAP AG TCRM20 14-8

SAP AG 2008

Groupware Adapter Set up II: Req. Subscriptions

Subscription Publication Groupware Adapter Customizing (MESG) Groupware Adapter Customizing (MESG) Groupware Adapter Messages (by object = GWA_APPLN_MSG) (MESG) Segment Name = GWA_MSG_CLASSIC Segment Field Name = ARBGB Operator = EQ Criteria Type = D Criteria Value Low = GWA_APPLN_MSG

Groupware Adapter - Generic Messages (by object) (MESG)

Groupware Adapter Metadata for all BDoc Types (MESG)

Groupware Adapter Metadata for all BDoc Types (MESG)

Groupware Object Master Category List (MESG)

Groupware Object Master Category List (MESG)

Groupware Object Selection Filter Fields and Values (MESG)

Groupware Object Selection Filter Fields and Values (MESG)

All Business Partners (MESG) All Business Partners (MESG) All Business Transactions (MESG) All Business Transactions (MESG) Create the following subscriptions only if the workforce management application is used in Groupware integration: WFM Groupware Integration Customizing (MESG)

WFM Groupware Integration Customizing (MESG)

WFM Groupware Integration (MESG) WFM Groupware Integration (MESG)

The publications listed above are displayed in the training server for the CR500 class.

Page 471: CRM Fundamentals- II

© SAP AG TCRM20 14-9

SAP AG 2008

Groupware Adapter Set up III: Initial Processing

1. Preparing for Customizing Download

2. Customizing Data download to the MapBox Repository.

3. Loading Business Partners to the MapBox Repository.

4. Public Folder Contact Synchronization

5. Private Contact Folder Synchronization

6. Activity Synchronization from CRM to Groupware

NOTE:

The steps identified above are beyond scope and the time period allowed for this class. A step- by step guide is attached in the appendix of CR500. The detail in this appendix is not part of the certification test.

To implement groupware successfully many steps are needed:

The mapbox must take the key of information in the BDOC (example country 01) and pass the text for this to the VCARD XML output. This requires a lot of information about the customizing and metadata of activities and customers.

Another major prereq is E-mail address maintenance. All the Business partners in CRM that take part in Groupware Integration and will be part of the business activity must have a valid SMTP e-mail address maintained in the “Address Dependent Communication Section” of the CRM Business Partner Online Application (Master Data).

Business partners are synchronized as contacts to the Public contact folder or Private mailbox contact folder irrespective of whether an e-mail address is maintained in the Business Partner Master Data or not.

But for integration with Activity Management to work, the partners who wish to have their Business Activities in CRM synchronized to Groupware as an appointment or task must have a valid e-mail address maintained in the Business Partner Master Data

Make sure no two Business Partners have the same e-mail address in the “Address Dependent Communication Section” of the BP.

“e-mail address” must be maintained in the Relationship screen of the contact person, and also in the Master Data, that is, in the section “Address Dependent Communication” under “General or Private Data” of the BP.

Page 472: CRM Fundamentals- II

© SAP AG TCRM20 14-10

SAP AG 2008

Groupware Adapter: Unit Summary

You should now be able to:

Understand the purpose and basic architecture of the Groupware Adapter.


Recommended