CRM Middleware
CRM Middleware
CRM Middleware
1 2
PrepareMe TellMe
3
ShowMe
LetMe HelpMe
5
India SAP CoE, Slide 2
CRM Middleware
1 2
PrepareMe TellMe
3
ShowMe
LetMe HelpMe
5
India SAP CoE, Slide 3
PrepareMe
Purpose
CRM Middleware links together the various heterogeneous systems (mobile clients, R/3 back-end systems, BW, etc.) within a CRM landscape, and provides all components with the necessary information CRM middleware is scalable and can easily be configured to grow with your companys needs. Data is exchanged between the CRM system and the connected R/3 System or any third party system primarily via the CRM Middleware. This can be realized through adapters
Use
SAP- CRM Middleware is used exchange data between the CRM system, mobile clients, connected R/3 System or any third party system Its main functionalities are:
Data Queuing and Transport Replication and re-alignment Data Exchange and Mapping
Challenges
Troubleshooting Errors Any enhancement to the standard SAP objects
CRM Middleware
1 2
PrepareMe TellMe
3
ShowMe
LetMe HelpMe
5
India SAP CoE, Slide 8
TellMe
Overview Concepts Tools Others
Overview
CRM-Middleware Landscape CRM Middleware Architecture
CRM-Middleware
CRM Middleware links together various types of data producers within a CRM landscape.
It is the component responsible for replication, synchronization and distribution of data objects between the CRM application and other back-end systems.
Landscape
000
Requires
No additional software No extra installation No extra server
Benefits
Significantly reduces integration costs
CRM Database
Concepts
Data Exchange Site Type Concept Initial download Adapter Objects Delta Load Synchronization load Request load BDocs Replication and Re-alignment Publication-Replication Concept CDB (Consolidated Database)
Data Exchange
Data exchange between SAP CRM and SAP R/3 back end or Third Party systems or Mobile Clients take place primarily via the CRM Middleware
SAP CRM & SAP Back End systems: A plug-in is installed in R/3 end which acts as the equivalent of R/3 adapter in the CRM side. Third Party systems: The data exchange is done through XIF (External Interface) adapters, either in the form of XML documents or in the form of IDOCs.
Mobile Clients: The mobile clients are connected to the CRM server via communication station.
Site A
Site B
Site C
Site D
Site E
Mobile Clients
R/3 Backend
Initial download
CRM being the Lead System, all data coming inside the CRM system is considered as download. Through initial load Business and customizing data can be downloaded. Initial load can be done from the R/3 Back-End to the CRM Database, from the CRM Database to the CDB, from the CRM Database to external site Transaction: R3AS
R/3
CRS_FIRST_DOWNLOAD_TRIGGER qRFC
BAPIMTCS
qRFC
Generic Extractor
CRM Table
R/3
CRS_FIRST_DOWNLOAD_TRIGGER qRFC
BAPIMTCS
qRFC
Specific Extractor
CRM Database
Source Site
Filter Option
Filter Criteria
Delta Load
The delta download and upload is used to keep the business data and the master data in the CRM, the R/3 system, and the CDB in sync during normal operation. Delta load is applicable only for business data and not for customizing data. Manual de-activation of Delta Loads is possible via the transaction R3AC4. For this, in the CRM Server for each object class there are two groups of queues which control the data transfer.
Via the queue group for the initial data download (R3AI*), the initial data is provided for the CRM Server from the R/3 backend. In the queue group for the delta data synchronization (R3AD*) change information is collected for the initial data.
During an initial data transfer the delta queues are suspended for each business object. Once the initial data transfer is complete, the delta queues are released again and the change information forwarded to the CRM Server.
Synchronization Download
This type of download is used for customizing data and is only possible between CRM and an R/3 based OLTP system. In contrast to the delta download for business objects, customizing data is not downloaded automatically. Instead, the synchronization download has to be started manually or should be scheduled for fixed time intervals (e.g. weekly or monthly) in a productive system. The queue name for these queues starts with R3AI* and can be monitored in the monitor for initial download.
Request Download
Data request can be done in 3 steps 1. Defining request
a. We can define data requests from an R/3 backend or from the CRM database. b. The filter criteria defined for the initial data transfer from R/3 are taken into account automatically in requests. c. Transaction: R3AR2
2.
Start request
a. This function allows you to request defined data from a source site and transfer it to a target site. b. Transaction: R3AR4
3.
Monitor request
a. Here we can analyze or stop data requests to the R/3 back-end. b. Transaction: R3AR3
BDocs
BDoc Introduction BDoc Classes- Overview sBDoc (Synchronization BDoc) mBDoc (Messaging BDoc)
CRM Server
CRM Server
BDoc David
BDocs acts as a process container for processing Business objects and for transporting them as one unit instead of having to process/transport several individual table entries.
BDoc instance
Customer BDoc David NAME1 = David NAME2 = Boon KUNNR = 60078 ( All fields ) Also: insert or delete
BDoc message
Customer BDoc David . Task = update Fields CITY1 = New York , Street = 1 Broadway (Contains only modified fields)
BDocs Type: This is a structure that needs to be defined to each Business object. BDoc Instance: The BDoc type with all the required fields. BDoc message: This contains modified fields only. It also includes deleted fields. There will be one BDoc instance for a Business Object, but there can be multiple BDoc messages (with their own Ids) for one BDoc instance.
India SAP CoE, Slide 26
CRM Server
Synchronization Layer
SAP BW
Messaging Layer
The Messaging Layer uses messaging BDocs for data exchanges with CRM Server Applications, R/3 Back-ends and external System. The synchronization layer exchanges data with mobile clients and uses synchronization BDocs.
No exchange with Mobile Clients. Not stored in CDB No mapping between segments and database tables. Transport entire instances (gross data) to CRM server application
Used by the mobile sales/service application on the mobile client to query data from database.
BUS_E1_MAIN
Extension
This is optional structure. To be modeled with DDIC
sBDoc structure
Error segment
Data segment Data segment Business Partner Address
Replication Model is created in the Administration Console. In Administration Console we define the sites for data replication
Objects to define a Replication Model are:
Replication Object Publication Subscription
Publication-Replication Concept
Publication Subscription
Publication
Publications are defined as data containers in which data is grouped together logically. Replication object can be assigned to a publication. You define publications in order to make them available to subscriptions. You can use these to subscribe to sites (data sets) for the predefined publications and you can state concrete values for the criteria fields. You can only change publications of the type Unfiltered (bulk) and Simple unfiltered. There are different types Of Publication
Intelligent Simple Intelligent (SYNC) Bulk Simple Bulk (MSEG) Simple Intelligent (MSEG)
Publication
Publication Type List of Replication object included in the publication
Subscription
Subscriptions are assignments of sites to previously defined publications. They are created and maintained by the system administrator. Only when subscriptions have been made for a site is data made available to this site. You can determine the distribution of data to the current sites by creating subscriptions. For this reason you have to subscribe to a publication, and then you can assign one or more sites to the subscription.
Subscription
Creating Subscription
Choose Object Create Choose Continue and in the following screen enter the name of the new subscription, as well as the publication to which you want to subscribe
Choose Continue. You now have to establish criteria values for your subscription in the case of intelligent and simple intelligent publications.
To do so, enter a low value for each criteria field and also a high value if the operator requires a value range.
Table xyz
A B C
Table SMOxyz
A B C
CDB
Tools
Administration Console DIMA BDoc Modeler MW Cockpit Queue monitor Middleware Trace
Administration Console
It is used for administering sites and mobile users, as well as for administering and configuring data distribution Administration console supports the creation, change and deletion of R/3 sites The entries for jobs to extract data from BDoc types of the type bulk in EXTRACTBLK which is one of the replication and realignment queues are created by the Administration Console Transaction: SMOEAC
BDoc Modeler
The BDoc Modeler is a tool used for displaying, creating and enhancing BDoc types and these BDoc types are further stored and administered in the CRM Middleware Repository The hierarchical segment structure is modeled with the BDoc Modeler Transaction: SBDM
Monitoring Cockpit
The Monitoring Cockpit provides you with status information and also serves as a navigation platform to access important administration and monitoring tools The Monitoring Cockpit provides an alert monitor for CRM Middleware. Transaction: SMWP
Queue monitor
There are various queues within CRM Middleware which can be displayed and monitored. Following are the different queues
Mobile Site queue Outbound queues Inbound queues Replication & Realignment (R&R) queues
Queue Scheduler:
QIN Scheduler (Trans: SMQR) - The processing of all inbound queues is scheduled by the QIN Scheduler. You can use this scheduler to register, deregister, activate, or deactivate your queues. QOUT Scheduler (Trans: SMQS) This is implemented to improve performance when sending qRFC and tRFC messages.
Queue monitor
Site queue: With this function you can display all the mobile sites defined in the CRM System
together with the queue assigned to each of these sites. For eg. if we want to know which queue is assigned to a specific site, if we want to check if this queue has been registered for the qRFC scheduler and when data was last entered into this queue. Transaction: SMWMQUEUES
Queue monitor
Outbound queues: Transaction-SMQ1
Description
Start queues for loads CRM -> CDB Load queues for Mobile Clients Send queues of CRM Server Applications Start queues for loads CRM -> Ext.
R3AI/R*
R3AU*
Queue monitor
Inbound queues: Transaction-SMQ2
Description
Initial load queues CRM -> CDB Load queues from Mobile Clients Load queues ERP Backend -> CRM Send inbound queues of CRM Server Applications
Queue monitor
Replication & Realignment (R&R) queues: Monitors the replication and
realignment queues for the clients of the CRM System. To call up this function in your SAP Easy Access user menu choose Architecture and Technology Middleware Monitoring Queues Monitor R&R Queues. Transaction: SMOHQUEUE
Middleware trace
The Middleware Trace Monitor is a tool to record events and display the recorded information. Depending on the data we want to display, we can specify different trace levels. To get a higher granularity of the trace data, you can also choose between several trace environments
Others
XIF Adapter Groupware Adapter
XIF Adapter
Data is exchanged between the CRM System and a connected third-party system primarily via the CRM Middleware. The connectivity is realized through the XIF (external Interface) Adapter. The XIF Adapter transfers data from and to the external system, usually with XML documents via HTTP (s). The external interface adapter (XIF adapter) provides:
Services in the CRM Server Messaging Flow Bulk-message capable IDoc and XML interfaces for external systems.
CRM
XIF Adapter
XML file
External Systems
Groupware Adapter
An enhancement to the CRM Middleware provides a framework that seamlessly integrates mySAP CRM with the Microsoft Exchange or Lotus Domino groupware server. This capability allows users of groupware solutions to access tasks and business partners that have been created by an application of the mySAP CRM solution. This CRM groupware integration will also include Workforce Management.
Business Scenarios
Account Management Activity Management Workforce Management
Groupware Adapter
The Groupware Adapter on the CRM server supports the conversion of messages. BDoc messages are converted to standard Groupware formats (iCalendar and vCard). iCalendar and vCard are the Internet standards for the display of Groupware calendar objects and contacts
CRM Server
CRM Middleware
Groupware Server
d SAP
Groupware Connector
Groupware Adapter
CRM Server
MapBox
_____ ____ ____
------------------
Message Transformation
BDOC Message
XML Vcard/ICalendar
CRM Middleware
1 2
PrepareMe TellMe
3
ShowMe
LetMe HelpMe
5
India SAP CoE, Slide 55
ShowMe
Initial download - Monitor BDoc monitor Analyzing Problem Debugging from CRM to R/3
BDoc monitor
Transactions: SMW01 / SMW02 Features of BDoc monitor: Analysis
Search for special error situations per BDoc ID, BDoc type, user, date, message ID, flow context, BDoc status and linked BDoc messages.
Show error
Re-process Delete
Analyzing Problem
Tips for troubleshooting: Scenario: Data exchange with R/3 system Analyze the status of BDoc message Check outbound/inbound queue in CRM side Check for short dumps in R/3 side Check outbound/inbound queue in R/3 side Check for short dump in CRM side
CRM Middleware
1 2
PrepareMe TellMe
3
ShowMe
LetMe HelpMe
5
India SAP CoE, Slide 61
LetMe
1. Create a BP and find out the sites to which it is being replicated. Hint: Replication object is BUPA_MAIN 2. In initial load we need to replicate a certain range of sales orders from R/3. How can this be achieved?
3.
Identify the Adapter object that could be used download R/3 Material. Note down the associated Bdoc name.
Download a single Material from R/3 to CRM through Request download. Go to Admin Console and identify the connected R/3 site.
4.
5.
CRM Middleware
1 2
PrepareMe TellMe
3
ShowMe
LetMe HelpMe
5
India SAP CoE, Slide 63
HelpMe
Flow Context Tools available for analyzing the problem Middleware Monitoring Transactions Appendix: Classification of BDoc States
Flow context
A sequence of services for a BDoc type is called Flow Context. The entire Flow of a BDoc type may consist of one or more Flow Contexts. Transaction: SMO8FD
Analyzing Problem
Tools available for analyzing the problem:
Receivers Errors Middleware Trace Classic Data SMW01: Displays a list of the receivers of a message SMW01: Displays error segments SMW01: Displays records for individual steps SMW01: Data segments of a message SMW01: Extension of a message (only for m-BDoc messages) SMQ1 (see also outbound queue scheduler SMQS) SMQ2 (see also inbound queue scheduler SMQR) ST22 SDIMA: Compare and adjust data between two data sources
Extension Data
Outbound queues Inbound Queues Short Dumps DIMA System log
India SAP CoE, Slide 66
SM21: Check for User xxx is deleting inbound/outbound queue xxx to see if queues were manually deleted.
Description
Monitoring Cockpit Monitoring BDoc Messages BDoc Message Summary BDoc Message Error Analysis Unprocessed BDoc Messages Monitoring Middleware Trace Error Handling Customizing Replication/ Realignment Monitoring Initial Load qRFC Outbound Queue Monitor
SMQ2
SMQR SMQS
F02
F03 F04 F05 I01 I02 I03 I04 O01
R01
T01