Oracle Application Server InterConnect Adapter for Siebel 2000 Installation and User's Guide 10g (9.0.4) Part Number B10417-01 |
|
Under the hood, all Siebel applications use Business Components and Business Services, which are the basic building blocks for Siebel. Custom methods (function calls) can be defined using the Siebel Tools, including defining a list of arguments and data types.
This chapter discusses the following topics:
Various components are accessed by other components across the Siebel solution. Most of the major components interact with other components to provide a logical view of information. The following lists most of the licensed components which are available with any Siebel solution:
Siebel has approximately 1650 business components that correspond to various different projects. These, in turn, comprise the Siebel Application and its many modules. Each major component interacts with one or many component(s). Each component that it interacts with can be classified into parent-child relationship. The parent-child relationship among the components is usually a one-to-many relationship. For example:
The Campaign component has a one-to-many relationship with the Account component. The Account component has a one-to-many child relationship with Business Address.
The following is list of components in the Account project.
The following is a list of components in the Account project that are component-specific:
All the components listed in the Account project have an Account ID field and an Account ID value that is used as the primary ID. An Account ID can be used to retrieve related information.
Table 4-1 lists components with which Account interacts.
The following lists important components that have a one-to-many relationship with Account and are component-specific:
The following lists components with which Account has a one-to-many relationship and are component-specific:
The Account ID field value is used for the ID field in Business Address. The Account object needs to be created before the Address record entry is created. Business Address has no child relationships. The only relationship it has to others is that of parent.
Listed below are some important components that have a one-to-many relationship with Business Address and are component-specific:
The following is a list of components in the Contact project that are component-specific:
All the components other than Business Address, Personal Address, Personal Payment Profile, and Contact User have the Contact ID as one of the fields, which can be used to retrieve related information. Contact Relationship maintains the relationship table between Account and Contact. It has both Contact and Account ID fields.
Table 4-2 lists the field mappings for Business Address.
Business Address Components | Mapping |
---|---|
Address Name |
Primary Address Name in Contact. |
City |
Primary City in Contact. |
State |
Primary State in Contact. |
Postal Code |
Primary Postal code in Contact. |
Table 4-3 lists other major components with which Contact interacts.
The following lists some important components that have a one-to-many relationship with Contact that are component-specific:
The following lists some important components that Contact has a one-to-many relationship with and are component-specific:
Internal Product Component has the following ID fields which can be used to query related information:
Table 4-4 lists the field mappings of Internal Product and other components with which it interacts:
The following is a list of components in the Price List project that are component-specific:
Table 4-5 lists major components with which Price List interacts.
An important component that has a one-to-many relationship with Price List is Internal Product. Internal Product is component-specific.
The following lists some important components that Price List may have a one-to-many relationship and are component-specific:
Price list Item contains Product ID and Price List ID fields, which can be used to associate it with a Price list or Product. Table 4-6 lists the components and their interactions:
Price list Item component has no parent or child relationships with other components.
The following is a list of components, other than Quote, in the Quote project that are component-specific:
All the components in the project have a Quote ID field, which can be used to associate them and to query associated values.
Table 4-7 lists quote components with which Quote interacts.
The following lists some important components that have a one-to-many relationship with Quote and are component-specific:
The following lists some important component-specific components with which Quote has a one-to-many relationship:
Quote Item defines a line item in a Quote. For example, a quote item needs to be defined for each product in a quote. It contains many ID fields such as Price List ID, Quote ID, Promotion ID, Product Integration ID, Solution ID, Solution Product ID, and Class Reg Num of which can be used to associate and query. It interacts with the following components:
The following lists component-specific components that have a one-to-many relationship with Quote item:
Quote Item component does not have child relationships with other components.
The following is a list of component-specific components in the Opportunity project other than Opportunity:
The Opportunity ID field is in all Opportunity project Components other than Opportunity Orders and TAS Opportunity Competitor.
In case of Opportunity Orders, the common field is Parent Opportunity ID field that is common.
TAS Account Opportunity has Account ID, Organization ID, and Position ID, which exists in Opportunity. These can be used to obtain any cross-reference data that is needed.
Table 4-8 lists other components with which TAS Account Opportunity interacts.
The following lists some important component-specific components that have a one-to-many relationship with Opportunity:
The following lists some important component-specific components that Opportunity maintains a one-to-many relationship:
Opportunity Orders has the following ID fields that can be used to reference, query, and associated values:
Table 4-9 lists other components with which Opportunity Orders interacts.
Opportunity Orders does not have parent or child relationships with other components.
Opportunity product has the following components through which all the data related to the product and data associated with other components can be retrieved:
Table 4-10 lists other components with which Opportunity Product interacts.
The following lists some component-specific components that have a one-to-many relationship with Opportunity Product:
The following lists some important component-specific components that Opportunity Product maintains a one-to-many relationship:
The Orders component is an important component in Orders project. The other component-specific components in the Orders other than Order Entry include:
All the project components have Order ID, Order Header ID, or Order Number through which other components can co-relate and relate data.
Table 4-11 lists other components with which Orders interacts.
The following lists some important component-specific components that have a one-to-many relationship with Order Entry Orders:
Table 4-12 lists some important components with which Order Entry Orders maintains a one-to-many relationship.
The Order Entry Line Item component describes a line item in an Order. It has various Ids, such as Order Header ID, Order Acct ID, Contact ID, Asset ID, Covered Product ID, Volume Discount ID, and Price List ID through which other components can be accessed and obtain and update related data.
Table 4-13 lists other components with which Order Entry Line Items interacts.
The following lists some important component-specific components that have a one-to-many relationship with Order Entry Line Items:
The following lists some important component-specific components that have a one-to-many relationship with Order Entry Line Items:
The following lists component-specific components in the RMA project other than RMA:
All the components in the project have RMA ID, which can be used to query and associate related data.
Table 4-14 lists other components with which RMA interacts.
The Service Request component has a one-to-many relationship with RMA.
The following lists some important components that RMA maintains a one-to-many relationship:
The following lists component-specific components in the Service project other than Service Request:
All components have SR ID or SREP SR ID or SR Number which can be used to query and insert associated information.
Table 4-15 lists other components with which RMA interacts.
The following lists some important component-specific components that have a one-to-many relationship with Service Request:
The following lists some important component-specific components that Service Request maintains a one-to-many relationship:
A Multi-Valued Field (MVF) is a field that is declared in a primary component but is also available in other Components. The concept is similar to a foreign key in database tables. In the case of Siebel, if you need to update a multi-value field in any component, you need to get the primary component in order to update that value. The Siebel Adapter exposes the Multi Valued Field only in the primary component and not in any other components. This makes the update easier and eases the complexity of updating the MVF Values.
For example, the Account component has the multi valued field Street Address
whose primary component is Business Address. The following sample code adds a new address to the Hong Kong Flower Shop account record.
In Siebel this is how you update multi valued fields. The following example is displayed in Siebel VB script:
Dim AccntBO as BusObject Dim AccntBC as BusComp Dim AddrBC as BusComp Set AccntBO = theApplication.GetBusObject("Account") Set AccntBC = AccntBO.GetBusComp("Account") With AccntBC.SetViewMode SalesRepView .ActivateField "Name" .ClearToQuery .SetSearchSpec "Name", "Hong Kong Flower Shop" .ExecuteQuerySet AddrBC = .GetMVGBusComp("Street Address") End With With AddrBC.NewRecord NewAfter .SetFieldValue "Street Address", "100 main st." .SetFieldValue "City", "Denver" .WriteRecordEnd With Set AccntBO = Nothing Set AccntBC = Nothing Set AddrBC = Nothing
Using Siebel, Street Address
only appears as a field in Business Address component. You may need to call insert
or update
for the Business Address component.
Dim accRecord(0) As Business_Objects_AccountRecord Dim queryAccRec() As Business_Objects_AccountRecord Dim accBusAddrRec(0) As Business_Objects_Business_AddressRecord Dim queryAccBusAdr() As Business_Objects_Business_AddressRecord Dim toDay As Variant Dim expAcct As ExptdAcctVal Dim expBusAddr As ExptdBusAddrsVal Dim queryExpr As String Set accRecord(0) = New Business_Objects_AccountRecord Set accBusAddrRec(0) = New Business_Objects_Business_AddressRecord'Set the query expression based on fields Account Name 'lets assume the account name is ACBFirst 'in case we know the Account ID we directly use the 'Business Address Component to call update or insert valuequeryExpr = "[Name] = " + Chr$(34) + " Hong Kong Flower Shop" + Chr$(34)'Queries the insert record based on ValueaccountComponent.Query queryExpr, "", queryAccRec'Sets values to the fields of 'Business_AddressRecord in case record needs to be inserted 'else just set the changed value in case of updateaccBusAddrRec(0).theAccount_Id = queryAccRec (0).theId accBusAddrRec(0).theStreet_Address = "100 main st." accBusAddrRec(0).theCity = " Denver "' Inserts a Business Address Record.acctBusAddress.Insert accBusAddrRec accRecord(0) = nothing accBusAddrRec(0) = nothing queryAccRec() = nothing queryAccBusAdr() = nothing
Q) For an account, what is the exact procedure to fetch an account, and then fetch all of the addresses for that account or some other associated child component?
A) Query on Account Component based on the interested Account details. Account and Business Address component are related through ID field. Query on Business Address based on the Account ID value. This should return data about all Business Addresses associated with that Account.
Q) Does a relation exist between an account and its Orders?
A) Account ID is one of the component fields in Order Entry Orders. You can retrieve all Order details with regard to the Account using the Account ID Field.
Q) Does a relation exist between Orders and Prices?
A) The relationship is through the ID field, Order entry has Price List ID field. Order Entry - Orders also has other IDs such as Organization ID, Quote ID, Promotion ID, and Ship To Contact ID. through which you can find other associated details by querying on particular IDs or group of IDs on Order Entry Orders component.
Q) How do I create an account with multiple addresses?
A) Business Address is a child component to Account. Relationship between Account and Business Address is of type, one-to-many. Business Address and Account are related through ID field. Multiple Business Address records with the same Account ID value will be associated with a single Account.
Q) How do I create an order with multiple Line items?
A) Order Entry Line Item component is a child component to Order Entry Orders. Relationship between Order Entry Orders and Order Entry Line Item is of type, one-to-many. Order Entry Line Item and Order Entry Orders are related through Order Header ID field, which is the Order ID. Multiple Order Entry Line Item records with the same Order Header ID value will be associated with a single Order Entry Order. There are also IDs common, such as Order Acct ID, and Contact ID. that can be used to get associated data.
|
![]() Copyright © 2002, 2003 Oracle Corporation. All Rights Reserved. |
|