0% found this document useful (0 votes)
206 views343 pages

CR550 en 310 Col22 Enhancing Middleware

This document provides an overview of a course on enhancing the CRM middleware. The course aims to teach participants about the technical aspects and important tools for enhancing the CRM middleware. It covers key concepts like BDocs, replication types, and processing BDoc messages. The course also teaches how to customize adapters and enhance data models, BDocs, and objects.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
206 views343 pages

CR550 en 310 Col22 Enhancing Middleware

This document provides an overview of a course on enhancing the CRM middleware. The course aims to teach participants about the technical aspects and important tools for enhancing the CRM middleware. It covers key concepts like BDocs, replication types, and processing BDoc messages. The course also teaches how to customize adapters and enhance data models, BDocs, and objects.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 343

&5(QKDQFLQJWKH&500LGGOHZDUH

&5

(QKDQFLQJWKH
&500LGGOHZDUH
SAP AG 2002

n BBPCRM 310 R/3 Release 620


n 2002/Q2
n Material Number 5005 5227

AP AG CR550 1
&RS\ULJKW

&RS\ULJKW6$3$*$OOULJKWVUHVHUYHG
1RSDUWRIWKLVSXEOLFDWLRQPD\EHUHSURGXFHGRUWUDQVPLWWHGLQ
DQ\IRUPRUIRUDQ\SXUSRVHZLWKRXWWKHH[SUHVVSHUPLVVLRQRI
6$3$*7KHLQIRUPDWLRQFRQWDLQHGKHUHLQPD\EHFKDQJHG
ZLWKRXWSULRUQRWLFH

$OOULJKWVUHVHUYHG

SAP AG 2002

7UDGHPDUNV
n Some software products marketed by SAP AG and its distributors contain proprietary software
components of other software vendors.
n Microsoft, WINDOWS, NT, EXCEL, Word, PowerPoint and SQL Server are registered
trademarks of Microsoft Corporation.
n IBM, DB2, OS/2, DB2/6000, Parallel Sysplex, MVS/ESA, RS/6000, AIX, S/390,
AS/400, OS/390, and OS/400 are registered trademarks of IBM Corporation.
n ORACLE is a registered trademark of ORACLE Corporation.
n INFORMIX-OnLine for SAP and INFORMIX Dynamic ServerTM are registered trademarks of
Informix Software Incorporated.
n UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.
n HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C, World Wide
Web Consortium, Massachusetts Institute of Technology.
n JAVA is a registered trademark of Sun Microsystems, Inc.
n JAVASCRIPT is a registered trademark of Sun Microsystems, Inc., used under license for
technology invented and implemented by Netscape.
n SAP, SAP Logo, R/2, RIVA, R/3, ABAP, SAP ArchiveLink, SAP Business Workflow, WebFlow,
SAP EarlyWatch, BAPI, SAPPHIRE, Management Cockpit, mySAP.com Logo and mySAP.com
are trademarks or registered trademarks of SAP AG in Germany and in several other countries all
over the world. All other products mentioned are trademarks or registered trademarks of their
respective companies.

AP AG CR550 2
&RXUVH3UHUHTXLVLWHV

l &5&502YHUYLHZFRXUVH
l &5&500LGGOHZDUH2YHUYLHZ
l $%$3SURJUDPPLQJH[SHULHQFH
n %&$%$3:RUNEHQFK
n %&$%$32EMHFWV
l 5HFRPPHQGHGFRXUVHV
GHSHQGLQJRQWKHVFHQDULR 
n &50RELOH6DOHV 0RELOH6HUYLFH
n &5,QWHUDFWLRQ&HQWHULQ&50
n &5,QWHUQHW6DOHV

SAP AG 2002

n To put this course into the general mySAP CRM context, an overall understanding of the mySAP
CRM landscape is necessary. The CR010 course provides this overview.
n An overview of the CRM Middleware is essential in order to perform modifications. The CR500 or
CR510 courses give a comprehensive introduction to the CRM Middleware.
n Some basic ABAP programming experience is helpful to fully understand the examples in this
course. The BC400 course covers these topics.
n Depending on your involvement in CRM and on your scenario, further background knowledge may
be helpful. The SAP CRM curriculum provides many courses for the various scenarios.

AP AG CR550 3
7DUJHW*URXS

l $XGLHQFH
n &50FRQVXOWDQWV
n $Q\RQHHQKDQFLQJWKH&500LGGOHZDUH

l 'XUDWLRQGD\V

SAP AG 2002

AP AG CR550 4
&RXUVH2YHUYLHZ

&RQWHQWV

l &RXUVH*RDOV
l &RXUVH2EMHFWLYHV
l &RXUVH&RQWHQW
l &RXUVH2YHUYLHZ'LDJUDP

SAP AG 2001

AP AG CR550 1-1
&RXUVH*RDOV

7KLVFRXUVHZLOOSUHSDUH\RXWR

l .QRZWKHWHFKQLFDODVSHFWV

l 8VHWKHPRVWLPSRUWDQWWRROV
WRHQKDQFHWKH&500LGGOHZDUH

SAP AG 2001

AP AG CR550 1-2
12&RXUVH*RDOV

7KLVFRXUVHZLOOQRWSUHSDUH\RXWR

l .QRZWKHEXVLQHVVDVSHFWVWRHQKDQFHWKH
&500LGGOHZDUH
l .QRZWKHDSSOLFDWLRQGDWDPRGHO

SAP AG 2001

AP AG CR550 1-3
&RXUVH2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVFRXUVH\RXZLOOEHDEOHWR

l ([SODLQWKHYDULRXVUHSRVLWRULHVRIWKH
&500LGGOHZDUH
l 'HILQHDQGH[WHQG&'%WDEOHV

l 'HILQHDQGHQKDQFH%'RFW\SHV

l (QKDQFHWKH)ORZIRU%'RFW\SHV
l ,PSOHPHQW\RXURZQYDOLGDWLRQVHUYLFHPDSSLQJ
IXQFWLRQVDQGPRELOHEULGJHV
l 0DNHFRPSOH[HQKDQFHPHQWVWRWKH5$GDSWHU

SAP AG 2001

AP AG CR550 1-4
&RXUVH&RQWHQW

3UHIDFH

Unit 1 &RXUVH2YHUYLHZ Unit 8 'DWD)ORZ

Unit 2 &RQFHSWVRIWKH&50 Unit 9 5$GDSWHU&XVWRPL]LQJ


0LGGOHZDUH
Unit 10 ;,)$GDSWHU&XVWRPL]LQJ
Unit 3 (QKDQFHPHQWV2YHUYLHZ
Unit 11 5HSRVLWRULHV*HQHUDWLRQ
Unit 4 &'%'DWD0RGHO DQG7UDQVSRUW

Unit 5 %'RF0RGHOLQJ , Unit 12 &DVH6WXG\2EMHFW


(QKDQFHPHQW
Unit 6 $GDSWHU&XVWRPL]LQJ
Unit 13 )XUWKHU,QIRUPDWLRQ
Unit 7 %'RF0RGHOLQJ ,, &RXUVH:UDS8S

$SSHQGL[

SAP AG 2002

AP AG CR550 1-5
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 1-6
&RQFHSWVRIWKH&500LGGOHZDUH

&RQWHQWV
l 7KH6LWH7\SH&RQFHSW
l 7KH%'RF&RQFHSW
l 5HSOLFDWLRQ7\SHV
l 3URFHVVLQJ%'RF0HVVDJHVLQWKH&50
6HUYHU

SAP AG 2001

AP AG CR550 2-1
&RQFHSWVRIWKH&500LGGOHZDUH8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l 'HVFULEHWKHFRQFHSWVEHKLQG%'RFV

l /RRNXS%'RFW\SHVLQWKHV\VWHP

l ([SODLQWKHSURFHVVLQJRI%'RFPHVVDJHV

l ([SODLQWKHGLIIHUHQWUHSOLFDWLRQW\SHV

SAP AG 2001

AP AG CR550 2-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 2-3
0DLQ&RQFHSWV

6LWHW\SHV
%'RFV
5HSOLFDWLRQW\SHV
,QWHUQDOGDWDIORZ

SAP AG 2001

AP AG CR550 2-4
6LWH7\SH&RQFHSW

6DPH 6DPH
VLWHW\SH VLWHW\SHV

6LWH$ 6LWH% 6LWH& 6LWH' 6LWH(

1RQ5
0RELOH&OLHQWV 5%DFN(QG
%DFN(QGVYLD;0/

SAP AG 2001

n Every receiver of messages is represented within the CRM Middleware by a VLWH. There is a one-to-
one relationship between sites and physical receivers. Sites are the only addressable unit for the
Replication (not users). They are identified by a globally unique identifier (GUID).
n Each site is of a VLWHW\SH. Sites of the same type use the VDPHDGDSWHU for exchanging data between
the CRM Server and the sites. SAP provides a number of standard site types: CRM, CDB, R/3,
Mobile client, External interface for XML, External interface for IDocs. A site representing an SAP
R/3 Back-End is of site type R/3.
n Sites are maintained in the Administration Console, which is a transaction on the CRM Server.

AP AG CR550 2-5
%XVLQHVV'RFXPHQWV %'RFV 0RWLYDWLRQ

,GHDSURFHVVWUDQVSRUWEXVLQHVVREMHFWVDVRQHXQLW
([FKDQJH
0RELOH&OLHQWV FXVWRPHU6PLWK &506HUYHU

.1$ $'5& .199




0RELOH&OLHQWV &506HUYHU

%'RF6PLWK

SAP AG 2001

n The motivation of using %XVLQHVV'RFXPHQWV %'RFV as data container for processing business
objects and for transporting them as one unit, instead of having to process/transport several
individual table entries.

AP AG CR550 2-6
:KDWDUH%'RFV"

'LVWLQFWLRQ  
n %'RFW\SH VWUXFWXUH 



n %'RFLQVWDQFH &XVWRPHU%'RF6PLWK
1$0( 6PLWK
1$0( -RKQ DOOILHOGV
.8115 


n %'RFPHVVDJH DOVRLQVHUWRUGHOHWH
&XVWRPHU%'RF6PLWK7$6. XSGDWH
)LHOGV&,7< 1HZ<RUN675((7 %URDGZD\
FRQWDLQVRQO\PRGLILHGILHOGV

SAP AG 2001

n When talking about %'RFV, the BDoc type, the BDoc instance and the BDoc message have to be
distinguished.
A %'RFW\SH or structure has to be defined for each required business object, e.g. Contact Person,
Sales Order etc. It contains all the fields that make up the corresponding business object.
A %'RFLQVWDQFH is a concrete example of a given BDoc type containing all field values, e.g. the
customer Smith.
A %'RFPHVVDJH (or just %'RF) contains modified fields only. These include modified fields as
well as deleted fields. The difference between a BDoc message and a BDoc instance is that there is
only one BDoc instance for a Business Object, but there can be multiple BDoc messages (with
their own Ids) for one BDoc instance. However, if an entire BDoc instance is replicated to a
Mobile Client, a BDoc message, where all fields are filled, is used.

AP AG CR550 2-7
'LIIHUHQW5HSUHVHQWDWLRQVIRU%'RF0HVVDJHV

%'RFPHVVDJHVFDQEHUHSUHVHQWHGLQYDULRXVZD\ %'RF

'HSHQGLQJRQWKHHQYLURQPHQWDQRSWLPDOUHSUHVHQWDWLRQLV
XVHGHJ
n &506HUYHU ,QWHUQDOWDEOHV

n /DSWRSV $'2UHFRUGVHWV

n 1RQ6$36\VWHP ;0/

SAP AG 2001

n The definition of BDoc types does not contain implementation details.

AP AG CR550 2-8
'HFRXSOLQJRI0HVVDJLQJDQG6\QFKURQL]DWLRQ

7ZRLQWHJUDWLRQOD\HUV
n 0HVVDJLQJ
n 6\QFKURQL]DWLRQ

5%DFN(QG

&506HUYHU

6\QFKURQL]DWLRQOD\HU

0HVVDJLQJOD\HU
6$3%:
6$3:HE$SSOLFDWLRQ6HUYHU

1RQ5%DFN(QG 7KHV\QFKURQL]DWLRQOD\HUSURYLGHVPRUH
VRSKLVWLFDWHGUHSOLFDWLRQVHUYLFHV

SAP AG 2001

n Two integration layers decouple messaging and synchronization. The messaging layer uses
PHVVDJLQJ%'RFV for data exchanges with the CRM Server Applications, R/3 Back-Ends and
external systems. The synchronization layer exchanges data with mobile clients and uses
6\QFKURQL]DWLRQ%'RFV
n The synchronization of mobile clients is a much more sophisticated integration and therefore
different BDoc types are necessary to support the additional services.

AP AG CR550 2-9
6\QFKURQL]DWLRQDQG0HVVDJLQJ%'RF&ODVVHV

&500RELOH$SSOLFDWLRQ

&506\QFKURQL]DWLRQ0LGGOHZDUH Replication DQG


   !"  $#  &% Realignment

0DSSLQJ

Replication, but
&500HVVDJLQJ0LGGOHZDUH
QR Realignment
0HVVDJLQJ%'RFV

0DSSLQJ 0DSSLQJ 0DSSLQJ

5%DFN(QG &506HUYHU$SSO 1RQ5


%$3,V &506WUXFWXUHV &50;0/

SAP AG 2001

n Two integration layers decouple messaging and synchronization. The messaging layer uses
PHVVDJLQJ%'RFW\SHV for data exchanges with the CRM Server Applications, R/3 Back-Ends and
external systems. The synchronization layer exchanges data with mobile clients and uses
6\QFKURQL]DWLRQ%'RFW\SHV
n Synchronization BDoc types are based on data stored in the Consolidated Database (CDB), and are
used for synchronizing mobile clients. They allow the full replication and realignment rules based on
all data in the CDB to be applied.
n The CRM Middleware can apply Simple Intelligent Replication to Messaging BDoc types. This is
simpler than the full replication and realignment because it cannot access data in the message, but
only address data. A messaging BDoc type is like an envelope, with data inside the envelope which
CRM middleware cannot access, and data on the envelope, 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.
n The price for the different BDoc classes is an additional mapping step between messaging and
synchronization BDoc messages.

AP AG CR550 2-10
%'RF&ODVVHV2YHUYLHZ

6\QFKURQL]DWLRQ%'RFV V%'RFV IRUPHUZULWH%'RFV


V%'RF

0HVVDJLQJ%'RFV P%'RFV  IRUPHURQOLQH%'RFV

P%'RF

0RELOH$SSOLFDWLRQ%GRFV IRUPHUUHDGRQO\%'RFV

SAP AG 2001

n BDocs can be categorized into three classes:


0HVVDJLQJ%'RFV P%'RFV 
- No exchange with Mobile Clients, not stored in CDB, No mapping between segments and
database tables in the CRM Middleware but in the CRM Server Applications, transport entire
instances (gross data)
6\QFKURQL]DWLRQ%'RFV V%'RFV 
- Only be used for data synchronization with Mobile Clients, mapping between of BDoc
segments and CDB tables, previously called Write BDocs, transport changed fields (delta
information, net data)
- Can be assigned to messaging BDoc types (n:1 relationship)
0RELOH$SSOLFDWLRQ%'RFV
- Mobile Application BDocs are used by the mobile sales/service application on the mobile client
to query data from the database.
- Mobile Application BDocs were previously called Read and Query BDocs.

AP AG CR550 2-11
6\QFKURQL]DWLRQ%'RF7\SHV ,

6\QFKURQL]DWLRQ%'RF7\SHV V%'RF
n )RUPHUZULWH%'RFV

n 2QO\XVHGIRUGDWDV\QFKURQL]DWLRQZLWKPRELOHFOLHQWV

n 3HUVLVWHQWLQWKH&RQVROLGDWHG'DWDEDVH &'%

n 0DSSLQJRI%'RFVHJPHQWVWR&'%WDEOHV

n 6XSSRUWUHDOLJQPHQWDQGGHSHQGHQFLHV

SAP AG 2001

AP AG CR550 2-12
6\QFKURQL]DWLRQ%'RF7\SHV ,,

7\SHVHQGHUWLPHVWDPS
V%'RFVWUXFWXUH

+HDGHU (J&XVWRPHU2UGHU

&RQWUROVHJPHQW
%XVLQHVV3DUWQHU0DVWHU

%RG\

(UURUVHJPHQW

'DWDVHJPHQW
%XVLQHVV3DUWQHU$GGUHVV

'DWDVHJPHQW


SAP AG 2001

n A %'RFW\SH consists of a header and a body.


The %'RFKHDGHU consists of one single segment, the so-called control segment.
The %'RFERG\ consists of one or more data segments and of one error segment.
n The FRQWUROVHJPHQW merely contains header information, whereas the individual GDWDVHJPHQWV
contain the actual table entries that make up the corresponding business object.
n The HUURUVHJPHQW can be used to store error information.

AP AG CR550 2-13
6\QFKURQL]DWLRQ%'RF7\SHV ,,,

&RPPRQV%'RFW\SHVIRUPRELOHVFHQDULRV

%XVLQHVVREMHFW %'RFW\SHQDPH
&XVWRPHUDQGSURVSHFW &$3*(1B2%-B:5,7(
&RQWDFWSHUVRQ &21*(1B2%-B:5,7(
6DOHVRUGHU 6$/(6'2&*(1B2%-(&7B:5,7(
0DWHULDO 35'&7B2%-(&7
2SSRUWXQLW\ 23325781,7<B:5,7(
$FWLYLW\ $&7,9,7<B2%-(&7
&DPSDLJQ &$03$,*1B:5,7(
3URPRWLRQ 352027,21B:5,7(
6HUYLFH1RWLILFDWLRQ 127,)1B:5,7(
(PSOR\HH (03/2<((B:5,7(
&RQGLWLRQREMHFWV '1/B&21'B
&XVWRPL]LQJREMHFWV '1/B&867B

SAP AG 2001

n This slide lists the most common business objects and the corresponding synchronization BDoc type
names.
n Note that the definition and modification of BDocs require a deep knowledge of the application. The
CRM Middleware does not have the business logic to create or modify BDocs. From this point of
view, it is just a data container to transport and process BDoc messages.

AP AG CR550 2-14
0HVVDJLQJ%'RF7\SHV ,

0HVVDJLQJ%'RF7\SHV P%'RF

n 8VHGIRUPHVVDJLQJEHWZHHQPDMRUFRPSRQHQWV HJ5&50

n P%'RFW\SHVFRQVLVWRIWZRSDUWV
' U V4W7X!Y/Z![4U W!X7Y\]_^&`acbT]edfgbhT["[>i
&ODVVLFDOSDUW
(*)  +,, !-.%/+0213+,/%/4657"58+
(:9 ;+- +/;3<= >=>/+?#   9 ;,+,- +
(A@ ++,87B+;3%657658+
(
 /B,C!%D;,!8E8+,- +7F,/G8  8+//+, F+,;,+!H+41IC/7>J  ^&`.j_]_flk ]mY!b/k n
' ([WHQVLRQ
(
 1IK- +&LM;,!HNOK+
( 9  ;+- +/;3<= >  P
RQ %+ !TS
:
(
 / B,C!%N"/+68,/%//74J =;,!8

SAP AG 2001

n A messaging BDoc consists of up to two parts:


3DUW&ODVVLFDO3DUW
- This part is mandatory.
- The classical part consists of a BDoc header and segments, which may be arranged in a
hierarchical fashion. It is called classical part, because of the similarities to write BDoc types
of the 2.0B/C releases. However, the segments of the classical part are not mapped to database
tables.
- This part is to be modeled with the (CRM Server based) BDoc Modeler.
- Only the classical part is used to determine the receivers of mBDoc messages.
- Since there is no mapping to database tables (i.e. no CDB), this part always needs to be filled
completely by the application at runtime.
3DUW([WHQVLRQ
- This part is optional.
- The complex data type is modeled with the Data Repository Tools (SE11).
- The extension does only exist for messaging BDocs (new with CRM 3.0).

AP AG CR550 2-15
0HVVDJLQJ%'RF7\SHV ,,

0HVVDJLQJ%'RF7\SHV FRQWLQXHG

n 7ZRUHSOLFDWLRQW\SHVDUHVXSSRUWHG
' 6LPSOHLQWHOOLJHQWUHSOLFDWLRQ
' 6LPSOHEXONUHSOLFDWLRQ

n 1RORRNXSWDEOHVH[LVWIRUUHSOLFDWLRQFDOFXODWLRQV

n 1RUHDOLJQPHQWVXSSRUWHG

n 1RGHSHQGHQFLHVVXSSRUWHG

SAP AG 2001

AP AG CR550 2-16
([SORULQJD%'RF7\SH

%'RF0RGHOHU

6HJPHQW6WUXFWXUH
RI%'RFW\SH%83$B0$,1
ZLWKKHDGHUVHJPHQWILHOGV

SAP AG 2001

n The %'RF0RGHOHU is a tool used for displaying, creating and enhancing BDoc types.
n 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.
n Note that the definition and enhancement of BDoc types require knowledge of the application. The
CRM Middleware does QRW have the EXVLQHVVORJLFWRFUHDWHRUHQKDQFH%'RFV. From this point of
view, it is just a data container to transport and process BDoc messages.
n New BDoc modeling features of the CRM release 3.0:
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 unit Replication Administration) to synchronization and
messaging BDoc types.

AP AG CR550 2-17
'LIIHUHQW7\SHVRI5HSOLFDWLRQ

5HSOLFDWLRQ 0HVVDJHIRUZDUGLQJWRRQHRUPRUHVLWHV

%'RF
"

"
'LIIHUHQW7\SHV
n %XONUHSOLFDWLRQ
"
"
n ,QWHOOLJHQWUHSOLFDWLRQ

"

SAP AG 2001

n BDoc messages are replicated to VLWHV (local databases) and not to individual persons.
n Two different replication types can be distinguished: EXONUHSOLFDWLRQ and LQWHOOLJHQWUHSOLFDWLRQ.
n Both BDoc classes, message and synchronization BDoc types, can be replicated in both ways.
However, every BDoc type can only be replicated via one replication type.
n By default all messaging BDoc types are replicated in bulk, whereas most the synchronization BDoc
types use intelligent replication. This is necessary because of the very demanding data distribution in
mobile scenarios. However, the replication types for BDoc types can easily be changed. For further
information about this consult the course &5&500LGGOHZDUHIRUPRELOHVFHQDULRV..

AP AG CR550 2-18
%XON5HSOLFDWLRQ

'HILQLWLRQRIWKH
o=pJp UHVSRQVLEOH
oqMpJp
orMpJp VLWHV
o!s$pJp
otMpJp
ouMpJp
ovMpJp
owMpJp
oxMpJp

A B C D
%'RFPHVVDJHV
RIRQHW\SH o=pJp o=pJp o2NpJp
oqMpJp oqMpJp oqEpJp
orMpJp orMpJp orEpJp
o!s$pJp o!s$pJp o/s?pJp
otMpJp otMpJp otEpJp
ouMpJp ouMpJp ouEpJp
ovMpJp ovMpJp ovEpJp
owMpJp owMpJp owEpJp
oxMpJp oxMpJp oxEpJp

)LOWHURQ%'RF
W\SHV

SAP AG 2001

n %XON5HSOLFDWLRQ
The simplest replication type is the bulk replication.
Bulk replicated BDoc messages are distributed according to their type, regardless of the message
content and their relation to other BDoc messages. In this example, all bulk BDoc messages are
replicated to site A, B and D.
These objects do not cause content-based realignment (data redistribution).
Bulk replication is especially suitable for small tables.
Typical examples for bulk-replicated data are customizing data (the T* tables) or employee data.

AP AG CR550 2-19
,QWHOOLJHQW5HSOLFDWLRQ

o=pJp 'HILQLWLRQRIWKH
oqMpJp UHSOLFDWLRQUXOHV
orMpJp
o!s$pJp
otMpJp
ouMpJp
ovMpJp
owMpJp
oxMpJp

A B C D
%'RFPHVVDJHV
RIRQHW\SH o=pJp o=pJp owEpJp o2NpJp
oqMpJp oqMpJp oxEpJp orEpJp
orMpJp orMpJp o/s?pJp
o!s$pJp o!s$pJp ovEpJp
otMpJp oxMpJp owEpJp
ouMpJp oxEpJp
ovMpJp
owMpJp
oxMpJp

)LOWHURQ%'RF
PHVVDJHV

SAP AG 2001

n ,QWHOOLJHQW5HSOLFDWLRQ
The more sophisticated replication type.
Replication objects are distributed depending on their contents and their relation to other
replication objects (in this example, only site A receives the complete set of data; sites B, C and D
obtain a subset only).
Specific replication rules are necessary.
Example: synchronization BDoc type CAPGEN_OBJECT_WRITE (customer and prospects).

AP AG CR550 2-20
,QWHUQDO'DWD)ORZ ,

5%DFN(QG 0RELOH&OLHQWV

yz{7|
V%'RF

P%'RF
,QERXQG 2XWERXQG
9DOLGDWLRQ
3URFHVVLQJ 3URFHVVLQJ
P%'RF
&506HUYHU
y/z{7|
V%'RF

5%DFN(QG 0RELOH&OLHQWV

SAP AG 2001

n The internal data flow consists of three main steps:


Inbound processing,
Validation and
Outbound processing.
n ,QERXQGSURFHVVLQJ: Incoming data of different formats, e.g., BAPI structures from an SAP R/3
Back-End, synchronization BDoc messages, XML/SOAP or IDocs, are converted into messaging
BDoc messages. Note that an inbound synchronization BDoc can be processed in two ways:
If it is assigned to a messaging BDoc type, it is mapped to a messaging BDoc message.
If not assigned to a messaging BDoc type, the synchronization BDoc message is directly passed to
outbound processing (i.e. the Synchronization Flow).
n 9DOLGDWLRQ: the incoming data in form of messaging BDoc messages is validated by the application.
In case of a successful validation, the messaging BDoc message is passed to the outbound
processing. In case the incoming data is not valid, the message is sent back to the sender.
n 2XWERXQGSURFHVVLQJ: the receiving systems, e.g., SAP R/3 Back-Ends, external systems or Mobile
Clients, are determined. Then the messaging BDoc message is passed to the corresponding outbound
adapter, which converts the message into the data formats of the receivers.

AP AG CR550 2-21
,QWHUQDO'DWD)ORZ ,,

} r ,; ,K!+  ymTcOT
0RELOH&OLHQW PCN ,; K!8+ TTBm&l mCml_  &,2z {!.| Tl
!!.TH77 cl8 & m Both XML/SOAP and IDocs can be generated
from the ABAP complex data type used to
9 ,KKJ,0E}+HF !+~ define the external interface
E#  3O
9 %0#  
9  ,; K!H+
&506HUYHU
le.m T& .
9  ,; ,K/B+, $SSOLFDWLRQ
,!m8 TC T /&& l_8 /.
PCN ;,K!8+ T .Bm&m mClle 2 z{!.| 7e
r ;,K!8+  ymTcOT
9  J- +?#> ;20,+~ !7.&/& _lB & l
9 %,0I#  3O y/& ! l
}M#  
7 elB _
l& /&l
e8T!7mz&_O&

0RELOH&OLHQW
SAP AG 2001

Example New customer created in the Mobile Client


When a sales representative dials in to headquarters to synchronize his/hers Mobile Client, the new customer
is sent via a synchronization BDoc to the CRM Middleware. An inbound adapter reads the synchronization
BDoc message of the inbound queue and starts a 6\QFKURQL]DWLRQ)ORZ. The Synchronization Flow calls a
0DSSLQJ6HUYLFH, which creates a messaging BDoc based on the content of the synchronization BDoc and
starts a 0HVVDJLQJ)ORZ. The first step in the Flow is to call the &50$GDSWHU, which validates the data
and creates a new customer by updating the CRM server application tables. The update of the CRM server
application object customer causes a software event to be triggered, which in turn causes a new messaging
BDoc to be created and passed to the Messaging Flow. The next step in the Flow is to call the 6LPSOH
5HSOLFDWLRQ6HUYLFH, which determines which systems should get the message this could be one or more
SAP R/3 Back-Ends or non-SAP R/3 Back-Ends. According to which systems should receive the new
customer information, the corresponding adapters are called:
- for each non-SAP R/3 Back-End determined, the external-system (XML) adapter is called and
- for each SAP R/3 Back-End determined, the 5$GDSWHU is called.
- If a mobile scenario is activated, the data is relevant for the CDB, and hence for mobile clients: thus the
0RELOH%ULGJH is called. The Mobile Bridge creates a synchronization BDoc based on the content of the
messaging BDoc and starts a Synchronization Flow. The first step in the synchronization flow is to call
the CDB service, which writes the data to the CDB. The next step is Replication and Realignment, which
determines which Mobile Clients should receive the new customer information. The final step invokes
the outbound adapter for each Mobile Client determined in the previous step and places a synchronization
BDoc containing the customer information in the outbound queue for that client.

AP AG CR550 2-22
,QWHUQDO'DWD)ORZ ,,,

)ORZ&RQWH[WV
' ,QIRUPDOO\GHVFULEHGVWHSVLQWKHJHQHUDOPHVVDJHSURFHVVLQJPRGHO

' 3UHGHILQHGDQGDVVRFLDWHGZLWKOLVWVRIVHUYLFHVWREHFDOOHGLQWKLVFRQWH[W

9DOLGDWLRQ

,QERXQG 2XWERXQG
9DOLG

SAP AG 2002

n 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.

AP AG CR550 2-23
&500LGGOHZDUH6HUYLFHV

2YHUYLHZ)ORZVDQG6HUYLFHV
C =,!B,  2=,,/B,
4  = ,!8 >2HT 3,C&

JM},H2 7

6\QFKURQL]DWLRQ 0HVVDJLQJ
 J M6 ,
)ORZ )ORZ

,B 7 A,,/B,}J,JJ,7> 

 77>J N, ,J /7> =,B2 7


,J 3!}H ! H  ?}, !7" 

N!>E,!8, /> D,!8


4  = ,!8 >2HT 3,C&

SAP AG 2001

n Some services within the CRM Middleware are:


The &50$GDSWHU is called from the Messaging Flow to pass inbound BDoc messages to the
CRM Server Application for validation.
The 5HSOLFDWLRQDQG5HDOLJQPHQW6HUYLFH determines whether a replication and/or a realignment
is necessary or not. If a realignment has to be performed for a BDoc message, this message is
copied into a separate realignment queue for further processing. If realignment is not required, the
receiving sites for a BDoc message are determined.
The 0DSSLQJ6HUYLFH maps synchronization BDoc messages to messaging BDoc messages. The
reverse direction is mapped using the 0RELOH%ULGJH. The Mobile Bridge takes a messaging BDoc
message and creates one or more synchronization BDoc messages (1:n relationship). It also takes
one or more synchronization BDoc messages and produces exactly one messaging BDoc message
of one predefined type (n:1 relationship).
The &'%VHUYLFH saves the content of a synchronization BDoc message in the corresponding CDB
tables.

AP AG CR550 2-24
7KH&50$GDSWHU

&506HUYHU$SSOLFDWLRQV

&50
'DWDEDVH

$3,

&50$GDSWHU 9DOLGDWLRQ6HUYLFH

,QERXQG 2XWERXQG
3URFHVVLQJ 3URFHVVLQJ

SAP AG 2001

n The &50$GDSWHU receives data from the Messaging Flow and sends this data to the CRM Server
Applications. It receives the data contained in BDoc messages from the inbound processing. In case
of the success validation by the CRM Server Applications, the content of the BDoc (from the
extension part) is written into the corresponding tables of the CRM database. If the validation was
not successful, the BDoc message is send back to the sender.

AP AG CR550 2-25
$GDSWHUV2YHUYLHZ

$GDSWHU
'DWDILHOG 0RELOH&OLHQW
UHVWULFWLRQ
0DSSLQJ
&50
0LGGOHZDUH &RQYHUVLRQ
.H\ 5%DFN(QG
FRPSOHWLRQ
%'RF 'HIDXOWLQJ 1RQ5
%DFN(QG

([DPSOHV5$GDSWHU;,)$GDSWHU,QERXQG$GDSWHU

SAP AG 2001

n $GDSWHUV are services that provide connectivity to external systems in order to exchange BDoc
messages between the CRM Middleware and the Mobile Clients, R/3 Back-Ends or other non-SAP
Systems. The content of the BDoc message may be modified in the following ways.
n Examples:
'DWDILHOGUHVWULFWLRQ Some control segments like the recipient list are not delivered to the
Mobile Client.
0DSSLQJ The R/3 Adapter fills up the import fields of R/3 BAPI with data coming from a BDoc.
&RQYHUVLRQ Data that is imported from external systems via the XIF Adapter via XML or IDocs
is converted into BDoc messages before it is passed on to the CRM Server Applications.
.H\FRPSOHWLRQ The different key systems of the external components need to be translated.
'HIDXOWLQJFields which need to be filled obtain default values.

AP AG CR550 2-26
&RPPRQ$GDSWHUV

3XUSRVHGDWDH[FKDQJHEHWZHHQPDMRUV\VWHPV

$GDSWHUV

([W,QWHUIDFHV
;0/,'RFV
0RELOH&OLHQW
$GDSWHU

$GDSWHU
5 $GPLQLVWUDWLRQ
&RQVROH

0RELOH&OLHQW 5%DFN(QG 1RQ5%DFN(QG

7KH0LGGOHZDUHDOORZVHDV\LQWHJUDWLRQRIRWKHUDGDSWHUV

$GDSWHUVUHFHLYHGDWDYLDWKHUHSOLFDWLRQPHFKDQLVP

SAP AG 2002

New features of the CRM release 3.0:


The Adapter services are no longer called in the main message flow.
Several ERP backend systems are supported, with some restrictions.
Status tracking will be available for each object instance and SAP R/3 site.
Filtering in SAP R/3 is possible as of CRM Plug-In version 2001.1.

AP AG CR550 2-27
6XPPDU\

1RZ\RXDUHDEOHWR

l 'HVFULEHWKHFRQFHSWVEHKLQG%'RFV
l /RRNXS%'RFW\SHVLQWKHV\VWHP
l ([SODLQWKHSURFHVVLQJRI%'RFPHVVDJHV
l ([SODLQWKHGLIIHUHQWUHSOLFDWLRQW\SHV

SAP AG 2001

AP AG CR550 2-28
(QKDQFHPHQWV2YHUYLHZ

&RQWHQWV
l 2YHUYLHZRISRVVLEOHHQKDQFHPHQWV
l 0DLQEXVLQHVVVFHQDULRV

SAP AG 2001

AP AG CR550 3-1
(QKDQFHPHQWV2YHUYLHZ8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l 'HVFULEHWKHWKUHHPDLQVFHQDULRVFRQVLGHUHG
LQWKLVFRXUVH
l ([SODLQWKHSRVVLEOHHQKDQFHPHQWVIRUWKH
&500LGGOHZDUH

SAP AG 2001

AP AG CR550 3-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 3-3
6FHQDULR,

6FHQDULR,
/RDGWDEOHVIURPDQ5%DFN(QGLQWR
WKH&'%

SAP AG 2001

n This scenario provides Initial Loads of R/3 database tables into the CDB. This is a very simple way
to make customizing or application data available for mobile scenarios. No implementation is
required.

AP AG CR550 3-4
2YHUYLHZ6FHQDULR,

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH

P%'RF
5'%
%$3,07&6 7DEOH

V%'RF

&'%
7DEOH

SAP AG 2001

n The BAPIMTCS (= BAPI Middleware Transport Communication Structure) is the main structure to
exchange data between the CRM Middleware and R/3 Back-Ends.

AP AG CR550 3-5
5HTXLUHG6WHSV

&UHDWHDQHZ&'%WDEOH
&UHDWHDQHZV\QFKURQL]DWLRQ%'RF7\SH
&50
0LGGOHZDUH

&'%
7DEOH

6\QFKURQL]DWLRQ%'RF7\SH

&UHDWHDQHZ$GDSWHU2EMHFW
&50 5%DFN(QG
0LGGOHZDUH
$GDSWHU

&'% 5'%
3OXJLQ
5

7DEOH 7DEOH

SAP AG 2001

AP AG CR550 3-6
6FHQDULR,,

6FHQDULR,,
([FKDQJHGDWDEHWZHHQDQ5%DFN(QG
WKH&506HUYHU$SSOLFDWLRQVDQGWKH&50
0RELOH$SSOLFDWLRQV

SAP AG 2001

n This scenario consists of a little application, which contains of a mapping service, a Mobile
Bridge, a Validation Service and an R/3 Back-End integration.

AP AG CR550 3-7
2YHUYLHZ6FHQDULR,,

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH

P%'RF
5'%
%$3,07&6 7DEOH

V%'RF

&'%
7DEOH

SAP AG 2001

AP AG CR550 3-8
5HTXLUHG6WHSV ,

&UHDWHDQHZPHVVDJLQJ%'RF7\SH

,PSOHPHQWDQHZ0DSSLQJ6HUYHUDQG0RELOH%ULGJH

,PSOHPHQWDQHZ9DOLGDWLRQ6HUYLFH

&XVWRPL]HWKH)ORZ

,PSOHPHQWWKHPDSSLQJIXQFWLRQVIRUWKH5$GDSWHU

,PSOHPHQWDQHZ([WUDFWRU

&UHDWHDQHZ$GDSWHU2EMHFW

SAP AG 2001

AP AG CR550 3-9
5HTXLUHG6WHSV ,,

,PSOHPHQWWKHEXVLQHVVDSSOLFDWLRQORJLF

%XVLQHVV %XVLQHVV %XVLQHVV


$SSOLFDWLRQ $SSOLFDWLRQ $SSOLFDWLRQ

0RELOH
&50'% 5'%
&OLHQW'%
7DEOH 7DEOH
7DEOH

0RELOH&OLHQWV &506HUYHU 5%DFN(QG

SAP AG 2001

n The implementation of business application logic is not covered in this course.

AP AG CR550 3-10
$SSOLFDWLRQ'HYHORSPHQWRQWKH0RELOH&OLHQW

0RELOH &KDQJHOLVW
$SSOLFDWLRQ 

6WXGLR 

'HYHORSPHQW
&506HUYHU
&76

7HVW

&76

3URGXFWLRQ

l $SSOLFDWLRQPRGHOLQJ
0RELOH
l &KDQJHOLVWWUDQVSRUW &OLHQWV
l $FWLYDWLRQRQFOLHQW

SAP AG 2001

n The Mobile Application Studio modifies the 8VHU,QWHUIDFH/D\HU (UL) and the %XVLQHVV2EMHFW
/D\HU (BOL) objects on the mobile client.
n Modified objects are locally stored in change lists.
n Change lists are uploaded to the CRM server.
n Runtime objects that are generated from the change lists are replicated to the mobile clients via the
standard replication mechanism.

AP AG CR550 3-11
6FHQDULR,,,

6FHQDULR,,,
(QKDQFHWKH%XVLQHVV3DUWQHUREMHFW

SAP AG 2001

AP AG CR550 3-12
2YHUYLHZ6FHQDULR,,,

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH

P%'RF
5'%
%$3,07&6 7DEOH

V%'RF

&'%
7DEOH

SAP AG 2001

AP AG CR550 3-13
5HTXLUHG6WHSV

'DWDVWUXFWXUHHQKDQFHPHQWV
 57DEOH

&506HUYHU$SSOLFDWLRQWDEOH


 &'%7DEOH

(QKDQFHPHQWRIDPHVVDJLQJDQGV\QFKURQL]DWLRQ%'RF7\SH

%83$B0$,1 &$3*(1B2%-(&7B:5,7(


,PSOHPHQWDQGDFWLYDWHFXVWRPHUH[LWV

5$GDSWHU &506HUYHU5%DFN(QG


0DSSLQJ6HUYLFH0RELOH%ULGJH


9DOLGDWLRQ6HUYLFH


SAP AG 2001

AP AG CR550 3-14
(QKDQFHPHQWV2YHUYLHZ8QLW6XPPDU\

<RXDUHQRZDEOHWR

l 'HVFULEHWKHWKUHHPDLQVFHQDULRVFRQVLGHUHG
LQWKLVFRXUVH
l ([SODLQWKHSRVVLEOHHQKDQFHPHQWVIRUWKH
&500LGGOHZDUH

SAP AG 2001

AP AG CR550 3-15
&'%'DWD0RGHO

&RQWHQWV
l 7KH'DWD0RGHORIWKH&RQVROLGDWHG'DWDEDVH
&'%

SAP AG 2001

AP AG CR550 4-1
&'%'DWD0RGHO8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l ([SODLQWKHGDWDPRGHOXVHGLQWKH
&RQVROLGDWHG'DWDEDVH
l 'HVFULEHWKHGLIIHUHQFHEHWZHHQ5WDEOHVDQG
WKHFRUUHVSRQGLQJ&'%WDEOHV

SAP AG 2001

AP AG CR550 4-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 4-3
6\QFKURQL]DWLRQ)ORZ






V%'RF
,QERXQG$GDSWHU

0DSSLQJ6HUYLFH 0HVVDJLQJ)ORZ
6\QFKURQL]DWLRQ)ORZ

0RELOH%ULGJH P%'RF 9DOLGDWLRQ5HSOLFDWLRQ

V%'RF
&'%6HUYLFH &'%

5HSOLFDWLRQDQG
5HDOLJQPHQW
6HUYLFH

2XWERXQG$GDSWHU



 

SAP AG 2001

n The main tasks of a Synchronization Flow are storing data in the CDB (CDB service) and the
replication / realignment (synchronization) of data with Mobile Clients (R&R service => Outbound
Adapter => Outbound Queue => Mobile Clients).
n An LQERXQG sBDoc can be processed in two ways:
If assigned to an mBDoc, it is (always) mapped to this mBDoc which is then passed to messaging
flow for validation in the CRM Server.
If not assigned to an mBDoc, the sBDoc is (always) passed to synchronization BDoc outbound
processing.
n 2XWERXQG processing can be in two ways:
Initial load processing updates the CDB only.
All other possible loads, e.g. delta loads, synchronization load or requests, update the CDB and
replicate the new data to the Mobile Clients.

AP AG CR550 4-4
$FFHVVWRWKH&RQVROLGDWHG'DWDEDVH

&500LGGOHZDUH

)ORZ %'RF
&'%6HUYLFH &'%
&RQWURO

7KHV\QFKURQL]DWLRQ)ORZH[FKDQJHVV%'RFVZLWKWKH&'%VHUYLFH
7KH&'%VHUYLFHLVWKHRQO\VHUYLFHWKDWKDVDFFHVVWRWKH&'%
GDWDWDEOHV
7KH&'%LVDORJLFDOGDWDEDVHZLWKLQWKH&50GDWDEDVH

SAP AG 2001

AP AG CR550 4-5
'DWD0RGHOVLQP\6$3&50

&500RELOH$SSOLFDWLRQ
'DWD0RGHO

'DWD

0RELOH&OLHQWV

'LIIHUHQW
EXVLQHVV WHFKQLFDO 0DSSLQJ
UHTXLUHPHQWV

&506HUYHU$SSOLFDWLRQ
'DWD0RGHO

'DWD
&506HUYHU

SAP AG 2001

n There are GLIIHUHQFHVLQWKHGDWDPRGHOVRI56\VWHPVWKH&50'DWDEDVHDQGWKH&'%.


The CDB data model partly corresponds to the R/3 Data Dictionary (DDIC). This is especially the
case for sales documents and the product master. It has been optimized for the use for Mobile
Applications.
Other business objects of Mobile Applications such as business partners, activities, opportunities,
campaigns, target lists and so on have their own structures or structures similar to CRM Server
Applications.
Special CRM data, e.g. activity or opportunity data, is only kept in the CDB and not in the
database of the SAP R/3 System.
n Data must therefore be PDSSHG before or during loads between the CRM Server Applications and
external systems.
n The CRM Mobile Application data model is QRW a 1:1 copy of the CRM Server Application data
model.

AP AG CR550 4-6
&RUUHVSRQGHQFHRI5DQG&'%7DEOHV

7DEOH[\] 7DEOH602[\]

56\VWHP &500LGGOHZDUH

0RVW&'%WDEOHVKDYHWKHSUHIL[602LQWKHLUWDEOHQDPH
&'%WDEOHVWKDWFRUUHVSRQGWR5WDEOHVKDYHWKHVDPHWDEOH
QDPHSOXVWKHSUHIL[602
&'%WDEOHVDQG5WDEOHVDUHSDUWO\DOLNH
'HSHQGLQJRQWKHDSSOLFDWLRQ&'%WDEOHVPD\KDYHOHVVRU
PRUHILHOGVWKDQWKHUHODWLQJ5WDEOHV

SAP AG 2001

n Generally R/3 tables in the CRM Middleware are prefixed with 602.
n Some important GHYHORSPHQWFODVVHV are:
SMOF (R/3 Adapter service)
SMOG (Generation services)
SMOH (Replication & Realignment service)

AP AG CR550 4-7
([DPSOHRI'DWD0DSSLQJ

56\VWHP &50
0LGGOHZDUH
7DEOH.1$

&XVWRP
HU6RX
U
,QVWLWX FH &$3 7DEOH602.1$
WLRQ

&RQWDFW6RXUFH &
21
7DEOH.19. 3HUVRQ

SAP AG 2001

n The R/3 tables .1$ (Customer Master General) and .19. (Contact Persons) have been merged
into one CDB table called 602.1$. Merging these two tables is necessary to be able, for
example, to subdivide Business Partners in the pharmaceutical industry into institutions and persons.
n A Business Partner can have more than one address (1:Q relationship). All addresses of each
Business Partner are stored in table SMOADRC. For institutions, only one address (standard
address) can be exchanged with the R/3 systems.

AP AG CR550 4-8
.H\VLQ&50 *8,'V

56\VWHP &500LGGOHZDUH0RELOH&RPSRQHQWV
7DEOH .1$ 7DEOH 602.1$
.H\ .XQQU &KDU .H\ 6)$.1$ &KDU*8,'

&XVWRPHU0DVWHU'DWD )LHOG .XQQU &KDU

$GYDQWDJHVRIRZQNH\V\VWHPLQPRELOHVFHQDULRV
 *OREDO8QLTXH,'HQWLILHUV *8,' DUHXQLTXHLQWKHZRUOGGXHWR
JHQHUDWLRQPHWKRG
 1RQXPEHUUDQJHLQWHUYDOVRI5NH\VDUHQHHGHG
 *8,'LVDWHFKQLFDONH\DQGFRQWHQWIUHH
 &DQEHXVHGWRPRGHOUHODWLRQVEHWZHHQREMHFWV
'LIILFXOW\56\VWHPGRHVQRWNQRZ&50NH\V *8,'V

SAP AG 2001

n *8,'V *OREDOO\8QLTXH,GHQWLILHUV serve as primary keys for all tables in the CDB. A GUID is
generated by a special algorithm using as input data certain hardware information of the host
computer, the current system time, and a randomly generated number. The GUID can be represented
in two formats: a 32-byte character field or a 16-byte raw sequence. It is globally unique in the sense
that two GUIDs produced on any two computers (or even on the same one) at any time can never be
the same.
n 3ULPDU\NH\V of all tables are called 6)$WDEOHQDPHZLWKRXWWKH602SUHIL[!, such as SFAKNA1,
SFAMARA.

AP AG CR550 4-9
3ULPDU\DQG3DUHQW.H\VLQ&'%7DEOHV

l &'%WDEOHVPD\RQO\KDYHWZRNH\ILHOGV
l WKHFOLHQW
l WKH*8,'NH\ SULPDU\NH\V
l +LHUDUFKLHVDUHPRGHOHGYLDSDUHQWNH\V

6)$5227 

6)$&+,/' 6)$5227 

3ULPDU\NH\V 6)$*&+ 6)$&+,/' 

6)$*&+ 6)$&+,/' 


3DUHQWNH\V
6)$&+,/' 6)$5227 

6)$*&+ 6)$&+,/' 

SAP AG 2001

n The GUID keys may be either of type CHAR32 or RAW 16. Note, however, that the GUID keys of
CDB tables, which are contained in one single BDoc Type, must be of the same type.

AP AG CR550 4-10
&'%'DWD0RGHO8QLW6XPPDU\

<RXDUHQRZDEOHWR
l ([SODLQWKHGDWDPRGHOXVHGLQWKH
&RQVROLGDWHG'DWDEDVH
l 'HVFULEHWKHGLIIHUHQFHEHWZHHQ5WDEOHVDQG
WKHFRUUHVSRQGLQJ&'%WDEOHV

SAP AG 2001

AP AG CR550 4-11
([HUFLVHV

8QLW &'%'DWD0RGHO
7RSLF 'HILQLQJ&'%WDEOHV

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


Define CRM tables for replication to the mobile clients.

The goal of this and subsequent exercises is to simulate a real life enhancement scenario.
The application table =&5B (## = group no.) on the R/3 Back-End contains a list
of various countries and the continents they belong to. The contents of this table should
be loaded into the CDB, so that the data may be replicated to Mobile Clients.
The following steps are necessary:
Create a new CDB table that corresponds to the table =&5B on the R/3 Back-
End (this exercise).
Create and activate a new synchronization BDoc type that can transport the content
of the new CDB table (exercise in unit BDoc Modeling I).
Configure the R/3 Adapter to load the contents of the table =&5B from the
R/3 Back-End into the CDB on the CRM Server (exercise in unit Adapter
Customizing).
Finally define a replication object and a publication for the new BDoc type (this
step is covered in the course &5&500LGGOHZDUHIRUPRELOHVFHQDULRV).

1-1 Defining a new CDB table

1-1-1 The application table =&5B on the R/3 Back-End contains a list of
countries and the continents they belong to.
The table =&5Bon the 5%DFN(QGhas the following structure:

)LHOG .H\ 'DWD(OHPHQW


0$1'7 <HV 0$1'7
&28175< <HV 7(;7
&217,1(17 1R 7(;7
Define a new CDB table on the CRM Server with the name =&5B (## =
your group no.), which contains the same fields as the corresponding table on
the R/3 Back-End. In addition you need another primary key field
6)$&5Bwith the data element 602B*8,'. This field should be
entered in the second row, i.e. between the 0$1'7 field and &28175<
field.

AP AG CR550 4-12
6ROXWLRQV

8QLW &'%'DWD0RGHO
7RSLF 'HILQLQJ&'%WDEOHV

1-1 Defining a new CDB table

1-1-1 Tables are usually defined using the transaction6(. The new table is an
application table and thus of delivery class $. When specifying the table fields
it is important to keep track of the field order: the key fields (here 0$1'7 and
6)$&5B) must be the first fields in the table. The key 6)$&5B is
the global unique identifier and of type 602B*8,'.
The final table structure should look like this:

)LHOG .H\ 'DWD(OHPHQW


0$1'7 <HV 0$1'7
6)$&5B <HV 602B*8,'
&28175< 1R 7(;7
&217,1(17 1R 7(;7

Now the table can be saved, checked and activated. For this exercise it is
sufficient to use =&5 (local object) as a development class. When
activating the table you are asked to specify the technical settings, i.e. the data
class and the size category, which can be 86(5 and  respectively.

AP AG CR550 4-13
%'RF0RGHOLQJ ,

&RQWHQWV

l 6\QFKURQL]DWLRQ%'RF7\SHV
l 6\QFKURQL]DWLRQ%'RF0RGHOLQJRYHUYLHZ
l 'HILQLWLRQRIDQHZV\QFKURQL]DWLRQ%'RF7\SH
l 2SWLRQDO%'RF0RGHOLQJVWHSV

SAP AG 2001

AP AG CR550 5-1
%'RF0RGHOLQJ , 8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l 'HILQHQHZV\QFKURQL]DWLRQ%'RFVW\SHV

SAP AG 2001

AP AG CR550 5-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 5-3
6\QFKURQL]DWLRQ%'RF7\SHV

6\QFKURQL]DWLRQ
%'RF7\SHV

SAP AG 2001

AP AG CR550 5-4
6\QFKURQL]DWLRQ%'RF7\SHV ,

7\SHVHQGHUWLPHVWDPS
%'RFVWUXFWXUH

+HDGHU (J&XVWRPHU2UGHU

&RQWUROVHJPHQW
%XVLQHVV3DUWQHU0DVWHU

%RG\

(UURUVHJPHQW

'DWDVHJPHQW
%XVLQHVV3DUWQHU$GGUHVV

'DWDVHJPHQW


SAP AG 2001

n A 6\QFKURQL]DWLRQ%'RFW\SH consists of a header and a body.


The %'RFKHDGHU consists of one single data segment, the so-called control segment.
The %'RFERG\ consists of one or more data segments and of one error segment.
n The FRQWUROVHJPHQW merely contains header information, whereas the individual GDWDVHJPHQWV
contain the actual table entries that make up the corresponding business object.
n The HUURUVHJPHQW can be used to store error information.

AP AG CR550 5-5
6\QFKURQL]DWLRQ%'RF7\SHV ,,

*HQHUDOVWUXFWXUHRIV%'RFW\SHVDQGPRELOHDSSOLFDWLRQ%'RFW\SHV

(UURU &RQWURO 


6HJPHQW 6HJPHQW )LHOGV )LHOGV
  Q Q
   
   

Q 7DEOH

%'RF 'DWD6HJPHQW
9LHZ

-RLQ


Q
3DUDPHWHUV
%'RFYLHZ 7DEOHYLHZ

SAP AG 2002

n Each GDWDVHJPHQW contains segment fields. These fields are mapped to actual data fields of physical
database tables.
n A data segment can be mapped to multiple tables. However, only one table per data segment can be
used to write to the database. All other tables that are mapped to a data segment are only for read
only access.
n Note that segments within mobile application BDocs may also be mapped to table views or joins of
one or more tables. This is possible, because mobile application BDocs have only read only access to
the mobile client databases.

AP AG CR550 5-6
6\QFKURQL]DWLRQ%'RF7\SHV ,,,

+LHUDUFKLFDOGDWDVHJPHQWVWUXFWXUH

5RRW &RUUHVSRQGLQJ
6HJPHQW &$3*(1B2%-(&7B:5,7(
&'%7DEOH
&$3*(1B2%-(&7 602.1$
$''.(<6 602$''.(<6

+LHUDUFK\
/HYHO %3$''5(66B2%-(&7 602$'5&
&$39,6+B2%-(&7 602&$39,6

&$36$/(B2%-(&7 602.199
&$36$/('(/B2%-(&7 602&$3'(/

,V3DUHQWRI
6020(02

SAP AG 2001

n BDoc segments are arranged in a KLHUDUFKLFDO fashion to model dependencies of data. This is
achieved by specifying parent-child relationships between data segments.
n There is always one URRWGDWDVHJPHQWat the top of a hierarchy . It contains a unique root ID used to
identify the BDoc instance transported within the BDoc messages of this type.
n The example shows a synchronization BDoc type for customer and prospects. The corresponding
messaging BDoc is called BUPA_MAIN.

AP AG CR550 5-7
3ULPDU\DQG3DUHQW.H\VLQ'DWD6HJPHQWV

l 3ULPDU\DQG3DUHQW.H\VLQ'DWD6HJPHQWV

+HDGHU 0HVVDJH,' %'RF,QVWDQFH %'RF7\SH 

%RG\ 6)$5227 

6)$&+,/' 6)$5227 

3ULPDU\NH\V 6)$*&+ 6)$&+,/' 

6)$*&+ 6)$&+,/' 


3DUHQWNH\V
6)$&+,/' 6)$5227 

6)$*&+ 6)$&+,/' 

SAP AG 2001

n The +HDGHU of a BDoc message contains the message ID, the sender ID and information about the
BDoc instance and BDoc type.
n The first data segment of the ERG\ of a BDoc message is also called URRWVHJPHQW. In contrast to all
other data segments, the root segment only contains one key field. All subsequent data segments
contain two key fields: an own one and the one of the previous data segment.
n For each segment (except for the root segment), a parent segment is specified, inducing a certain
hierarchy among the segments of a BDoc.

AP AG CR550 5-8
6\QFKURQL]DWLRQ%'RF0RGHOLQJ

6\QFKURQL]DWLRQ
%'RF0RGHOLQJ

SAP AG 2001

AP AG CR550 5-9
%'RF0RGHOLQJ2YHUYLHZ

%'RF0RGHOLQJLQ&50;
%'RF0RGHOLQJLQ&50
%'RF0RGHOHU2YHUYLHZ
6\QFKURQL]DWLRQ%'RF0RGHOLQJ

SAP AG 2002

AP AG CR550 5-10
%'RF0RGHOLQJLQ&50[

&506HUYHU
'HYHORSPHQW 'HYHORSPHQW
6WDWLRQ
 $FWLYDWLRQ 5XQWLPH
%'RF0RGHOHU
*HQHUDWLRQ REMHFWV

5HS*XDUGLDQ

 %'RF5HS
6)$'',&
%'RF5HS 
6)$'',&
 6(
1HZWDEOH '',&

 
 

602*B067$% 60
0RELOH
5HSRVLWRU\
6HUYHU
FRS\FRPSDUH

FUHDWHPRGLI\WULJJHU

SAP AG 2001

n Since the BDoc repository has its own data dictionary (SFADDIC), objects created in the ABAP
dictionary (DDIC) have to be copied to this BDoc repository dictionary.
n Each object must be copied twice, once to the BDoc repository on the CRM Server and once to the
BDoc repository on the Mobile Repository Server.
n The RepGuardian, a tool located on the development station, is used for this purpose.

AP AG CR550 5-11
%'RF0RGHOLQJLQ&50

0RELOH&OLHQW &506HUYHU
'HYHORSPHQW 'HYHORSPHQW

$FWLYDWLRQ 5XQWLPH
&OLHQW&RQVROH
*HQHUDWLRQ REMHFWV
 
736&DFKH
%'RF0RGHOHU

 
  
%'RF5HS

1HZWDEOH  6(
'',&
FRS\FRPSDUH

FUHDWHPRGLI\WULJJHU

SAP AG 2001

AP AG CR550 5-12
1HZ%'RF0RGHOHU)HDWXUHVLQ&50

l 6RSKLVWLFDWHGVHOHFWLRQFULWHULDIRU%'RFW\SHV

l ([WHQVLYHYDOLGDWLRQFKHFNV

l 6LWHW\SHDVVLJQPHQWV

l 7KHZKHUHXVHGOLVW

l 3RVWDFWLYDWHJHQHUDWLRQDQGUHOHDVLQJRI%'RFW\SHV

l 7UDQVSRUWRI%'RFW\SHV

l 'RFXPHQWIDFLOLW\IRUHDFK%'RFW\SH

l /RFNLQJDQG$XWKRUL]DWLRQ&RQFHSWV

l )RUZDUGQDYLJDWLRQWR'',&HOHPHQWV

SAP AG 2001

AP AG CR550 5-13
&RQVLGHUDWLRQVIRU%'RF0RGHOLQJ

l &UHDWHRUHQKDQFH"
l %'RFW\SHFRQWHQW ZKLFKWDEOHVZKLFKILHOGV
l %'RFW\SHSXUSRVH FOLHQWRQO\RUGDWDH[FKDQJH
l %'RFW\SHVWUXFWXUH KRZPDQ\VHJPHQWVKLHUDUFK\

6DOHVGRFXPHQW 9%$.
KHDGHUGDWD

1HZ 6DOHVGRFXPHQW
1HZ
WDVN LWHPGDWD
WDVN

&RQGLWLRQV
'DWDH[FKDQJH
'DWDH[FKDQJH

SAP AG 2001

n Create or modify?
Should additional data fields be added to an existing BDoc, or is it an entirely new object type that is
being modeled? In the former case it is usually sufficient to add for example an extra segment to an
existing BDoc, in the latter case a new BDoc needs to be created.
n Will a new BDoc only be used on the client or will it also be used for data exchange between the
mobile client and the CRM Middleware? Will the BDoc be used to retrieve data from the local client
database ( i.e. are WHERE clauses required)?
n The logical (segment) structure of a BDoc should be clearly defined before the BDoc Modeler is
used to actually define the BDoc.

AP AG CR550 5-14
7KH3HUVRQDO)LOWHU

SAP AG 2001

n Set a filter based on which BDoc Types you want to view every time you launch the BDoc Modeler.
n If filter has not been set, the personal filter screen appears every time you start the application.
n Once the personal filter has been set the filter screen does not appear again.
n The personal filter can be changed any time by choosing the filter icon from the toolbar.

AP AG CR550 5-15
6\QFKURQL]DWLRQ%'RF0RGHOLQJ ,

6WHSRQHFUHDWHDQHZ%'RF
$VVLJQVLWHW\SH
6DYH


 (QWHUQDPHDQG
 GHVFULSWLRQ

&UHDWH

6HOHFW
%'RFFODVV

SAP AG 2001

AP AG CR550 5-16
6\QFKURQL]DWLRQ%'RF0RGHOLQJ ,,

6WHSWZRDGGDQHZVHJPHQW 6DYH

(QWHUVHJPHQWQDPH

$GGVHJPHQW
ULJKWPRXVHFOLFN


SAP AG 2001

AP AG CR550 5-17
6\QFKURQL]DWLRQ%'RF0RGHOLQJ ,,,

6WHSWKUHHPDSWKHVHJPHQWWRDGDWDEDVHWDEOH

 

6HOHFWPDSSLQJWDEOH (QWHUDOLDVQDPH

7UDQVIHUWDEOHILHOGV
 IRUVHOHFWLRQ

6HOHFWWDEOH
ILHOGV
([HFXWH

SAP AG 2001

AP AG CR550 5-18
6\QFKURQL]DWLRQ%'RF0RGHOLQJ ,9

6WHSIRXUSURYLGHWDEOHPDSSLQJGHWDLOV

6SHFLI\SULPDU\DQG
 SDUHQWNH\VDVZHOO
DV5 NH\ ILHOGV

0DUNPDSSHGWDEOH
DVXSGDWHDEOH

SAP AG 2001

AP AG CR550 5-19
6\QFKURQL]DWLRQ%'RF0RGHOLQJ 9

6WHSILYHVDYHDQGDFWLYDWHWKHQHZ%'RFW\SH
6DYH


 

&KHFN

$FWLYDWH

SAP AG 2001

n For more information on how to model synchronization BDoc Types, please refer to SAP note
432101.

AP AG CR550 5-20
2SWLRQDO6\QFKURQL]DWLRQ%'RF0RGHOLQJ6WHSV

l -RLQV

l 3DUDPHWHUV:+(5(FODXVHV

SAP AG 2001

n Note that joins, parameter and WHERE clauses are only used on Mobile Clients by the Mobile Sales
/ Service Applications.

AP AG CR550 5-21
-RLQV

l -RLQVFRQWHQWIURPWZRRUPRUHWDEOHVLQRQH%'RFVHJPHQW
l 2QO\IRUPRELOHDSSOLFDWLRQ%'RFW\SHV

&$3*(1B48(5<
&$3*(1B48(5<
&$3*(1B48(5<
&$3*(1B48(5< 6)$.1$.8115

602 .1$
602 .1$ 6)$.1$.8115

602 $'5&
602 $'5& 6)$.1$&28175<

-RLQFRQGLWLRQ 602 .1$6)$.1$


-RLQFRQGLWLRQ 602 .1$6)$.1$ 602 $'5&6)$.1$
602 $'5&6)$.1$

SAP AG 2001

n For data retrieval and display purposes on the mobile client, it may be helpful or even necessary to
include data from two different tables into one single BDoc segment. This can be done by mapping
the segment to two or more tables.
n A join condition on a field common to both tables is then specified to ensure that matching records
from the two tables are retrieved from the database when reading this segment.
n Note that the definitions of join conditions use the table alias names rather than the CDB table
names. For example, a join conditions containing the CDB table SMOKNA1 must use the alias name
KNA1 for that table. The alias names may be viewed in the BDoc Modeler under the mapping tabs.

AP AG CR550 5-22
6\QFKURQL]DWLRQ%'RF0RGHOLQJ 9,

6WHSVL[&UHDWLQJDMRLQFRQGLWLRQ RSWLRQDO

6HOHFWWKH%'RFW\SHWRDGGWKHMRLQFRQGLWLRQ

6HOHFWWKHVHJPHQWDQGULJKWFOLFNRQLW

6HOHFWWKHGLVSOD\RSWLRQIURPWKHFRQWH[WPHQX

&KRRVHWKHMRLQWDE\RXJHWWKHVFUHHQDVVKRZQEHORZ

&OLFNRQWKH(GLW&RQWUROLFRQHQWHUWKHMRLQFRQGLWLRQDQGVDYHWKHGHWDLOV


SAP AG 2002

l Note that the Join condition is not validated by the BDoc Modeler. Please double check your entry.

AP AG CR550 5-23
3DUDPHWHUV:+(5(&ODXVHV

l %'RFSDUDPHWHUVDUHXVHGDVTXHU\SDUDPHWHUVIRUGDWD
UHWULHYDORQWKH0RELOH&OLHQW
l 6WRUHGSURFHGXUHVDUHJHQHUDWHGFRQWDLQLQJWKH:+(5(
FODXVHV

&$3*(1B48(5<
&$3*(1B48(5< 3DUDPHWHUV&28175<

&$3*(1B48(5<
&$3*(1B48(5< 6)$.1$.8115

602 .1$
602 .1$

602 $'5&
602 $'5& 6)$.1$&28175<

:+(5(FODXVH602$'5&&28175<
:+(5(FODXVH602$'5&&28175< &28175<
&28175<

SAP AG 2001

n When using a BDoc on the mobile client for retrieving data from the local database, one might want
to apply a certain condition restricting the data read into the BDoc, possibly to a single record.
n It is possible to specify a number of BDoc parameters and to include them in WHERE clauses which
are then included in the stored procedures generated for the mobile client.
n Example: Based on the example provided on the slide, a stored procedure of the form
... 6(/(&7 ... )520 ... SMOADRC ... :+(5( SMOADRC.COUNTRY = COUNTRY ...
is generated. When offering a combo box in the mobile application it is now possible to select only
those customers that live, for example, in Spain by specifying the parameter value COUNTRY =
Spain (or the identifier for Spain) when invoking the data retrieval.
n BDoc parameters are defined on the BDoc level. The parameter name should be chosen to reflect the
field name it will later be used with in the WHERE clause. The parameter type (data element) can be
chosen by directly specifying it, or by choosing it in accordance with an existing segment field or
table field type (data element).
n WHERE clauses are also used in the CRM Middleware to distinguish for example between CAP and
CON entries in the SOURCE field of table SMOKNA1.

AP AG CR550 5-24
6\QFKURQL]DWLRQ%'RF0RGHOLQJ 9,,

6WHSVHYHQ$GGLQJSDUDPHWHUV RSWLRQDO
n 6HOHFWDQH[LVWLQJ%'RFW\SHDQGFKRRVHWKH3DUDPHWHUVWDE
n (QWHU3DUDPHWHUQDPHVGDWDHOHPHQWVDQGGHVFULSWLRQV
n 6DYHWKHGHWDLOV

SAP AG 2002

AP AG CR550 5-25
6\QFKURQL]DWLRQ%'RF0RGHOLQJ 9,,,

6WHSHLJKW'HILQLWLRQRI:+(5(FODXVHV RSWLRQDO

n 8VDJHVHOHFWRQO\DVXEVHWRIREMHFWV

n :+(5(FODXVHVDOORZWKHILOWHULQJRQVHJPHQWILHOGV

n 3URFHGXUH

w 6HOHFWWKH%'RFW\SH

w 6HOHFWWKHVHJPHQW

w ([SDQGWKHVHJPHQWWRYLHZWKHPDSSLQJV

w 'RXEOHFOLFNWKHPDSSLQJWRDGGWKH:+(5(FODXVH

SAP AG 2001

AP AG CR550 5-26
3RVVLEOH$FWLYLWLHVIRU%'RF7\SHV

3RVVLEOH$FWLYLWLHVIRU
%'RF7\SHV

SAP AG 2001

AP AG CR550 5-27
3RVVLEOH$FWLRQVIRU%'RF7\SHV ,

$FWLYDWHD%GRF7\SH %'RF

%'RF
&RS\D%GRF7\SH
%'RF
%'RF %'RF
6WRUHG
6WRUHG
*HQHUDWH6WRUHG3URFHGXUHV 3URFHGXUHV
3URFHGXUHV
*HQHUDWLRQ
*HQHUDWLRQ
%'RF
%'RF
0HWDGDWD
0HWDGDWD

*HQHUDWH56HUYLFHV *HQHUDWLRQ
*HQHUDWLRQ

%'RF %'RF
%'RF
5HSRVLWRU\
5HSRVLWRU\

SAP AG 2002

n Activate a BDoc Type


Choose the BDoc Type and click on the Activate icon on the toolbar or right-click on the BDoc
type and select Activate. Active BDoc Types are available to other applications. When activating a
BDoc Type the inactive copy of the selected BDoc becomes the active copy and the previously
Active copy is archived. A new version of the BDoc Type is created every time an active BDoc
Type is modified. Once a BDoc Type is activated the necessary runtime objects, I.e. services and
structures, are generated. For example: the KeyGen service, the CDB service etc.
Copy a BDoc Type: Choose the BDoc Type and click on the Copy icon on the toolbar or right-
click on the BDoc and choose the Copy BDoc option. When a BDoc type is copied the target
BDoc type is automatically given the properties of the original BDoc type.
n Generating Stored Procedures
Stored procedures are generated automatically when a synchronization BDoc Type or a mobile
application BDoc Type is activated. Stored procedures may also be generated by a right-click on
the BDoc Type and choosing Generate Stored Procedures. The BDoc Modeler generates stored
procedure code, which is used by the BDoc Layer on the mobile client to fetch data from the local
database. The Client Console Meta Data Generator uses this code to create separate stored
procedures on the mobile client.
Generate R/3 services: There is an option to manually regenerate all runtime objects, I.e. structures
and services, on the CRM Server, which are needed to process messages of this BDoc Type.
However, this happens automatically, when a BDoc Type is activated.

AP AG CR550 5-28
3RVVLEOH$FWLRQVIRU%'RF7\SHV ,,

7UDQVSRUWD%'RF7\SH &506HUYHU %'RF &506HUYHU


(Development) CTS (Test & Qual.)

5HOHDVHD%'RF7\SH

&RQVLVWHQF\&KHFNV
%'RF
n 7KLQJVWKDWDUHFKHFNHG QRWDFRPSOHWHOLVW 
(YHU\VHJPHQWPXVWKDYHH[DFWO\RQHSULPDU\NH\


3ULPDU\NH\PXVWEHD*8,' RIW\SH&+$5RU5$:


&RQVLVWHQWZLWK'',&REMHFWV HJPDSSHG&'%WDEOHPXVWEH


DFWLYH



SAP AG 2001

n Transport a BDoc Type


A BDoc Type can be transported from one system to the other via the SAP Change and Transport
System (CTS). Every time a new BDoc Type is activate it is automatically added to a transport.
n Release a BDoc Type
Once a BDoc Type has been modeled and activated, it can be released. For released
BDoc Types only upgrade compatible changes (enhancements) are allowed.
n Consistency Checks
The BDoc Modeler allows checks, whether BDoc Types are free of errors. These checks can be
performed on active or inactive BDoc Types. Once a BDoc Type is checked and no
inconsistencies were found, it can be activated. Consistency checks are performed on data
segments, mapping definitions, segment fields and WHERE clauses.

AP AG CR550 5-29
([WHQVLYH9DOLGDWLRQ&KHFNV

'XULQJ%'RF0RGHOLQJHUURUVDUHORJJHGDQGGLVSOD\HG
XVLQJWUDIILFOLJKWV
n 5HGOLJKWVLQGLFDWHPRGHOLQJHUURUVLQWKH%'RF7\SH
n *UHHQOLJKWVLQGLFDWHWKDWHYHU\WKLQJLVILQH

(UURUVFDQEHGLVSOD\HGXVLQJWKH9LHZ(UURUVRSWLRQ

SAP AG 2001

AP AG CR550 5-30
7KH:KHUH8VHG/LVW

3RVVLELOLW\WRVHDUFKIRU%'RF7\SHVFRQWDLQLQJFHUWDLQ

n 'DWDHOHPHQWV
%'RF

n 'RPDLQV
" %'RF

"
n 7DEOHV

n 7DEOHILHOGV
"
7DEOH
%'RF
n 'DWDVHJPHQWV

SAP AG 2001

The Where-used-list allows you to search for BDoc Types containing certain data elements,
domains, tables, table fields and data segments.

You can specify the search criteria. The list of all the instances that fit to the search criteria are
displayed in a separate window.

Note that it is also possible to use the filter option of the BDoc Modeler for sophisticated queries.

AP AG CR550 5-31
1DYLJDWLRQWR'',&2EMHFWV

1DYLJDWLRQ
n )URPSDUDPHWHU VHJPHQWILHOGVVFUHHQVWRGDWDHOHPHQWV
n )URPPDS VHJPHQWPDSVFUHHQVWRWDEOHGHILQLWLRQV

! "$#%!'& #(

SAP AG 2001

AP AG CR550 5-32
/LIH&\FOHRI%'RF7\SHV

/LIH&\FOHRI
%'RF7\SHV

SAP AG 2001

AP AG CR550 5-33
/LIH&\FOHRI%'RF7\SHV

9HUVLRQQ 9HUVLRQQ
0RGLILFDWLRQV
%'RF SRVVLEOH %'RF

1HZ,QDFWLYH
QRWFKHFNHG ,QDFWLYH

,QDFWLYH ,QDFWLYH
 FKHFNHGQRW2.  FKHFNHG2.

3DUWLDOO\
UHOHDVHG
$FWLYH

'HOHWH
2QO\
5HOHDVHG HQKDQFHPHQWV
SRVVLEOH

SAP AG 2001

n Active BDoc types


A copy of a BDoc type used by the BDoc Layer at run time
This BDoc type is non editable
n Inactive BDoc types
A copy of BDoc opened as an edit copy to make modifications
n Released BDoc types
The BDoc type is released for transportation
This BDoc type can not be deleted
n Partially Released BDoc types
At least one version of the BDoc has been released
This BDoc type can not be deleted
n Changes to BDoc Types are distinguished between PRGLILFDWLRQVand HQKDQFHPHQWV. BDoc Type
enhancements can automatically merged with new versions of BDoc Types during an upgrade,
whereas BDoc Type modifications must be merged manually.

AP AG CR550 5-34
8SJUDGHFRPSDWLEOH%'RF7\SH(QKDQFHPHQWV

%'RFW\SH

$GGQHZ
VHJPHQWILHOGV
$GGQHZ
VHJPHQWV

l &RPSDUH6$3QRWHIRUPRUHLQIRUPDWLRQ

SAP AG 2002

n Upgrade compatible enhancements:


New parameters can be added at the end.
Modification or deletion is possible only for the unreleased parameters.
New site types can be added at the end.
New segments can be added at any level i.e. child or sibling level.
On existing released segments you can modify the segment description, cascade delete option, use
map and select distinct.
New join conditions can be added at the end.
New segment fields can be added at the end.
For released segment fields you can modify the R/3 field flag, Sort Order and Sort Ascending
Flag.
All dynamic WHERE clauses can be modified or deleted, new WHERE clauses can be added.
Modified SAP WHERE clauses are not automatically merged during an update with a newer
version of the BDoc Type.
Customers should use the Z namespace for their changes.

AP AG CR550 5-35
8SJUDGHLQFRPSDWLEOH%'RF7\SH0RGLILFDWLRQV

&KDQJHVWRWKHH[LVWLQJVHJPHQWKLHUDUFK\

'HOHWLRQRIUHOHDVHGVHJPHQWV

0RGLILFDWLRQVRQUHOHDVHGSDUDPHWHUV

0RGLILFDWLRQVRQUHOHDVHGVLWHW\SHV

0RGLILFDWLRQVRQUHOHDVHGPDSV

0RGLILFDWLRQVRQUHOHDVHGMRLQFRQGLWLRQV

0RGLILFDWLRQVRUGHOHWLRQVRIH[LVWLQJVWDWLF:+(5(FODXVHV

SAP AG 2002

AP AG CR550 5-36
0HUJLQJRI%'RF7\SHV

0RGLILFDWLRQVRQVWDQGDUG%'RF7\SHVDUHSRVVLEOH

1HZ%'RF7\SHUHODWHGGHYHORSPHQWVE\6$3SRVVLEOH
&XVWRPHU
PRGLILFDWLRQV
9HUVLRQQ
9HUVLRQQ %'RF
%'RF %'RF
%'RF
6$3
GHYHORSPHQW 0DQXDOPHUJH

&RQIOLFWGXULQJWKHQH[WXSJUDGH
n 6$3GHYHORSPHQWPD\EHDFFHSWHGRU
n 7ZR%'RF7\SHYHUVLRQVPD\EHPHUJHG

%'RF0RGHOHUVXSSRUWVPHUJLQJRI%'RF7\SHV
SAP AG 2001

n The BDoc Modeler displays all BDoc Types that are in an inconsistent state after an upgrade. With a
double-click on the Inconsistent State icon the new SAP development may either be accepted (by
choosing the Select option) or merged with the modified BDoc Type (by choosing the Merge
option).

AP AG CR550 5-37
%'RF0RGHOLQJ , 8QLW6XPPDU\

<RXDUHQRZDEOHWR

l 6\QFKURQL]DWLRQ%'RF7\SHV
l 6\QFKURQL]DWLRQ%'RF0RGHOLQJRYHUYLHZ
l 'HILQLWLRQRIDQHZV\QFKURQL]DWLRQ%'RF7\SH
l 2SWLRQDO%'RF0RGHOLQJVWHSV

SAP AG 2001

AP AG CR550 5-38
([HUFLVHV

8QLW %'RF0RGHOLQJ,
7RSLF ([DPLQLQJV\QFKURQL]DWLRQ%'RFW\SHV

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


Examine the structure of a synchronization BDoc type.

BDoc types are the main data structure for data processing within the CRM Middleware.
The internal structure of BDoc types can be viewed and changed using the BDoc
Modeler.

1-1 Examine the structure of a synchronization BDoc type

1-1-1 Launch the BDoc Modeler.

1-1-2 Determine the structure of the synchronization BDoc type used for the exchange
of business partner between the CRM Middleware and mobile clients. Which
CDB database tables does the BDoc type contain?

AP AG CR550 5-39
([HUFLVHV

8QLW%'RF0RGHOLQJ,
7RSLF6\QFKURQL]DWLRQ%'RF0RGHOLQJ

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


Create a new synchronization BDoc type.

The tool to perform this exercise is the BDoc Modeler.

2-1 Create a new synchronization BDoc type


The objective now is to add a new synchronization BDoc type with one (root) segment.
Afterwards the segment needs to be mapped to the fields of the new table =&5B.

2-1-1 Create the new synchronization BDoc type =&5BB6<1&. Enter the
BDoc QDPH, a VKRUWQDPH and a GHVFULSWLRQ. Mark it as a 6\QFKURQL]DWLRQ
%'RF. Assign the new synchronization BDoc type to the site type Mobile Client
via the tab header 6LWH7\SH,QIR. Choose the 6LWH7\SH,'to be 60: (mobile
client). Press the 6DYHbutton. The new BDoc type will now appear with the
status Inactive .
Note that the BDoc type name is displayed as the name for the BDoc type
within the BDoc Modeler and that the short name is used as an identifier in the
CRM Middleware repository. To avoid any confusion, make sure that the name
and the short name are identical.

2-1-2 Add a segment to the BDoc type (press the &UHDWH6HJPHQW button or just press
)). Enter =&5BB5227 as the name for the new segment and provide a
description for the new segment. Press the 6DYHbutton.

2-1-3 Directly map the segment to your new table by a right mouse click on the new
segment and selecting 'LUHFW0DS in the popup menu. Enter the name of the
CDB table and an alias for the table. The alias name is used only for displaying
purposes. Select the row and press the *HW)LHOGV button. Select all fields as
segment fields and confirm your selection with the ([HFXWHbutton.

2-1-4 Go to the 0DSSLQJV tab and mark the CDB table in the 8SGDWHPDS column.

AP AG CR550 5-40
2-1-5 Go to the 6HJPHQW)LHOGV tab and specify the GUID key, i.e. 6)$&5B, as
the primary key. Since this segment is the root segment there is no need to
specify a parent key.
Furthermore mark the R/3 fields and R/3 key fields of this segment. 'RQRW
PDUNWKHILHOG0$1'7DVHLWKHURQHLWLVWKH0$1'7ILHOGRIWKH&50
V\VWHPDQGLWLVQRWH[FKDQJHGZLWKWKH5%DFN(QG Make sure that the
segment attributes have the following values:

)LHOG 5)LHOG 5.H\


0$1'7 1R 1R
6)$&5B 1R 1R
&28175< <HV <HV
&217,1(17 <HV 1R
Save your changes. Check your new synchronization BDoc type and activate it.

2-1-6 While you are waiting for the generation of the runtime objects, you may check
the generation process using the transaction
0LGGOHZDUH!*HQHUDWLRQ!*HQHUDWLRQ/RJ!'LVSOD\/RJ 602*/2* .

AP AG CR550 5-41
6ROXWLRQV

8QLW%'RF0RGHOLQJ,
7RSLF([DPLQLQJV\QFKURQL]DWLRQ%'RFW\SHV

1-1 Examine the structure of a synchronization BDoc type

1-1-1 The BDoc Modeler can be invoked via the transaction:


0LGGOHZDUH'HYHORSPHQW%'RF0RGHOHU

1-1-2 The synchronization BDoc type that is used for the exchange of sales
documents between the CRM Middleware and the mobile clients is called
6$/(6'2&*(1B2%-(&7B:5,7((compare course slide &RPPRQ%'RF
7\SHVLQ&50 in Unit 02). In the displayed list of BDoc types you can unfold
the BDoc type for sales documents to navigate through the data segments and
view the CDB tables they are mapped to. For more information about a
particular data segment or CDB table, double click on the object in the list.

AP AG CR550 5-42
$GDSWHU&XVWRPL]LQJ

&RQWHQWV

l 5HSOLFDWLRQRIPHVVDJLQJ%'RFPHVVDJHV
l $GDSWHU2EMHFWV

SAP AG 2001

AP AG CR550 6-1
$GDSWHU&XVWRPL]LQJ8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l $GPLQLVWHUWKH5HSOLFDWLRQRIP%'RFPHVVDJHV
l 8QGHUVWDQGWKHFRQFHSWRI$GDSWHU2EMHFWV
l &UHDWH$GDSWHU2EMHFWV

SAP AG 2001

AP AG CR550 6-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 6-3
'DWD([FKDQJH2YHUYLHZ

8VHWKH$GPLQLVWUDWLRQ&RQVROHWR
n 'HILQHWKHSRWHQWLDOGDWDUHFHLYHUV LH6LWHV
n 0DLQWDLQWKHGDWDGLVWULEXWLRQPRGHO
n 7ULJJHUWKHGDWDH[WUDFWVWR0RELOH&OLHQWV $GPLQLVWUDWLRQ
&RQVROH

8VHWKH$GDSWHUVWR
n 3HUIRUPWKHGDWD/RDGVEHWZHHQWKH&506HUYHUDQG
6$35%DFN(QGV
;0/62$3UHFHLYHUV
,'RFUHFHLYHUV

n ,QFOXGLQJGDWDIRUPDWFRQYHUVLRQ

SAP AG 2001

n The $GDSWHU)UDPHZRUN offers adapters and Adapter Objects for the data exchange with data
receivers of site type R/3, XML, IDoc, CRM and CDB for loading data through the CRM
Middleware.
n The replication described in the last unit and performed in the $GPLQLVWUDWLRQ&RQVROH permits
loading data from a CRM Server towards external systems: R/3, XML, IDoc and Mobile Clients.
n This unit describes the R/3 Adapter and its Adapter Objects. The R/3 Adapter is used to perform
Loads between the CRM Server and an R/3 Back-End.
n Usually, a project implementation will start performing initial Loads from external systems (backend
systems). The Administration Console with its replication functionality has been introduced first (see
last unit) as the replication is a basic concept of the CRM Middleware. Source sites for an Initial
Load (described in this unit) also have to be created in the Administration Console first.
n A data format conversion between the CRM Middleware and the R/3 Back-End is necessary,
because the BDoc types are not known in the R/3 Back-End.

AP AG CR550 6-4
6LWH7\SH&RQFHSW

6DPH 6DPH
VLWHW\SH VLWHW\SHV

6LWH$ 6LWH% 6LWH& 6LWH' 6LWH(

1RQ5
0RELOH&OLHQWV 5%DFN(QG
%DFN(QGVYLD;0/

SAP AG 2001

n Every receiver of messages is represented within the CRM Middleware by a VLWH. There is a one-to-
one relationship between sites and physical receivers. Sites are the only addressable unit for the
Replication (not users). They are identified by a globally unique identifier (GUID).
n Each site is of a VLWHW\SH. Sites of the same type use the VDPHDGDSWHU for exchanging data between
the CRM Server and the sites. SAP provides a number of standard site types: CRM, CDB, R/3,
Mobile client, External interface for XML, External interface for IDocs. A site representing an SAP
R/3 Back-End is of site type R/3.
n Sites are maintained in the Administration Console, which is a transaction on the CRM Server.

AP AG CR550 6-5
9LHZLQJ6LWH7\SHV

6WDQGDUG6$3&506LWH7\SHV
n5%DFN(QG
n0RELOH&OLHQW
n([WHUQDO,QWHUIDFHIRU,'2&V
n([WHUQDO,QWHUIDFHIRU;0/

6SHFLDOVLWHW\SHV
n&50
n&'% &RQVROLGDWHG'DWDEDVHIRU
0RELOH&OLHQWV

0DLQWDLQHGYLDWKH$GPLQLVWUDWLRQ
&RQVROH

SAP AG 2001

n The different adapters in Adapter framework are associated with predefined site types:
R/3 Back-End: R/3 Adapter
Mobile Client: Mobile Bridge
External Interface for IDOCs: IDOC adapter
External Interface for XML: XIF adapter
n Site types CRM and CDB
In CRM 3.0 only one instance allowed
Important for starting initial loads, but no subscriptions possible

AP AG CR550 6-6
$GPLQLVWUDWLRQRI56LWHV ,

6LWHVDUHDGPLQLVWHUHGYLDWKH$GPLQLVWUDWLRQ&RQVROH

&UHDWLRQRIDQ5VLWH
n &KRRVHW\SH5

n 5DWWULEXWHVIRU5VLWHV
5)&'HVWLQDWLRQ ORJLFDOV\VWHP 5UHOHDVH

0XVWEHHQWHUHG $XWRPDWLFDOO\ $XWRPDWLFDOO\


PDQXDOO\ GHWHUPLQHG GHWHUPLQHG

SAP AG 2001

n R/3 Sites are determined by an RFC destination, a logical system and the release of the R/3 Back-
End.

AP AG CR550 6-7
$GPLQLVWUDWLRQRI56LWHV ,,

5HPDUNV
n $GPLQLVWUDWLRQ&RQVROHVXSSRUWV
&UHDWLRQ
&KDQJHDQG
'HOHWLRQRI5VLWHV

n ([FHSWLRQ56LWHVZLWKVXEVFULSWLRQVFDQQRWEHGHOHWHG
WKHVXEVFULSWLRQVPXVWEHUHPRYHGILUVW
n 5VLWHVDUHDVVRFLDWHGWRPHVVDJLQJ%'RFW\SHV

&506HUYHU
5
P%'RF
5

SAP AG 2001

AP AG CR550 6-8
5HSOLFDWLRQRIP%'RFPHVVDJHV ,

2QHRUPRUH6LWHVFDQPDLQWDLQHGZLWKWKHUHSOLFDWLRQPRGHO
n P%'RFVDUHUHSOLFDWHGWR56LWHVDQGH[WHUQDOLQWHUIDFHV ;,)

5%DFN(QG
&506HUYHU %$3,
6WUXFWXUHV
5
P%'RF
;,) 1RQ6$3
;0/62$3
%DFN(QG
,'RFV

n %$3,VWUXFWXUHVDUHXVHGIRUWKHGDWDH[FKDQJHEHWZHHQ&50VHUYHU
DQG5%DFN(QG

n ;0/62$3,'RFVPD\EHXVHGIRUQRQ6$3%DFN(QGV

SAP AG 2001

n Note that it is technically possible to connect one CRM Server to multiple R/3 Back-Ends. However,
there are a lot of restrictions for such scenarios. Please consult the Component Integration Web page
for further information (SAPNet alias: FUPFL).

AP AG CR550 6-9
5HSOLFDWLRQRIP%'RFPHVVDJHV ,,

0HVVDJLQJ%'RF7\SHV

n 7ZRUHSOLFDWLRQW\SHVDUHVXSSRUWHG

6LPSOHLQWHOOLJHQWUHSOLFDWLRQ

6LPSOHEXONUHSOLFDWLRQ

n 1RORRNXSWDEOHVH[LVWIRUUHSOLFDWLRQFDOFXODWLRQV

n 1RUHDOLJQPHQWVXSSRUWHG

n 1RGHSHQGHQFLHVVXSSRUWHG

n 0XVWEHFRPSOHWHO\ILOOHG

SAP AG 2001

AP AG CR550 6-10
$GDSWHU2EMHFWV

0DLQFDWHJRULHVRI$GDSWHU2EMHFWV
n %XVLQHVV2EMHFWV&XVWRPL]LQJ&RQGLWLRQV

'HILQLWLRQ
n /LQNWRDVVRFLDWHG%'RF
n ,QLWLDO)ORZ&RQWH[WV
n 'DWDFRQWHQWV WDEOHV
n ([WUDFWPRGXOHVLQVRXUFHV\VWHP
n 0DSSLQJPRGXOHVIRUGDWDH[FKDQJH
 LQERXQGDQGRXWERXQG

&XVWRPL]LQJRI$GDSWHU2EMHFWV
n )LOWHUV VLWHGHSHQGHQW
n ,Q $FWLYDWLRQ
n %ORFNVL]H

SAP AG 2001

n Adapter Objects are predefined and delivered to the customer.


n A link to a BDoc Type (messaging or synchronization) defines the possible data flows.
n A possible data exchange is configured by defining an Initial Flow Context, which depends on the
BDoc Type.
n The data contents is important for the Initial Load, for the filter settings and the generic mapping.

AP AG CR550 6-11
9LHZLQJ$GDSWHU2EMHFWV

l ([DPSOH%XVLQHVV3DUWQHU
$GDSWHU2EMHFW
QDPH

'HVFULSWLRQ

%'RF7\SH

1XPEHURIREMHFWV
,QLWLDO)ORZ LQRQH%$3,FDOO
&RQWH[WV

SAP AG 2001

n Messaging BDoc Type BUPA_MAIN is linked to the Adapter Object BUPA_MAIN.


n All Initial Flow Contexts are possible for Business Partner.
n The block size is important for the data extract and processing.

AP AG CR550 6-12
9LHZLQJ6LWH'HSHQGHQW)LOWHU

n (YHU\ILOWHUUHODWHVWRRQH6LWH

:KHUHWRDSSO\
6LWH WKHILOWHU
)LOWHUGHILQLWLRQV

SAP AG 2001

AP AG CR550 6-13
)LOWHU6HWWLQJV

l )LOWHUVDUHDSSOLHGGXULQJWKHGDWDH[WUDFWLH
)URP5WR&50,QLWLDODQG'HOWD/RDGV


)URP&50WR5,QLWLDO/RDGRQO\
'HOWD/RDGVDUHFRQILJXUHGYLD6XEVFULSWLRQV


l 3XUSRVH
5HGXFHWKHGDWDYROXPHEHWZHHQWKH5%DFN(QGDQGWKH&50
6HUYHU


.HHSWKH5VSHFLILFGDWDZLWKLQWKH5%DFN(QG


l 2SWLRQV
)LOWHUVVWRUHGDQGDSSOLHGRQO\LQVRXUFHGDWDEDVH HJ5


)LOWHUVVWRUHGDQGDSSOLHGRQO\LQWDUJHWGDWDEDVH HJ&50


)LOWHUVVWRUHGDQGDSSOLHGLQERWKGDWDEDVHV


l %XVLQHVVREMHFWVDQGFRQGLWLRQREMHFWVRQO\VSHFLILFILOWHUVDUH
DOORZHG HJIRU3DUWQHUQXPEHUIRU%87
l &XVWRPL]LQJREMHFWVQRUHVWULFWLRQVEXWFKHFNIRU'',&
FRQVLVWHQF\

SAP AG 2001

n Filter settings are part of customizing the system.


n If data is filtered in the source system, i.e. the R/3 Back-End, the filter will be applied to the data
before it is send to the CRM Server. This reduces the data traffic between the R/3 Back-End and the
CRM Server. The filters are also available for Delta Loads (R/3 Back-End to the CRM Server).
n This concept is new with the CRM release 3.0.
n The filter settings must be activated manually. Please refer to the application documentation for
further information.

AP AG CR550 6-14
(QKDQFHPHQWLQ$GDSWHU)UDPHZRUN

7KH&50$GDSWHU)UDPHZRUNLVH[WHQVLEOH

n 1HZDGDSWHUVIRUQHZVLWHW\SHV

n 1HZREMHFWVIRUH[LVWLQJVLWHW\SHV

n 0RGLILFDWLRQRIDGDSWHUREMHFWV

SAP AG 2001

n New adapters for new site types require a big effort. Existing site types cover most backend systems
(R/3, IDOC, XML).
n Enhancement of Adapter Objects exchanged with R/3 Back-End is still the most popular case
(although CRM 3.0 is also a stand-alone solution).

AP AG CR550 6-15
&UHDWLQJ$GDSWHU2EMHFWV ,


6WHSRQHFUHDWHDQHZ$GDSWHU2EMHFW (QWHUD

QDPH (QWHUD
 GHVFULSWLRQ
3UHVV5HWXUQ

6HOHFW
%'RFW\SH


(QDEOHWKH
 6\QFKURQL]DWLRQ/RDG
(QWHUWKH
EORFNVL]H

SAP AG 2002

n To create a new Adapter Object start the transaction


0LGGOHZDUH!'DWD([FKDQJH!2EMHFW0DQDJHPHQW!&XVWRPL]LQJ2EMHFWV 5$& 
n Firstly, enter the Object a name. The new object must lie in the customer name space, I.e. the name
must start with Y or Z.
n Press return so that the other fields are ready for input.
n Then enter a description of your object in the field right of the object name.
n The object class is automatically filled with CUSTOMIZING. The object class can be changed
later.
n Choose the BDoc that you want to link with your object.
n The block size specifies the number of objects to be downloaded in one BAPI call. This number
should not be too small to avoid too many calls and thus time-consuming processing, nor should it be
too large to avoid timeouts. Usually this number lies in the range of 100 to 1000.
n Make sure that before enabling the Synchronization Load (by entering COMPARE in the function
field) that the prerequisites are fulfilled. Please consult the SAP note 452582 for further details.

AP AG CR550 6-16
&UHDWLQJ$GDSWHU2EMHFWV ,,

6WHSWZRGHILQHWKH)ORZ&RQWH[WVIRU,QLWLDO/RDGV


6HOHFWVRXUFH
DQGWDUJHW6LWH

SAP AG 2002

n The initial Flow Contexts define, which Flow Contexts are used to process BDoc messages on the
CRM Server. The source Site Type can be R/3 or CRM, depending on if you want to Load the data
from an R/3 Backend system or from the CRM Server. Choose the appropriate.

AP AG CR550 6-17
&UHDWLQJ$GDSWHU2EMHFWV ,,,

6WHSWKUHHGHILQHWDEOHPDSSLQJV


(QWHUWKHWDEOHQDPH
RIWKHWDUJHW6LWH

 
(QWHUWKHWDEOHQDPH 3DUHQWWDEOHQDPHRI
RIWKHVRXUFH6LWH WKHVRXUFH6LWH

SAP AG 2001

n Enter the tables that you want to load. For each table you have to enter a mapped table, that is the
name of the CDB table, which will be filled. The table name for the target site can be left blank, if
the loaded data is mapped to a messaging BDoc type.
n If there are table dependencies in the way that data for a child table should that matches extracted
data of the father table, then you can enter this relation in the second column, even if the BDoc does
not contain any father-child relations. If the child tables contain all key fields from the father as
fields themselves, then this is all you have to to to maintain the relationship. If this is not the case,
refer to step four.

AP AG CR550 6-18
&UHDWLQJ$GDSWHU2EMHFWV ,9

6WHSIRXUVSHFLI\WDEOHVWUXFWXUHKLHUDUFKLHV RSWLRQDO
([DPSOH

FATHER-TABLE
KEY1

CHILD-TABLE
KEY2

SAP AG 2002

n If you have defined a relationship within the object of two tables and the key fields (that is of the
source table) of the father table are not present as fields (not necessary key fields) in the child table,
you have to enter all the fields that should be used for identifying the relationship.

AP AG CR550 6-19
&UHDWLQJ$GDSWHU2EMHFWV 9

6WHSILYHVSHFLI\LQJPDSSLQJPRGXOHVRQWKH&506HUYHU

0DSSLQJIXQFWLRQ
%'RFPHVVDJH!
%$3,FRQWDLQHU

0DSSLQJIXQFWLRQ
%$3,FRQWDLQHU!
%'RFPHVVDJH

7KHJHQHULFPDSSLQJPRGXOH %$3,!V%'RF LVFDOOHG


0$3B%$3,07&6B72B&86720,=,1*
SAP AG 2002

n You have to enter all the mapping modules that you want the data to go through after the extraction.
If you want to use the generic mapping functionality (e.g.for the Synchronization Load), just enter
MAP_BAPIMTCS_TO_CUSTOMIZING .
n Save your changes and regenerate the BDoc type function via the transaction
0LGGOHZDUH'HYHORSPHQW*HQHUDWLRQ*HQHUDWLRQ*HQHUDWH6HUYLFHV 602**(1 

AP AG CR550 6-20
&UHDWLQJ$GDSWHU2EMHFWV 9,

6WHSVL[XVLQJDQRQJHQHULFH[WUDFWRU RSWLRQDO

6HOHFW
WDUJHWVLWH 6SHFLI\
 $GDSWHU2EMHFW

&KRRVH'

(QWHU
 &XVWRPL]LQJ

6SHFLI\
H[WUDFWRU
PRGXOH

7KHJHQHULFH[WUDFWRULVFDOOHG&56B&86720,=,1*B(;75$&7

SAP AG 2002

n You can use your own extractor rather than the generic extractor. This however is only
recommended if it is not possible to extract the data with the generic extractor. This could be the case
if you want to extract data from a table A according to a table B that you do not want to download.
n The example extractor is kept very simple. It handles only one table without any relations to another
table. This could also be handled by the generic extractor. This example should be copied and
enhanced.
n After activating the new extractor module, a new entry in the table CRMSUBTAB via the
transaction 60must be created.
n For more information about the implementation of extractor modules, refer to the unit 5$GDSWHU
&XVWRPL]LQJ.

AP AG CR550 6-21
5HVXOW

$QHZ&XVWRPL]LQJ$GDSWHU2EMHFW

,QLWLDO/RDGIRUWKH5WDEOHVSRVVLEOH

/LPLWDWLRQVRI&XVWRPL]LQJ$GDSWHU2EMHFWV
n 2QO\,QLWLDODQG6\QFKURQL]DWLRQ/RDGVSRVVLEOH

/LPLWDWLRQVRIWKLVH[DPSOH
n 8VHRIJHQHULF0DSSHU([WUDFWRU
n 1R'HOWD
n 2QO\PDSSLQJWRV%'RF7\SHV
&RQVHTXHQFHWDEOHFRQWHQWVWRUHGLQWKH&'%


n 1RPDSSLQJWRP%'RF7\SHVDSSOLFDWLRQWDEOHV

SAP AG 2002

AP AG CR550 6-22
*HQHULF0HFKDQLVPVLQWKH5$GDSWHU

n *HQHULFH[WUDFWIXQFWLRQDOLW\LVDYDLODEOHIRU&XVWRPL]LQJ2EMHFWV
FRQVLVWHQWZLWKVRPHPRGHOLQJUXOHV

n )XQFWLRQPRGXOH&56B&86720,=,1*B(;75$&7LVH[LVWLQJLQ&50DQG
5

n *HQHULFPDSSLQJIXQFWLRQDOLW\LVDYDLODEOHIRU&XVWRPL]LQJ2EMHFWVOLQNHG
WRV\QFKURQL]DWLRQ%'RFV

n )XQFWLRQPRGXOH0$3B%$3,07&6B72B&86720,=,1*JHQHULFDOO\PDSV
&RQWDLQHU6WUXFWXUH%$3,07&6WR&'%VWUXFWXUHV

SAP AG 2001

Only for simple data models.


Only 1:n relations of the containing database tables
Hierarchy-depth 2 (Main table + child tables directly related to main table).

If usable:
No additional extractor needs to be programmed.
No additional programming to select and send data block wise.

No Mapping function module needed, if


The relation between the source and destination table is 1:1.
The table field names of the source and destination tables are the same and have the same
meaning.

AP AG CR550 6-23
0DSSLQJ2YHUYLHZ6FHQDULR,

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH

P%'RF
5'%
%$3,07&6 7DEOH
*HQHULF
*HQHULF
*HQHULF
*HQHULF ([WUDFWRU
([WUDFWRU
0DSSHU
0DSSHU
V%'RF

&'%6HUYLFH
&'%6HUYLFH
&'%
7DEOH

SAP AG 2001

AP AG CR550 6-24
$GDSWHU&XVWRPL]LQJ8QLW6XPPDU\

<RXDUHQRZDEOHWR

l 5HSOLFDWLRQRIPHVVDJLQJ%'RFPHVVDJHV
l $GDSWHU2EMHFWV

SAP AG 2001

AP AG CR550 6-25
([HUFLVHV

8QLW $GDSWHU&XVWRPL]LQJ
7RSLF &UHDWLQJ$GDSWHU2EMHFWV

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


Create an Adapter Object to support the Initial Load of a new table.
Start and monitor the Initial Load of this new data.

The new CDB table and synchronization BDoc type have been created.
The final step is to configure the Adapter Framework to support the
Initial Load and mapping of the R/3 database table into the new CDB
table. The Customizing Load Objects will be used for this purpose, as it is
a generic and flexible tool.
Afterwards, the Initial Load can be started and monitored.

1-1 Create an Adapter Object

1-1-1 In the 2EMHFW0DQDJHPHQW component of the 'DWD([FKDQJH menu, add a new


customizing Adapter Object =&5BB6<1&, which corresponds to the
BDoc type of your group.

1-1-2 Specify the Initial Load Context.

1-1-3 For this new Adapter Object, enter the table relationship (R/3 Back-End and
CDB tables) for the mapping of data during the load process.

1-1-4 Optionally set a filter condition so that only those countries are loaded from the
R/3 Back-End, which belong to a particular continent (i.e. AFRICA,
AMERICA, ANTARCTICA, ASIA, AUSTRALIA, EUROPE).

1-1-5 Maintain the mapping function module for the mapping from the BAPIMTCS
structure to the synchronization BDoc type.

1-1-6 Regenerate the Adapter Object and BDoc type runtime objects manually.

1-2 Start and monitor the Initial Load

1-2-1 Start an Initial Load for the newly defined Adapter Object.

1-2-2 Monitor the Initial Load using the load monitor, inbound queues, etc.

AP AG CR550 6-26
([HUFLVHV

8QLW $GDSWHU&XVWRPL]LQJ
7RSLF 5HSOLFDWLRQ0RGHOLQJ RSWLRQDO

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


Define Replication Objects.
Define Publications.

A new synchronization BDoc type has been added to the CRM


Middleware to support extra functionality.
Now, the distribution of BDoc messages of this new type needs to be
defined and entered into the system. A new Replication Object is
designed and assigned to a new publication.

2-1 Define a Replication Object

2-1-1 Create a new Replication Object =&5B from your BDoc type. Please use
the short ID = to identify the new Replication Object. It should be an
intelligent replication object with the two possible criteria fields &28175<
and &217,1(17, both with an Equal operator. The Replication Object does
not depend on other BDoc types, so that no parent BDoc type is needed.

2-2 Define a Publication

2-2-1 Create a new Publication =&5B E\&RXQWU\ containing the


Replication Object you created in the previous exercise, using the criteria field
&28175< as the replication-relevant field.

AP AG CR550 6-27
([HUFLVHV

8QLW $GDSWHU&XVWRPL]LQJ
7RSLF &KHFNLQJWKHUHVXOWVRIWKHHQWLUHVFHQDULR
RSWLRQDO
At the conclusion of this exercise, you will be able to:
Check the results of the entire customizing process performed in the
sequence of exercises.

Now that all steps of the scenario have been executed, the results of the
Initial Load need to be checked. Can the data be distributed to the mobile
clients defined in an earlier exercise?

3-1 Check the results of the entire scenario


After the previous exercise, the data should have reached the CDB. Now it should be
distributed to the mobile client sites defined earlier.

3-1-1 Create a Subscription for the new data for a site defined in an earlier demo. You
may want to use the country as a criteria field for replication.

3-1-2 Check that the data actually arrives in the appropriate outbound queue for that
Site.

3-1-3 Make sure that the new BDoc type has been handled correctly by the Flow
Control and that no messages are stuck in the replication queues.

AP AG CR550 6-28
6ROXWLRQV

8QLW $GDSWHU&XVWRPL]LQJ
7RSLF &UHDWLQJ$GDSWHU2EMHFWV

1-1 Create an Adapter Object

1-1-1 Choose
0LGGOHZDUH'DWD([FKDQJH2EMHFW0DQDJHPHQW&XVWRPL]LQJ
2EMHFWV 5$& .
Switch to change mode and press the &UHDWH2EMHFW button. Enter the name of
the Adapter Object and press return. Provide a description for the new Adapter
Object and link it to your synchronization BDoc type. Provide a description for
the new Adapter Object and assign it to your synchronization BDoc type. Set
the additional parameters for the Adapter Object, e.g. the block size, to
appropriate values. A reasonable default value for the block size is between 50
and 1000.

1-1-2 Go to the ,QLWLDO)ORZ&RQWH[W tab and select the source Site Type. All other
fields are filled automatically.

1-1-3 Go to the 7DEOH6WUXFWXUHV tab. Enter the name of the R/3 table in the 7DEOH
VRXUFHVLWH column and the name of your CDB table in the 0DSSHG6WUXFWXUH
WDUJHWVLWH column.

1-1-4 As a filter condition, use the &217,1(17 field and choose one of the
continents given in the exercises as a filter value.

1-1-5 Go to the Mapping Modules tab and enter the function module that maps the
content of the incoming BAPIMTCS structure to the synchronization BDoc
type. Here you can use the generic mapper for customizing objects, the function
module MAP_BAPIMTCS_TO_CUSTOMIZING. Save your new Adapter
Object.

1-1-6 To regenerate the Adapter Object and BDoc type runtime objects, call the
transaction
0LGGOHZDUH!'HYHORSPHQW!*HQHUDWLRQ!*HQHUDWLRQ!*HQHUDWH
6HUYLFHV 602**(1 .
Enter the name of your BDoc type, select %'RFW\SHIXQFWLRQV and press the
([HFXWH button to regenerate the BDoc object.

AP AG CR550 6-29
1-2 Starting and monitoring the Initial Load

1-2-1 Choose
0LGGOHZDUH'DWD([FKDQJH,QLWLDO/RDG6WDUW 5$6 
Enter the name of the newly defined Adapter Object and then start the Initial
Load.

1-2-2 Choose
0LGGOHZDUH'DWD([FKDQJH,QLWLDO/RDG0RQLWRU2EMHFWV 5$0 .
Select the objects to monitor and then examine the monitoring results. Has the
status light for your object already turned to green? If not, check the inbound
queues on the CRM Middleware for entries corresponding to your Adapter
Object.

1-2-3 If there are entries in the inbound queue with status SYSFAIL, most likely the
BDoc object and associated services need to be regenerated using the
transaction 602**(1. Afterwards, restart the execution of the inbound
queues and check the status again.

AP AG CR550 6-30
6ROXWLRQV

8QLW$GDSWHU&XVWRPL]LQJ
7RSLF5HSOLFDWLRQ0RGHOLQJ RSWLRQDO

2-1 Define a Replication Object

2-1-1 Start the Administration Console (transaction 602($&). Use the Replication
Object wizard to create the replication object according to the specified data.

2-2 Define a Publication

2-2-1 Use the Publication wizard to create a Publication according to the specified
data.

AP AG CR550 6-31
6ROXWLRQV

8QLW$GDSWHU&XVWRPL]LQJ
7RSLF&KHFNLQJWKHUHVXOWVRIWKHHQWLUHFXVWRPL]LQJ
VFHQDULR RSWLRQDO

3-1 Check the results of the entire scenario

3-1-1 Use the Administration Console to create an appropriate Subscription. The


countries that may be used for the criteria fields are listed in the table
=&5B (assuming that the Initial Load was performed successfully).

3-1-2 Choose
0LGGOHZDUH0RQLWRULQJ4XHXHV'LVSOD\2XWERXQG5)&4XHXHV
604 .
Check for entries in the queue of your site.

3-1-3 Choose
0LGGOHZDUH0RQLWRULQJ0HVVDJH)ORZ'LVSOD\%'RF0HVVDJHV
60: .
Make an appropriate selection, and check the processing status of BDoc
messages of the type of your group. Also, check the replication queues for
messages of the same type.

AP AG CR550 6-32
%'RF0RGHOLQJ ,,

&RQWHQWV

l 0HVVDJLQJ%'RF7\SHV
l 0HVVDJLQJ%'RF0RGHOLQJ
l 'HILQLWLRQRIDQHZPHVVDJLQJ%'RF7\SH
l 2SWLRQDO%'RF0RGHOLQJVWHSV

SAP AG 2001

AP AG CR550 7-1
%'RF0RGHOLQJ ,, 8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l 'HILQHQHZPHVVDJLQJ%'RFVW\SHV

SAP AG 2001

AP AG CR550 7-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 7-3
0HVVDJLQJ%'RF7\SHV

0HVVDJLQJ%'RF7\SHV P%'RF

n 8VHGIRUPHVVDJLQJEHWZHHQPDMRUFRPSRQHQWV HJ5&50

n P%'RFW\SHVFRQVLVWRIWZRSDUWV
N OPQRSTN PQRVUXWZYA[V\^]MW`_Vab]cMT T)d
&ODVVLFDOSDUW
 

    !
#"%$& &'( ) () +*,-$ ."/$& 
102! 3&
 !
145$63 7.& ! 8! 9 :!$6-!  9;&<=7 )>$6 YA[eZWZagf WhR]f i
([WHQVLRQ
145$=? A@B& < CED? 
#"%$& &'( ) F,,5G 4IHJ KKML
145$63 7C /!   >$6(& !

SAP AG 2001

n A messaging BDoc consists of up to two parts:


3DUW&ODVVLFDO3DUW
- This part is mandatory.
- The classical part consists of a BDoc header and segments, which may be arranged in a
hierarchical fashion. It is called classical part, because of the similarities to write BDoc types
of the 2.0B/C releases. However, the segments of the classical part are not mapped to database
tables.
- This part is to be modeled with the (CRM Server based) BDoc Modeler.
- Only the classical part is used to determine the receivers of mBDoc messages.
- Since there is no mapping to database tables (i.e. no CDB), this part always needs to be filled
completely by the application at runtime.
3DUW([WHQVLRQ
- This part is optional.
- The complex data type is modeled with the Data Repository Tools (SE11).
- The extension does only exist for messaging BDocs (new with CRM 3.0).

AP AG CR550 7-4
0HVVDJLQJ%'RF0RGHOLQJ ,

6WHSRQHPRGHOWKHH[WHQVLRQ
6XJJHVWHGGDWDPRGHO

6WUXFWXUH H[WHQVLRQ
6WUXFWXUH H[WHQVLRQ
7DEOHW\SH URRWVHJPHQW
7DEOHW\SH URRWVHJPHQW
6WUXFWXUH URRWVHJPHQW
6WUXFWXUH URRWVHJPHQW
6WUXFWXUH FRQWURO
6WUXFWXUH FRQWURO 6WUXFWXUH GDWD
6WUXFWXUH GDWD 6WUXFWXUH GDWD[
6WUXFWXUH GDWD[
l7DVN
l7DVN l*8,'
l*8,' l&RXQWU\
l&RXQWU\
l&RXQWU\
l&RXQWU\ l&RQWLQHQW
l&RQWLQHQW
l&RQWLQHQW
l&RQWLQHQW

7DEOHW\SH GDWDVHJPHQW
7DEOHW\SH GDWDVHJPHQW
6WUXFWXUH GDWDVHJPHQW
6WUXFWXUH GDWDVHJPHQW
6WUXFWXUH FRQWURO
6WUXFWXUH FRQWURO 6WUXFWXUH GDWD
6WUXFWXUH GDWD 6WUXFWXUH GDWD[
6WUXFWXUH GDWD[

IXUWKHUGDWDVHJPHQWV

SAP AG 2001

n Note that the extension of messaging BDoc types is not automatically added to the same transported
request for the generated repository objects of a BDoc type. The extension must be added to a
transport request that used the same transport layer as the BDoc type repository objects. The
packages /CRMGEC/STRUCTURES and /1CRMG0/STRUCTURES contain the generated
repository objects of customer and SAP BDoc types respectively.

AP AG CR550 7-5
0HVVDJLQJ%'RF0RGHOLQJ ,,

6WHSWZRFUHDWHDQHZ%'RF 6DYH
$VVLJQVLWHW\SH


 (QWHUQDPHDQG
 GHVFULSWLRQ

&UHDWH


6HOHFW
%'RFFODVV
6SHFLI\WKHP%'RF
H[WHQVLRQ

SAP AG 2001

AP AG CR550 7-6
0HVVDJLQJ%'RF0RGHOLQJ ,,,

6WHSWKUHHPRGHOWKHFODVVLFDOSDUW FRPSDUHV%'RFPRGHOLQJ

7\SLFDOVWHSV
lDGGDQHZVHJPHQW
lDGGQHZVHJPHQWILHOGV
lVDYHDQGDFWLYDWHWKHQHZ%'RFW\SH

SAP AG 2001

AP AG CR550 7-7
2SWLRQDO0HVVDJLQJ%'RF0RGHOLQJ6WHSV

6SHFLI\WKHP%'RF7\SHFRUUHVSRQGLQJWRDV%'RFW\SH

6HOHFWWKHP%'RF
W\SHYLDWKH)KHOS
&KRRVHWKH
V%'RF7\SH

,PSOHPHQWDWLRQRIDPDSSLQJVHUYLFH PDSSLQJV%'RF!P%'RF
,PSOHPHQWDWLRQRIDPRELOHEULGJH PDSSLQJP%'RF!V%'RF
$FWLYDWLRQRIWKHPDSSLQJVHUYLFH
$FWLYDWLRQRIWKHPRELOHEULGJHZLWKLQWKHIORZ

SAP AG 2001

AP AG CR550 7-8
%'RF0RGHOLQJ ,, 8QLW6XPPDU\

<RXDUHQRZDEOHWR

l 0HVVDJLQJ%'RF7\SHV
l 0HVVDJLQJ%'RF0RGHOLQJ
l 'HILQLWLRQRIDQHZPHVVDJLQJ%'RF7\SH
l 2SWLRQDO%'RF0RGHOLQJVWHSV

SAP AG 2001

AP AG CR550 7-9
([HUFLVHV

8QLW %'RF0RGHOLQJ,,
7RSLF 0HVVDJLQJ%'RF0RGHOLQJ

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


Create a new messaging BDoc type.

The tool to perform this exercise is the BDoc Modeler.

1-1 Create the extension for the messaging BDoc type

1-1-1 The extension may be modeled using the transaction SE11. Firstly, create the
following structures:

1. =&5BB5227B&21752/
Component Component type
7$6. &+$5

2. =&5BB5227B'$7$
Component Component type
*8,' 602B*8,'
&28175< 7(;7
&217,1(17 7(;7

3. =&5BB5227B'$7$;
Component Component type
&28175< %$3,83'$7(
&217,1(17 %$3,83'$7(

AP AG CR550 7-10
Create the structure =&5BB5227 for the entire root segment with
the following components:
Component Component type
&21752/ =&5BB5227B&21752/
'$7$ =&5BB5227B'$7$
'$7$; =&5BB5227B'$7$;
In order to carry multiple messaging BDoc instances, i.e. root segments, it is
necessary to create the standard table =&5BB5227B7$%/( of type
=&5BB5227. Note that this should be done for all data segments.
Finally it is necessary to create the entire extension part, which should hold
all data segments. In this scenario it is quite simple, since there is only one
segment, the root segment. Therefore create the structure
=&5BB(;7, which should have the following component:
Component Component type
=&5BB5227 =&5BB5227B7$%/(
Thus the extension should have this structure:

2-1 Create a new messaging BDoc type


The objective now is to add a new messaging BDoc type with one (root) segment.

2-1-1 Create a new synchronization BDoc type =&5BB0(6*. Enter the BDoc
QDPH, a VKRUWQDPH and a GHVFULSWLRQ. Mark it as a 0HVVDJLQJ%'RF. Assign
the new synchronization BDoc type to the site type R/3 Back-End via the tab
header 6LWH7\SH,QIR. Choose the 6LWH7\SH,'to be 602)B(536,7((R/3).
Press the 6DYHbutton. The new BDoc type will now appear with the status
Inactive.
Note that the BDoc type name is displayed as the name for the BDoc type
within the BDoc Modeler and that the short name is used as an identifier in the
CRM Middleware repository. To avoid any confusion, make sure that the name
and the short name are identical.

AP AG CR550 7-11
2-1-2 Create the classical part of the new messaging BDoc type. The classical part is
used to determine the receiver of BDoc messages. To create the classical part,
add a segment to the BDoc type (press the &UHDWH6HJPHQW button or just press
)). Enter =&5BB5227 as the name for the new segment and provide a
description for the new segment. Press the 6DYHbutton.
Go to the 6HJPHQW)LHOGV tab and specify the fields of the new segment. Use the
following fields:
)LHOG1DPH .H\ 'DWD(OHPHQW
*8,' ; 602B*8,'
&217,1(17 7(;7

2-1-3 To assign the extension to the new messaging BDoc type go to the BDoc type
overview and enter the extension structure name into the field 5HODWHG'DWD
7\SH
Save your changes. Check your new messaging BDoc type and activate it.
You may check the generation process using the transaction
0LGGOHZDUH!'HYHORSPHQW!*HQHUDWLRQ!*HQHUDWLRQ/RJ!'LVSOD\/RJ
602*/2*

3-1 Assign the synchronization BDoc type to the new messaging BDoc type.

3-1-1 Go to the change mode of your synchronization BDoc type


=&5BB6<1&.

3-1-2 To assign the synchronization BDoc type to the new messaging BDoc type
enter the name of the messaging BDoc type in the field 0DSSHG 0HVVDJLQJ
%'RF7\SH.

3-1-3 You may check the generation process using the transaction
0LGGOHZDUH!'HYHORSPHQW!*HQHUDWLRQ!*HQHUDWLRQ/RJ!'LVSOD\/RJ
602*/2*

AP AG CR550 7-12
'DWD)ORZ

&RQWHQWV

l )ORZ&RQWH[WV
l ,PSOHPHQWLQJD0DSSLQJ6HUYLFH0RELOH
%ULGJHDQGD9DOLGDWLRQ6HUYLFH
l )ORZ&XVWRPL]LQJ

SAP AG 2001

AP AG CR550 8-1
'DWD)ORZ8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l &XVWRPL]HWKHPHVVDJLQJDQG
V\QFKURQL]DWLRQ)ORZ
l :ULWH\RXURZQ0DSSLQJ6HUYLFH0RELOH
%ULGJHDQG9DOLGDWLRQ6HUYLFH

SAP AG 2001

AP AG CR550 8-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 8-3
,QWHUQDO'DWD)ORZ ,

hK PRQ *N,/.7  1Cp|rE5DA}~^S


8:u
0RELOH&OLHQW &')(+*-,/.0  SATI4UBAVO85EW@I6 854UBAV)XUE5D5BZY-; [\]%^W<_`bacId e2ADFH
<y/8IDAzWVR2/86 {GEF4O6 28NwW@ 2Fx Both XML/SOAP and IDocs can be generated
from the ABAP complex data type used to

    define the external interface
 !
#" $% JLK M*N,/.O 
&506HUYHU
\bBFYfYIE596 8:9wA@ 25x JLK v*#,C.O  $SSOLFDWLRQ
1235476 8:9#;)<6 =?>A@ B-1CB>A@ 6 DFEG406 2/8IH
&')(+*-,/.0  IS TI4RBAVO8FE@56 854UBAV)XEFDFBfY%; [\]bg-<_h`acIde
2WDfH
KPRQ *-,/.0  1Cp|rE5DA}~^S
8:u
+jik lmn ,   <Cy8IDAzWVR2C8A6 {ZE54O6 28#wA@ 25x
#"
oR!
 % q er+<BWV s/6 DFB
1
B:>@ 6 DfE54O6 28fp
1
BfEW@ 6 9/8A=BA8f4
_m3f4Ot:2C38Iu%`uAEW>F4UBV

0RELOH&OLHQW
SAP AG 2001

n Example New customer created in the Mobile Client


When a sales representative dials in to headquarters to synchronize his/hers Mobile Client, the new
customer is sent via a synchronization BDoc to the CRM Middleware. An inbound adapter reads
the synchronization BDoc message of the inbound queue and starts a 6\QFKURQL]DWLRQ)ORZ. The
Synchronization Flow calls a 0DSSLQJ6HUYLFH, which creates a messaging BDoc based on the
content of the synchronization BDoc and starts a 0HVVDJLQJ)ORZ. The first step in the Flow is to
call the &50$GDSWHU, which validates the data and creates a new customer by updating the
CRM server application tables. The update of the CRM server application object customer
causes a software event to be triggered, which in turn causes a new messaging BDoc to be created
and SDVVHGWRWKH0HVVDJLQJ)ORZ7KHQH[WVWHSLQWKH)ORZLVWRFDOOWKH Simple Replication
Service, which determines which systems should get the message this could be one or more SAP
R/3 Back-Ends or non-SAP R/3 Back-Ends. According to which systems should receive the new
customer information, the corresponding adapters are called:
- for each non-SAP R/3 Back-End determined, the external-system (XML) adapter is called and
- for each SAP R/3 Back-End determined, the 5$GDSWHU is called.
- If a mobile scenario is activated, the data is relevant for the CDB, and hence for mobile clients:
thus the 0RELOH%ULGJH is called. The Mobile Bridge creates a synchronization BDoc based on
the content of the messaging BDoc and starts a Synchronization Flow. The first step in the
synchronization flow is to call the CDB service, which writes the data to the CDB. The next
step is Replication and Realignment, which determines which Mobile Clients should receive the
new customer information. The final step invokes the outbound adapter for each Mobile Client
determined in the previous step and places a synchronization BDoc containing the customer
information in the outbound queue for that client.

AP AG CR550 8-4
,QWHUQDO'DWD)ORZ ,,

0HVVDJLQJ)ORZLQERXQGSURFHVVLQJ

n P%'RFPHVVDJHVDUHGLUHFWO\SDVVHGWRWKH9DOLGDWLRQ6HUYLFH

0HVVDJLQJ)ORZRXWERXQGSURFHVVLQJ

n 6XFFHVVIXOYDOLGDWLRQ
v ,/. "".0jO
,o. JNK ,.OiC"
 m "/"C
 " O "C ,lOjh   
.n n /.n j .O "i/"
iC
,l//" 0"
 h.OO.
  7j A.n (k jjC.nij,/ /"/"U
lU Lji)k bn ,  "

n 8QVXFFHVVIXOYDOLGDWLRQ
v ,/. ""
,oiCCL.0. "C , 

SAP AG 2001

AP AG CR550 8-5
,QWHUQDO'DWD)ORZ ,,,

6\QFKURQL]DWLRQ)ORZLQERXQGSURFHVVLQJ

n V%'RFPHVVDJHVDUHQRUPDOO\PDSSHGWRP%'RFPHVVDJHV

n 6WDUWD0HVVDJLQJ)ORZIRUYDOLGDWLRQ

n ,IDQV%'RFPHVVDJHLVQRWPDSSHGWRDQP%'RFPHVVDJHWKH

RXWERXQGSURFHVVLQJRIWKH6\QFKURQL]DWLRQ)ORZLVVWDUWHG

6\QFKURQL]DWLRQ)ORZRXWERXQGSURFHVVLQJ

n &'%6HUYLFHPDNHVWKHV%'RFPHVVDJHSHUVLVWHQW

n 5HSOLFDWLRQ 5HDOLJQPHQWGHWHUPLQHVUHFHLYHUVDQGWULJJHUVH[WUDFW

n V%'RFPHVVDJHLVSDVVHGWRWKHRXWERXQGTXHXHV

SAP AG 2001

AP AG CR550 8-6
,QWHUQDO'DWD)ORZ ,9

)ORZ&RQWH[WV
,QIRUPDOO\GHVFULEHGVWHSVLQWKHJHQHUDOPHVVDJHSURFHVVLQJPRGHO

3UHGHILQHGDQGDVVRFLDWHGZLWKOLVWVRIVHUYLFHVWREHFDOOHGLQWKLVFRQWH[W

9DOLGDWLRQ

,QERXQG 2XWERXQG
9DOLG

SAP AG 2002

n 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.

AP AG CR550 8-7
)ORZ&RQWH[WV2YHUYLHZ ,

([LVWLQJ)ORZ&RQWH[WV
6\QFKURQL]DWLRQ)ORZ 0HVVDJLQJ)ORZ

,QERXQG
6,6, 0,
3URFHVVLQJ

2XWERXQG 6262$6262% 0202$0202%


3URFHVVLQJ 6262&6 0202&02

1DPLQJFRQYHQWLRQ
0
 $%&VSHFLILF)ORZ
&RQWH[W
, ,QERXQG3URFHVVLQJ
2 2XWERXQG3URFHVVLQJ
6 6\QFKURQL]DWLRQ)ORZ
0 0HVVDJLQJ)ORZ

SAP AG 2001

AP AG CR550 8-8
)ORZ&RQWH[WV2YHUYLHZ ,,

,QERXQG3URFHVVLQJ

n 6,1RWXVHG

n 6,&DOOVWKHPDSSLQJVHUYLFHV%'RF!P%'RF0D\EHFXVWRPL]HG

n 0,&DOOVWKHYDOLGDWLRQVHUYLFH &50$GDSWHU 1RWFXVWRPL]DEOH

2XWERXQG3URFHVVLQJ

n 62626262'LIIHUHQWRXWERXQG)ORZ&RQWH[WV

V\QFKURQL]DWLRQ 

n 62$62%62&$GGLWLRQDOVHUYLFHV V\QFKURQL]DWLRQ 

n 02020202'LIIHUHQWRXWERXQG)ORZ&RQWH[WV PHVVDJLQJ 

n 0$02%02&$GGLWLRQDOVHUYLFHV PHVVDJLQJ 

SAP AG 2001

n The Flow Contexts SOA, SOB and SOC for the Synchronization Flow and MOA, MOB and MOC
for the Messaging Flow are processed DIWHU the corresponding Flow Contexts SO1, SO2, SO3, MO1,
MO2 and MO3 are finished.

AP AG CR550 8-9
)ORZ&RQWH[WV2YHUYLHZ ,,,

2XWERXQG)ORZ&RQWH[WV

&XUUHQWVWDWH 'HOWDPHVVDJHV

60202

6$02$02%

([WUDFW'LUHFW
,QLWLDO/RDGWR&'%
6HQG5HMHFWLRQ
602 02626

6&02& 6%

SAP AG 2001

n This slide shows a possible classification of the various outbound Flow Contexts. The main
distinction is whether the Flow Contexts are used for current state or delta message processing. The
Flow Contexts for current state processing may be subdivided into Flow Contexts that load data
initially into the CDB or not.
n The Flow Contexts in the green fields may be used for customer enhancements.

AP AG CR550 8-10
'LVSOD\WKH&RQWHQWRI)ORZ&RQWH[WV

$OODYDLODEOH)ORZ&RQWH[WVFDQEHGLVSOD\HG

)ORZ
&RQWH[W

6HUYLFHLQD
)ORZ&RQWH[W

SAP AG 2001

n The available Flow Contexts for a BDoc Type may be viewed via the transaction
0LGGOHZDUH0HVVDJH)ORZ'LVSOD\DQG&KHFN)ORZ'HILQLWLRQV 602)' 

AP AG CR550 8-11
6RPHLPSRUWDQW)ORZ6HUYLFHV

0DSSLQJ6HUYLFHPDSSLQJRI6\QFKURQL]DWLRQ%'RFPHVVDJHVWR
0HVVDJLQJ%'RFPHVVDJHV

V%'RF

V%'RF 0DSSLQJ6HUYLFH P%'RF

V%'RF

9DOLGDWLRQ6HUYLFH&50$GDSWHU

0RELOH%ULGJHPDSSLQJRI0HVVDJLQJ%'RFPHVVDJHVWR
6\QFKURQL]DWLRQ%'RFPHVVDJHV
V%'RF

P%'RF 0RELOH%ULGJH V%'RF

V%'RF

SAP AG 2001

AP AG CR550 8-12
&RPPRQ6HUYLFHVRIWKH0HVVDJLQJ)ORZ

l *HQHULF FRUUHVSRQGLQJIXQFWLRQPRGXOH
5HSOLFDWLRQ:UDSSHU 602+B5(3/,&$7,21B:5$33(5B0(6*

6LPSOH5HSOLFDWLRQ &50*%'RFBQDPH!B555
6HUYLFH ,QGXVWU\
*HQHULF2XWERXQG 60:B287%281'$'3B&$//$'$37(56
$GDSWHU

l 1RQJHQHULF
9DOLGDWLRQ6HUYLFH &50B%83$B0$,1B9$/ %XVLQHVV
3DUWQHU
&50B'2:1/2$'B%70%'2&B9$/ %XVLQHVV
7UDQVDFWLRQ

0RELOH%ULGJH %3B0$,1B&50B72B&'%B %XVLQHVV


3DUWQHU
&50B83/2$'B0&$B659 %XVLQHVV
7UDQVDFWLRQ

SAP AG 2001

n There is a JHQHULF function module template for each middleware service (except the CRM Adapter).
These templates are used to generate the function modules for services specific to a BDoc type. The
generated function modules have to the following naming conventions:
For industry-independent templates:
/1CRMG0/<%'RFBQDPH>_<VHUYLFHBQDPH>
For industry-dependent templates:
/1CRMG0/<LQGXVWU\BWHPSODWH><%'RFBQDPH>_<VHUYLFHBQDPH>
n There are QRJHQHULF templates for the CRM Adapter, which means that a separate function module
is provided for each BDoc type.

AP AG CR550 8-13
&RPPRQ6HUYLFHVRIWKH6\QFKURQL]DWLRQ)ORZ

l *HQHULF FRUUHVSRQGLQJIXQFWLRQPRGXOH
&'%6HUYLFH &50*%'RFBQDPH!B&'%

5HSOLFDWLRQ:UDSSHU 602+B5(3/,&$7,21B:5$33(5B6<1&

5HSOLFDWLRQDQG &50*%'RFBQDPH!B555
5HDOLJQPHQW6HUYLFH ,QGXVWU\
*HQHULF2XWERXQG 60:B287%281'$'3B&$//$'$37(56
$GDSWHU

0RELOH&OLHQW$GDSWHU &50*%'RFBQDPH!B2

l 1RQJHQHULF &/B&'%B&50B&$3*(1B83/2$' &XVWRPHU

0DSSLQJ6HUYLFH &/B&'%B&50B&21*(1B83/2$' &RQWDFW


3HUVRQ
&/B&50B6$/(6'2&*(1
6DOHV2UGHU

SAP AG 2001

n There is a JHQHULF function module template for each middleware service (except the CRM Adapter).
These templates are used to generate the function modules for services specific to a BDoc type. The
generated function modules have to the following naming conventions:
For industry-independent templates:
/1CRMG0/<%'RFBQDPH>_<VHUYLFHBQDPH>
For industry-dependent templates:
/1CRMG0/<LQGXVWU\BWHPSODWH><%'RFBQDPH>_<VHUYLFHBQDPH>
n There are QRJHQHULF templates for the CRM Adapter, which means that a separate function module
is provided for each BDoc type.

AP AG CR550 8-14
)ORZ7UDFH

'LVSOD\)ORZGHWDLOVIRUDPHVVDJLQJ%'RF0HVVDJH
'LVSOD\WKH
GHWDLOV

6HOHFWWKH
REMHFW

SAP AG 2001

n From the transaction 'LVSOD\%'RF0HVVDJHVyou can access the 0LGGOHZDUH7UDFH.


n An alternative path is to the middleware trace with additional information is:
0LGGOHZDUH! 0RQLWRULQJ! 0HVVDJH)ORZ! 'LVSOD\0LGGOHZDUH7UDFH 60:7 
n Note: You need to perform settings in the table SMOFPARSFA (via the parameter TRACE-LEVEL)
in order to use the function Display Middleware Trace. Please see the 6$3/LEUDU\.
n The 'LVSOD\%'RF0HVVDJH6XPPDU\ function lists the same BDocs as Display BDoc
Messages but grouped according to site, message type (E, A, W, S. I) and BDoc type.

AP AG CR550 8-15
&XVWRPL]LQJWKH,QERXQG3URFHVVLQJ

60:%'2&,)%'RFW\SHLPSOHPHQWDWLRQVIRUWKHIORZ
%'2&7< 0$3&/$66 9$/,)802 02%%5,'*(
BUPA_MAIN CRM_BUPA_MAIN_VAL

0DSSLQJ6HUYLFH
V%'RF!P%'RF 0RELOH%ULGJH
&DOOHGIURP&RQWH[W6, 3RVVLEOHWRXVHRYHUULGHWKH
3RVVLEOHWRDGGRWKHUVHUYLFHV VWDQGDUG0RELOH%ULGJHVKHUH
%()25(WKLVVHUYLFH &RPSDUH2XWERXQG3URFHVVLQJ

9DOLGDWLRQ6HUYLFH &50$GDSWHU 
&DOOHGIURPFRQWH[W0,
1RFXVWRPL]LQJSRVVLEOHIRU0,

SAP AG 2001

AP AG CR550 8-16
&XVWRPL]LQJWKH2XWERXQG3URFHVVLQJ

3URFHVVLQJRUGHU &XVWRPHU(QKDQFHPHQWV
60:)'&867
7DEOHORRNXS l&XVWRPHUHQKDQFHPHQWV
l02$%&DQG62$%&
)RXQG BDoc type, Context " l6,SRVVLEOH

<HV!'RQHJ 60:)'%'2&
l%'RFW\SHGHSHQGHQW
1RWDEOHORRNXS )ORZ'HILQLWLRQV
l(J:%B%/2%B/'B:5,7(
)RXQG BDoc type, Context "

<HV!'RQHJ 60:)'67'
l%'RFW\SHLQGHSHQGHQW
1RWDEOHORRNXS Context )ORZ'HILQLWLRQV
l02DQG62

6$36WDQGDUG
SAP AG 2001

AP AG CR550 8-17
+RZWRUHDGWKH7DEOH60:)'&867

60:)'&867&XVWRPHUHQKDQFHPHQWV
%'2&B7<3( )&7;76(59,&( )1$0( $&7,9(02%%5,'*(
BUPA_MAIN MOA  BP_MAIN_CRM X 
 

5XOHV LQWKLVVSHFLILFRUGHU 
 2QO\HQWULHVZLWKWKHIODJ$&7,9( ;DUHFRQVLGHUHG
 ,I)1$0(QRWLQLWLDOFDOO)1$0(
 ,I6(59,&(QRWLQLWLDOFDOO6(59,&(
 ,I02%%5,'*( ;WDEOHORRNXS60:%'2&,)
 5XOHVDQGDUHRQO\DSSOLHGRQFH

60:%'2&,)%'RFW\SHLPSOHPHQWDWLRQVIRUWKHIORZ
%'2&7< 0$3&/$66 9$/,)802 02%%5,'*(
BUPA_MAIN CRM_BUPA_MAIN_VAL 

SAP AG 2001

AP AG CR550 8-18
0DSSLQJ2YHUYLHZ'DWD)ORZ

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH

9DOLGDWLRQ
9DOLGDWLRQ
6HUYLFH
6HUYLFH

P%'RF
5'%
0DSSLQJ
0DSSLQJ 0RELOH
0RELOH %$3,07&6 7DEOH
6HUYLFH
6HUYLFH %ULGJH
%ULGJH

V%'RF

&'%
7DEOH

SAP AG 2001

AP AG CR550 8-19
,PSOHPHQWLQJD0DSSLQJ6HUYLFH

([DPSOHFODVV(;$03/(B,)B60:B0$3

&UHDWHDQHZFODVV WUDQVDFWLRQ6(

$GGWKHLQWHUIDFH,)B60:B0$3

,PSOHPHQWWKHPHWKRG,)B60:B0$3a0$3B6<106*

n /RRSRYHUWKHURRWVHJPHQWRIWKHV\QFKURQL]DWLRQ%'RFPHVVDJH

n )LOOWKHFODVVLFDOSDUW

n )LOOWKHH[WHQVLRQ
 mh+nWOj
Nm
 j-
Cnn/0j) / j O
 j-
%/n
WnOC n#nC  n 

SAP AG 2001

n Please refer to the SAP note 432661 for more information on how to debug the Flow.

AP AG CR550 8-20
,PSOHPHQWLQJD0RELOH%ULGJH

([DPSOHIXQFWLRQPRGXOH60:B6&$55(;$03/(B06$

,QWHUIDFH
,QWHUIDFH
l75$16$&7,21B0(66$*(7<3(&50*(&=&5BB0(6*
l75$16$&7,21B0(66$*(7<3(&50*(&=&5BB0(6*
l0(66$*(B(;77<3(=&5BB(;7
l0(66$*(B(;77<3(=&5BB(;7

7\SLFDOVWHSV
7\SLFDOVWHSV
l&KHFNZKHWKHUPXOWLSOHV%'RFPHVVDJHVPXVWEHFUHDWHG
l&KHFNZKHWKHUPXOWLSOHV%'RFPHVVDJHVPXVWEHFUHDWHG
l7UDQVODWHHDFKP%'RFLQVWDQFHLQWRDV%'RFLQVWDQFH
l7UDQVODWHHDFKP%'RFLQVWDQFHLQWRDV%'RFLQVWDQFH
l6HWWKH7$6.ILHOGDQGWKH6(1'B%,76
l6HWWKH7$6.ILHOGDQGWKH6(1'B%,76
l&RS\DSSOLFDWLRQGDWD
l&RS\DSSOLFDWLRQGDWD
l6HWWKH*8,'NH\VYLDWKHNH\JHQHUDWRU
l6HWWKH*8,'NH\VYLDWKHNH\JHQHUDWRU
HJ&50*(&=&5BB6<1&B.*1
HJ&50*(&=&5BB6<1&B.*1
l6WDUWWKH6\QFKURQL]DWLRQ)ORZHJ
l6WDUWWKH6\QFKURQL]DWLRQ)ORZHJ
l&/B60:B6)/2: !352&(66B,1,7,$/B/2$'
l&/B60:B6)/2: !352&(66B,1,7,$/B/2$'
l&/B60:B6)/2: !352&(66B127,),&$7,21
l&/B60:B6)/2: !352&(66B127,),&$7,21

SAP AG 2001

n Please refer to the SAP note 432661 for more information on how to debug the Flow.

AP AG CR550 8-21
,PSOHPHQWLQJD9DOLGDWLRQ6HUYLFH

([DPSOHIXQFWLRQPRGXOH60:B6&$55(;$03/(B9$/,'$7(

,QWHUIDFH
,QWHUIDFH
l67$786
l67$786 7<3(60:9$/67$7
7<3(60:9$/67$7
l(55B0(66$*(
l(55B0(66$*( 7<3(&50*(&=&5BB0(6*
7<3(&50*(&=&5BB0(6*
l(55B0(66$*(B(;7
l(55B0(66$*(B(;7 7<3(=&5BB(;7
7<3(=&5BB(;7
l75$16$&7,21B0(66$*(
l75$16$&7,21B0(66$*( 7<3(&50*(&=&5BB0(6*
7<3(&50*(&=&5BB0(6*
l0(66$*(B(;7
l0(66$*(B(;7 7<3(=&5BB(;7
7<3(=&5BB(;7

7\SLFDOVWHSV
7\SLFDOVWHSV
l3HUIRUPYDOLGDWLRQRIWKHP%'RFPHVVDJHFRQWHQW
l3HUIRUPYDOLGDWLRQRIWKHP%'RFPHVVDJHFRQWHQW
l5HSRUWWKHVWDWXVWRWKH)ORZHJ
l5HSRUWWKHVWDWXVWRWKH)ORZHJ
l67$786 &/B60:B0)/2:
l67$786 &/B60:B0)/2: !&B9$/67$7B68&&(66
!&B9$/67$7B68&&(66
l67$786 &/B60:B0)/2:
l67$786 &/B60:B0)/2: !&B9$/67$7B(5525
!&B9$/67$7B(5525

SAP AG 2001

n Please refer to the SAP note 432661 for more information on how to debug the Flow.

AP AG CR550 8-22
1HZ6HUYLFHV ,

:K\DGGDQHZVHUYLFH"
n /LVWHQHUVWKDWUHFHLYHVDOOFKDQJHVRIRQH%'RFW\SH
:ULWHVWDWLVWLFV
3RVWGDWDWRH[WHUQDOV\VWHPVEXWQRWXVLQJWKH$GDSWHU)UDPHZRUN
([DPSOH%XVLQHVV:DUHKRXVHIRU%'RFW\SH%86B75$16B06*

7KLQJVWRFRQVLGHU
n 5HDGGDWDIURPPHVVDJHEXWGRQRWFKDQJHWKHFRQWHQW
0HVVDJHLVFRQVLGHUHGUHDGRQO\

n 1RFRPPLWZRUNUROOEDFN
$SSOLFDWLRQDQGRU)ORZ&RQWUROGRWKH/8:KDQGOLQJ

SAP AG 2001

AP AG CR550 8-23
1HZ6HUYLFHV ,,

3URFHVV
n ,PSOHPHQWWKHVHUYLFHIXQFWLRQPRGXOH
&RS\WHPSODWHIURPWKHIXQFWLRQJURXS60:B6$03/()/2:6(59,&(6
$GMXVWWKHLQWHUIDFHWRWKHFRUUHFWGDWDW\SHV
OUC/0OCn7n
% ? 
#COChh?Nm +jjhh-h/C70
7

#COChN+
b0 C /00C

0XVWEH
FKDQJHG

n $GGWKHVHUYLFHIXQFWLRQPRGXOHWR)ORZ2XWERXQG3URFHVVLQJ
SAP AG 2001

n Add service function module to Flow Outbound Processing (customizing):


Usually listen to changes of application objects.
Maintain SMW3FDCUST and add service to right Flow Context.
- Add new entries.
- Enter BDoc type for which you want to add a service.
- Enter the correct flow context (usually MOA, MOB).
- Enter a sequence number starting with 9010, 9020, ... for customer specific services.
- Enter the name of the service function module.
- Mark the entry as active.

AP AG CR550 8-24
'DWD)ORZ8QLW6XPPDU\

<RXDUHQRZDEOHWR

l )ORZ&RQWH[WV
l ,PSOHPHQWLQJD0DSSLQJ6HUYLFH0RELOH
%ULGJHDQGD9DOLGDWLRQ6HUYLFH
l )ORZ&XVWRPL]LQJ

SAP AG 2001

AP AG CR550 8-25
'DWD0RGHO([HUFLVHV

8QLW 'DWD)ORZ
7RSLF (QKDQFLQJWKH)ORZ

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


Implement a Mapping Service and a Mobile Bridge.
Implement a Validation Service.
Customize the Flow.
In order to exchange data between the new messaging and
synchronization BDoc types a Mapping Service and a Mobile Bridge are
used. A Validation Service performs the necessary checks for the
application layer. Finally the Flow needs to be customized, so that these
new services are applied to the new BDoc types.

1-1 Implement a new Mapping Service and a Mobile Bridge

1-1-1 For the development of a Mapping Service it is necessary to create an ABAP


OO class implementing the interface ,)B60:B0$3.
The creation of ABAP OO classes can be done via the transaction SE24. The
name of the new class should be =&/B&5BB0$3. You may use the
package =&5. Add the interface ,)B60:B0$3 and implement the
method ,)B60:B0$3a6<106*. Activate the method and the class.

1-1-2 Create a new function module =B&5BB06$ that implements the Mobile Bridge.
Use the following interface:

)81&7,21]BFUBBPVD

 /RFDOLQWHUIDFH
,03257,1*
5()(5(1&( +($'(5 7<3(60:B)+'
(;3257,1*
5()(5(1&( 67$786 7<3(60:9$/67$7
&+$1*,1*
5()(5(1&( 75$16$&7,21B0(66$*( 7<3(&50*(&=&5BB0(6*
5()(5(1&( 0(66$*(B(;7 7<3(=&5BB(;7
5()(5(1&( (5525B6(*0(176 7<3(60:B(557$%237,21$/
(;&(37,216
7(&+1,&$/B(5525


AP AG CR550 8-26
1-2 Implement a Validation Service

1-2-1 Create a new function module =B&5BB9$/ that implements the


Validation Service. Use the following interface:

)81&7,21]BFUBBYDO

 /RFDOLQWHUIDFH
,03257,1*
5()(5(1&( 237,216 7<3(60:)237237,21$/
(;3257,1*
5()(5(1&( 67$786 7<3(60:9$/67$7
5()(5(1&( (55B0(66$*( 7<3(&50*(&=&5BB0(6*
5()(5(1&( (55B0(66$*(B(;7 7<3(=&5BB(;7
&+$1*,1*
5()(5(1&( 75$16$&7,21B0(66$*( 7<3(&50*(&=&5BB0(6*
5()(5(1&( 0(66$*(B(;7 7<3(=&5BB(;7
5()(5(1&( (5525B6(*0(176 7<3(60:B(557$%237,21$/
5()(5(1&( 2%-(&7B/,1.6 7<3(75/B%25,'237,21$/
5()(5(1&( +($'(5 7<3(60:B)+'
(;&(37,216
7(&+1,&$/B(5525


1-3 Customize the Flow

1-3-1 Having implemented the function modules and methods above, it is now
possible to customize the Flow to be able to process messages for the new
BDoc types. The customizing consists of two steps:
1. Maintain the table SMW3BDOCIF.
2. Maintain the table SMW3FDCUST.

1-4 Write a report to test the whole scenario

AP AG CR550 8-27
'DWD)ORZ6ROXWLRQV

8QLW 'DWD)ORZ
7RSLF (QKDQFLQJWKH)ORZ

1-1 Implement a new Mapping Service and a Mobile Bridge

1-1-1 Copy the implementation from the sample solution in the appendix to the
method ,)B60:B0$3a6<106*. Adjust the names of the synchronization
and messaging BDoc type as well as the name of your extension accordingly.

1-1-2 Copy the implementation from the sample solution in the appendix to the
function module =B&5BB06$. Adjust the names of the synchronization
and messaging BDoc type as well as the name of your extension accordingly.

1-2 Implement a Validation Service

1-2-1 Copy the implementation from the sample solution in the appendix to the
function module =B&5BB9$/. Adjust the names of the messaging BDoc
type as well as the name of your extension accordingly.

1-3 Customize the Flow

1-3-1 Make the following entries in the table 60:%'2&,)via the transaction
60 :

%'RF7\SH 0DSSHU )XQFWQDPH %ULGJH


=&5BB0(6* =B&5BB9$/ =B&5BB06$
=&5BB6<1& =&/B&5BB0$3

1-3-2 Add three entries in the table 60:)'&867 for the Flow Contexts 02$
02%DQG02&. All entries should contain the name of your messaging BDoc
type, i.e=&5BB0(6* , a counter of 10 and the Active as well as the
Mobile Flag should be flagged.

1-4 Write a report to test the whole scenario

1-4-1 Copy the report from the sample solution in the appendix to the report
=B&5BB)/2:7(67. Adjust the names of the synchronization BDoc
type accordingly.

AP AG CR550 8-28
5$GDSWHU&XVWRPL]LQJ

&RQWHQWV
l &XVWRPL]LQJRI,QLWLDO/RDGV
l &XVWRPL]LQJRI'HOWD/RDGVWRD&506HUYHU
l &XVWRPL]LQJRI'HOWD/RDGVWRDQ5%DFN(QG

SAP AG 2001

AP AG CR550 9-1
5$GDSWHU&XVWRPL]LQJ8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l ,PSOHPHQWDQGDFWLYDWHDOOIXQFWLRQPRGXOHVWR
SHUIRUPDQLQLWLDODQGGHOWDORDGIURPDQ5
%DFN(QGWRWKH&506HUYHU
l 'HVFULEHWKHSURFHVVRI'HOWD/RDGVWR5
%DFN(QGV

SAP AG 2001

AP AG CR550 9-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 9-3
,QLWLDO/RDG

,QLWLDO/RDG

SAP AG 2001

AP AG CR550 9-4
,QLWLDO/RDG2YHUYLHZ

&506HUYHU 5%DFN(QG
7ULJJHU
)ORZ 5$GDSWHU ([WUDFWRU 5
&RQWURO
'%
%'RF

6HYHUDO 'HOWD
6HUYLFHV /RDG
%$3,6DYH 6HQGWR6HUYHU

l ,QLWLDO/RDG l 7ULJJHU
%XVLQHVV2EMHFWV ,QLWLDWHGE\WKH&50
6HUYHU
&XVWRPL]LQJ2EMHFWV DOO
&RQGLWLRQ2EMHFWV

SAP AG 2001

n The ,QLWLDO/RDG is triggered by the R/3 Adapter on the CRM Server. The downloaded objects are
mapped to BAPI structures on the CRM server and written to the consolidated database (CDB) for
being processed by the flow control.

AP AG CR550 9-5
,QLWLDO/RDGWULJJHUHGE\&506HUYHU 3DUW,

&506HUYHU 5%DFN(QG VHQGLQJV\VWHP


UHFHLYLQJV\VWHP
53OXJ,Q ([WUDFW
 
 
 "!  2EMHFWVSHFLILF
GDWD

/RRNXSWDEOH&5068%7$%
&ROOHFWREMHFWVSHFLILF
GDWD GHILQHTXHXH  ! #$&%(')*$
+-,/. 01$' 22,/. )'3$4. 576"$8' 9, :0
QDPHVIRUT5)&
 8QWLOODVW
([WUDFWDSSOLFDWLRQGDWD EORFN
UHDFKHG
6WDUW,QLWLDO/RDG 
&56B2%-!B6(1'B'$7$
D
&56B6(1'B72B6(59(5

(J%$3,GDWD ,QERXQGTXHXHWR
FRQWDLQHU%$3,07&6 &506HUYHU T5)&

SAP AG 2001

n Initial Load is triggered from the CRM server via the transaction: 0LGGOHZDUH'DWD([FKDQJH
,QLWLDO/RDG6WDUW.
n The extraction of data is called asynchronously via qRFC.

AP AG CR550 9-6
,QLWLDO/RDGWULJJHUHGE\&506HUYHU 3DUW,,

&506HUYHU ,QERXQGTXHXH (J%$3,GDWD


IURPWKHVHQGLQJ FRQWDLQHU
6\VWHP T5)& %$3,07&6

5$GDSWHU
%$3,B&50B6$9(
0DSSLQJ
 2EMHFWW\SH!
/RRNXSWDEOH602)68%7$% 0DSSLQJ)0

0$3B%$3,07&6B$1'B352&(66


0DS%$3,FRQWDLQHUWR VP %'RF

... 0(6*6<1&
 )ORZ
6WDUW 0(6*6<1& )ORZ

SAP AG 2001

AP AG CR550 9-7
,QLWLDO/RDG7HFKQLFDO3URFHVV)ORZ

5%DFN(QG 3HUEORFN
&503OXJLQ
JLK M N OQPSRT&NOLUPWV XYFZ [X\ V7PWUN T&]^]_N {W| }~IB*IWWI~ }^    ! ^^! ! 
`7acbed+fhg^i&jk1lnm d `acbedfhg^i&j klnm d
73 ^! ^7 !!

yz x 7 * 


+  y x
wv tu
tu w txu
rs rs
pq o pq o
$V\QFKURQRXVFRPPXQLFDWLRQ
&506HUYHU
&500LGGOHZDUH 
^^!
;*< =>?@BAC? DFE G3? HIC `acbedfhg^i&j klnm d
7
/  !7
 ! ^! 7WI! 

6. $. ' ,5 ' 6 )%&576. S'$. 5765 '  : , $8'5 '  :7:01$
SAP AG 2001

AP AG CR550 9-8
'DWD&RQWDLQHU%$3,07&6

*HQHULF&RQWDLQHUIRUGDWDH[FKDQJHEHWZHHQ&50DQG5%DFN(QG

l7$%1$0(QDPHRI
DSSOLFDWLRQGDWDVWUXFWXUH

l6(*7<3('$IRUGDWD
''IRU'',&LQIRUPDWLRQ

l'$7$GDWDVWUHDPRI
DSSOLFDWLRQGDWD

SAP AG 2001

AP AG CR550 9-9
0DSSLQJ2YHUYLHZ,QLWLDO/RDG

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH

P%'RF
5'%
2ZQ
2ZQ %$3,07&6 2ZQ
2ZQ 7DEOH
0DSSHU
0DSSHU
0DSSHU
0DSSHU

V%'RF
2ZQ
2ZQ
([WUDFWRU
([WUDFWRU

&'%
7
  
! 
7DEOH

SAP AG 2001

AP AG CR550 9-10
,PSOHPHQWDWLRQRIDQ([WUDFWRULQ5

,PSOHPHQWWKHIROORZLQJLQWHUIDFH

0DLQWDVNV
n )LOWHUHGGDWD
H[WUDFWLRQ
n 0DSGDWDWR%$3,07&6VWUXFWXUH
PD\EHSHUIRUPHGLQDVHSDUDWHIXQFWLRQPRGXOH
n )LOOKHDGHU%$3,&50'+
n &DOO&56B6(1'B72B6(59(5
IXQFWLRQPRGXOH

$FWLYDWHWKHH[WUDFWRULQWKHWDEOH&5068%7$%
SAP AG 2001

AP AG CR550 9-11
,PSOHPHQWDWLRQRIDQ0DSSHULQ&50

,PSOHPHQWWKHIROORZLQJLQWHUIDFH

0DLQWDVNV
n 0DS%$3,07&6FRQWHQW
WRP%'RFPHVVDJHV
n )LOOWKHFODVVLFDOSDUWRI
WKHP%'RFPHVVDJHV
n )LOOWKHH[WHQVLRQRIWKH
P%'RFPHVVDJHV
n )LOOWKHP%'RFPHVVDJHKHDGHU

$FWLYDWHWKHPDSSHULQWKH$GDSWHU2EMHFW

SAP AG 2001

AP AG CR550 9-12
'HOWD/RDG5%DFN(QGWR&506HUYHU

'HOWD/RDG
5%DFN(QGWR&506HUYHU

SAP AG 2001

AP AG CR550 9-13
'HOWD/RDGV2YHUYLHZ

&506HUYHU 'HOWD 5%DFN(QG


/RDG
)ORZ %$3,&RUH
5$GDSWHU 3UR[\%$3,
&RQWURO IXQFWLRQV
%'RF
(YHQWWULJJHU
6HYHUDO 'HOWD %7(
6HUYLFHV /RDG
%$3,6DYH 6HQGWR6HUYHU

l /RDG &50WR5  l /RDG 5WR&50 


&XVWRPHU PDQ\2EMHFWV
&RQWDFW3HUVRQ
6DOHV2UGHU 0RELOH6HUYLFH
6HUYLFH2UGHU 0RELOH6HUYLFH

SAP AG 2001

n Only certain business objects can be ORDGHG from the CRM server to the R/3 Back-End, whereas
many business objects can included into a 'HOWD/RDG from the R/3 Back-End to the CRM server.

AP AG CR550 9-14
'HOWD/RDG5%DFN(QG&506HUYHU 3DUW,

5%DFN(QG
53OXJ,Q
5HFHLYHVRQH
&56B2%-!B&2//(&7B'$7$ WDEOHUHFRUG
2%- EXVLQHVVREMHFW
7UDQVDFWLRQV 
FRUHIXQFWLRQV &56B2%-!B6(1'B72B6(59(5
2%- EXVLQHVVREMHFW
 

&56B6(1'B72B6(59(5
%7(
5'% %$',   ., $8: %' 22,. )3'3$. 56 '$'572$. 576' ,


8SGDWH 7ULJJHU 8VHUH[LW&50B

;0/&RQYHUVLRQ RSWLRQDO
2XWERXQG (J%$3,GDWD
TXHXHWR&50 FRQWDLQHU 
6HUYHU T5)& %$3,07&6 :ULWHWRLQERXQGTXHXH &50

SAP AG 2001

n Note that the BTE Events are also triggered for business objects that were (delta) loaded from the
CRM Server. Therefore it is possible to also use the user exit CRM0_200 in the
CRS_SEND_TO_SERVER function module for this data transfer. This could be necessary to
perform additional tasks after the update of the uploaded business object.
n The filter application (step 4) are not supported for all business objects. The business objects
Business Partners and Materials support this feature. The Condition objects will follow soon.
n The outbound queues are used for security reasons, e.g. if the CRM Server is temporarily
unavailable, or for the initial download, to guarantee that delta messages are not overtaking messages
of the initial download. Usually RFC calls from the R/3 Back-End are queued in the inbound queues
of the CRM server.

AP AG CR550 9-15
'HOWD/RDG5%DFN(QG&506HUYHU 3DUW,,

&506HUYHU
,QERXQGTXHXH (J%$3,GDWD
IURPWKH5 FRQWDLQHU
%DFN(QG T5)& %$3,07&6
5$GDSWHU
%$3,B&50B6$9(

;0/&RQYHUVLRQ ,IQHFHVVDU\
0DSSLQJ
 2EMHFWW\SH!
/RRNXSWDEOH602)68%7$% 0DSSLQJ)0

0$3B%$3,07&6B$1'B352&(66

0DS%$3,FRQWDLQHUWRP%'RF

8VHUH[LW60287,/ 0HVVDJLQJ
)ORZ
 0D\EH
6WDUW0HVVDJH)ORZ VNLSSHG

SAP AG 2001

n Note that the mapping function module in step 4 may also start the messaging flow. In this case, the
subsequent steps are skipped.

AP AG CR550 9-16
0DSSLQJ2YHUYLHZ'HOWD/RDGWR&50

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH %.  :%:91$4:' 22,/. )3'$4. 576

2ZQ'DWD
2ZQ'DWD
&ROOHFWRU
&ROOHFWRU

P%'RF
5'%
2ZQ
2ZQ %$3,07&6 2ZQ
2ZQ 7DEOH
0DSSHU
0DSSHU
0DSSHU
0DSSHU

V%'RF

&'%
7DEOH

SAP AG 2002

AP AG CR550 9-17
,PSOHPHQWDWLRQRID'DWD&ROOHFWRU

,PSOHPHQWWKHIROORZLQJ PLQLPDO LQWHUIDFH

0DLQWDVNV
n 0DSGDWDWR%$3,07&6VWUXFWXUH
PD\EHSHUIRUPHGLQDVHSDUDWHIXQFWLRQPRGXOH
n $GGGDWDIURPD SRVVLEOH ORDGIURPWKH&506HUYHU
n )LOOKHDGHU%$3,&50'+
n &DOO&56B6(1'B72B6(59(5
IXQFWLRQPRGXOH

&DOOWKLVIXQFWLRQPRGXOHZKHQXSGDWLQJGDWD YLD%7(%$'L

SAP AG 2001

AP AG CR550 9-18
'HOWD/RDG&506HUYHUWR5%DFN(QG

'HOWD/RDG
&506HUYHUWR5%DFN(QG

SAP AG 2001

AP AG CR550 9-19
'HOWD/RDG&506HUYHU5%DFN(QG 3DUW,

0DSSLQJ
&506HUYHU P%'RFW\SH!
5$GDSWHU
0DSSLQJ)0
0DSSLQJ
&50B83/2$'B72B2/73
6LWHW\SH!
RQO\IRUVLWHW\SH5
2XWERXQG$GDSWHU
)0 
/RRNXSWDEOH602)83/0$3
2XWERXQG$GDSWHU
 ' 2 5)$85
* '3$8')1576$8' ./6:%
6LWH3URYLGHU
/RRNXSWDEOH60:6359'5

8VHUH[LW60287,/ 0D\EH
0HVVDJLQJ  VNLSSHG
)ORZ ;0/&RQYHUVLRQ

:ULWHWRRXWERXQGTXHXH

(J%$3,GDWD 2XWERXQGTXHXHWR
FRQWDLQHU%$3,07&6 5%DFN(QG T5)&

SAP AG 2001

n The steps 1 to 5 are usually performed for the delta loads of business objects (e.g. Business Partners).
n Note that the mapping function module (step 2) can omit the upload to the R/3 Back-End by the R/3
Adapter. In this case the parameter E_NO_STANDARD_UPLOAD has to be set to X and the
application must perform the upload by itself. This exception is used for the upload of sales
documents. In this case the steps 3 to 5 are not performed.
n It is also possible to perform the upload in the user exit (step 3), so that the steps 4 and 5 may be
skipped.

AP AG CR550 9-20
'HOWD/RDG&506HUYHU5%DFN(QG 3DUW,,

(J%$3,GDWD 1RT5)&LQERXQG 5%DFN(QG


FRQWDLQHU%$3,07&6 TXHXHVDUHXVHG

53OXJ,Q
&50B83/2$'B75,**(5 0DSSLQJ
IRUDOOEXVLQHVVREMHFWV 2EMHFWW\SH /RDGW\SH
!8SGDWHSUR[\

;0/&RQYHUVLRQ LIQHFHVVDU\

/RRNXSWDEOH&5068%7$%

8VHUH[LW&50B 3URYLGHGE\WKH
 DSSOLFDWLRQ
'%XSGDWHRIEXVLQHVVREMHFW

SAP AG 2001

AP AG CR550 9-21
0DSSLQJ2YHUYLHZ'HOWD/RDGWR5

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH

2ZQ3UR[\
2ZQ3UR[\ 2ZQ'DWD
2ZQ'DWD
2ZQ %$3,
%$3, &ROOHFWRU
&ROOHFWRU
2ZQ
P%'RF 0DSSHU
0DSSHU

5'%
%$3,07&6 2ZQ 7DEOH
2ZQ
0DSSHU
0DSSHU

V%'RF

&'%
7DEOH

SAP AG 2001

AP AG CR550 9-22
0DSSLQJ2YHUYLHZ6FHQDULR,,

&50 5%DFN(QG
&50'%
6HUYHU
7DEOH %.  :%:91$4:' 22,/. )3'$4. 576

9DOLGDWLRQ
9DOLGDWLRQ
6HUYLFH
6HUYLFH 2ZQ3UR[\
2ZQ3UR[\ 2ZQ'DWD
2ZQ'DWD
2ZQ %$3,
%$3, &ROOHFWRU
&ROOHFWRU
2ZQ
P%'RF 0DSSHU
0DSSHU

5'%
0DSSLQJ 0RELOH 2ZQ
2ZQ %$3,07&6
0DSSLQJ 0RELOH 2ZQ
2ZQ 7DEOH
6HUYLFH %ULGJH 0DSSHU
0DSSHU
6HUYLFH %ULGJH 0DSSHU
0DSSHU

V%'RF
2ZQ
2ZQ
([WUDFWRU
([WUDFWRU

&'%
7
  
! 
7DEOH

SAP AG 2001

AP AG CR550 9-23
5$GDSWHU&XVWRPL]LQJ8QLW6XPPDU\

<RXDUHQRZDEOHWR

l ,PSOHPHQWDQGDFWLYDWHDOOIXQFWLRQPRGXOHVWR
SHUIRUPDQLQLWLDODQGGHOWDORDGIURPDQ5
%DFN(QGWRWKH&506HUYHU
l 'HVFULEHWKHSURFHVVRI'HOWD/RDGVWR5
%DFN(QGV

SAP AG 2001

AP AG CR550 9-24
([HUFLVHV

8QLW 5$GDSWHU&XVWRPL]LQJ
7RSLF ,PSOHPHQWLQJDQ,QLWLDO/RDG

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


Implement your own extractor and mapping function module.
Define an Adapter Object to support the Initial Load for business
objects.
Start and monitor the Initial Load.
In order to perform more general Initial Loads, it is necessary to write
your own extractor on the R/3 Back-End and a mapper from the
BAPIMTCS structure to the new mBDoc type on the CRM Server. The
final step is to configure the Adapter Framework to support the Initial
Load from the R/3 Back-End to the CRM database via mBDoc messages.
Afterwards, the Initial Load can be started and monitored.

1-1 Implement an extractor on the R/3 Back-End

1-1-1 Create a new function module =B&5BB(;75$&7 that implements the


extractor. Use the following interface:
)81&7,21=B&5BB(;75$&7

 /RFDOLQWHUIDFH
,03257,1*
9$/8( ,B%$3,&50'+ /,.(%$3,&50'+6758&785(%$3,&50'+
9$/8( ,B2%-B1$0( /,.(%$3,&502%-2%-B1$0(
(;3257,1*
9$/8( (B67$786 /,.(&50B3$5$67$786B(;7
7$%/(6
7,B7$%/(66758&785(&507$%/(6
7,B5$1*(6758&785(&506(/675
7,B5(/$7,216758&785(&505(/$
(;&(37,216
(5525B0(66$*(


Activate your new extractor in the table &5068%7$%.

AP AG CR550 9-25
1-2 Implement a mapping function module on the CRM Server

1-2-1 The content of the %$3,07&6 structure needs to be mapped to the messaging
BDoc type. To do this implement the function module
=B&5BB0$3B%$3,07&6BB%'2&. Use the following interface:

)81&7,21=B&5BB0$3B%$3,07&6BB%'2&

 /RFDOLQWHUIDFH
,03257,1*
9$/8( ,B2%-1$0( 7<3(602B2%-1$0
9$/8( ,B2%-&/$66 7<3(602B2%-&/$
9$/8( ,B6(1'(5B6,7(B7<3( 7<3(60:67,'
9$/8( ,B6(1'(5B6,7(B,' 7<3(602B6,7(,'
9$/8( ,B12B352&(66 7<3(602'/7352&
(;3257,1*
9$/8( +($'(5 7<3(60:B)+'
9$/8( 5()B0(66$*( 7<3(5()72'$7$
9$/8( 5()B0(66$*(B(;7 7<3(5()72'$7$
9$/8( 2%-(&7B/,1.6 7<3(75/B%25,'
9$/8( (B'2B127B&$//B*'+ 7<3(;)(/'
7$%/(6
7,B%$3,07&66758&785(%$3,07&6
7B0(66$*(66758&785(%$3,&5006*
7,B.(<B,1)26758&785(%$3,&50.(<
7,B27+(5B,1)26758&785(%$3,(;7&
7,B%$3,,'/,676758&785(%$3,,'/,67
&+$1*,1*
9$/8( (B%$3,&50'+ /,.(%$3,&50'+6758&785(%$3,&50'+
9$/8( (5525B6(*0(176 7<3(60:B(557$%


1-3 Create an Adapter Object

1-3-1 In the 2EMHFW0DQDJHPHQW component of the 'DWD([FKDQJH menu, add a new


customizing Adapter Object =&5BB0(6*, which corresponds to the
BDoc type of your group.

1-3-2 Specify the Initial Load Context.

1-3-3 For this new Adapter Object, enter the table relationship (only the R/3 Back-End
table is required here) for the mapping of data during the load process.

1-3-4 Maintain the mapping function module for the mapping from the %$3,07&6
structure to your new messaging BDoc type.

1-3-5 Create the Object Class =&5BB&/$66 for your Adapter Object and
assign it to the new Class.

1-4-6 Regenerate the Adapter Object and BDoc type runtime objects manually.

1-4 Start and monitor the Initial Load

1-4-1 Start an Initial Load for the newly defined Adapter Object.
Monitor the Initial Load using the load monitor, inbound queues, etc. R

AP AG CR550 9-26
([HUFLVHV

8QLW 5$GDSWHU&XVWRPL]LQJ
7RSLF ,PSOHPHQWLQJD'HOWD/RDG

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


Implement a data collector function module.
Simulate a Delta Load.

Only one more function module is needed to enable Delta Load from the
R/3 Back-End to the CRM Server. The implementation of this module is
the main task of this exercise.

2-1 Implement a data collector module

2-1-1 Create a new function module =B&5BB&2//(&7B'$7$, which can


be called by the application to trigger a Delta Load to the CRM Server. A
minimal interface for this function module consists of a parameter to pass the
modified table record and a parameter for the task field.

AP AG CR550 9-27
([HUFLVHV

8QLW5$GDSWHU&XVWRPL]LQJ
7RSLF5HSOLFDWLRQ0RGHOLQJ RSWLRQDO

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


Define Replication Objects.
Define Publications.

Now, the distribution of BDoc messages of this new type needs to be


defined and entered into the system. A new Replication Object is
designed and assigned to a new publication.

3-1 Define a Replication Object

3-1-1 Create a new Replication Object =&5B from your BDoc type. Please use
the short ID = to identify the new Replication Object. It should be an
intelligent replication object with the two possible criteria fields &28175<
and &217,1(17, both with an Equal operator. The Replication Object does
not depend on other BDoc types, so that no parent BDoc type is needed.

3-2 Define a Publication

3-2-1 Create a new Publication =&5B E\&RXQWU\ containing the


Replication Object you created in the previous exercise, using the criteria field
&28175< as the replication-relevant field.

AP AG CR550 9-28
([HUFLVHV

8QLW5$GDSWHU&XVWRPL]LQJ
7RSLF&KHFNLQJWKHUHVXOWVRIWKHHQWLUHVFHQDULR RSWLRQDO

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


Check the results of the entire customizing process performed in the
sequence of exercises.

Now that all steps of the scenario have been executed, the results of the
Initial Load need to be checked. Can the data be distributed to the mobile
clients defined in an earlier exercise?

4-1 Check the results of the entire scenario


After the previous exercise, the data should have reached the CDB. Now it should be
distributed to the mobile client sites defined earlier.

4-1-1 Create a Subscription for the new data for a site defined in an earlier demo. You
may want to use the country as a criteria field for replication.

4-1-2 Check that the data actually arrives in the appropriate outbound queue for that
Site.

4-1-3 Make sure that the new BDoc type has been handled correctly by the Flow
Control and that no messages are stuck in the replication queues.

AP AG CR550 9-29
6ROXWLRQV

8QLW5$GDSWHU&XVWRPL]LQJ
7RSLF,PSOHPHQWLQJDQ,QLWLDO/RDG

1-1 Implement an extractor on the R/3 Back-End

1-1-1 Copy the implementation from the sample solution in the appendix to the
function module =B&5BB(;75$&7. Adjust the names of the tables and
structure accordingly. Note that the extractor calls a function module
=B&56B0$3B=&5BBB%$3,07&6. This function module needs to be
copied and adjusted as well.
To register the extractor make the following entry in the table &5068%7$%
on the R/3 Back-End via the transaction 60:

Field Value
&RQVXPHU &50
2EMHFWQDPH =&5BB0(6*
8SRUGRZQORDG '
2EMHFWFODVV =&5BB&/$66
)XQFWLRQPRGXOH =B&5BB(;75$&7

1-2 Implement a mapping function module

1-2-1Copy the implementation from the sample solution in the appendix to the function
module =B&5BB0$3B%$3,07&6BB%'2&. Adjust the names of the
messaging BDoc type and the extension accordingly.

1-3 Creat an Adapter Object

1-3-1 Choose
0LGGOHZDUH'DWD([FKDQJH2EMHFW0DQDJHPHQW&XVWRPL]LQJ
2EMHFWV 5$& .
Switch to change mode and press the &UHDWH2EMHFW button. Enter the name of
the Adapter Object and press return. Provide a description for the new Adapter
Object and assign it to your messaging BDoc type. Set the additional parameters
for the Adapter Object, e.g. the block size, to appropriate values. A reasonable
default value for the block size is between 50 and 1000.

1-3-2 Go to the ,QLWLDO)ORZ&RQWH[W tab and select the source Site Type. All other
fields are filled automatically.

AP AG CR550 9-30
1-3-3 Go to the 7DEOH6WUXFWXUHV tab. Enter the name of the R/3 table in the 7DEOH
VRXUFHVLWH column and leave the other fields blank.

1-3-4 Go to the Mapping Modules tab and enter your new function module that maps
the content of the incoming BAPIMTCS structure to the messaging BDoc type.

1-3-5 Create a new Object Class and assign it to your new Adapter Object. Save your
new Adapter Object.

1-3-6 To regenerate the Adapter Object and BDoc type runtime objects, call the
transaction
0LGGOHZDUH'HYHORSPHQW*HQHUDWLRQ*HQHUDWLRQ*HQHUDWH
6HUYLFHV 602**(1 .
Enter the name of your BDoc type, select %'RFW\SHIXQFWLRQVand press the
([HFXWH button to regenerate the BDoc object.

1-4 Start and monitor the Initial Load

1-4-1 Choose
0LGGOHZDUH'DWD([FKDQJH,QLWLDO/RDG6WDUW 5$6 .
Enter the name of the newly defined Adapter Object and then start the Initial
Load.

1-4-2 Choose
0LGGOHZDUH'DWD([FKDQJH,QLWLDO/RDG0RQLWRU2EMHFWV 5$0 .
Select the objects to monitor and then examine the monitoring results. Has the
status light for your object already turned to green? If not, check the inbound
queues on the CRM Middleware for entries corresponding to your Adapter
Object.

AP AG CR550 9-31
6ROXWLRQV

8QLW5$GDSWHU&XVWRPL]LQJ
7RSLF,PSOHPHQWLQJD'HOWD/RDG

2-1 Implement a data collector module

2-1-1 Copy the implementation from the sample solution in the appendix to the
function module =B&5BB&2//(&7B'$7$. Adjust the names of the
tables and variables accordingly.

AP AG CR550 9-32
6ROXWLRQV

8QLW5$GDSWHU&XVWRPL]LQJ
7RSLF5HSOLFDWLRQ0RGHOLQJ RSWLRQDO

3-1 Define a Replication Object

3-1-1 Start the Administration Console (transaction 602($&). Use the Replication
Object wizard to create the replication object according to the specified data.

3-2 Define a Publication

3-2-1 Use the Publication wizard to create a Publication according to the specified
data.

AP AG CR550 9-33
6ROXWLRQV

8QLW5$GDSWHU&XVWRPL]LQJ
7RSLF&KHFNLQJWKHUHVXOWVRIWKHHQWLUHFXVWRPL]LQJ
VFHQDULR RSWLRQDO

4-1 Check the results of the entire scenario

4-1-1 Use the Administration Console to create an appropriate Subscription. The


countries that may be used for the criteria fields are listed in the table
=&5B (assuming that the Initial Load was performed successfully).

4-1-2 Choose
0LGGOHZDUH0RQLWRULQJ4XHXHV'LVSOD\2XWERXQG5)&4XHXHV
604 .
Check for entries in the queue of your site.

4-1-3 Choose
0LGGOHZDUH0RQLWRULQJ0HVVDJH)ORZ'LVSOD\%'RF0HVVDJHV
60: .
Make an appropriate selection, and check the processing status of BDoc
messages of the type of your group. Also, check the replication queues for
messages of the same type.

AP AG CR550 9-34
;,)$GDSWHU&XVWRPL]LQJ

&RQWHQWV

l ;,)$GDSWHU&XVWRPL]LQJ
l (QKDQFHPHQWV
l 'HYHORSPHQWRIQHZ,QWHUIDFHV

SAP AG 2001

AP AG CR550 10-1
;,)$GDSWHU&XVWRPL]LQJ8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l &XVWRPL]HWKH;,)$GDSWHU
l ([SODLQWKHHQKDQFHPHQWSURFHVVRI
H[LVWLQJEXVLQHVVREMHFWV
l 'HVFULEHWKHUHTXLUHGVWHSVWRGHYHORS
QHZLQWHUIDFHV

SAP AG 2001

AP AG CR550 10-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 10-3
,QWHUIDFHVWRQRQ6$36\VWHPV

&50VXSSRUWVWKHIROORZLQJLQWHUIDFHV YLDDGDSWHUV 

n ;0/,'RF

%XVLQHVVSDUWQHUKLHUDUFK\UHODWLRQLPSRUWH[SRUW

%XVLQHVV7UDQVDFWLRQ VDOHVVHUYLFHRUGHUDFWLYLW\ LPSRUWH[SRUW

3URGXFWLPSRUW

&RQGLWLRQLPSRUW

,QYRLFHH[SRUW

n )LOHEDVHGLPSRUW

6$3'DWD7UDQVIHU '; :RUNEHQFK

$6&,,$GDSWHU

SAP AG 2001

n The CRM Middleware provides the following interfaces for initial or delta loads from/towards non-
SAP systems:
XML messages,
Intermediate Documents (IDocs) via ALE, the SAP Business Connector or the SAP Data Transfer
Workbench (DX Workbench),
ASCII flat files.
n The messaging interfaces can be used for a number of scenarios:
Migration from a legacy system that will be replaced by mySAP CRM,
Integrating CRM with non-SAP backend systems,
B2B communication with business partners.
n The CRM Middleware provides interfaces for products (e.g. materials or services), business partners
(e.g. customers, contact persons or employees), business partner hierarchies, business partner
relations and sales orders. This allows customers to exchange this data with legacy backend systems
initially and on a regular basis. Delta loads take place, when changes to existing objects are made or
when new objects are created. The exchange of customizing data is not relevant to the data exchange
with non-SAP backend systems. Product configuration and marketing data is also not exchanged.

AP AG CR550 10-4
7KH;,)$GDSWHU2YHUYLHZ

l 7KH([WHUQDO,QWHUIDFH$GDSWHU ;,) SURYLGHV


 $VHUYLFHLQWKH0HVVDJH)ORZ
 ,'RFDQG;0/LQWHUIDFHVIRUH[WHUQDOV\VWHPV

&506HUYHU
&500LGGOHZDUH

;0/ILOH

;,)$GDSWHU ([WHUQDO
P%'RF 6\VWHPV
,'RF

SAP AG 2001

n The external interface adapter (XIF adapter) provides:


Services in the CRM Server Messaging Flow
Bulk-message capable IDoc and XML interfaces for external systems.
n More information about the XIF Adapter may be found in the SAPNet via the alias: FUPFL.

AP AG CR550 10-5
([WHUQDO,QWHUIDFH$GDSWHU

&506HUYHU
&500LGGOHZDUH

P%'RF
0HVVDJLQJ
9DOLGDWLRQ
),!-
)ORZ 6 5'
7$ 89 0
([WHUQDO,QWHUIDFH$GDSWHU G H@ I0 - 0
)+*,.- >  H"

 

  
  !"#$ /&0 $12! 043 )+*B,.-CED % : %  >
> 82J 0 

KLK'KKMK'K AF /  & $H 0 


) "$N&
KLK'KKMK'K ,!: < ;'#=$5
>$?
* 5@=$5
> ;E+

% &

'&( / 5#$ 8A  / ;: /   / ' 

SAP AG 2001

n 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.
n In inbound transactions, incoming messages in XML- or IDoc format are received by the XIF
adapter via the basic services (SOAP, ALE) and 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.

AP AG CR550 10-6
7KH([WHUQDO,QWHUIDFH$GDSWHU62$3;0/

&506HUYHU

&500LGGOHZDUH
 RF % , 

'' @ S
0HVVDJLQJ
P%'RF D% :
)ORZ
%  ('$( D% :
) "$H

([WHUQDO,QWHUIDFH$GDSWHU D % :CN)O*P,Q-
G @
)#,!-
7 5$
' D% :
7
 8 0

SAP AG 2001

n More detailed overview of SOAP/XML Processing


n SOAP/XML messages can be send to XML Messaging systems that convert the XML into other
XML schemata based on mapping rules and send these messages to other applications based on
routing rules.
n For CRM <-> 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)
unlike an XML document, and therefore the size of document sent down the line is substantially
smaller in comparison.

AP AG CR550 10-7
7KH([WHUQDO,QWHUIDFH$GDSWHU,'RF

&506HUYHU
)S,J-
&500LGGOHZDUH V 5' D % :
0HVVDJLQJ PF % , 

' @  6S
  0
P%'RF
)ORZ
/  X@L 
/ L  M1;EO
([WHUQDO,QWHUIDFH$GDSWHU
X 0 Y
;EO
AF /  I0 - 0
>  T" +W; ?
,!: ;N * 
U$ 0 H 0 
I0 - 0
>  T"
,!:
% $('$( ;EO
) "H$
/ L 
+W; WW;
) 5
= LC ) $" H$

SAP AG 2001

n More detailed overview of IDoc Processing.


n IDocs can be used to send messages to the Business Connector where an IDoc XML document will
be established and mapped into other XML Schemata such as Rosetta Net, xCBL or customers own
schemata.
n IDocs can be used to send messages to a flat file.
n IDocs can be used to send messages to an ALE converter, where IDocs are mapped into standardized
message formats (EDI communication).
n 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.
n IDocs can be used to send messages to an EDI Sub-System. In contrast to an ALE converter the EDI-
Sub-System does not use direct program-to-program communication for transferring IDocs.

AP AG CR550 10-8
&XVWRPL]LQJ,'RF2XWERXQG3URFHVVLQJ

n &UHDWHDQ5)&'HVWLQDWLRQ
Z ) %Q[\]#^&_O`a9b'`c_Vd$e
eSfghEiNd&e
n &UHDWHD/RJLFDO6\VWHP
Z )S,.: ]  K ( K8j _
kO_OlVmRn6bEo
n &UHDWHD5HFHLYHU3RUW
Zqp +7; ]^8r4set$s&ghEiNd$e
sul7oO_  0So
i'uTf
n &UHDWHD3DUWQHU3URILOH
Zqp + 7; ] -  0 4 0 "Yvwx2y  G 0 T$>< 
( &z"$H$ {|&LH&E % $(&y"}X 0
* 5$9=$5
&> -  0 $1 0 
n (QWHU2XWERXQG3DUDPHWHUV
Zqp + 7; ]  K ( K ^8r@se&t~frObLBdgztYs&h
d$eg$f {- 
 " _SlmBnPb'okLk w#}
kmy { % (&
"$ S_ lmBnPb'okEk w#y& k
m {
FS$ 
 U 0  0 Y1
LH&M>
n &UHDWHD6LWH
Z ) % * ,  ] )  !2y  G )  !"$& hHfrAe
sub'eShHfrA~Ns&gf!~Hd&rOb'Rd
gzt 2  G YLH&E> -  0  0
- 0 X@L 
n 0DLQWDLQ6XEVFULSWLRQVIRU3XEOLFDWLRQV
Z ) % * ,  ] * z= H$ "#1wO$ t#gr4i 7hEiNd$e { (11&'
'>1
 9.5
=$ 0 L@ 
n $VVLJQPDLQWDLQHG6LWHWR,QWHUIDFH7\SH
Z R F % D ; / R ] |&LH
L|O
y"$!&$>;' 0 XH y"#y _Ol6mPnb'ok+Lk w}
X 0  G Y82

 H
SAP AG 2001

n When using IDocs for outbound processing, the above settings have to be made.

AP AG CR550 10-9
&XVWRPL]LQJ62$3;0/2XWERXQG3URFHVVLQJ

n &UHDWHDQ+773'HVWLQDWLRQ
60+773&RQQHFWLRQVWRH[WHUQDOV\VWHPV

n &UHDWHD6LWH
602($&6LWHZLWK6LWH7\SH([WHUQDO,QWHUIDFHIRU;0/DQGDVVLJQ+773
GHVWLQDWLRQ

n 0DLQWDLQ6XEVFULSWLRQVIRU3XEOLFDWLRQV
602($&2EMHFW7\SH6XEVFULSWLRQDVVLJQPDLQWDLQVLWHWRVXEVFULSWLRQ

n $VVLJQPDLQWDLQHG6LWHWR,QWHUIDFH7\SH
&50;,)B&PDLQWDLQ%'RF7\SHDQG,QWHUIDFH7\SH &50;,)B B6$9( IRU
WKHQHZVLWH

SAP AG 2001

n When using SOAP/XML for outbound processing, the above settings have to be made.

AP AG CR550 10-10
&XVWRPL]LQJ,QERXQG3URFHVVLQJ

n &XVWRPL]LQJ,'RF,QERXQG
&UHDWH/RJLFDO6\VWHPYLD6$/(!3UHSDUH6HQGHUDQG5HFHLYHU6\VWHPV!

6HWXS/RJLFDO6\VWHPV!1DPH/RJLFDO6\VWHP

&UHDWHD3DUWQHU3URILOHYLD7UDQVDFWLRQ:( 3DUWQHU7\SH/6

(QWHUDVXLWDEOH0HVVDJH7\SH&50;,)B B6$9(B0 &50;,)B B6$9(B6 LQ

WKH,QERXQG3DUDPHWHUV

n &XVWRPL]LQJ62$3;0/,QERXQG
1R&XVWRPL]LQJLVUHTXLUHGLQWKH&50V\VWHPIRUUHFHLYLQJ62$3;0/

GRFXPHQWV

&50+7733RUW6HWWLQJYLD7UDQVDFWLRQ60,&0!*RWR!6HUYLFHV

SAP AG 2001

n When using IDocs or SOAP/XML for outbound processing, the above settings have to be made.

AP AG CR550 10-11
'DWD2EMHFW([WHQVLRQ%XVLQHVV7UDQVDFWLRQ

n &86720(5B+DQG&86720(5B,,QFOXGHV
,Q;,)LQWHUIDFH&50;,)B%8675$16
,QP%'RF
,QUHOHYDQWGDWDEDVHWDEOHV KHDGHUDQGLWHPOHYHO
n )LHOGH[WHQVLRQVLQ&XVWRPHU,QFOXGHV
0RYHFRUUHVSRQGLQJVWDWHPHQWRQKHDGHUDQGLWHPOHYHOHQDEOHVDXWRPDWLF
ILOOLQJRIQHZGDWDILHOGV
&RQVLVWHQWGDWDIORZIURPH[WHUQDOLQWHUIDFHWRGDWDEDVH DQGYLFHYHUVD
1HZ)LHOGVFDQDOVREHVKRZQRQ'\Q3URVZLWKLQ&50'B25'(5YLD%$',
WHFKQLTXH
)  B5$ '$( CNY  0 
 ) H@L$(
 CT) "$ % 
> X4 4  CN 0 & 84  CM
V5' , >>;'XH 0 P5@Y 0  G && $1
N|+
&51
TA $
n &KDQJHVWR)LHOG&RQWHQWV
2XWERXQGDQG,QERXQG%$',GHILQLWLRQ&50;,)B25'(5B0$3
 , 6; 
 &Y&H4 |5=$y 0 >{ , 7; &L'yX95
& 84 
_Ol7mJn6bEokVl lSk
m `#k+^qsex_OlVmRn6bLokO7l lSkm `#k
o
lRm
n 5HJHQHUDWLRQRI$/(LQERXQGDQGRXWERXQGPRGXOHV
8VHWUDQVDFWLRQ%')*DQGFUHDWHDQHZ0HVVDJH7\SH

SAP AG 2001

AP AG CR550 10-12
'DWD2EMHFW([WHQVLRQ,QYRLFH

n %LOOLQJ(QJLQH
)XOO\JHQHUDWHGRQWKHEDVLVRI0HWDGDWD
5HVXOWLQJDSSOLFDWLRQHQDEOHVILHOGH[WHQVLRQVDWKHDGHUDQGLWHPOHYHO
ZLWKRXWPRGLILFDWLRQ
& H
 !9}>&Y=${" - 0 Y&$>|<O
} 0 5$ 45 0 
n &RPSOH['DWD7\SH&50;,)B,9B%'
)LHOGH[WHQVLRQ
,
 $&$>$ G 
 5
) $|.XA & >x$Y15+=Y5$>
0RYHFRUUHVSRQGLQJVWDWHPHQWLQHDFKFRPSRQHQWHQDEOHVDXWRPDWLFILOOLQJ
RIQHZGDWDILHOGV
n &KDQJHVWR)LHOG&RQWHQWV
%$',GHILQLWLRQ&50;,)B,9B,2B0$3B72
 , 6; 
 &Y&H4 |5=$y 0 >{ , 7; &L'yX95
& 84 
_Ol7mJn6bEok
b' 6bT_ km `#k+^
; x& 0 + 0 YH 0A] #x  |$ 0 #&X;LU 16O#
 G 
$('$( 0 $1T 0A] 
  >&!T"#
n 5HJHQHUDWLRQRI$/(LQERXQGDQGRXWERXQGPRGXOHV
8VHWUDQVDFWLRQ%')*DQGFUHDWHQHZ0HVVDJH7\SH

SAP AG 2001

AP AG CR550 10-13
'DWD2EMHFW([WHQVLRQRWKHUV

n &RQGLWLRQV
([WHQVLRQRI)LHOG&DWDORJZLWKFHUWDLQILHOGV
$SSURSULDWH%$',LPSOHPHQWDWLRQ
*HQHUDWLRQ VHHGRFXPHQWDWLRQRQ&RQGLWLRQ7HFKQLTXH
n 3URGXFW
&XVWRPHUFUHDWHVVHOIGHILQHGDWWULEXWHV
*HQHULF&RQWDLQHUZLWKLQ;,)FDQEHILOOHGZLWKVHOIGHILQHGDWWULEXWHV
$XWRPDWLFGDWDIORZIURP;,)WRGDWDEDVH DQGYLFHYHUVD
n %XVLQHVV3DUWQHU
;,)FRPSRQHQWV&(175$/B'$7$RU&50B'$7$XVHVWUXFWXUHVWKDWDUH
LQFOXGHGLQ;,)DQGP%'RF
0RYHFRUUHVSRQGLQJVWDWHPHQWVLQHDFKFRPSRQHQWHQDEOHDXWRPDWLFGDWD
VXSSO\
([WHQVLRQVLQ;,)FRPSRQHQW&50;,)B3$571(5B&203/(;UHTXLUH
H[WHQVLRQLQP%'RFVWUXFWXUH%86B(,B(;7(51
1RDXWRPDWLFGDWDVXSSO\%$',&50;,)B3$571(5B0$3PXVWEHXVHG
)LHOG([WHQVLRQVLQWKHVHVWUXFWXUHVDIIHFWP%'RFDQG;,)
6WDQGDUG([WHQVLRQ3URFHGXUHIRU%XVLQHVV3DUWQHU

SAP AG 2001

AP AG CR550 10-14
'HYHORSLQJDQHZ;,)LQWHUIDFH

n 3UHFRQGLWLRQ
Z
 A'$( <VW

Z +H /  $22  G  K ( K U$&''>&@ S! 0 U &{ K'KLK
n &RPSOH['DWD7\SH
Z +S  ] D ; / 6#x
  S!"#Yy H&# X<6O
&J68 z!z'
Z *  G  0 2y $YY

'$(<  0 "|=$T2.&1 
 8 <!"}&>Y &# &X6+
n I
'HILQLWLRQRI;,)0HWDGDWD
Z ) % D CN / RF % D ; / V * R; /]  K ( K  G  0 O1}XS<
{ D ; / X@5
$ 4 1( 0 S5
{  8 |>&H
T"#{ ; S54=$S5
$>X5
$ 8@ {'
=$5#$>1
$>154=$5#$>|1&
E$(XA5
$ 8@ { K'KLK
n *HQHUDWLRQRI;,))UDPHZRUN
Z ,  ,!- FS$ 0 SPF % D ; /% ,!-
)  S F ,  x(&& 0  D ; / /&0 $Y2. 0A3 2y  G &' 0 
 8U$

X45$ 8@'|
>5
 
Z &$G >y2 0  H&Y|&
'$(1X@5
$ 8 % YD E
/
=$5$>Y&& >$?N%  0,Q- 5 A=$* 5
>
G U$.9x=1Y&5
' "|L$
'5$>&>
2Y  % 'D1Y/# 

'$(1X@5
$% 4,! - S1/ PF* % ; =H  &$>
JF ; S=z$  F
Z ; X#yR5 0@0  ) 9H : 
( |  0 5
 0 $><'5@=$5
> {8 G }  0 $ 4  G !9x=Y>&8U& >
2Y  G 'Y(&& 0 H$>YX@5
 84 1BF % D ; /
=H 8 % ,J- D F , 7
Z  0 @ y
X;L
=5
$> C &&> * 5@=$5
> , 7; 1EyJF % D ; / S=z  % ,!- * 
>
JF % D ; /# S=z$  % ,!- S/ F * %
n *HQHUDWLRQRI,'RF,QWHUIDFH
Z }
X
 0  9 | /  |(&& 0  ., : < '
=5
$> &>15A=$5
&>X45
 8@ 

SAP AG 2001

n Complex Data Type of mBDoc can be seen within BDoc Modeller:

Start transaction SBDM


Name of structure can be ssen in Field &RPSOH['DWD7\SH
Structure format can be seen within Transaction SE11
n Names of Complex Data Types of external interfaces:

Product: BAPI_PRODUCT_INTERFACE
Conditions (create) BAPI_CT_COND_REC_COMPL_MSG
Conditions (delete) BAPI_CT_SEL_OPT_MSG
Business Partners CRMXIF_PARTNER_COMPLEX
Partner Relationships CRMXIF_PARTNER_REL_COMPLEX
Partner Hierarchies CRMXIF_PARTNER_HIER
Business Transaction CRMXIF_BUSTRANS
Invoice CRMXIF_IV_BD

AP AG CR550 10-15
;,)$GDSWHU&XVWRPL]LQJ8QLW6XPPDU\

<RXDUHQRZDEOHWR

l &XVWRPL]HWKH;,)$GDSWHU
l ([SODLQWKHHQKDQFHPHQWSURFHVVRI
H[LVWLQJEXVLQHVVREMHFWV
l 'HVFULEHWKHUHTXLUHGVWHSVWRGHYHORS
QHZLQWHUIDFHV

SAP AG 2001

AP AG CR550 10-16
5HSRVLWRULHV *HQHUDWLRQ

&RQWHQWV

l &500LGGOHZDUHUHSRVLWRULHVDQGWKHLUFRQWHQW
l *HQHUDWLRQRIUXQWLPHREMHFWV
l 7UDQVSRUWRI&500LGGOHZDUHREMHFWV

SAP AG 2001

AP AG CR550 11-1
5HSRVLWRULHV *HQHUDWLRQ8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l 'HVFULEHWKHFRQWHQWRIWKHYDULRXV
&500LGGOHZDUHUHSRVLWRULHV
l 8QGHUVWDQGWKHUHODWLRQVKLSEHWZHHQ
PHWDGDWDDQGUXQWLPHREMHFWV
l 8VHWKHDSSURSULDWHWRROVWRZRUNZLWK
WKHUHSRVLWRU\REMHFWV

SAP AG 2001

AP AG CR550 11-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 11-3
&500LGGOHZDUH5HSRVLWRULHVRQWKH&506HUYHU

&50
5$GDSWHU
0LGGOHZDUHUHSRVLWRU\
UHSRVLWRU\

5HSOLFDWLRQ
UHSRVLWRU\

%'RF
UHSRVLWRU\ $6&,,$GDSWHU
UHSRVLWRU\

SAP AG 2001

n The &500LGGOHZDUHUHSRVLWRU\ contains all meta information related to the CRM Middleware. It
consists of the:
R/3 Adapter repository
BDoc repository
Replication repository
ASCII Adapter repository

AP AG CR550 11-4
*HQHUDWLRQRI5XQWLPH2EMHFWV

0HWDGDWD 5XQWLPHREMHFWV
PDLQWDLQHG JHQHUDWHG

&500LGGOHZDUH &500LGGOHZDUH
GHVLJQWLPH UXQWLPH
UHSRVLWRU\ UHSRVLWRU\

0:UHSRVLWRU\REMHFWV
%'RF
)XQFWLRQPRGXOHV
PHWDGDWD
5HSOLFDWLRQ ,QFOXGHV
PHWDGDWD
6WUXFWXUHV

5$GDSWHU 7DEOHW\SHVWDEOHV
PHWDGDWD
/RFNREMHFWV

SAP AG 2001

n The metadata contained in the CRM Middleware repository is used to generate UXQWLPHREMHFWV in
the CRM Middleware runtime repository. These are runtime objects stored in the CRM Middleware
repository.

AP AG CR550 11-5
%'RF5HSRVLWRU\

l 7KH%'RFPHWDGDWDFRQWDLQVWKHGHILQLWLRQV
RI%'RFVW\SHVDQGGDWDVHJPHQWV
%'RF
l 7KH%'RFPHWDGDWDLVPDLQWDLQHGE\WKH
PHWDGDWD
%'RF0RGHOHU

*HQHUDWLRQ

l 7KHUXQWLPHREMHFWVDUHXVHGWRSURFHVV
%'RFPHVVDJHVRIRQHW\SH
5XQWLPH
REMHFWV
%'RF

SAP AG 2001

n 0:UXQWLPHREMHFWVare generated from the metadata contained in the BDoc repository.


BDoc metadata is maintained by the %'RF0RGHOHU.
The generated runtime objects are used to process BDoc messages.

AP AG CR550 11-6
5HSOLFDWLRQ5HSRVLWRU\

l 7KHUHSOLFDWLRQPHWDGDWDFRQWDLQVWKH
GHILQLWLRQVRI

   5HSOLFDWLRQREMHFWV 52V
  



3XEOLFDWLRQV,QWHUOLQNDJHV


l 7KHUHSOLFDWLRQPHWDGDWDLVPDLQWDLQHGE\
*HQHUDWLRQ WKH$GPLQLVWUDWLRQ&RQVROH

l 7KHUXQWLPHREMHFWVWKDWLPSOHPHQWWKH
3XEO 52 UHSOLFDWLRQDQGUHDOLJQPHQWVHUYLFH
5XQWLPH
REMHFWV

SAP AG 2001

n 0:UXQWLPHREMHFWVare generated from the metadata contained in the replication repository.


Replication metadata is maintained by the $GPLQLVWUDWLRQ&RQVROH.
The generated runtime objects are used to implement the replication and realignment service.

AP AG CR550 11-7
5$GDSWHU5HSRVLWRU\

l 7KH5$GDSWHUPHWDGDWDFRQWDLQV
 $GDSWHU2EMHFWGHILQLWLRQV

$GDSWHU  )LOWHUVHWWLQJV
PHWDGDWD
7DEOHPDSSLQJV


2EMHFWGHSHQGHQFLHVIRUWKH,QLWLDO/RDG


*HQHUDWLRQ

l 7KHUXQWLPHREMHFWVDUHXVHGIRUWKHGDWD
H[FKDQJHZLWKH[WHUQDOV\VWHPV
5XQWLPH
REMHFWV
5$G

SAP AG 2002

n 0:UXQWLPHREMHFWVare generated from the metadata contained in the R/3 Adapter repository.
The generated runtime objects are used for exchanging data with the external systems.

AP AG CR550 11-8
*HQHUDWLRQ2YHUYLHZ

l 7RWDOJHQHUDWLRQ 602*727$/

5$G 3XEO
0HWDGDWD
%'RF 52

l *HQHUDWLRQRILQGXVWU\VSHFLILFREMHFWV 602*,1'

0HWDGDWD
3XEO 52

l *HQHUDWLRQIRURQHREMHFWW\SH 602**(1

0HWDGDWD
&$3

l *HQHUDWLRQRIDSSOLFDWLRQWDEOHLQGLFHV 602*,1'(;

SAP AG 2002

n Various transactions are provided depending on the required type of generation:


602*727$/ for initial or total generation
- 0LGGOHZDUH!'HYHORSPHQW!*HQHUDWLRQ!*HQHUDWLRQ!6WDUW,QLWLDO7RWDO*HQHUDWLRQ
602*,1' for generating industry-specific objects
- 0LGGOHZDUH!'HYHORSPHQW!*HQHUDWLRQ!*HQHUDWLRQ!*HQHUDWH,QGXVWU\6SHFLILF
2EMHFWV
602**(1 for generating services
- 0LGGOHZDUH!'HYHORSPHQW!*HQHUDWLRQ!*HQHUDWLRQ!*HQHUDWH6HUYLFHV

AP AG CR550 11-9
*HQHUDWLRQRI&500LGGOHZDUH5HSRVLWRU\2EMHFWV

l *HQHUDWLRQ 602**(1 6HOHFWREMHFW


RU
 
([HFXWH
0HWDGDWD

*HQHUDWLRQ

6HOHFWREMHFW
W\SH

5XQWLPH
REMHFWV l 'LVSOD\WKHUHVXOWV 602*/2*

SAP AG 2002

n To JHQHUDWH CRM Middleware repository objects from metadata:


Use transaction SMOGGEN or
- 0LGGOHZDUH'HYHORSPHQW*HQHUDWLRQ*HQHUDWLRQ*HQHUDWH6HUYLFHV
- 1. Select the type of object you want to generate
- 2. Select a repository object (or leave the field empty)
- 3. Choose ([HFXWH
n To GLVSOD\ the results of your generation use transaction SMOGLOG or
0LGGOHZDUH'HYHORSPHQW*HQHUDWLRQ*HQHUDWLRQ/RJ*HQHUDWH6HUYLFHV
n To display the results of the last initial / total generation use transaction SMOGLASTLOG or
0LGGOHZDUH'HYHORSPHQW*HQHUDWLRQ*HQHUDWLRQ/RJ'LVSOD\/RJRI/DVW
,QLWLDO7RWDO*HQHUDWLRQ

AP AG CR550 11-10
([DPSOH*HQHUDWLRQRID)XQFWLRQ0RGXOH

l 3DUWRIWKHUHMHFWLRQVHUYLFHWHPSODWH
GHYHORSPHQWFODVV602-!,QFOXGHV
&RGHIRUWKH 9DULDEOH
JHQHUDWRU 7$%/(B7$%ZLOO
EHUHSODFHG

&RGHIRUWKH
VHUYLFH

l *HQHUDWHGUHMHFWLRQVHUYLFHIRU%'RF&$3
GHYHORSPHQWFODVV6$3B06$*(1

SAP AG 2001

n This example shows part of the WHPSODWH for the generation of the rejection service for BDoc CAP.
A blue code line with an asterisk in front of it represents a comment line.
A blue code line with an asterisk followed by a @ sign, however, represents a code line relevant
for the generation program.
The black code line represents the code for the actual service.
n During generation, the variables contained in the black code are filled by the generation program as
it executes the blue code.
n The code of the JHQHUDWHGVHUYLFH then contains the comment line and several lines of black code,
each one representing a pass through the blue loop during generation.

AP AG CR550 11-11
1DPHVSDFHVIRU0LGGOHZDUH5HSRVLWRU\2EMHFWV

&XVWRPHU
6$3PHWDGDWD PHWDGDWD
&XVWRPHUQDPHVSDFHV
6$3QDPHVSDFHV =

%'RF 52 3XEO 5$G %'RF 52 3XEO 5$G


1DPHVSDFH&50* 1DPHVSDFH&50*(&
/RFDOGHYFODVV6$3B06$*(1 /RFDOGHYFODVV6$3B06$*(1

SAP AG 2002

n Customer modifications:
a customer may change SAP BDoc type definitions to create new customer versions
a customer version is not overwritten during an SAP upgrade (modification adjustment is
possible).

AP AG CR550 11-12
5HSRVLWRU\&RQVLVWHQF\&KHFNV

l 6\QWD[FKHFNRIJHQHUDWHGFRGLQJ602*6<17$;

%'RF 52 3XEO 5$G

l &KHFN%'RFUHSRVLWRU\FRQVLVWHQF\602*&.


%'RF %'RF
%'RF
%'RF

l &KHFNUHSOLFDWLRQUHSRVLWRU\602+&.602(&.


52
%'RF
3XEO

SAP AG 2002

n There are several possibilities available to check the FRQVLVWHQF\ of repositories and generated
objects:
Transaction FUNC_CHECK can be used to check whether the syntax of the generated function
modules is correct.
- 0LGGOHZDUH'HYHORSPHQW&KHFNV&KHFN*HQHUDWHG)XQFWLRQ0RGXOHV
Transaction SMOGCK can be used to check whether the content of the BDoc repository is
consistent.
- 0LGGOHZDUH'HYHORSPHQW&KHFNV&KHFN%'RF5HSRVLWRU\
Transactions SMOHCK and SMOECK can be used to check whether the content of the replication
repository is consistent, i.e. the relationship between BDocs, replication objects and publications is
correct.
- 0LGGOHZDUH'HYHORSPHQW&KHFNV&KHFN5HSOLFDWLRQ5XOHVIRU%'RF7\SHV
- 0LGGOHZDUH'HYHORSPHQW&KHFNV&KHFN5HSOLFDWLRQ5HOHYDQW2EMHFWV

AP AG CR550 11-13
6RIWZDUH'HYHORSPHQWLQ0RELOH6FHQDULRV,

l 2YHUYLHZWRROVDQGUHSRVLWRULHV

&506HUYHU 'HYHORSPHQW 0RELOH


'HYHORSPHQW 6WDWLRQ 5HSRVLWRU\
  !"  6HUYHU
$GPLQ&RQVROH
5  3 5 "4" 
$SSO5HS
$#%&"'()
6$3*8, *,+.-/0+)
1
23
43

%'RF0RGHOHU 7UDQVSRUW
7HVW&OLHQW 6HUYLFHV

'',&

0RGLILHVUHSRVLWRU\

'DWDH[FKDQJHRQO\

SAP AG 2001

n The various repositories in a mobile scenario are:


On the CRM Server
- the Middleware services repository (contains the R/3 adapter repository, replication repository,
BDoc repository and the ASCII adapter repository)
- the ABAP data dictionary
On the Mobile Repository Server
- the application repository (DUVBGE)
- the IDES database (LGHV)
n These repositories are modified by the following tools:
the Administration Console (only server repositories)
the Mobile Application Studio (only client repositories)
the BDoc Modeler (only server repositories)
the SAP GUI (only server repositories)
n The test client and the transport services only exchange data with the client repositories.

AP AG CR550 11-14
6RIWZDUH'HYHORSPHQWLQ0RELOH6FHQDULRV,,

l 2YHUYLHZUHSRVLWRULHV
$#%&"'()  WKH0LGGOHZDUHVHUYLFHUHSRVLWRU\
FRQWDLQVPHWDGDWDDERXW
w 5HSOLFDWLRQ2EMHFWV3XEOLFDWLRQV
w $GDSWHU2EMHFWVDQG
w %'RFUHSRVLWRU\
WKH$%$3GLFWLRQDU\

'',&

WKHDSSOLFDWLRQUHSRVLWRU\FRQWDLQV

$SSO5HS
w DSSOLFDWLRQVRXUFHV GHIDXOWDUVBGE
WKHFOLHQWGDWDEDVH GHIDXOWLGHV
*,+6-"0+
7 1

43 

SAP AG 2001

n Software development in mobile scenarios affects the four repositories listed above. They are all
located on the CRM Server and/or the Mobile Repository Server.
n The brackets contain the default names of the databases on the mobile repository server that hold
corresponding repositories.

AP AG CR550 11-15
6RIWZDUH/RJLVWLFV2YHUYLHZ,

5%DFN(QG 5%DFN(QG 5%DFN(QG


(Development) CTS (Test & Qual.) CTS (Production)
3OXJ,Q 3OXJ,Q 3OXJ,Q

&506HUYHU &506HUYHU &506HUYHU


(Development) CTS (Test & Qual.) CTS (Production)

0RELOH 0RELOH 0RELOH


5HSRVLWRU\ 5HSRVLWRU\ 5HSRVLWRU\
6HUYHU 6HUYHU 6HUYHU
'HYHORSPHQW 'HYHORSPHQW 'HYHORSPHQW
6WDWLRQ 6WDWLRQ 6WDWLRQ
0RELOH&OLHQW 0RELOH&OLHQW 0RELOH&OLHQW

= SAP Change & Transport System

SAP AG 2002

n As in any R/3 environment, the development landscape for the CRM server consists of a
GHYHORSPHQWV\VWHP
WHVWDQGTXDOLW\DVVXUDQFHV\VWHP
SURGXFWLRQV\VWHP
n Each of these systems should preferably reside on its own machine and be separated from the
corresponding R/3 %DFN(QG.
n If necessary, various development and/or test systems could be combined on fewer physical
machines. However, this bears a certain risk.
n The individual systems are connected by the standard SAP &KDQJH 7UDQVSRUW6\VWHP &76 .

AP AG CR550 11-16
6RIWZDUH/RJLVWLFV2YHUYLHZ,,

l )LYHVWHSVWRGLVWULEXWHVRIWZDUH
 7UDQVSRUWRIWKHGHVLJQWLPH&/WRWKHSURGXFWLRQ&50VHUYHUYLD

&76
 'RZQORDGRI'HVLJQWLPH&/IURPSURGXFWLRQ&506HUYHUWR

SURGXFWLRQ$SSOLFDWLRQ5HSRVLWRU\
 7UDQVSRUWRI0LGGOHZDUHUHSRVLWRU\FKDQJHVWRWKHSURGXFWLRQ&50

VHUYHUYLD&76

&506HUYHU  CTS &506HUYHU


'HYHORSPHQW  3URGXFWLRQ

 *HQHUDWLRQRIUXQWLPHREMHFWVRQWKHSURGXFWLRQ'HYHORSPHQW

6WDWLRQDQGFUHDWLRQRIUXQWLPHREMHFW&/
 5HSOLFDWLRQRIWKHUXQWLPHREMHFW&/WRWKHPRELOHFOLHQWV


'HYHORSPHQW
6WDWLRQ &506HUYHU
3URGXFWLRQ &OLHQW
3URGXFWLRQ
(Prod.)

SAP AG 2001

n The software modifications transported by the Change and Transport System to the production CRM
server consist of the GHVLJQWLPHFKDQJHOLVWV created by the Client Upgrade Wizard (see also course
CR540) and the FKDQJHVWRWKH0LGGOHZDUHUHSRVLWRULHV, both uploaded to the development CRM
server for distribution.
n Replicated to the mobile production clients are the UXQWLPHREMHFWFKDQJHOLVWV that are also created
by the Client Upgrade Wizard (see also course CR540).

AP AG CR550 11-17
5HSRVLWRULHV *HQHUDWLRQ8QLW6XPPDU\

<RXDUHQRZDEOHWR

l 'HVFULEHWKHFRQWHQWRIWKHYDULRXV
&500LGGOHZDUHUHSRVLWRULHV
l 8QGHUVWDQGWKHUHODWLRQVKLSEHWZHHQ
PHWDGDWDDQGUXQWLPHREMHFWV
l 8VHWKHDSSURSULDWHWRROVWRZRUNZLWK
WKHUHSRVLWRU\REMHFWV

SAP AG 2001

AP AG CR550 11-18
&DVH6WXG\

&RQWHQWV

l &XVWRPHUH[LWVIRUWKH&500LGGOHZDUH
l ([FKDQJHRIDQHQKDQFHGFXVWRPHUREMHFW
EHWZHHQDQ5%DFN(QGWKH&500LGGOHZDUH
DQGWKH&506HUYHU$SSOLFDWLRQV
l ,PSOHPHQWDWLRQGHWDLOV

SAP AG 2001

AP AG CR550 12-1
&DVH6WXG\8QLW2EMHFWLYHV

$WWKHFRQFOXVLRQRIWKLVXQLW\RXZLOOEHDEOHWR

l 'HVFULEHDOOVWHSVWKDWDUHUHTXLUHGWRH[FKDQJH
HQKDQFHGEXVLQHVVREMHFWVEHWZHHQWKH5
%DFN(QGWKH&500LGGOHZDUHDQG&50
6HUYHU$SSOLFDWLRQV
l 8VHWKHFXVWRPHUH[LWVWRH[FKDQJHHQKDQFHG
EXVLQHVVREMHFWV

SAP AG 2001

AP AG CR550 12-2
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

)XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ
$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 12-3
&DVH6WXG\([DPSOH , 2YHUYLHZ

([DPSOH , 
n .1$FRQWDLQVDGGLWLRQDOILHOGV DSSHQGVWUXFWXUH=$.1$

5%DFN(QG
$%$3
VWUXFWXUH
5'DWDEDVH
.1$
=$.1$ ==.1$

LQFOXGH

3UREOHP
n ([FKDQJHWKHDGGLWLRQDOILHOGVZLWK&506HUYHU$SSOLFDWLRQV
n 5HSOLFDWHWKHDGGLWLRQDOILHOGVWRWKH0RELOH&OLHQWV &'%

SAP AG 2001

AP AG CR550 12-4
5HTXLUHG(QKDQFHPHQWV

5%DFN(QG &506HUYHU 
&50'%


5'DWDEDVH  &509DOLGDWLRQ

==.1$ 

5


)ORZ&RQWURO
$GDSWHU
0RELOH
0DSSLQJ
%ULGJH
 ==.1$


 
 

&'%6HUYLFH

0RELOHFOLHQW 

&'%

SAP AG 2001

AP AG CR550 12-5
6WHS2QH

([WHQGLQJWKHGDWDPRGHORIWKH&50'DWDEDVH

l $SSHQGWKHVWUXFWXUH==602.1$WRWKHWDEOH602.1$YLDWKH
DSSHQGVWUXFWXUH=$602.1$

l $SSHQGWKHVWUXFWXUH==.1$WRWKHWDEOH%87YLDWKH
DSSHQGVWUXFWXUH=$%87

SAP AG 2001

AP AG CR550 12-6
6WHS7ZR

([WHQGWKHH[FKDQJHVWUXFWXUHV P%'2&DQGV%'2&

l (QKDQFHWKHVWUXFWXUH%86B(,B0$,1XVHGE\WKHPHVVDJLQJ
%'2&%83$B0$,1VRWKDWLWFRQWDLQVWKHVWUXFWXUH==%87

l (QKDQFHWKHV\QFKURQL]DWLRQ%'2&&$3*(1B2%-(&7B:5,7(
VRWKDWLWFRQWDLQVWKHVWUXFWXUH==602.1$

SAP AG 2001

AP AG CR550 12-7
6WHS7KUHH

([WHQGLQJ$GDSWHU2EMHFWVIRU,QLWLDODQG'HOWD/RDGV

5%DFN(QG &500LGGOHZDUH

)ORZ
5'DWDEDVH 5$GDSWHU &RQWURO
,QLWLDODQG
==.1$
'HOWD/RDG
==.1$



SAP AG 2001

AP AG CR550 12-8
'HOWD/RDGV2YHUYLHZ

&506HUYHU 'HOWD 5%DFN(QG


/RDG
)ORZ %$3,&RUH
5$GDSWHU 3UR[\%$3,
&RQWURO IXQFWLRQV

(YHQWWULJJHU
'HOWD %7(
6HYHUDO /RDG
VHUYLFHV %$3,6DYH 6HQGWR6HUYHU

l /RDG &50WR5  l /RDG 5WR&50 


 &XVWRPHU  PDQ\2EMHFWV
 &RQWDFW3HUVRQ
 6DOHV2UGHU 0RELOH6HUYLFH
 6HUYLFH2UGHU 0RELOH6HUYLFH

SAP AG 2001

n Only certain business objects can be ORDGHG from the CRM server to the R/3 Back-End, whereas
many business objects can included into a 'HOWD/RDG from the R/3 Back-End to the CRM Server.

AP AG CR550 12-9
,QLWLDO'HOWD/RDG&XVWRPHU([LWV

l ([DPSOH&XVWRPHU ZLWKDSSHQGVWUXFWXUH=$.1$

&506HUYHU 5%DFN(QG

%$3,&RUH
)ORZ &50 IXQFWLRQV
&RQWURO VHUYLFHV


 (YHQWWULJJHU /*01&@ 24@ 365 78:9 ;=<?>
%7( 8:9 ;A<

%$3,VDYH 6HQGWRVHUYHU
+,#"-$#".'  !#"%$&#"(' 
'HOWD
8VHU([LW 8VHU([LW
/RDG
+,#"-$#".'  !#"%$&#"(' )*

5$GDSWHU 3OXJ,Q

SAP AG 2001

n Prior to the actual Delta Load, the objects to be loaded are mapped to BAPI structures on the R/3
Back-End. Therefore also the append structure has to be mapped to BAPI structures. A XVHUH[LW has
to be used for this purpose.
n After the Delta Load, all BAPI structures are mapped to the SMO0GENSB data container on the
CRM Middleware. Here again, a XVHUH[LW has to be used for the BAPI structures that resulted from
the original append structure.
n A corresponding BDoc is then automatically created from SMO0GENSB.

AP AG CR550 12-10
5$GDSWHU&XVWRPHU([LWV2YHUYLHZ

l 3UHSODQQHGHQKDQFHPHQWWRWKHVWDQGDUG6$3V\VWHP
l *XDUDQWHHVXSZDUGVFRPSDWLELOLW\
l 5$GDSWHUFXVWRPHUH[LWVDUH127FRQILJXUHGYLD
602'&02'
l 7ZRVWHSVDUHLQYROYHG
B 6XEVFULEHHDFKFXVWRPHUH[LWWRDSURFHVVLQWHUIDFH

3URGXFW assign 3URFHVV subscribe )XQFWLRQ0RGXOH


'HILQLWLRQ ,QWHUIDFH &XVWRPHU([LW
1:n 1:1
B ,PSOHPHQWDIXQFWLRQPRGXOH%$',

6DPSOH copy )XQFWLRQ implement


)XQFWLRQ
0RGXOH
0RGXOH

SAP AG 2001

n User or customer exits are SAP standard methods for creating pre-planned customer enhancements
that guarantee upward compatibility.
n Customer exits are used via a subscribe mechanism, where each customer exit is related to one
process interface of a corresponding function module which has to be implemented.

AP AG CR550 12-11
6XEVFULEHWRD3URFHVV,QWHUIDFH

l 'HILQLWLRQRIDQDFWLYHSURGXFW

7DEOH7%(
3URGXFW 7H[W 5)&'HVWLQDWLRQ $FWLYH
=%&0,' &XVWRPHU([LWIRU&500:
   

l 6XEVFULEHWRDQHZIXQFWLRQPRGXOH

7DEOH736 5%DFN(QG
3URFHVV &WU $SSO )XQFWLRQ0RGXOH 3URGXFW
&50B =B86(5B(;,7B%()25(B6(1'B72B0: =%&0,'

7DEOH736 &506HUYHU
3URFHVV &WU $SSO )XQFWLRQ0RGXOH 3URGXFW
60287,/ =B1(;7B*(1(5$7,21B+$1'/(5 =%&0,'

3URFHVV,QWHUIDFHV
SAP AG 2001

n Several customer exits can be grouped together to a SURGXFW which can be activated/deactivated.
n Thus, by defining a product, several customer exits can subscribe to a new function module at the
same time.

AP AG CR550 12-12
3RVVLEOH&XVWRPHU([LWV

2QWKH5%DFN(QG

3URFHVV,QWHUIDFH 'HVFULSWLRQ
&50B VWDUWRI,QLWLDO/RDG
&50B EHIRUHVHQGWR0:
&50B ORDGIURP&50

2QWKH&500LGGOHZDUH

3URFHVV,QWHUIDFH 'HVFULSWLRQ
60287,/ %$3,&50VDYH
60287,/ ORDGIURP&50
60287,/ QH[WJHQHUDWLRQKDQGOHU

SAP AG 2001

n This slide represents a complete list of all customer exits available and relevant for data exchange
between an R/3 Back-End and the CRM Middleware.

AP AG CR550 12-13
)XQFWLRQ0RGXOHVIRU&XVWRPHU([LWV

l ([DPSOHIXQFWLRQVIRUHDFKSURFHVVLQWHUIDFH

B 6$03/(B352&(66BSURFHVVBLQWHUIDFH!

HJ6$03/(B352&(66B&50B

l )XQFWLRQVWRFDOOSURFHVVDFXVWRPHUH[LW

B 23(1B),B3(5)250BSURFHVVBLQWHUIDFH!

HJ23(1B),B3(5)250B&50B

SAP AG 2001

n There a sample function modules for each process interface as well as functions to check for already
existing subscriptions.

AP AG CR550 12-14
([DPSOHV

l ,QLWLDO'HOWD/RDGRIDGGLWLRQDOILHOGVRUVWUXFWXUHV

l 'HOWD/RDGRIDQDGGLWLRQDOWDEOH

l 0RGLILFDWLRQVHOHFWLRQRIGDWDGXULQJ'HOWD/RDG

l /RDGVRIDGGLWLRQDOILHOGV

l 6SHFLDOFDVH6DOHV'RFXPHQWV

SAP AG 2001

AP AG CR550 12-15
,PSOHPHQWDWLRQ2YHUYLHZ

l 3URFHVVLQWHUIDFHVSURYLGHQHFHVVDU\GDWD
l ([DPSOH&XVWRPHUZLWKDSSHQGVWUXFWXUH=$.1$

&506HUYHU 5%DFN(QG
5$GDSWHU 3OXJ,Q

%$3,VDYH 6HQGWRVHUYHU
!F"-$&#"*G'  +!#"-$&F"G' CDE
'HOWD
8VHU([LW 8VHU([LW
/RDG
!F"-$&#"*G'  +!#"-$&F"G' )
E

3URFHVV,QWHUIDFHV
60287,/ &50B

SAP AG 2001

n The process interfaces describe the parameters and tables exchanged by the corresponding function
modules during data mapping by the user exits on the R/3 Back-End and the CRM Server.

AP AG CR550 12-16
3URFHVV,QWHUIDFH&50B QRWFRPSOHWH

l ,PSRUWSDUDPHWHU
2%-&/$66 &XVWRPHU ':1/2$'7<3 ',5(
2%-1$0( &XVWRPHU 5)&6(59(5 73=B
%$3,&50'+ VWUXFWXUH!  

l 7DEOHV
7B,17B7$%/(6 %$3,07&6 'DWDUHFRUGVIURP5%DFN(QG
7B%$3,6758&7 %$3,07&6 %$3,VWUXFWXUHVIRUWKH&50
7B27+(5B,1)2 %$3,(;7& $SSHQGVWUXFWXUHVIRUWKH&50
  

7$%1$0( .1$
6(*7<3( '$RU''
 
'$7$ .1$

SAP AG 2001

n This slide shows parts of the process interface CRM0_200 on the R/3 Back-End.

AP AG CR550 12-17
'DWD6WUXFWXUH%$3,07&6

%$3,07&6
6ROXWLRQ ,

H%IJLK R :K NSHTIKVULDW*CK%T XIKY:K%T M ZH%


IDE M CONEPQM IfNPQM []\ X_^-``-`
IDaba M CONEPQM IfNPQM []\ X_^-``-`
cdcec cQcec cdcec cQcec cdcec
)
I M CONEPQM IfNPQM []\ X_^-``-`hg(iej-$
kQ"-l*' E))bIDEm

%$3,07&6
H%IJLK R :K NSHTIKVULDW*CK%T XIKY:K%T M ZH%
IDE M CONEPQM IfNPQM []\ X_^-``-`
IDaba M CONEPQM IfNPQM []\ X_^-``-`
6ROXWLRQ ,,

cdcec cQcec cdcec cQcec cdcec

7B27+(5B,1)2
r
6KY:M
r 6KYMAp r6KY:Mq r
sKYM^ /6B.20
Y R nUhJ ))bIDE R H XIP [ H+n]JoK )
ID
IK%Tn-aYPIK IfNPIQM
cdcec cQcec IK%Tn-aYPIK:p
IK%Tn-aYPIK:q

SAP AG 2001

n This slide shows parts of the process interface CRM0_200 on the R/3 Back-End.

AP AG CR550 12-18
)XQFWLRQ0RGXOH=B86(5B(;,7B%()25(B6(1'B72B0:

5%DFN(QG

5'DWDEDVH
.1$ ==.1$

8VHU([LW

*OREDO0HPRU\ 7B%$3,6758&7 7B27+(5B,1)2 6HQG


WR
.1$==.1$ .1$ ),(/'
&50
),(/'
 
/6B.20
/9B.1$ 6758&B1$0( ==.1$ 
.(<B9$/8( .8115
  
.(<B9$/8(

/9B==.1$

SAP AG 2001

n On the 5%DFN(QG, function module Z_USER_EXIT_BEFORE_SEND_TO_MW performs the


following steps within a loop over all table entries of table T_INT_TABLES:
Each row of type KNA1 is copied to the local variable LV_KNA1.
Assign string ==.1$ to field STRUC_NAME of structure LS_KOM. This structure is used to
identify the name and the keys of the append structure to be transferred to the CRM Middleware.
Insert the key of the append structure to the LS_KOM structure. In this example it is the customer
number.
Move structure LS_KOM to field FIELD1 of structure T_OTHER_INFO, which is then
transferred to the CRM Middleware.
Copy the additional fields of the append structure to the local structure LV_ZZKNA1.
Finally, insert structure LV_ZZKNA1 into structure T_OTHER_INFO.

AP AG CR550 12-19
)XQFWLRQ0RGXOH=B86(5B(;,7B%()25(B6(1'B72B0:

5%DFN(QG

5'DWDEDVH
.1$ ==.1$

8VHU([LW

*OREDO0HPRU\ 7B%$3,6758&7 6HQG


WR
.1$==.1$ .1$
&50
==.1$

SAP AG 2001

AP AG CR550 12-20
3URFHVV,QWHUIDFH60287,/ QRWFRPSOHWH

l ,PSRUWSDUDPHWHU
B VDPHDVZLWK&50B2%-&/$662%-1$0(%$3,&50'+

l 7DEOHV
7B%$3,07&6 %$3,07&6 %$3,VWUXFWXUHVIURPWKH5
7B27+(5B,1)2 %$3,(;7& $SSHQGVWUXFWXUHVIURPWKH5
0(66$*( 'HHSVWUXFWXUH 6WUXFWXUHILOOHGZLWKWDEOHV
  

),(/' /6B.20
7$%1$0( 602.1$ ),(/' /9B==.1$
6(*7<3( '$RU''
  %86B(,B0$,1
'$7$ 602.1$ 3$571(56
 %86B(,B(;7(51
5(/$7,216


SAP AG 2001

n This slide shows parts of the process interface SMOUTIL1 on the CRM Middleware.

AP AG CR550 12-21
)XQFWLRQ0RGXOHZ_MW_MAP_BAPIMTCS_TO_BUPA

&506HUYHU

&509DOLGDWLRQ
%87 =$%87

8VHUH[LW

5HFHLYHG 7B27+(5B,1)2 7B%$3,07&6 0(66$*(B(;7


IURP /6B.20 .1$ ==.1$
5
 ==.1$ 

/6B.20 
6758&B1$0( ==.1$ /9B==.1$ /9B.1$
.(<B9$/8( .8115 
.(<B9$/8(

SAP AG 2001

n On the &506HUYHU, function module Z_USER_EXIT_BAPI_CRM_SAVE performs the following


steps within a loop over all table entries of table T_OTHER_INFO:
STRUC_NAME is checked in structure LS_KOM if the row of table T_OTHER_INFO is of type
==.1$.
If this test is true, the fields of the append structure are stored in the local variable LV_ZZKNA1.
Within a loop over table T_SMO0GENSB, the entry is selected that is of type 602.1$ and
that has the same customer number as the append structure.
Move the additional fields of the append structure into the corresponding table entry.
Modify database table T_SMO0GENSB accordingly.

AP AG CR550 12-22
)XQFWLRQ0RGXOHZ_MW_MAP_BAPIMTCS_TO_BUPA

&506HUYHU

&509DOLGDWLRQ
%87 =$%87

8VHUH[LW

5HFHLYHG 7B%$3,07&6 0(66$*(B(;7


IURP .1$ ==.1$
5 ==.1$

SAP AG 2001

AP AG CR550 12-23
([WHQVLRQRI/RDG2EMHFWVRQ5%DFN(QG

&XVWRPHU([LW
LQ5%DFN(QG \HV
0RGLILFDWLRQRQ
$SSHQGVWUXFWXUH
EXVLQHVVREMHFW
\HV

QR
QR

&RS\DSSHQGHG
QR ILHOGVLQWRWDEOH
&XVWRPHUWDEOHLQ
7B27+(5B,1)2
EXVLQHVVREMHFW
RULQWR
7B%$3,6758&7

6WDQGDUG \HV
SURFHVVLQJ
5HDGGDWDIURPH[WUD
WDEOHVDQGPRYHLQWR
7B%$3,6758&7

SAP AG 2001

n Similar FXVWRPHUH[LWV are needed on the CRM Middleware end to receive additional data and feed
it into the standard processing.

AP AG CR550 12-24
([WHQVLRQRI/RDG2EMHFWVRQWKH&506HUYHU

&XVWRPHU([LWRQ
&506HUYHU
\HV
0RGLILFDWLRQRQ
$SSHQGVWUXFWXUH
EXVLQHVVREMHFW
\HV

QR
QR
&RS\DSSHQGHG
ILHOGVIURP
QR H[LWFRQWDLQHU
&XVWRPHUWDEOHLQ 7B27+(5B,1)2
EXVLQHVVREMHFW RUIURP
7B%$3,07&6
LQWRFRPSOH[
PHVVDJHVWUXFWXUH
6WDQGDUG \HV
SURFHVVLQJ
5HDGGDWDIURP
7B%$3,07&6DQGPRYHLW
LQWRFRPSOH[PHVVDJH
VWUXFWXUH

SAP AG 2001

n Similar FXVWRPHUH[LWV are needed on the CRM Middleware end to receive additional data and feed
it into the standard processing.

AP AG CR550 12-25
6WHS)RXU

(QKDQFHWKHPDSSLQJEHWZHHQ&50DQG&'%

l (QKDQFHWKH0RELOH%ULGJH P%'2&!V%'2&
l (QKDQFHWKH0DSSLQJ0RGXOH V%'2&!P%'2&

SAP AG 2001

AP AG CR550 12-26
%XVLQHVV$GG,QV %$',V 2YHUYLHZ

6$3HQKDQFHPHQWWHFKQLTXHEDVHGRQ$%$3REMHFWV

'LIIHUHQFHWRFXVWRPHUH[LWV
n %$',VDOORZPXOWLSOHOHYHOVRIVRIWZDUHGHYHORSPHQW
HJ6$3SDUWQHUVFXVWRPHUVFRXQWU\YHUVLRQVLQGXVWULHV

6$3JXDUDQWHHVWKHXSZDUGFRPSDWLELOLW\RIDOO%$',V

'HILQLWLRQRI%$',V
n 7UDQVDFWLRQ6(
n (QWHUDQDPH
n ,PSOHPHQWIXQFWLRQPRGXOH
n $FWLYDWHIXQFWLRQPRGXOH
n $FWLYDWH%$',

SAP AG 2001

n Business Add-Ins are a new SAP enhancement technique based on ABAP Objects. They
can be inserted into the SAP System to accommodate user requirements too specific to be
included in the standard delivery. Since specific industries often require special functions,
SAP allows you to predefine these points in your software.
n In contrast to customer exits, Business Add-Ins no longer assume a two-system
infrastructure (SAP and customers), but instead allow for multiple levels of software
development (by SAP, partners, and customers, and as country versions, industry
solutions, and the like). Definitions and implementations of Business Add-Ins can be
created at each level within such a system infrastructure.

AP AG CR550 12-27
(QKDQFHPHQWVRI0RELOH%ULGJH

&UHDWH&KDQJHD%$',LPSOHPHQWDWLRQRI%$',&50B$B86(5B(;,76
,QWHUIDFH,)B(;B&50B$B86(5B(;,76

l 86(5B(;,7B'2:1/2$'B%3B0$,1
8VHU([LWWRORDG%XVLQHVV3DUWQHUVIURP&50'DWDEDVHLQWRWKH&'%
l 86(5B(;,7B'2:1/2$'B%3B0$,1B5(/
8VHU([LWWRORDG%XVLQHVV3DUWQHU5HODWLRQVIURP&50'DWDEDVHLQWR
WKH&'%
l 86(5B(;,7B83/2$'B&$3*(1
8VHU([LWWR/RDG&$3*(1B2%-(&7IURP0RELOHWR&50
l 86(5B(;,7B83/2$'B&21*(1
8VHU([LWWR/RDG&21*(1B2%-(&7IURP0RELOHWR&50
l 

SAP AG 2001

AP AG CR550 12-28
6WHS)LYH

(QKDQFLQJWKH&50$GDSWHU

&506HUYHU
&50'%

 &50$GDSWHU 

2WKHU
)ORZ&RQWURO
VHUYLFHV

7ZRGLUHFWLRQV
n ,QERXQG)URPWKHIORZWRWKH&50'% 
n 2XWERXQG)URPWKH&50'%WRWKHIORZ 

SAP AG 2001

AP AG CR550 12-29
(YHQWVIRU&502QOLQH'DWD([FKDQJH %3

0DLQWDLQWKHYLHZ&50&B%87B&$//B)8 60 
3DUDPHWHU 9DOXH
(YHQW (YHQWQDPH HJ$3&(2
2EMHFW %83$ %XVLQHVV3DUWQHU
,WHP 1H[WIUHHQXPEHULQVHTXHQFH
)FWPRGXOH )FWPRGXOH HJ=B$3&(2B$33(1'B%87
$FWLYH &KHFNWRDFWLYDWH

(YHQW 'HVFULSWLRQ
&5028 &50%XVLQHVV3DUWQHU2XWERXQG
&50,1 &50%XVLQHVV3DUWQHU,QERXQG
$3$'2 6LPSOLILHG2XWERXQGIRUDGGUHVVHV %87
$3&(2 6LPSOLILHG2XWERXQGIRUFHQWUDOGDWD %87

SAP AG 2001

AP AG CR550 12-30
(QKDQFLQJWKH&50$GDSWHU3DUW

&50'% &50$GDSWHU )ORZ&RQWURO

$3, (YHQW&50,1
&506HUYHU

)XQFWLRQ=0:B&50,1B$33(1'B),(/'6
*HW%3QXPEHU
FDOOIXQFWLRQ%83$B180%(56B*(7
*HW%3
FDOOIXQFWLRQ%83B0(025<B%87B*(7
&RS\DGGLWLRQDOILHOGV

:ULWH%3
FDOOIXQFWLRQ%83B0(025<B%87B),//

SAP AG 2001

AP AG CR550 12-31
(QKDQFLQJWKH&50$GDSWHU3DUW

&50'% &50$GDSWHU )ORZ&RQWURO

$3, (YHQW$3&(2
&506HUYHU

)XQFWLRQ=0:B$3&(2B$33(1'B%87
&RS\DGGLWLRQDOILHOGV
029(&255(6321',1*%8772%86B(,B%83$B&(175$/

SAP AG 2001

AP AG CR550 12-32
6WHS6L[

([WHQGLQJ$GDSWHU2EMHFWV'HOWD/RDGVWRWKH5%DFN(QG

 &XVWRPHU  &XVWRPHU
([LWRQ&50 ([LWRQ5

&506HUYHU 'HOWD 5%DFN(QG


/RDG
)ORZ %$3,&RUH
5$GDSWHU 3UR[\%$3,
&RQWURO IXQFWLRQV
tuvwx
(YHQWWULJJHU
6HYHUDO 'HOWD %7(
VHUYLFHV /RDG
%$3,6DYH 6HQGWR6HUYHU

&XVWRPHU 
([LWRQ5

SAP AG 2001

AP AG CR550 12-33
(QKDQFLQJ/RDG2EMHFWV3DUW

8VHU([LW=B&86720(5B83/2$'B0:
&50VHUYHU

&502QOLQH
%87 =$%87

8VHUH[LW

7,B'$7$B&217$,1(5 7B(;7(16,21 /RDG


 WR
602.1$ ==.1$
5
 /6B$33(1'

/6B602.1$ /6B$33(1'

.(< 6)$.1$
.(<B9$/8( 6)$.1$ 
'$7$ ==602.1$


SAP AG 2001

AP AG CR550 12-34
(QKDQFLQJ/RDG2EMHFWV3DUW

8VHUH[LW=B&86720(5B83/2$'

5%DFN(QG

5'DWDEDVH $%$3PHPRU\
7DEOH=602.1$ /6B$33(1'
8VHRQO\
8VHUH[LW RQHSRVVLELOLW\


/RDG 7B(;7(16,21 8VHG
,'RF
IURP ==.1$ IRUEDWFK
 VWUXFWXUH
0: LQSXW
/6B$33(1'
/6B$33(1'
.(< 6)$.1$
 .(<B9$/8( 6)$.1$
)) R JUL=
'$7$

SAP AG 2001

AP AG CR550 12-35
(QKDQFLQJ/RDG2EMHFWV3DUW

8VHUH[LW=B86(5B(;,7B%()25(B6(1'B72B0:

5%DFN(QG

5'DWDEDVH $%$3PHPRU\
7DEOH=602.1$ /6B$33(1'

$GGLWLRQDOWDEOH 8VHUH[LW
ILHOGV
 8VHRQO\
5'% 
/6B$33(1' RQHSRVVLELOLW\
.(< 6)$.1$
7DEOH
.1$  .(<B9$/8( 6)$.1$
'$7$ ==602.1$

SAP AG 2001

AP AG CR550 12-36
&DVH6WXG\([DPSOH ,, 2YHUYLHZ

([DPSOH ,, 
n /RDGILHOGV9.*53DQG9.%85IURPWKH5%DFN(QG

5%DFN(QG
'',&
WDEOH
5'DWDEDVH
.199
9.*53
9.%85

3UREOHP
n ([FKDQJHRIWKHILHOGVZLWK&502QOLQH
n 5HSOLFDWHWKHILHOGVWRWKHPRELOHFOLHQWV &'%

SAP AG 2001

AP AG CR550 12-37
6WHSV

+LQWV
l )LHOGV9.*53DQG9.%85DUHDOUHDG\ORDGHGWRWKH&50LQWKH
VWDQGDUGEXWQHLWKHUPDSSHGWRWKH&502QOLQHQRUSDVVHGWRWKH
&'%
l 7KHILHOGVDOUHDG\H[LVWLQWKH&'%GDWDPRGHO WDEOH602.199

5HPDLQLQJWDVNVIRUWKHLPSOHPHQWDWLRQ
l (QKDQFHWKHGDWDPRGHORI&502QOLQH
l (QKDQFHWKHFRPSOH[PHVVDJHVWUXFWXUHRIWKHP%'2&
l ,PSOHPHQWWKHPDSSLQJIURP%$3,07&6WRWKHP%'2&
7$%1$0(RIWKH%$3,07&6LV%6&B6$/(6$
l (QKDQFHWKHLQERXQGDQGRXWERXQGDGDSWHUVRI&502QOLQH
l (QKDQFHWKHPDSSLQJRIWKH0RELOH%ULGJHWRPDSWKHILHOGVRIWKH
HQKDQFHGP%'2&WRWKHVWDQGDUGILHOGVRIWKHV%'2&

SAP AG 2001

AP AG CR550 12-38
&DVH6WXG\8QLW6XPPDU\

<RXDUHQRZDEOHWR

l &XVWRPHUH[LWVIRUWKH&500LGGOHZDUH
l ([FKDQJHRIDQHQKDQFHGFXVWRPHUREMHFW
EHWZHHQDQ5%DFN(QGWKH&500LGGOHZDUH
DQGWKH&506HUYHU$SSOLFDWLRQV
l ,PSOHPHQWDWLRQGHWDLOV

SAP AG 2001

AP AG CR550 12-39
)XUWKHU,QIRUPDWLRQ

&RQWHQWV
l 5HOHYDQWFRXUVHV
l 6$31HW
l ,0*

SAP AG 2001

AP AG CR550 13-1
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
&'%'DWD0RGHO
&'%'DWD0RGHO 7UDQVSRUW
7UDQVSRUW

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , (QKDQFHPHQW
(QKDQFHPHQW

$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ )XUWKHU,QIRUPDWLRQ
)XUWKHU,QIRUPDWLRQ

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 13-2
)XUWKHU&500LGGOHZDUH&RXUVHV

&5&500LGGOHZDUHIRU0RELOH6FHQDULRV
n &RQQHFWLQJPRELOHFOLHQWVWRWKH&500LGGOHZDUH
n $GPLQLVWHUPRELOHVFHQDULRV
n 5HSOLFDWLRQPRGHOLQJ
n 2EMHFWGHSHQGHQFLHV

SAP AG 2001

AP AG CR550 13-3
2WKHUUHOHYDQW&RXUVHV

&5 0RELOH$SSOLFDWLRQ6WXGLR
%,7 %XVLQHVV,QWHJUDWLRQ7HFKQRORJ\
%,7 ,QWHJUDWLRQ7HFKQRORJ\$/(
%& 5)&
%& 'DWD0LJUDWLRQ
&5 %:,QWHJUDWLRQ
:'($/ :RUNLQJZLWK&&06 RQ'HPDQG

SAP AG 2001

AP AG CR550 13-4
)XUWKHU,QIRUPDWLRQ,

6$31HW$OLDVHV
lFUPPZ &500LGGOHZDUH

lLQVWJXLGHV ,QVWDOODWLRQDQG8SJUDGH*XLGHVLQFO6HWXSDQG'RZQORDG*XLGH

lQRWHV 6$32661RWHVVHDUFK

lVL]LQJ &50KDUGZDUHUHTXLUHPHQWV0HGLD&HQWHU!/LWHUDWXUH

lSODWIRUPV 3ODWIRUPDQG7HFKQRORJ\,QIRUPDWLRQ&HQWHU

lUSOXJLQ &503OXJ,Q

lGHYHORSPHQWQHZV

lUHOHDVHQRWHV

lWUDLQLQJ ,QIRUPDWLRQDERXWFRXUVHV

SAP AG 2001

AP AG CR550 13-5
)XUWKHU,QIRUPDWLRQ,,

.QRZOHGJH:DUHKRXVH 6$3/LEUDU\ 
l+HOS3RUWDOKWWSKHOSVDSFRPmySAP.com Cross Industry Solutions, mySAP CRM

l+HOS!6$3/LEUDU\CRM/BBP -> Basis Technology -> CRM Middleware

,0*
l7UDQVDFWLRQFRGH6352
!&XVWRPHU5HODWLRQVKLS0DQDJHPHQW
!&500LGGOHZDUHDQG5HODWHG&RPSRQHQWV

SAP AG 2001

AP AG CR550 13-6
&RXUVH2YHUYLHZ'LDJUDP

&RXUVH2YHUYLHZ
&RXUVH2YHUYLHZ 'DWD)ORZ
'DWD)ORZ

&RQFHSWVRIWKH
&RQFHSWVRIWKH 5$GDSWHU&XVWRPL]LQJ
5$GDSWHU&XVWRPL]LQJ
&500LGGOHZDUH
&500LGGOHZDUH

(QKDQFHPHQWV2YHUYLHZ
(QKDQFHPHQWV2YHUYLHZ ;,)$GDSWHU&XVWRPL]LQJ
;,)$GDSWHU&XVWRPL]LQJ

&DVH6WXG\2EMHFW
&DVH6WXG\2EMHFW
&'%'DWD0RGHO
&'%'DWD0RGHO (QKDQFHPHQW
(QKDQFHPHQW

5HSRVLWRULHV*HQHUDWLRQ
5HSRVLWRULHV*HQHUDWLRQ
%'RF0RGHOLQJ ,
%'RF0RGHOLQJ , 7UDQVSRUW
7UDQVSRUW

$GDSWHU&XVWRPL]LQJ
$GDSWHU&XVWRPL]LQJ &RXUVH:UDS8S
&RXUVH:UDS8S

%'RF0RGHOLQJ ,,
%'RF0RGHOLQJ ,,

SAP AG 2002

AP AG CR550 13-7
&RXUVH:UDS8S ,

3UHIDFH

Unit 1 &RXUVH2YHUYLHZ

Unit 2 &RQFHSWVRIWKH&500LGGOHZDUH

Unit 3 (QKDQFHPHQWV2YHUYLHZ
Unit 4 &'%'DWD0RGHO

Unit 5 %'RF0RGHOLQJ ,

Unit 6 $GDSWHU&XVWRPL]LQJ
Unit 7 %'RF0RGHOLQJ ,,

SAP AG 2001

AP AG CR550 13-8
&RXUVH:UDS8S ,,

Unit 8 'DWD)ORZ
Unit 9 5$GDSWHU&XVWRPL]LQJ

Unit 10 ;,)$GDSWHU&XVWRPL]LQJ

Unit 11 &DVH6WXG\2EMHFW(QKDQFHPHQW

Unit 12 5HSRVLWRULHV*HQHUDWLRQDQG7UDQVSRUW
Unit 13 )XUWKHU,QIRUPDWLRQ&RXUVH:UDS8S

SAP AG 2001

AP AG CR550 13-9
&RXUVH2EMHFWLYHV

<RXDUHQRZDEOHWR
l ([SODLQWKHYDULRXVUHSRVLWRULHVRIWKH
&500LGGOHZDUH
l 'HILQHDQGH[WHQG&'%WDEOHV

l 'HILQHDQGHQKDQFH%'RFW\SHV

l (QKDQFHWKH)ORZIRU%'RFW\SHV
l ,PSOHPHQW\RXURZQYDOLGDWLRQVHUYLFHPDSSLQJ
IXQFWLRQVDQGPRELOHEULGJHV
l 0DNHFRPSOH[HQKDQFHPHQWVWRWKH5$GDSWHU

SAP AG 2001

AP AG CR550 13-10
5HFRPPHQGHG)ROORZXS$FWLYLWLHV

*RWKURXJKWKHH[HUFLVHVXVLQJ,'(6GDWD
RU\RXURZQGDWD

+DYHDORRNDW8QLW)XUWKHULQIRUPDWLRQ

SAP AG 2001

AP AG CR550 13-11
$SSHQGL[

&RQWHQWV

l 7HUP*ORVVDU\'HILQLWLRQ
l )ORZ&RQWH[W'HVFULSWLRQV
l ,PSOHPHQWDWLRQIRUWKHH[HUFLVHV

SAP AG 2001

AP AG CR550 14-1
*ORVVDU\

$%$3
Advanced Business Application Programming.
ABAP is an object-oriented programming language and environment for development,
deployment, and operation of mySAP solutions.

$'2
ActiveX Data Objects.
Microsofts newest high-level interface for data objects. It can be used to access all sorts of
different types of data.

%$',
Business Add-In. Enhancement concept for ABAP applications. Standardization of user-exits
and BTEs (business transaction events).

%$3,
Business Application Programming Interface. Release-independent, standard SAP interface for
the creation and processing of business objects.

%'RFPHVVDJH
Business document message. A message that contains information on changes made to
business objects. BDoc messages are used for data exchange and data processing within a
CRM system environment. The underlying message format is defined in a BDoc type (business
document type).

%'RFW\SH
Structure definition of BDoc message data segments. There are three classes of BDoc types:

BDoc types exclusively used for non-mobile applications (mBDoc types) consisting of a
hierarchical segment structure without direct assignment to database tables and an
extension part with the business data (of complex data type modeled in ABAP Dictionary)
BDoc types for synchronization between the consolidated database from the CRM Server
and mobile applications (sBDoc types) consisting of hierarchical segment structure with
direct assignment to database tables
BDoc types exclusively used for mobile applications consisting of a hierarchical segment
structure with assignment to database tables
The hierarchical segment structure is modeled with the BDoc Modeler.

AP AG CR550 14-2
%7(
Business Transaction Event.
Event-oriented enhancement concept for ABAP applications based on a publish-and-subscribe
concept.

&KDQJHDQG7UDQVSRUW6\VWHP &76
A set of tools in the SAP System for managing and transporting ABAP Workbench and
customizing changes made in systems in the SAP System landscape and distributed between
these systems.

&20'&20
(Distributed) Component Objects Model. Defined by Microsoft. Comparable to CORBA
(Common Object Request Broker Architecture). Defined interfaces for calling up distributed
network services.

&7,6HUYHU
Computer-telephony integration server. CTI is an optional third-party software component in
the Interaction Center (SIC, Telesales and Telemarketing scenario).

Being part of the CRM Server, the standard SAPPhone API works as an interface between the
application components and the CTI server and telephone components to provide direct
communication between telephony and the CRM system.

'HOWD/RDG
The transfer of information about changes between sites of type R/3, CRM or CDB.

(UURU+DQGOHU
Tool that handles BDoc messages with errors within flow control. Error activities that have
been defined for a given error situation are carried out.

)ORZFRQWH[W
Informally described steps in the general message processing model. A flow context is
predefined and associated with lists of services to be called in this context

,'RF
Intermediate Document. The SAP standard document format for the message exchange
between SAP business solutions or between SAP business solutions and external systems.
Part of Application Link Enabling (ALE).

AP AG CR550 14-3
,QLWLDO/RDG
First load of business, customizing, and condition objects from an SAP R/3 back-end system
into the consolidated database (CDB) of the CRM Server. This way the CRM Server is
provided with an initial dataset.

5HSRVLWRU\ &500LGGOHZDUH5HSRVLWRU\
Central storage location for various repositories for all CRM meta-data on the CRM Server.
Runtime objects are generated using these meta-data.

0HVVDJH)ORZ
Processing steps of a BDoc message within the CRM Middleware, whereby each flow
definition (depending on the BDoc type) comprises a sequence of registered services.

3XEOLFDWLRQ
Definition of one or several replication objects with specific criteria for replication.
Publications can be subscribed for sites.

T5)&TXHXHG5)&
Queued Remote Function Call. A qRFC is a transactional remote function call with a
guaranteed processing sequence.

5HDOLJQPHQW
Redistribution of mobile application data that ensures that all mobile sites receive the data
assigned to them through subscription. Changes to data trigger a minor realignment, while
changes to subscriptions trigger a major realignment.

5HSOLFDWLRQ
Rule-based distribution of data to sites.

6$3%:
The 6$3%XVLQHVV,QIRUPDWLRQ:DUHKRXVH is a component of a mySAP Business Intelligence
solution for analyzing data from operative SAP R/3 applications as well from any other
business application and external data source such as databases, online services and the
Internet.

6$3%:$GDSWHU
Generic mechanism for extracting business objects from the CRM application component for
analyses within BW. The SAP BW Adapter provides a simple framework for defining
extraction for any CRM business object that is stored in the CDB and communicated via the
CRM Middleware in BDoc format.

AP AG CR550 14-4
6$35SOXJLQ
Interface that enables the exchange of data between one or several SAP R/3 systems and other
mySAP solutions.

6LWH
Sender and recipient of data in a mySAP solution landscape.

6XEVFULSWLRQ
The assignment of a site to a publication, specifying criteria values if necessary. The creation
of subscriptions triggers the actual distribution of data to the sites.

6\QFKURQL]DWLRQ RIFXVWRPL]LQJGDWD
Transfer of delta customizing data from an SAP R/3 back-end system to the CRM Server based
on dataset comparisons

AP AG CR550 14-5
)ORZ&RQWH[WVDQGWKHLU$VVRFLDWHG0HWKRGV
A Synchronization Flow and a Messaging Flow of a BDoc Type is always started with well defined
APIs. These APIs are methods of the classes CL_SMW_SFLOW (Synchronization Flow) and
CL_SMW_MFLOW (Messaging Flow).

6\QFKURQL]DWLRQ)ORZ
&RQWH[W &RQWH[W7H[W 0HWKRG V 8VH
SI0 sBDoc Validate &/B60:B6)/2: ! Called from mobile inbound adapter or
ASCII adapter to pass data into the system.
352&(66B,1%281' (1) Mapper is called and messaging flow is
B0(66$*( started - if sBDoc => mBDoc mapping is
defined or (2) outbound processing is started.
3(56B9$/,'$7(
SI1 sBDoc Inbound &/B60:B6)/2: ! A set of services may be called before
(Before mapping / outbound processing is started (see
Validation) 352&(66B,1%281' SIO (1), (2)). Bdoc completion service is a
B0(66$*( candidate for this context.
3(56B9$/,'$7(
SO1 sBDoc &/B60:B6)/2: ! Update CDB, determine receivers, trigger
Notification realignment, send deltas to mobile clients.
352&(66B127,),&
$7,21
SOA sBDoc &/B60:B6)/2: ! Additional calls to SO1 for customer use of
Notification bdoc type specific handling (e.g. write
(additional calls) 352&(66B127,),& statistics).
$7,21
SO2 sBDoc &/B60:B6)/2: ! Called in case update operation is not
Rejection allowed or was not successful. Goal is to set
352&(66B5(-(&7, client database back in consistent state. Read
21 before images from CDB and send them back
to sendere.

SOB sBDoc &/B60:B6)/2: ! Additional calls to SO2 for customer use of


Rejection bdoc type specific handling (e.g. write
(additional calls) 352&(66B5(-(&7, statistics).
21
SO3 sBDoc Initial &/B60:B6)/2: ! Update CDB / set CDB to current state if and
Load only if distribution is not active (yet). Call of
352&(66B,1,7,$/ bulk CDB service. No replication!!!
B/2$'
SOC sBDoc Initial &/B60:B6)/2: ! Additional calls to SO3 for customer use of
Load (additional bdoc type specific handling (e.g. write
calls) 352&(66B,1,7,$/ statistics).
B/2$'
SO4 sBDoc Direct &/B60:B6)/2: ! Send bdoc to set of receivers (receivers
Send determined by caller of flow). Extract uses
6(1' this method to send extract bdocs and zap-
bdocs to clients.

AP AG CR550 14-6
0HVVDJLQJ)ORZ
MI0 mBDoc Validate &/B60:B0)/2: ! Called from synchronization inbound flow,
XML adapter and R/3 adapter to pass data to
9$/,'$7( the [CRM] application. The bdoc is either (1)
accepted and the application starts outbound
3(56B9$/,'$7( processing or (2) rejected.

MO1 mBDoc &/B60:B0)/2: ! Called from application to notify interested


Notification parties, that one object (instance) has
352&(66B127,),& changed. Messaging flow is used to dispatch
$7,21 the notification to subscribed sites and to call
additional consumers (services) like BW
adapter.

MOA mBDoc &/B60:B0)/2: ! Additional calls to MO1 for customer use


Notification of bdoc type specific handling, e.g. call
(additional calls) 352&(66B127,),& mobile bridge.
$7,21
MO2 mBDoc &/B60:B0)/2: ! Called from application to notify interested
Notification parties, that several objects (instances) have
Multiple 352&(66B127,),& changed. Messaging flow is used to dispatch
$7,21B08/7 the notification to subscribed sites and to call
additional consumers (services) like BW
adapter.

MOB mBDoc &/B60:B0)/2: ! Additional calls to MO2 for customer use


Notification of bdoc type specific handling, e.g. call
Multiple 352&(66B127,),& mobile bridge.
(additional calls) $7,21B08/7

MO3 mBDoc Initial &/B60:B0)/2: ! Called from application to notify consumers


Load of a change (if distribution is not active).
352&(66B,1,7,$/
B/2$' Called from MW adapter after extract (in
CRM or OLTP) to write current state to CDB
(mobile bridge should be part of context
MOC).

MOC mBDoc Initial &/B60:B0)/2: ! Additional calls to MO3 for customer use
Load (additional of bdoc type specific handling, e.g. call
calls) 352&(66B,1,7,$/ mobile bridge.
B/2$'

AP AG CR550 14-7
$SSHQGL[
6DPSOH6ROXWLRQVIRUWKH8QLW'DWD)ORZ
0DSSLQJ6HUYLFH

0(7+2'LIBVPZBPDSaPDSBV\QPVJ

'$7$
OVBVEGRFBURRW7<3(/,1(2)FUPJHF]FUBBV\QF
]FUBBURRW
OVBPEGRFBURRW7<3(/,1(2)FUPJHF]FUBBPHVJ
]FUBBURRW
OVBPEGRFBH[W7<3(/,1(2)]FUBBH[W]FUBBURRW

),(/'6<0%2/6
VEGRFBERG\!7<3(
FUPJHF]FUBBV\QF
PEGRFBERG\!7<3(
FUPJHF]FUBBPHVJ
PEGRFBERG\BH[W!7<3(]FUBBH[W

$66,*1PHVVDJHBRULJ72VEGRFBERG\!
$66,*1PHVVDJH72PEGRFBERG\!
$66,*1PHVVDJHBH[W72PEGRFBERG\BH[W!

/223$7VEGRFBERG\!]FUBBURRW,172OVBVEGRFBURRW

)LOOWKHFODVVLFDOSDUWRIWKHP%'RF
OVBPEGRFBURRWJXLG OVBVEGRFBURRWVIDFUB
OVBPEGRFBURRWFRQWLQHQW OVBVEGRFBURRWFRQWLQHQW
$33(1'OVBPEGRFBURRW72PEGRFBERG\!]FUBBURRW

)LOOWKHH[WHQVLRQRIWKHP%'RF
OVBPEGRFBH[WGDWDJXLG OVBVEGRFBURRWVIDFUB
OVBPEGRFBH[WGDWDFRXQWU\ OVBVEGRFBURRWFRXQWU\
OVBPEGRFBH[WGDWDFRQWLQHQW OVBVEGRFBURRWFRQWLQHQW
OVBPEGRFBH[WGDWD[FRXQWU\ 
;


AP AG CR550 14-8
OVBPEGRFBH[WGDWD[FRQWLQHQW 
;

&$6(OVBVEGRFBURRWWDVN
:+(1
OVBPEGRFBH[WFRQWUROWDVN 
8

:+(1
OVBPEGRFBH[WFRQWUROWDVN 
,

:+(1
OVBPEGRFBH[WFRQWUROWDVN 
'

:+(127+(56
OVBPEGRFBH[WFRQWUROWDVN 
1

(1'&$6(
$33(1'OVBPEGRFBH[W72PEGRFBERG\BH[W!]FUBBURRW
(1'/223

(1'0(7+2',)B60:B0$3a0$3B6<106*

AP AG CR550 14-9
0RELOH%ULGJH

)81&7,21]BFUBBPVD

 /RFDOLQWHUIDFH
,03257,1*
5()(5(1&( +($'(5 7<3(60:B)+'
(;3257,1*
5()(5(1&( 67$786 7<3(60:9$/67$7
&+$1*,1*
5()(5(1&( 75$16$&7,21B0(66$*( 7<3(
&50*(&=&5BB0(6*
5()(5(1&( 0(66$*(B(;7 7<3(=&5BB(;7
5()(5(1&( (5525B6(*0(176 7<3(60:B(557$%237,21$/
(;&(37,216
7(&+1,&$/B(5525


&/$66FOBVPZBVIORZ'(),1,7,21/2$'
&/$66FOBVPZBPIORZ'(),1,7,21/2$'

'$7$JYBYDOLGDWLRQBKHDGHU7<3(VPZBIKG
'$7$JYBRXWERXQGBFDOOHG7<3(F
'$7$
OYBHUURUBRFFXUHG7<3(F
OYBPXOW7<3(F
OYBPXOWBDOORZHG7<3(F
OYBFRXQW7<3(V\WDEL[
'$7$
OVBVEGRFBURRW7<3(/,1(2)FUPJHF]FUBBV\QF
]FUBBURRW
OVBVEGRF7<3(FUPJHF]FUBBV\QF
OVBVPRJBVIOGQ7<3(VPRJBVIOGQ
OWBVPRJBVIOGQ7<3(67$1'$5'7$%/(2)VPRJBVIOGQ

AP AG CR550 14-10
),(/'6<0%2/6
PEGRFBH[W!7<3(/,1(2)]FUBBH[W]FUBBURRW

&$//0(7+2'FOBVPZBVIORZ !FKHFNBPXOWBDOORZHGBRXWERXQG
(;3257,1*
EGRFBW\SH 
=&5BB6<1&

,03257,1*
PXOWLSOHBLVBDOORZHG OYBPXOWBDOORZHG

/223$7PHVVDJHBH[W]FUBBURRW$66,*1,1*PEGRFBH[W!
&/($5OVBVEGRFBURRW6WDUWZLWKDFOHDQURZ

&$6(PEGRFBH[W!FRQWUROWDVN

:+(1
1

OVBVEGRFBURRWWDVN 
:+(1
,

OVBVEGRFBURRWWDVN 
:+(1
8

OVBVEGRFBURRWWDVN 
6HWVHQGELWVIRUDOOFKDQJHGILHOGV
,)PEGRFBH[W!GDWDFRXQWU\(4
;

&/($5OVBVPRJBVIOGQ
OVBVPRJBVIOGQILHOGQDPH 
&28175<

$33(1'OVBVPRJBVIOGQ72OWBVPRJBVIOGQ
(1',)
,)PEGRFBH[W!GDWDFRQWLQHQW(4
;

&/($5OVBVPRJBVIOGQ
OVBVPRJBVIOGQILHOGQDPH 
&217,1(17

$33(1'OVBVPRJBVIOGQ72OWBVPRJBVIOGQ
(1',)
UHSHDWIRUDOORWKHUGDWDILHOGV


6HWV%'RFVHJPHQWVHQGELWV
&$//)81&7,21
602B61'%,76B6(7;

(;3257,1*
VWUXFWXUHQDPH 
&50*(&]FUBBURRW

7$%/(6

AP AG CR550 14-11
VILHOGV OWBVPRJBVIOGQ
&+$1*,1*
VQGELWV OVBVEGRFBURRWVHQGELWV
(;&(37,216
VWUXFWXUHBQRWBIRXQG 
ZURQJBILHOGQDPH 
27+(56 
,)V\VXEUF!
0(66$*(,'V\PVJLG7<3(V\PVJW\180%(5V\PVJQR
:,7+V\PVJYV\PVJYV\PVJYV\PVJY
5$,6,1*WHFKQLFDOBHUURU
(1',)
:+(1
'

OVBVEGRFBURRWWDVN 
:+(127+(56
5$,6(WHFKQLFDOBHUURU
(1'&$6(

OVBVEGRFBURRWVIDFUB PEGRFBH[W!GDWDJXLG
OVBVEGRFBURRWFRXQWU\ PEGRFBH[W!GDWDFRXQWU\
OVBVEGRFBURRWFRQWLQHQW PEGRFBH[W!GDWDFRQWLQHQW
$33(1'OVBVEGRFBURRW72OVBVEGRF]FUBBURRW

&$//)81&7,21
&50*(&=&5BB6<1&B.*1

(;3257,1*
+($'(5 KHDGHU
&+$1*,1*
75$16$&7,21B0(66$*( OVBVEGRF
(;&(37,216
7(&+1,&$/B(5525 
27+(56 

,)OYBPXOWBDOORZHG(4
;

3RVWDWWKHHQG
(/6(
3RVWV%'RFVZLWKRQHLQVWDQFHHDFK
3(5)250VEGRFBSRVWB

AP AG CR550 14-12
86,1*
KHDGHU
OVBVEGRF

&/($5OVBVEGRF
(1',)
(1'/223
,)OYBPXOWBDOORZHG(4
;


3RVW
3(5)250VEGRFBSRVWB
86,1*
KHDGHU
OVBVEGRF
&/($5OVBVEGRF
(1',)
VWDWXV FOBVPZBPIORZ !FBYDOVWDWBVXFFHVV
(1')81&7,21


)2506%'2&B3267B



!3,B,1B+($'(5
!3,B6%'2&B%2'<

)250VEGRFBSRVWB
86,1*SLBLQBKHDGHU7<3(VPZBIKG
SLBVEGRFBERG\7<3(FUPJHF]FUBBV\QF

'$7$
OVBKHDGHU7<3(VPZBIKG

&$//0(7+2'FOBVPZBVIORZ !VHWBKHDGHUBILHOGV
(;3257,1*
LQBKHDGHU SLBLQBKHDGHU

AP AG CR550 14-13
LQBEGRFBW\SH 
=&5BB6<1&

LQBPVJBW\SH SLBLQBKHDGHUPVJBW\SH
,1B5227B,'
,03257,1*
RXWBKHDGHU OVBKHDGHU

,)SLBLQBKHDGHUPVJBW\SH(4
FOBVPZBVIORZ !FBPVJW\SHBFXUUHQWBVWDWH
&$//0(7+2'FOBVPZBVIORZ !SURFHVVBLQLWLDOBORDG
(;3257,1*
EGRFBKHDGHU OVBKHDGHU
&+$1*,1*
PHVVDJH SLBVEGRFBERG\
(;&(37,216
WHFKQLFDOBHUURU 
27+(56 
,)V\VXEUF!
0(66$*(,'V\PVJLG7<3(V\PVJW\180%(5V\PVJQR
:,7+V\PVJYV\PVJYV\PVJYV\PVJY
5$,6,1*WHFKQLFDOBHUURU
(1',)

(/6(
&$//0(7+2'FOBVPZBVIORZ !SURFHVVBQRWLILFDWLRQ
(;3257,1*
EGRFBKHDGHU OVBKHDGHU
&+$1*,1*
PHVVDJH SLBVEGRFBERG\
(;&(37,216
WHFKQLFDOBHUURU 
27+(56 
,)V\VXEUF!
0(66$*(,'V\PVJLG7<3(V\PVJW\180%(5V\PVJQR
:,7+V\PVJYV\PVJYV\PVJYV\PVJY
5$,6,1*WHFKQLFDOBHUURU
(1',)
(1',)

(1')2506%'2&B3267B

AP AG CR550 14-14
9DOLGDWLRQ6HUYLFH

)81&7,21]BFUBBYDO

 /RFDOLQWHUIDFH
,03257,1*
5()(5(1&( 237,216 7<3(60:)237237,21$/
(;3257,1*
5()(5(1&( 67$786 7<3(60:9$/67$7
5()(5(1&( (55B0(66$*( 7<3(&50*(&=&5BB0(6*
5()(5(1&( (55B0(66$*(B(;7 7<3(=&5BB(;7
&+$1*,1*
5()(5(1&( 75$16$&7,21B0(66$*( 7<3(
&50*(&=&5BB0(6*
5()(5(1&( 0(66$*(B(;7 7<3(=&5BB(;7
5()(5(1&( (5525B6(*0(176 7<3(60:B(557$%237,21$/
5()(5(1&( 2%-(&7B/,1.6 7<3(75/B%25,'237,21$/
5()(5(1&( +($'(5 7<3(60:B)+'
(;&(37,216
7(&+1,&$/B(5525


&/$66FOBVPZBVIORZ'(),1,7,21/2$'
&/$66FOBVPZBPIORZ'(),1,7,21/2$'

'$7$JYBYDOLGDWLRQBKHDGHU7<3(VPZBIKG
'$7$JYBRXWERXQGBFDOOHG7<3(F
'$7$
OYBHUURUBRFFXUHG7<3(F
OYBPXOW7<3(F
OYBFRXQW7<3(V\WDEL[
OVBUHWXUQ7<3(EDSLUHW
OVBHUURU7<3(/,1(2)VPZBHUUWDE

),(/'6<0%2/6
PEGRFBH[W!7<3(/,1(2)]FUBBH[W]FUBBURRW

AP AG CR550 14-15
6WDUWWKHYDOLGDWLRQ
/223$7PHVVDJHBH[W]FUBBURRW$66,*1,1*PEGRFBH[W!

,)PEGRFBH[W!GDWDFRQWLQHQW1(
$6,$
$1'
PEGRFBH[W!GDWDFRQWLQHQW1(
$)5,&$
$1'
PEGRFBH[W!GDWDFRQWLQHQW1(
$8675$/,$
$1'
PEGRFBH[W!GDWDFRQWLQHQW1(
$0(5,&$
$1'
PEGRFBH[W!GDWDFRQWLQHQW1(
$17$5&7,&$
$1'
PEGRFBH[W!GDWDFRQWLQHQW1(
(8523(

OYBHUURUBRFFXUHG 
;

OVBUHWXUQPHVVDJH 
)LHOGFRQWLQHQWLVLQYDOLG

OVBUHWXUQW\SH 
(

029(&255(6321',1*OVBUHWXUQ72OVBHUURU
OVBHUURUHUUBNH\ PEGRFBH[W!GDWDJXLG
$33(1'OVBHUURU72HUURUBVHJPHQWV
(;,7
(1',)
(1'/223

'(6&5,%(7$%/(PHVVDJHBH[W]FUBBURRW/,1(6OYBFRXQW
,)OYBFRXQW(4
(PSW\PHVVDJHQRWDOORZHG
VWDWXV FOBVPZBPIORZ !FBYDOVWDWBHUURU
(;,7
(/6(,)OYBFRXQW*7
OYBPXOW 
;

(1',)

$ERUWLIDQHUURURFFXUHG
,)OYBHUURUBRFFXUHG 
;

VWDWXV FOBVPZBPIORZ !FBYDOVWDWBHUURU
(;,7
(1',)

VWDWXV FOBVPZBPIORZ !FBYDOVWDWBVXFFHVV

6WDUWWKHRXWERXQGSURFHVVLQJ
&$//0(7+2'FOBVPZBPIORZ !SURFHVVBRXWERXQG

AP AG CR550 14-16
(;3257,1*
LQBKHDGHU KHDGHU
EGRFBW\SH 
=&5BB0(6*

PXOWLSOHBFDVH OYBPXOW
KDVBH[WHQVLRQ 
;

BBV\QFKPRGH 
;

&+$1*,1*
PHVVDJH WUDQVDFWLRQBPHVVDJH
PHVVDJHBH[W PHVVDJHBH[W
(;&(37,216
WHFKQLFDOBHUURU 
27+(56 
,)V\VXEUF!
0(66$*(,'V\PVJLG7<3(V\PVJW\180%(5V\PVJQR
:,7+V\PVJYV\PVJYV\PVJYV\PVJY
5$,6,1*WHFKQLFDOBHUURU
(1',)

(1')81&7,21

AP AG CR550 14-17
7HVWUHSRUW


5HSRUW=B&5BB)/2:7(67









5(3257=B&5BB)/2:7(67

7$%/(6VPZBIKG

&/$66FOBVPZBVIORZ'(),1,7,21/2$'

3$5$0(7(56
SBFVWDWH7<3(F$6&+(&.%2;
SBLQVHUW7<3(F$6&+(&.%2;'()$8/7
;

SBJXLG7<3(VPRJBJXLG2%/,*$725<
SBFRXQW7<3(WH[W
SBFRQWL7<3(WH[W

,1,7,$/,=$7,21
&$//)81&7,21
6<67(0B88,'B&B&5($7(

,03257,1*
XXLG SBJXLG

67$572)6(/(&7,21
3(5)250GRBVHOHFWLRQ

(1'2)6(/(&7,21

AP AG CR550 14-18

)250GRBVHOHFWLRQ



)250GRBVHOHFWLRQ
'$7$
OYBVWDWXV7<3(VPZYDOVWDW
OYBPVJBW\SH7<3(VPZBIKGPVJBW\SH
OVBKHDGHU7<3(VPZBIKG
OVBVEGRFBURRW7<3(/,1(2)FUPJHF]FUBBV\QF
]FUBBURRW
OVBVEGRF7<3(FUPJHF]FUBBV\QF
,)SBLQVHUW(4
;

OVBVEGRFBURRWWDVN 


(/6(
OVBVEGRFBURRWWDVN 


(1',)
OVBVEGRFBURRWVIDFUB SBJXLG
OVBVEGRFBURRWFRXQWU\ SBFRXQW
OVBVEGRFBURRWFRQWLQHQW SBFRQWL
$33(1'OVBVEGRFBURRW72OVBVEGRF]FUBBURRW

,)SBFVWDWH(4
;

OYBPVJBW\SH FOBVPZBVIORZ !FBPVJW\SHBFXUUHQWBVWDWH
(/6(
OYBPVJBW\SH FOBVPZBVIORZ !FBPVJW\SHBGHOWD
(1',)

&$//0(7+2'FOBVPZBVIORZ !VHWBKHDGHUBILHOGV
(;3257,1*
LQBEGRFBW\SH 
=&5BB6<1&

LQBPVJBW\SH VSDFH
LQBURRWBLG SBJXLG
,1B6,7(B,' 63$&(
,03257,1*
RXWBKHDGHU OVBKHDGHU

AP AG CR550 14-19

&$//0(7+2'FOBVPZBVIORZ !SHUVBYDOLGDWH
(;3257,1*
KHDGHU OVBKHDGHU
,03257,1*
VWDWXV OYBVWDWXV
(5525B6(*0(176
&+$1*,1*
PHVVDJH OVBVEGRF

:5,7(OYBVWDWXVOVBKHDGHUEGRFBLG

(1')250GRBVHOHFWLRQ

AP AG CR550 14-20
6DPSOH6ROXWLRQVIRUWKH8QLW5$GDSWHU&XVWRPL]LQJ
([WUDFWRURQWKH5%DFN(QG

)81&7,21]BFUBBH[WUDFW

 /RFDOLQWHUIDFH
,03257,1*
9$/8( ,B%$3,&50'+ /,.(%$3,&50'+6758&785(
%$3,&50'+
9$/8( ,B2%-B1$0( /,.(%$3,&502%-2%-B1$0(
(;3257,1*
9$/8( (B67$786 /,.(&50B3$5$67$786B(;7
7$%/(6
7,B7$%/(66758&785(&507$%/(6
7,B5$1*(6758&785(&506(/675
7,B5(/$7,216758&785(&505(/$
(;&(37,216
(5525B0(66$*(


'$7$
ZKHUHVWDWHPHQW
OWBFRQGLWLRQ/,.(PFRQGLWLRQ2&&856:,7++($'(5/,1(
LQWHUQDOWDEOHIRU5WDEOHGDWD
OWB]FUB/,.(]FUB2&&856:,7++($'(5/,1(
LQWHUQDOWDEOHFRQWDLQLQJGDWDFRQWDLQHUIRU0:$GDSWHU
OWBEDSLPWFV/,.(EDSLPWFV2&&856:,7++($'(5/,1(
 HUURUDQGWUDFH PHVVDJHV
OWBPHVVDJHV/,.(EDSLFUPPVJ2&&856:,7++($'(5/,1(
ORDGLQIRUPDWLRQWREHVHQWEDFNWR&50
OYBORDGBKHDGHU/,.(EDSLFUPGK
OYBEORFNQR/,.(EDSLFUPGKEORFNQR9$/8(
OYBUHFRUGQR/,.(EDSLFUPGKUHFRUGQR

&KHFNILOWHUFRQGLWLRQV
5()5(6+OWBFRQGLWLRQ

AP AG CR550 14-21
/223$7WLBUDQJH
,)WLBUDQJHWDEOH!
=&5B

5$,6(HUURUBPHVVDJH
(1',)
(1'/223

%XLOGZKHUHVWDWHPHQWIRUGDWDVHOHFWLRQ
&$//)81&7,21
&56B&5($7(B:+(5(B&21',7,21

7$%/(6

WLBUDQJH WLBUDQJH
WRBFRQG OWBFRQGLWLRQ

VHOHFWGDWDIURP5WDEOH QRUPDOO\GRQHEORFNZLVH
6(/(&7 )520]FUB
,1727$%/(OWB]FUB
:+(5( OWBFRQGLWLRQ 
,)V\VXEUF!
5$,6(HUURUBPHVVDJH
(1',)
OYBUHFRUGQR V\GEFQW

PDSGDWDWRWUDQVIHUVWUXFWXUH
&$//)81&7,21
=B&56B0$3B=&5BBB%$3,0&76

7$%/(6
LWBUWDEOHV OWB]FUB
HWBEDSLPWFV OWBEDSLPWFV

&$//)81&7,21
&56B),//B&50'+B)520B'+

(;3257,1*
LBEDSLFUPGK LBEDSLFUPGK
LBODVWEORFN 
;
QRUPDOO\RQO\IRUODVWEORFN
LBEORFNQR
OYBEORFNQRQRUPDOO\WKHFXUUHQWEORFNQXPEHU
LBUHFRUGQR OYBUHFRUGQR
LBXSORDGVWDW 
6

,03257,1*
HBEDSLFUPGK OYBORDGBKHDGHU

AP AG CR550 14-22
FDOOVHQGBWRBVHUYHU
&$//)81&7,21
&56B6(1'B72B6(59(5

(;3257,1*
LBREMBQDPH 
=&5BB0(6*

LBEDSLFUPGK OYBORDGBKHDGHU
LBREMBFODVV 
=&5BB&/$66

7$%/(6
WBEDSLVWUXFWXUHV OWBEDSLPWFV
WBPHVVDJHV OWBPHVVDJHV
(;&(37,216
GDWDBQRWBVHQW 
27+(56 

GRDFRPPLWDIWHUHDFKEORFN LPSRUWDQW
&200,7:25.

(1')81&7,21

AP AG CR550 14-23
$OLWWOHKHOSHU

)81&7,21]BFUVBPDSB]FUBBBEDSLPFWV

 /RFDOLQWHUIDFH
7$%/(6
,7B57$%/(66758&785(=&5B
(7B%$3,07&66758&785(%$3,07&6

'$7$
OYBWUDQVIHUBVWUXFWXUH/,.(]FUBWUDQVIHU

0DSDOOVHOHFWHG5WDEOHHQWULHV
/223$7LWBUWDEOHV
0DS5WDEOHHQWU\LQWRWUDQVIHUVWUXFWXUH
029(&255(6321',1*LWBUWDEOHV72OYBWUDQVIHUBVWUXFWXUH
6WRUHWUDQVIHUVWUXFWXUHLQWRGDWDFRQWDLQHU
HWBEDSLPWFVWDEQDPH 
=&5B75$16)(5

029(OYBWUDQVIHUBVWUXFWXUH72HWBEDSLPWFVGDWD
 RWKHUILHOGVRI%$3,07&6DUHQRWUHOHYDQWIRUWKLV
H[DPSOH
$33(1'HWBEDSLPWFV
(1'/223

(1')81&7,21

AP AG CR550 14-24
0DSSLQJIXQFWLRQPRGXOHRQWKH&506HUYHU

)81&7,21]BFUBBPDSBEDSLPWFVBBEGRF

 /RFDOLQWHUIDFH
,03257,1*
9$/8( ,B2%-1$0( 7<3(602B2%-1$0
9$/8( ,B2%-&/$66 7<3(602B2%-&/$
9$/8( ,B6(1'(5B6,7(B7<3( 7<3(60:67,'
9$/8( ,B6(1'(5B6,7(B,' 7<3(602B6,7(,'
9$/8( ,B12B352&(66 7<3(602'/7352&
(;3257,1*
9$/8( +($'(5 7<3(60:B)+'
9$/8( 5()B0(66$*( 7<3(5()72'$7$
9$/8( 5()B0(66$*(B(;7 7<3(5()72'$7$
9$/8( 2%-(&7B/,1.6 7<3(75/B%25,'
9$/8( (B'2B127B&$//B*'+ 7<3(;)(/'
7$%/(6
7,B%$3,07&66758&785(%$3,07&6
7B0(66$*(66758&785(%$3,&5006*
7,B.(<B,1)26758&785(%$3,&50.(<
7,B27+(5B,1)26758&785(%$3,(;7&
7,B%$3,,'/,676758&785(%$3,,'/,67
&+$1*,1*
9$/8( (B%$3,&50'+ /,.(%$3,&50'+6758&785(
%$3,&50'+
9$/8( (5525B6(*0(176 7<3(60:B(557$%


7KHIROORZLQJFRGLQJKDVWREHLPSOHPHQWHGWRILOOD%'RF
DQG
WKH'',&W\SHDQGWRFUHDWHWKHUHIHUHQFHVWRWKHVHGDWD

FODVVLFDO%'RFSDUW
'$7$PHVVDJH7<3(FUPJHF]FUBBPHVJ9$/8(,6
,1,7,$/
),(/'6<0%2/6EGRF!7<3(FUPJHF]FUBBPHVJ

AP AG CR550 14-25
'',&W\SHSDUW
'$7$PHVVDJHBH[W7<3(]FUBBH[W9$/8(,6,1,7,$/
),(/'6<0%2/6GGLF!7<3(]FUBBH[W
VHJPHQWGDWD
'$7$VHJPHQWBOLQH7<3(/,1(2)FUPJHF]FUBBPHVJ
]FUBBURRW
'$7$H[WBOLQH7<3(/,1(2)]FUBBH[W]FUBBURRW
'$7$WUDQVIHUBVWUXFWXUH/,.(]FUBWUDQVIHU
'$7$OYBVIDNH\/,.(]FUBVIDFUB
'$7$OYBWDVN7<3(F

&5($7(5()(5(1&(6
&UHDWHDUHIHUHQFHIRUDOO
%'RFSDUWUHJDUGOHVVLIWKH\DUHILOOHGRUQRW
&5($7('$7$UHIBPHVVDJH/,.(PHVVDJH
$66,*1UHIBPHVVDJH! 72EGRF!
&5($7('$7$UHIBPHVVDJHBH[W/,.(PHVVDJHBH[W
$66,*1UHIBPHVVDJHBH[W! 72GGLF!

0RYHDOOGDWDFRQWDLQHULQWRP%'RF
/223$7WLBEDSLPWFV:+(5(WDEQDPH 
=&5B75$16)(5


ILOOFODVVLFDOP%'RFSDUW
029(WLBEDSLPWFVGDWD72WUDQVIHUBVWUXFWXUH

,QFDVHRIDQUHSO\WRDORDGWRWKHEDFNHQG
,)HBEDSLFUPGKGZQORDGW\S 
'

5($'7$%/(WLBNH\BLQIR
:,7+.(<WDEQDPH 
=&5B

UNBQDPHV 
&28175<

UNBYDOXHV WUDQVIHUBVWUXFWXUHFRXQWU\
,)V\VXEUF(4
029(WLBNH\BLQIRVIDBNH\72OYBVIDNH\
(1',)
(1',)

AP AG CR550 14-26
+DQGOH7$6.YDOXH
&$6(HBEDSLFUPGKGZQORDGW\S
:+(1
,

OYBWDVN 
,

:+(1
'

OYBWDVN HBEDSLFUPGKGHOWDBRS
(1'&$6(

029(WUDQVIHUBVWUXFWXUHFRQWLQHQW72VHJPHQWBOLQH
FRQWLQHQW
029(OYBVIDNH\72VHJPHQWBOLQHJXLG
$33(1'VHJPHQWBOLQH72EGRF!]FUBBURRW

)LOOWKHH[WHQVLRQRIWKHP%'RF
029(OYBVIDNH\72H[WBOLQHGDWDJXLG
H[WBOLQHGDWDFRXQWU\ WUDQVIHUBVWUXFWXUHFRXQWU\
H[WBOLQHGDWDFRQWLQHQW WUDQVIHUBVWUXFWXUHFRQWLQHQW
H[WBOLQHGDWD[FRXQWU\ 
;

H[WBOLQHGDWD[FRQWLQHQW 
;

H[WBOLQHFRQWUROWDVN HBEDSLFUPGKGHOWDBRS
$33(1'H[WBOLQH72GGLF!]FUBBURRW
(1'/223

&$//0(7+2'FOBVPZBPIORZ !VHWBKHDGHUBILHOGV
(;3257,1*
LQBEGRFBW\SH 
=&5BB0(6*

,03257,1*
RXWBKHDGHU KHDGHU

(1')81&7,21

AP AG CR550 14-27
'DWDFROOHFWRUPRGXOHRQWKH5%DFN(QG

)81&7,21]BFUBBFROOHFWBGDWD

 /RFDOLQWHUIDFH
,03257,1*
5()(5(1&( ,B=&5 /,.(=&5B6758&785(=&5B
5()(5(1&( ,B7$6. 7<3(&


'$7$
OWBUWDEOHV/,.(]FUB2&&856:,7++($'(5/,1(
OWBEDSLPWFV/,.(EDSLPWFV2&&856:,7++($'(5/,1(
 HUURUDQGWUDFH PHVVDJHV
OWBPHVVDJHV/,.(EDSLFUPPVJ2&&856:,7++($'(5/,1(
OWBNH\BLQIR/,.(EDSLFUPNH\2&&856:,7++($'(5/,1(
OYBNH\BLQIR/,.(EDSLFUPNH\
OYBORDGBKHDGHU/,.(EDSLFUPGK

$33(1'LB]FU72OWBUWDEOHV

PDSGDWDLQWR%$3,07&6FRQWDLQHU
&$//)81&7,21
=B&56B0$3B=&5BBB%$3,0&76

7$%/(6
LWBUWDEOHV OWBUWDEOHV
HWBEDSLPWFV OWBEDSLPWFV

LPSRUWYDOXHVIURPIRUPHUORDGWREDFNHQG LISUHVHQW
,03257UHIBLG72OYBORDGBKHDGHUUHIBLG
NH\BLQIR72OYBNH\BLQIR

)5200(025<,'
=&5B

,)127 OYBNH\BLQIR,6,1,7,$/ 
$33(1'OYBNH\BLQIR72OWBNH\BLQIR
029(OYBNH\BLQIRXSORDGVWDW72OYBORDGBKHDGHUXSORDGVWDW
(1',)

AP AG CR550 14-28
EXLOGORDGKHDGHU
OYBORDGBKHDGHUGZQORDGW\S 
'
WKLVLVDGHOWDORDG
OYBORDGBKHDGHUEORFNVL]H 
;
GHOWDORDGLVSHUIRUPHG
IRUVLQJOH
GDWDUHFRUGVRQO\
OYBORDGBKHDGHUGHOWDBRS LBWDVN
,)OYBORDGBKHDGHUXSORDGVWDW,6,1,7,$/
OYBORDGBKHDGHUXSORDGVWDW 
6

(1',)

VHQGGDWDWR&50
&$//)81&7,21
&56B6(1'B72B6(59(5

(;3257,1*
LBREMBQDPH 
=&5BB0(6*

LBEDSLFUPGK OYBORDGBKHDGHU
LBREMBFODVV 
=&5BB&/$66

7$%/(6
WBEDSLVWUXFWXUHV OWBEDSLPWFV
WBPHVVDJHV OWBPHVVDJHV
WBNH\BLQIR OWBNH\BLQIR
(;&(37,216
GDWDBQRWBVHQW 
27+(56 

&200,7KDVWREHSHUIRUPHGE\WKHFDOOHURIWKLVPRGXOH
7KDW
VLPSRUWDQW
&200,7:25.

(1')81&7,21

AP AG CR550 14-29
)XQFWLRQPRGXOHVRQWKH&506HUYHU

)81&7,21=B23),B60287,/

 /RFDOLQWHUIDFH
,03257,1*
9$/8( ,B2%-1$0( 7<3(602B2%-1$0
9$/8( ,B2%-&/$66 7<3(602B2%-&/$
9$/8( ,B6(1'(5B7<3( 7<3(60:67,'
9$/8( ,B6(1'(5B6,7(B,' 7<3(602B6,7(,'
9$/8( ,B7$5*(7B6,7(B,' 7<3(602B6,7(,'
(;3257,1*
9$/8( (B'2B127B&$//B)/2: 7<3(;)(/'
7$%/(6
7,B%$3,07&66758&785(%$3,07&6
7B0(66$*(66758&785(%$3,&5006*
7,B.(<B,1)26758&785(%$3,&50.(<
7,B27+(5B,1)26758&785(%$3,(;7&
7,B%$3,,'/,676758&785(%$3,,'/,67
&+$1*,1*
5()(5(1&( +($'(5 7<3(60:B)+'
9$/8( 0(66$*(
9$/8( 0(66$*(B(;7 237,21$/
9$/8( (5525B6(*0(176 7<3(60:B(557$%
9$/8( 2%-(&7B/,1.6 7<3(75/B%25,'
9$/8( (B%$3,&50'+ 7<3(%$3,&50'+


&KHFNZHWKHU([LWZDVFDOOHGGXULQJ'RZQORDG
&+(&. HBEDSLFUPGKUHIBLG,6,1,7,$/
$1' HBEDSLFUPGKGZQORDGW\S 
'
 

&$6(LBREMQDPH

([WHQVLRQIRU%XVLQHVV7UDQVDFWLRQ

AP AG CR550 14-30
:+(1
6$/(6'2&80(17


([WHQVLRQIRU%XVLQHVV3DUWQHU
:+(1
%83$B0$,1
RU
&86720(5B0$,1

&$//)81&7,21
=B0$3B0:B72B%83$

(;3257,1*
LBREMQDPH LBREMQDPH
LBREMFODVV LBREMFODVV
LBVHQGHUBW\SH LBVHQGHUBW\SH
LBVHQGHUBVLWHBLG LBVHQGHUBVLWHBLG
LBWDUJHWBVLWHBLG LBWDUJHWBVLWHBLG
,03257,1*
HBGRBQRWBFDOOBIORZ HBGRBQRWBFDOOBIORZ
7$%/(6
WLBEDSLPWFV WLBEDSLPWFV
WBPHVVDJHV WBPHVVDJHV
WLBNH\BLQIR WLBNH\BLQIR
WLBRWKHUBLQIR WLBRWKHUBLQIR
WLBEDSLLGOLVW WLBEDSLLGOLVW
&+$1*,1*
KHDGHU KHDGHU
0(66$*( PHVVDJH
PHVVDJHBH[W PHVVDJHBH[W
HUURUBVHJPHQWV HUURUBVHJPHQWV
REMHFWBOLQNV REMHFWBOLQNV
HBEDSLFUPGK HBEDSLFUPGK

(1'&$6(

(1')81&7,21

)81&7,21=B0$3B0:B72B%83$


AP AG CR550 14-31
 /RFDOLQWHUIDFH
,03257,1*
9$/8( ,B2%-1$0( 7<3(602B2%-1$0
9$/8( ,B2%-&/$66 7<3(602B2%-&/$
9$/8( ,B6(1'(5B7<3( 7<3(60:67,'
9$/8( ,B6(1'(5B6,7(B,' 7<3(602B6,7(,'
9$/8( ,B7$5*(7B6,7(B,' 7<3(602B6,7(,'
(;3257,1*
9$/8( (B'2B127B&$//B)/2: 7<3(;)(/'
7$%/(6
7,B%$3,07&66758&785(%$3,07&6
7B0(66$*(66758&785(%$3,&5006*
7,B.(<B,1)26758&785(%$3,&50.(<
7,B27+(5B,1)26758&785(%$3,(;7&
7,B%$3,,'/,676758&785(%$3,,'/,67
&+$1*,1*
5()(5(1&( +($'(5 7<3(60:B)+'
9$/8( 0(66$*(
9$/8( 0(66$*(B(;7 237,21$/
9$/8( (5525B6(*0(176 7<3(60:B(557$%
9$/8( 2%-(&7B/,1.6 7<3(75/B%25,'
9$/8( (B%$3,&50'+ 7<3(%$3,&50'+


'$7$
OVBEDSLPWFV7<3(EDSLPWFV
EXVBHLBH[WHUQ7<3(EXVBHLBH[WHUQ
%XVLQHVV3DUWQHU1HZ)LHOGVDQG6WDQGDUG)LHOGV
OVB]DVPRNQD7<3(]DVPRNQD

),(/'6<0%2/6IVBPVJBEXSD!7<3(EXVBHLBPDLQ
IVBPVJBESH[W!7<3(EXVBHLBH[WHUQ

$66,*1PHVVDJHBH[W72IVBPVJBEXSD!
,)V\VXEUF!
(;,7
72'2(UURU+DQGOLQJ

AP AG CR550 14-32
(1',)

%XVLQHVV3DUWQHU1HZ)LHOGVDQG6WDQGDUG)LHOGV

/223$7WLBEDSLPWFV
:+(5(WDEQDPH 
=$.1$

/223$7IVBPVJBEXSD!SDUWQHUV$66,*1,1*IVBPVJBESH[W!
:+(5(KHDGHUREMHFWBLQVWDQFHESDUWQHUJXLG
 WLBEDSLPWFVREMNH\

&/($5OVB]DVPRNQD
PRYHBFDVWLQJWLBEDSLPWFVGDWDOVB]DVPRNQD
IVBPVJBESH[W!FHQWUDOBGDWDFRPPRQGDWD]]EXW
 OVB]DVPRNQD]]VPRNQD

(1'/223
(1'/223

(1')81&7,21

PHWKRG,)B(;B&50B$B86(5B(;,76a86(5B(;,7B'2:1/2$'B%3B0$,1

GDWDOBFODVVLFBSDUWW\SH&50*%83$B0$,1
OB3$571(56W\SH%86B(,B(;7(51
OB&$3*(1B2%-(&7W\SH&50*&$3*(1B2%-(&7

GHFODUHVWUXFWXUHRIWKH%'2&VHJPHQWDQG
DORFDOLQWHUQDOWDEOHRIVWUXFWXUHVPRJBVIOGQ
GDWDLVBVWUXFWXUHW\SHGGREMQDPH
GDWDOWBVILHOGW\SHWDEOHRIVPRJBVIOGQ

GHFODUDWLRQIRUVHQGELWV
GDWDHYBVHQGELWVBXVHUH[LWVW\SHVPRJBVLQFVHQGELWV

LVBVWUXFWXUH 
&50*&$3*(1B2%-(&7


AP AG CR550 14-33
GDWDOYBWHVWW\SH%86B(,B%83$B&(175$/B'$7$

ORRSDW&$3*(1B%'2&&$3*(1B2%-(&7LQWROB&$3*(1B2%-(&7

LIGDWDLVLQVHUWHGRUXSGDWHG
LIOB&$3*(1B2%-(&7WDVN RUOB&$3*(1B2%-(&7WDVN 

UHDGWKHFRUUHVSRQGLQJGDWDLQWKH&50%'2&
UHDGWDEOHWUDQVDFWLRQBPHVVDJHSDUWQHUVLQWROB3$571(56
LQGH[
ZLWKNH\JXLG OBLQWESBREMHFWVIDNQD

PRYHOBSDUWQHUV&(175$/B'$7$&20021'$7$==%87WR
OB&$3*(1B2%-(&7==602.1$

JHQHUDWHWKHVHQGELWVIRUWKHQHZO\DGGHGILHOGV

FOHDUHYBVHQGELWVBXVHUH[LWV
UHIUHVKOWBVILHOG

DSSHQG
==602.1$
WROWBVILHOG

&$//)81&7,21
602B61'%,76B6(7;

(;3257,1*
6758&785(1$0( LVBVWUXFWXUH
),(/'1$0( 


5(6(7B%,76 


'',& 

%'2&1$0( 
&$3*(1B2%-B:5,7(

7$%/(6
6),(/'6 /7B6),(/'
&+$1*,1*
61'%,76 HYBVHQGELWVBXVHUH[LWV
(;&(37,216
6758&785(B127B)281' 
:521*B),(/'1$0( 

AP AG CR550 14-34
27+(56 

FRPELQHWKHVWQGDUGVHQGELWVDQGWKHVHQGELWVJHQHUDWHGE\
XVHUH[LWV
OB&$3*(1B2%-(&7VHQGELWV
OB&$3*(1B2%-(&7VHQGELWVELWRUHYBVHQGELWVBXVHUH[LWV

PRGLI\WKHLWHPVHJPHQWZLWKWKHQHZILHOGV
PRGLI\FDSJHQBEGRFFDSJHQBREMHFW
IURPOBFDSJHQBREMHFWLQGH[
WUDQVSRUWLQJ]]VPRNQDVHQGELWV

HQGLI

HQGORRS

HQGPHWKRG

)81&7,21=B$3&(2B$33(1'B%87

 /RFDOLQWHUIDFH
,03257,1*
5()(5(1&( ,6B%87 7<3(%87
&+$1*,1*
5()(5(1&( &20021B'$7$ 7<3(%86B(,B%83$B&(175$/



029(LVBEXW]]EXW72FRPPRQBGDWDGDWD]]EXW

(1')81&7,21

AP AG CR550 14-35

)81&7,21=B&50,1B$33(1'B),(/'6

 /RFDOLQWHUIDFH
(;3257,1*
5()(5(1&( 67$786 7<3(60:9$/67$7
&+$1*,1*
5()(5(1&( &B%3B6758&7 7<3(%86B(,B(;7(51
5()(5(1&( (5525B6(*0(176 7<3(60:B(557$%


UHJLVWHUWKLVIXQFWLRQLQ&50&B%87B&$//B)8HYHQW&50,1IRU
%83$

'$7$OYBSDUWQHUJXLG7<3(EXWSDUWQHUBJXLG
OYBSDUWQHU7<3(EXBSDUWQHU
OYBSDUWQHUH[W7<3(EXBESH[W
OVBEXV7<3(EXVBBBL
OVBUHWXUQ7<3(EDSLUHW

),(/'6<0%2/6IVBEXSDBDGGU!7<3(EXVBHLBEXSDBDGGUHVV

VWDWXV 
6

OYBSDUWQHUJXLG FBESBVWUXFWKHDGHUREMHFWBLQVWDQFH
ESDUWQHUJXLG
OYBSDUWQHUH[W
FBESBVWUXFWFHQWUDOBGDWDFRPPRQGDWDESBFHQWUDOGDWD
SDUWQHUH[WHUQDO

&$//)81&7,21
%83$B180%(56B*(7

(;3257,1*
LYBSDUWQHUBJXLG OYBSDUWQHUJXLG
LYBSDUWQHUBH[WHUQDO OYBSDUWQHUH[W
,03257,1*
HYBSDUWQHU OYBSDUWQHU

AP AG CR550 14-36
&+(&.127OYBSDUWQHU,6,1,7,$/RUDGGHUURUPHVVDJH

%XVLQHVV3DUWQHU1HZ)LHOGVLQ%87

*HW%87WDEOHIURPJOREDOPHPRU\
&$//)81&7,21
%83B0(025<B%87B*(7

(;3257,1*
LYBSDUWQHU OYBSDUWQHU
,03257,1*
HVBEXW OVBEXV
(;&(37,216
27+(56 
,)V\VXEUF!
VWDWXV 
$

(/6(
0RYH%'RFGDWDWRWDEOH
029(FBESBVWUXFWFHQWUDOBGDWDFRPPRQGDWD]]EXW72
OVBEXV]]EXW

3XWWDEOHEDFNWRJOREDOPHPRU\
&$//)81&7,21
%83B0(025<B%87B),//

(;3257,1*
LVBEXW OVBEXV
(;&(37,216
27+(56 
,)V\VXEUF!
VWDWXV 
$

(1',)
(1',)

*HQHUDO(UURU+DQGOLQJ

,)VWDWXV 
$

OVBUHWXUQW\SH V\PVJW\
OVBUHWXUQLG V\PVJLG
OVBUHWXUQQXPEHU V\PVJQR
OVBUHWXUQPHVVDJHBY V\PVJY

AP AG CR550 14-37
OVBUHWXUQPHVVDJHBY V\PVJY
OVBUHWXUQPHVVDJHBY V\PVJY
OVBUHWXUQPHVVDJHBY V\PVJY
0(66$*(,'V\PVJLG7<3(
,
180%(5V\PVJQR
:,7+V\PVJYV\PVJYV\PVJYV\PVJY
,172OVBUHWXUQPHVVDJH

&$//)81&7,21
%83$B0:;B%'2&B%8,/'B(55B0(66

(;3257,1*
LYBREMBLG FBESBVWUXFWKHDGHUREMHFWBLQVWDQFH
ESDUWQHUJXLG
LVBEDSLUHW OVBUHWXUQ
,03257,1*
HWBHUUBPVJ HUURUBVHJPHQWV
(1',)

(1')81&7,21

AP AG CR550 14-38
)XQFWLRQPRGXOHVRQWKH5%DFN(QG

)81&7,21]BRSILBFUPB

 /RNDOH6FKQLWWVWHOOH
,03257,1*
5()(5(1&( ,B2%-B&/$66 /,.(%$3,&502%-2%-&/$66
5()(5(1&( ,B2%-B1$0( /,.(%$3,&502%-2%-B1$0(
5()(5(1&( ,B%$3,&50'+ /,.(%$3,&50'+6758&785(
%$3,&50'+
5()(5(1&( ,B.(<:25'B,1 /,.(&50B3$5$.(<:25'B,1
5()(5(1&( ,B&505)&3$5 /,.(&505)&3$56758&785(
&505)&3$5
(;3257,1*
5()(5(1&( (B'2B127B6(1' /,.(&50B3$5$;)(/'
7$%/(6
7B,17B7$%/(66758&785(%$3,07&6
7B%$3,6758&76758&785(%$3,07&6
7B0(66$*(66758&785(%$3,&5006*
7B.(<B,1)26758&785(%$3,&50.(<
7B27+(5B,1)26758&785(%$3,(;7&
7B%$3,,'/,676758&785(%$3,,'/,67


5HJLVWHUWKLVIXQFWLRQLQWDEOH736

&$6(LBREMBFODVV

:+(1
6$/(6'2&80(17


:+(1
%83$


&$6(LBREMBQDPH
%XVLQHVV3DUWQHU5UXQV%XVLQHVV3DUWQHU
:+(1
%83$B0$,1


%XVLQHVV3DUWQHU5UXQV&XVWRPHU

AP AG CR550 14-39
:+(1
&86720(5B0$,1


&$//)81&7,21
=B0$3B&86720(5B72B0:

(;3257,1*
LBREMBFODVV LBREMBFODVV
LBREMBQDPH LBREMBQDPH
LBEDSLFUPGK LBEDSLFUPGK
LBNH\ZRUGBLQ LBNH\ZRUGBLQ
LBFUPUIFSDU LBFUPUIFSDU
,03257,1*
HBGRBQRWBVHQG HBGRBQRWBVHQG
7$%/(6
WBLQWBWDEOHV WBLQWBWDEOHV
WBEDSLVWUXFW WBEDSLVWUXFW
WBPHVVDJHV WBPHVVDJHV
WBNH\BLQIR WBNH\BLQIR
WBRWKHUBLQIR WBRWKHUBLQIR
WBEDSLLGOLVW WBEDSLLGOLVW

(1'&$6(
(1'&$6(
(1')81&7,21

)81&7,21=B0$3B&86720(5B72B0:

 /RNDOH6FKQLWWVWHOOH
,03257,1*
5()(5(1&( ,B2%-B&/$66 /,.(%$3,&502%-2%-&/$66
5()(5(1&( ,B2%-B1$0( /,.(%$3,&502%-2%-B1$0(
5()(5(1&( ,B%$3,&50'+ /,.(%$3,&50'+6758&785(
%$3,&50'+
5()(5(1&( ,B.(<:25'B,1 /,.(&50B3$5$.(<:25'B,1
5()(5(1&( ,B&505)&3$5 /,.(&505)&3$56758&785(
&505)&3$5
AP AG CR550 14-40
(;3257,1*
5()(5(1&( (B'2B127B6(1' /,.(&50B3$5$;)(/'
7$%/(6
7B,17B7$%/(66758&785(%$3,07&6
7B%$3,6758&76758&785(%$3,07&6
7B0(66$*(66758&785(%$3,&5006*
7B.(<B,1)26758&785(%$3,&50.(<
7B27+(5B,1)26758&785(%$3,(;7&
7B%$3,,'/,676758&785(%$3,,'/,67
(;&(37,216
.1$B127B)281'


5$1*(6/7B9.25*)25.1999.25*
/7B97:(*)25.19997:(*
/7B63$57)25.19963$57

)HOGHUIU==(UZHLWHUXQJHQ
'$7$/7B%$3,07&67<3(7$%/(2)%$3,07&6
/6B%$3,07&67<3(%$3,07&6
/6B5$B0$,17<3(5$B0$,1
/9B3$571(57<3(5$B0$,1&86720(B12
/9B3$571(5B*8,'7<3(5$B0$,13$571B*8,'
1(;7B)5((B&855'127<3(&855'129$/8(
/6B.1$/,.(.1$

%XVLQHVV3DUWQHU1HZ)LHOGVDQG6WDQGDUG)LHOGV
'$7$/9B=$.1$/,.(=$.1$
/)B&85567$7  7<3(&

'HWHUPLQHQH[WIUHH&855'12
/223$77B%$3,6758&7
,)7B%$3,6758&7&855'12!1(;7B)5((B&855'12
1(;7B)5((B&855'12 7B%$3,6758&7&855'12
(1',)
(1'/223

AP AG CR550 14-41
JHW.8115VIURP%$3,07&6
/223$77B%$3,6758&7
:+(5(7$%1$0( 
5$B0$,1


PRYHBFDVWLQJWBEDSLVWUXFWGDWDOVBUDBPDLQ
/6B5$B0$,1 7B%$3,6758&7'$7$
/9B3$571(5 /6B5$B0$,1&86720(B12
/9B3$571(5B*8,' /6B5$B0$,13$571B*8,'

,B%$3,&50'+
5()B,'HPSW\':1/2$'7<3 ''HOWD'RZQORDGDIWHU&KDQJHLQ
5
5()B,'ILOOHG':1/2$'7<3 ''HOWD'RZQORDGDIWHU8SORDG
IURP&50
5()B,'ILOOHG':1/2$'7<3 ,,QLWLDO'RZQORDG

7U\UHDGLQJIURPJOREDOPHPRU\ GHOWDGRZQORDG
,)*6B.1$.8115 /9B3$571(5
&/($5/)B&85567$7

/6B.1$ *6B.1$
2WKHUZLVH5HDGIURPGDWDEDVH LQLWLDOGRZQORDG
(/6(
/)B&85567$7 
;

6(/(&76,1*/( )520.1$
,172/6B.1$
:+(5(.8115 /9B3$571(5
,)6<68%5&!
72'25DLVH$0HVVDJH
5$,6(.1$B127B)281'
(1',)
(1',)
$GGQHZ%$3,07&6

%XVLQHVV3DUWQHU1HZ)LHOGVLQ%87
&/($5/6B%$3,07&6/9B=$.1$
/6B%$3,07&67$%1$0( 
=$.1$

AP AG CR550 14-42
/6B%$3,07&66(*7<3( 
'$

/6B%$3,07&6&855'12 1(;7B)5((B&855'12
/6B%$3,07&62%-.(< /9B3$571(5B*8,'
/6B%$3,07&65(/.(< /9B3$571(5B*8,'
1(;7B)5((B&855'12 1(;7B)5((B&855'12
029(&255(6321',1*/6B.1$72/9B=$.1$
/6B%$3,07&6'$7$ /9B=$.1$
$33(1'/6B%$3,07&672/7B%$3,07&6

(1'/223
$33(1'/,1(62)/7B%$3,07&6727B%$3,6758&7

(1')81&7,21

)81&7,213,B%3B&86720(5B%7(B

^,16(577(.

VDYHWKHFXVWRPHUGDWDWRJOREDOPHPRU\
&$//)81&7,21
=B6$9(B&86720(5B72B0(025<

(;3257,1*
LBNQD LBNQD
LBNQDBROG LBNQDBROG
LBNQYY LBNQYY
LBNQYYBROG LBNQYYBROG
XSGBNQD XSGBNQD
XSGBNQYY XSGBNQYY

`,16(57

AP AG CR550 14-43
3(5)25067$57B'2:1/2$'21&200,7/(9(/

(1')81&7,21

)81&7,21]BVDYHBFXVWRPHUBWRBPHPRU\

 /RNDOH6FKQLWWVWHOOH
,03257,1*
9$/8( ,B.1$ /,.(.1$6758&785(.1$
9$/8( ,B.1$B2/' /,.(.1$6758&785(.1$
9$/8( ,B.199 /,.(.1996758&785(.199
9$/8( ,B.199B2/' /,.(.1996758&785(.199
9$/8( 83'B.1$ /,.(&'326&+1*,1'
9$/8( 83'B.199 /,.(&'326&+1*,1'


ORFDOGDWD
'$7$OVBNQD/,.(NQD
'$7$OVBNQDBROG/,.(NQD
'$7$OVBNQYY/,.(/,1(2)JWBNQYY
'$7$OVBNQYYBROG/,.(/,1(2)JWBNQYYBROG

5HIUHVKJOREDOPHPRU\
5()5(6+JWBNQD
JWBNQDBROG
JWBNQYY
JWBNQYYBROG
&/($5JVBNQD

6DYHGRZQORDGLQIRUPDWLRQWRJOREDOPHPRU\
,)127LBNQD,6,1,7,$/
OVBNQD LBNQD

AP AG CR550 14-44
JVBNQD LBNQD
VRPHWLPHV,B.1$KDVDQHPSW\NXQQUILHOG
,)127OVBNQDNXQQU,6,1,7,$/
$33(1'OVBNQD72JWBNQD
(1',)
(1',)
,)127LBNQDBROG,6,1,7,$/
OVBNQDBROG LBNQDBROG
VRPHWLPHV,B.1$B2/'KDVDQHPSW\NXQQUILHOG
,)127OVBNQDBROGNXQQU,6,1,7,$/
$33(1'OVBNQDBROG72JWBNQDBROG
(1',)
(1',)

,)127LBNQYY,6,1,7,$/
OVBNQYY LBNQYY$33(1'OVBNQYY72JWBNQYY
(1',)
,)127LBNQYYBROG,6,1,7,$/
OVBNQYYBROG LBNQYYBROG$33(1'OVBNQYYBROG72
JWBNQYYBROG
(1',)

(1')81&7,21

AP AG CR550 14-45

You might also like