30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

Embed Size (px)

Citation preview

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    1/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.1

    Time: Lecture: 30- 35 minutes; lab: 60 75 minutes

    Intent: To teach students how to create new business components and

    add them to existing business objects.

    Flow: The module by posing a business problem, and then presenting the

    solution of creating a business component using a 1:M extension table.

    The structure of 1:M extension tables is discussed followed by adiscussion of creating a new business component, and adding it to a

    business object.

    Key Terms:

    Standard 1:M extensions table (*_XM)

    TYPE column

    TYPE field

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    2/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.2

    Each objective and why you need to know should be stated aloud.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    3/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.3

    This slide is an overview and expands on the why you need to know

    statement on slide 2. It also reviews some details of how businesscomponents are implemented and how they relate to a parent business

    object.

    Reference Configuring Siebel Business Applications: Configuring

    Business Components

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    4/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.4

    Relate the bullet points to the example on the bottom of the slide. Point

    out that both child business components will be based on the samestandard 1:M extension table, in this case, S_CONTACT_XM.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    5/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.5

    Relate the bullet points to the example on the bottom of the slide. Point

    out that both child business components will be based on the samestandard 1:M extension table, in this case, S_CONTACT_XM.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    6/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.6

    Show students how to find the right extension table: Find the base table

    for the parent business component, then verify that an _XM table existsfor it. Show the various types of ATTRIB columns available.

    No fully-defined business component in the standard Siebel applications

    uses the _XM tables as its base. Two are defined (Countries Deployedand Languages Deployed), but they are not complete. They have no fields

    based on the ATTRIB columns. So if you want to do a more detaileddemonstration in the classroom, you may have to do a little bit of work in

    advance.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    7/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.7

    Point out that, while TYPE and PAR_ROW_ID are the base for required

    fields, they should not be displayed to the user, but set by the system.TYPE should be pre-defaulted. PAR_ROW_ID will be set by the link to

    the parent business object.

    Ensuring that

    NAME Is

    Unique

    For BCs with data that cannot be stored in a Varchar 100

    column, you must still provide a unique value for NAME

    NAME has physical type varchar 100

    If two rows in table share same TYPE &

    PAR_ROW_ID, then NAME must be unique

    Workaround is to store value of ROW_ID in NAME

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    8/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.8

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    9/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.9

    Demo:

    Walk through the process of creating a new business component.

    Dialog box: New Business Component

    Use the example of creating the XYZ College business component using

    the Business Component wizard. Show the first screen of the wizard(business component = Contact, name = XYZ College, table =S_CONTACT_XM). Dont press Next yet.

    Dialog box: Single Value Fields

    Click Next and demonstrate the Single Value Fields screen of the wizard.

    Use ATTRIB_01 for the location of the college, ATTRIB_02 for notes,ATTRIB_03 for team name, and ATTRIB_08 as a flag for a four-year

    college.

    Dont forget to set Name, Type, and Parent Id.

    Click Finish. The business component appears in the OBLE. SelectSingle Value Field in the OE to show that the SVFs have been created.

    Change the type of the four-year flag to Boolean. Set the predefault forType to College.

    Note: the 10 box diagram is included in the student guide for studentsquick reference: a business component references tables, which are

    composed of columns. A business component is composed of fields,which also reference those columns. When using this wizard, students

    interact with all these objects at some level.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    10/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.10

    This is a list of the various things the business component wizard does

    after you click the Finish button.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    11/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.11

    The Predefault Value property is discussed in more detail in the previous

    module, but here we see it put to use. Also, note that you can ensure theuser key is populated by specifying a predefault value for each and every

    field in that user key.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    12/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.12

    Search Specification was discussed in the previous module, here we see a

    specific example of this propertys usage.

    In this example, when the ABC Restaurant BC is used, only records thathave a Type that = Restaurant will be retrieved.

    Search S pecification is particularly useful when you have an extension

    table that is referenced by more than one BC. Each of those BCs mayhave its own data display requirements. However, since several BCs usethe same extension table, all data in that extension table will most likely

    not be specific to just one BC. Therefore, you can use SearchSpecification to limit the records retrieved based on the BC that is

    retrieving them. For example, lets say that in addition to ABC Restaurant

    BC, you also have ABC Amusement Park BC. Both BCs useS_CONTACT_XM to store their specific data. The Search Specification

    for ABC Amusement Park could be set to [Type]=Amusement, andhence retrieve only the records it needs.

    Search specifications can affect performance negatively, particularlywhen you include:

    - Fields based on joins

    - The operators NOT or OR; they can force the database to execute a fulltable scan

    - Calculated fields

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    13/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.13

    In an actual scenario, at this point the second business component must

    be created.

    Point out that the same ATTRIB columns can be used in differentextension business components, because the TYPE search spec

    guarantees that a given row will only be used for one businesscomponent. Therefore, there will be no confusion. For example, if you

    are defining Colleges and Restaurants as extensions of Contact, youcan use ATTRIB_03 ofS_CONTACT_XM to store both the street

    addresses of restaurants and the names of college teams.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    14/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.14

    This is a structuring slide for . Do not

    teach the steps or concepts here because the following slides cover themin detail. Provide a high level description of what will be discussed.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    15/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.15

    This slide is a positioning slide for the next two slides.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    16/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.16

    Assuming you created XYZ College, create a link with these values:

    Project = Contact, Parent business component = Contact, Child businesscomponent = XYZ College, Source Field = Id, Destination Field = Parent

    Id.

    Recall that the Source Field maps to the Primary Key of the parent, whichis always the ROW_ID column in the parents base table.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    17/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.17

    Add XYZ College as a Business Object Component to Contact. Do not

    forget to set the Link property.

    New Parent

    BCs and

    Business

    Objects

    If you create aparentbusiness component you must also

    create an entirely new business object.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    18/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.18

    This slide is a review. Users will not see the business component until it

    has been displayed on an applet, the applet has been displayed on a view,and the view has been administered in the application.

    If you have done the other demos up to this point, and you have time,

    create a simple applet and view to display XYZ College.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    19/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.19

    The scenario just covered in this training, 1:M with an existing table, is

    just one possible scenario for the need to create a new businesscomponent. It may also be necessary to create a standalone business

    component, where this new BC has its own, new base table.

    This slide highlights the steps required for such a scenario.

    You can still use the BC wizard to perform some of these tasks.However, youll have to create a new table prior to running the wizard.

    The first two steps are addressed in the Extending the Siebel Database

    module ofSiebel Essentials (a few modules later in this configuation

    section).

    Creating a

    Table

    The new steps of creating a table and adding columns is

    covered in a later module.

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    20/21

    Siebel 8.0 Essentials

    Business Layer Configuration: New Business Components and Fields 30.20

    Review Question: How can many business components use the same

    _XM table?

    Answer: By giving each business component a unique code, which isstored in the Type field (a required field in all _XM tables) and set as a

    predefault value in the business component, multiple businesscomponents can use the same _XM table.

    Review Question: In a 1:M link, what are the Source Id and DestinationId properties?

    Answer: They provide data that implements the 1:M relationship

    between the parent and child business components.

    The Source Id property contains the name of a field in the

    parentbusiness component that contains a unique identifier(key)typically, Id.

    The Destination Id property contains the name of a field in thechildbusiness component that contains a value matching the

    value of the field in the parent business component (identified in

    theS

    ource Id property).

  • 8/6/2019 30ESS_BusinessLayerConfigurationNewBusinessComponentsAndFields

    21/21