17
Data Modeling in WebClient UI CRM Business Object Concept( BOL) GENIL Concept BOL/GENIL Development Q & A Agenda

Bol and Genil

Embed Size (px)

Citation preview

Page 1: Bol and Genil

Data Modeling in WebClient UI

CRM Business Object Concept( BOL)

GENIL Concept

BOL/GENIL Development

Q & A

Agenda

Page 2: Bol and Genil

Data Modeling in WebClient UI

CRM Business Object Concept(BOL)

GENIL Concept

BOL/GENIL Development

Q & A

Agenda

Page 3: Bol and Genil

CRM : Functional Point of View

SAP AG 2004

Customer Centric E-Business with mySAP CRM

The Solution is CompleteRich Functionality and Supporting Capabilities

Page 4: Bol and Genil

CRM :Technical Point of View

CRM Business ObjectsBP

Lead

Campaign Sales

Order

Opportunity

Activity

Claims

Fund

Contract

Sales Marketing Service Interaction Center

Web Channel

Hitech Industry(Customizing Set3)

Pharmaceutical( Customizing Set2)

FMCG ( Customizing Set3 )

Business Role1 Business Role2 Business Role3

PCM

Page 5: Bol and Genil

Where do they fit in the architecture ?

Controller Class

View

Model Class BOL Layer

BO2

BO8

BO4

BO3BO1

BO6

BO5

BO10BO7

BO9

GENIL

DBAPIS

Page 6: Bol and Genil

Data Modeling in UI Framework

Controller ObjectCL_****_IMPL

Context ObjectCL_****_CTXT

Context Node Object

CL_******CN

BP1CL_CRM_BOL_ENTITY

CollectionCL_BSP_WD_COLLECTION_WRAPPER

BP2CL_CRM_BOL_ENTITY

BP3CL_CRM_BOL_ENTITY

BP4CL_CRM_BOL_ENTITY

View ( *****. htm )

Page 7: Bol and Genil

Web Client UI Data Flow

UI Framework ( Basically THTMLB Tags )

WebClient UI

BOL Framework

API Layer

Table1 Table2 Table4Table3

dData Validation

Business Objects

Data Segregated for Each Table

Page 8: Bol and Genil

Data Modeling in WebClient UI

CRM Business Object Concept(BOL)

GENIL Concept

BOL/GENIL Development

Q & A

Agenda

Page 9: Bol and Genil

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

DescriptionDate

…………

Page 10: Bol and Genil

Conceptualize Business Object in ABAP

Business Object Type ABAP Class

Business Object

ABAP Object

Sample Code: Data : lr_entity TYPE REF TO cl_business_object1. create object lr_entity . lr_entity->set_property1( ). lr_entity->set_ppropery2().

Page 11: Bol and Genil

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.

CL_CRM_BOL_ENTITY

Business Object1 ( Structure1 )

Business Object2 ( Structure2 )

Business Object5 ( Structure5 )

Business Object3 ( Structure3 )

Business Object4 ( Structure4 )

Page 12: Bol and Genil

Business Object Relations

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

A

D

C

B

Relation 1 ( 1:1 )

Relation 2 ( 1 : n )

Relation 3 ( 1: {0…n})

Page 13: Bol and Genil

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.

Page 14: Bol and Genil

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}

Page 15: Bol and Genil

BOL & MODEL Browser

BOL BrowserTcode : genil_bol_browser

Model BrowserTcode: genil_model_browser

Page 16: Bol and Genil

Data Modeling in WebClient UI

CRM Business Object Concept(BOL)

GENIL Concept

BOL/GENIL Development

Q & A

Agenda

Page 17: Bol and Genil

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.

DB APIs

Call IBOM Mapper

Classes( CGPL )

Call One Order

Function Modules

GenIL Class

Business Object( cl_crm_bol_entity)

Directly do the DB

coding in GenIL