Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 17

Agenda

Data Modeling in WebClient UI

CRM Business Object Concept( BOL)

GENIL Concept

BOL/GENIL Development

Q&A
Agenda
Data Modeling in WebClient UI

CRM Business Object Concept(BOL)

GENIL Concept

BOL/GENIL Development

Q&A
CRM : Functional Point of View

Customer Centric E-Business with mySAP CRM

The Solution is Complete


Rich Functionality and Supporting Capabilities

 SAP AG 2004
CRM :Technical Point of View
FMCG ( Customizing Set3 )

Pharmaceutical( Customizing Set2)

Hitech Industry(Customizing Set3)

Interaction Web
Sales Marketing Service PCM
Center Channel

CRM Business Objects Campaign Opportunity Claims


BP Lead
Sales Activity Contract
Fund
Order

Business Role1 Business Role2 Business Role3


Where do they fit in the architecture ?

Controller
BO2 BO5
Class

BO1 BO3 G DB
Model E A
Class BOL Layer N P
BO4 BO6 I I
L S
BO7 BO10
View
BO8 BO9
Data Modeling in UI Framework
Controller Object
CL_****_IMPL

Context Object BP1


CL_CRM_BOL_ENTITY
CL_****_CTXT
BP2
Context Node CL_CRM_BOL_ENTITY
Collection
Object CL_BSP_WD_COLLECTION_WRAPPER BP3
CL_******CN CL_CRM_BOL_ENTITY

BP4
CL_CRM_BOL_ENTITY

View ( *****. htm )


Web Client UI Data Flow

WebClient UI

UI Framework ( Basically THTMLB Tags ) dData Validation

BOL Framework Business


Objects

API Layer Data Segregated for


Each Table

Table1 Table2 Table3 Table4


Agenda
Data Modeling in WebClient UI

CRM Business Object Concept(BOL)

GENIL Concept

BOL/GENIL Development

Q&A
What's a Business Object ?
Symbolic Representation of Data in grouped
format which has a significance from Business
point of View.

It makes Data display and Data manipulation


Easier.

It must be identified by a unique key.

It will have other attributes describing its nature

Example of Business Object:

ID(key)
Name
Description
Date
…………
Conceptualize Business Object in ABAP

Business
ABAP Class
Object Type

Business
ABAP
Object
Object

Sample Code:
Data : lr_entity TYPE REF TO cl_business_object1.

create object lr_entity .


lr_entity->set_property1( ).
lr_entity->set_ppropery2().
ISSUE : Too many classes if we have one class for every business object .

SOLUTION : Will use a single class which will use different structure for different
business objects.
Business Object1
( Structure1 )

Business Object2
( Structure2 )
CL_CRM_BOL_ENTITY
Business Object3
( Structure3 )

Business Object4
( Structure4 )

Business Object5
( Structure5 )
Business Object Relations

•Business Objects are linked using the concept called ‘RELATION’.

Relation 1 ( 1:1 )
A C

Relation 2 ( 1 : n )
Relation 3 ( 1: {0…n})

B D
CRM Terminology for Business Objects
Root Object: This is the top most object in any BOL hierarchy. There can be
more than one root objects in a BOL component.

Dependent Object: It’s a kind of object which we want to give meaning only in
the context of root object.Not independently.

Access Object: Through this object I can access the child object data without
traversing from top i.e. root object.

Search Object: This object defines the format/parameters with which we want
to perform the search.

Search Result Object: This object defines the format in which we want to
fetch the objects.
Advance Search Object: This object is very similar to search object, only
difference is the search object is formed dynamically depending on the field
selected by user on UI.
Relations and Cardinality

Relation Types:
Association: Root objects can be linked with each other by association.

Aggregation: Parent child kind of relation where there is not strong bonding.

Composition: Parent child kind of relation where bonding is very strong.

Cardinality:
•1:1
•1:{1..n}
•1:{0..n}
BOL & MODEL Browser

BOL Browser Model Browser


Tcode : genil_bol_browser Tcode: genil_model_browser
Agenda
Data Modeling in WebClient UI

CRM Business Object Concept(BOL)

GENIL Concept

BOL/GENIL Development

Q&A
GenIL : Generic Interaction Layer

• It’s a class which the facilitates the data transfer between BOL and Database tables by calling APIs.

• For a group of Business Objects ( BOL Component ) we define a GenIL class.

• It may call Framework methods ( CGPL , ONEORDER ) instead of calling the APIs.

• It gets the data out of Business entity and formats them in the required format for API or Next Layer of Framework.

Business
Object( cl_crm_bol_entity)

GenIL Class

Directly do Call IBOM Call One


the DB Mapper Order
DB APIs
coding in Classes( C Function
GenIL GPL ) Modules

You might also like