Business Component(BC)和Business Object(BO)
Siebel應(yīng)用架構(gòu)的一個(gè)成功的地方就是在應(yīng)用里引入了BC,BO的概念,從而使得幾千張關(guān)系數(shù)據(jù)表能夠按照業(yè)務(wù)的含義組織成業(yè)務(wù)對(duì)象,對(duì)于業(yè)務(wù)人員而言具有了業(yè)務(wù)上的含義,而不僅僅是從技術(shù)人員的觀點(diǎn)來對(duì)待數(shù)據(jù)(就是關(guān)系表而已)。
Link:BC之間的關(guān)系
對(duì)于關(guān)系表之間的關(guān)系,如主外鍵關(guān)系,從業(yè)務(wù)的BO觀點(diǎn)來看則是BC之間的關(guān)系(請(qǐng)注意,不是嚴(yán)格的一對(duì)一,并非是一個(gè)關(guān)系表的外鍵一定會(huì)組成BC間的關(guān)系)。因?yàn)橐粋€(gè)BO總是由一個(gè)主要的BC以及和它相關(guān)的一些BC組成,而主要的BC總是以一定的關(guān)系和附屬的BC關(guān)聯(lián),這種關(guān)系就稱之為Link,如下圖:
我們已經(jīng)交代過一個(gè)View展現(xiàn)的就是一個(gè)BO,而BO是由一個(gè)Master BC和相關(guān)的一些子BC組成,如果不存在Link,則子BC的所有數(shù)據(jù)都會(huì)展現(xiàn)出來,而建立了Link之后,就只有和Master BC選定的記錄相關(guān)聯(lián)的數(shù)據(jù)才會(huì)展現(xiàn)出來。這些關(guān)系可能是:
1:1關(guān)系:一對(duì)一的關(guān)系很多是用在Extension表上,Extension表的后綴名通常為_X(Extension表是Siebel里常見的一種表,一般Siebel業(yè)務(wù)的基礎(chǔ)數(shù)據(jù)存儲(chǔ)在Base表中,然后把一些擴(kuò)展的數(shù)據(jù)和一些可以客戶化的字段(attribute字段)放在Extension表中,從而給不同行業(yè),不同場景提供了一個(gè)擴(kuò)充性很強(qiáng)的數(shù)據(jù)模型。)
1:M關(guān)系:一對(duì)多的BC關(guān)系一般用于Master-Detail的業(yè)務(wù)場景,比如一個(gè)Account以及該Account已經(jīng)購買的產(chǎn)品就是一個(gè)Master-Detail關(guān)系。這種關(guān)系類似于關(guān)系表的主鍵外鍵關(guān)系,這種關(guān)系在Extension表上也存在,通常后綴名稱是_XM。
M:M關(guān)系:多對(duì)多的關(guān)系是通過一個(gè)叫做交集表(Intersection Table)體現(xiàn)出來的,兩個(gè)BC之間沒有主外鍵關(guān)系,但是每個(gè)BC和該交集表有主外鍵關(guān)系,如下圖:
多對(duì)多的關(guān)系通常表達(dá)的是值對(duì)(value pair)的關(guān)系,比如公司-行業(yè)的值對(duì)組合。
Party Business Component
Party BC大概是Siebel里最基礎(chǔ)的BC了,Party BC包含了個(gè)人相關(guān)實(shí)體,組織相關(guān)的實(shí)體,以及訪問控制組等為了一定的目的建立起來的一些組織。如下圖:
Party BC基表是S_Party,但是和一般的BC不一樣的是,作為基表的S_Party本身存儲(chǔ)很少的數(shù)據(jù),主要是Party的名稱,Party的類型(是contact,employee還是account等),而更多Party相關(guān)的數(shù)據(jù)都存儲(chǔ)在Extension表里,如S_CONTACT,S_USER等(比較特殊的是這些Extension表的結(jié)尾并不是使用*_X來命名);此外,這些extension表的extension表(如S_CONTACT_X)本身也算是S_PARTY的Extension表,這個(gè)也是Party BC的一些特殊的地方。下圖是一個(gè)很好的表達(dá)了Party的訪問控制組的圖:
rowid為1的行的party類型是User List,所以這一行數(shù)據(jù)相關(guān)的信息應(yīng)該存儲(chǔ)在S_USERLIST extension表里;而rowid為2的行的類型是Access Group,所以該行數(shù)據(jù)的額外信息應(yīng)該是在表S_PARTY_GROUP extension表里等等。這個(gè)就是一個(gè)Siebel里的一個(gè)擴(kuò)展性非常強(qiáng)的數(shù)據(jù)模型的一個(gè)例子。
轉(zhuǎn)載于:https://www.cnblogs.com/tdskee/p/6510441.html
總結(jié)
以上是生活随笔為你收集整理的Business Component(BC)和Business Object(BO)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。