Contract在B2B model中顯得極為重要,從產品的顯示,價格選擇,到最后的支付等等,都跟Contract相關,Commerce中有關Contract的概念有 Business Account,Contract,Terms and Conditions,Participants等。
          Business Account代表著store和customer organization的關系,每個buyer Organization擁有一個Business account,在account下可定義多個Contract,account中的內容主要包括:
          1. Organization name,contact person name
          2. 該Organization所屬store的department和account representative,
          3. purchase orders information
          4. Invoice related info.
          5. shipping method available
          6. payment terms.
          7. 該Organization的定制信息,可顯示在store的頁面上。

          Contract 定義了organization在特定的時間段內以特定的價格購買特定的產品。當創建store的時候,系統就已經產生了個default conract,這個Contract不屬于Business account,它適用于guest,unentitled和anon等沒有customer Contract的用戶,當用戶擁有多個Contract的時候,系統會比較,選出一個最適合用戶的合同。 Contract主要包括:
          1. Participants:Contract的受眾,可以是buyer/seller organization,以及contacts。
          2. Terms and conditions:定義了Contract的實現細節,像產品目錄選擇,產品的價格,shipping,billing,order approval等。
          相關文章:
          TERMCOND database table column mapping
          Case Study: WebSphere Commerce contract modeling

          Contract Data Model圖:

          整 個data model的核心是contract,account和trading三張表,contract和account和 trading是唯一性關系,contract和account是trading的一種,這個設計跟member的設計一樣,在member data model中,orgentity和user跟member也是唯一性關系。理解了這一點,整張圖看起來就比較好理解了。
           Trading表
          trading是所有的trading agreement的集合,包括account,contract,還包括RFQ,Auction等等,所有的這些aggreement type定義在TRDTYPE表中。
          trdattach,attachment,termcond, tcsubtype,participant,policytc表: 這些表都是跟trading aggreement相關的,所以都跟trading表有關聯。

          Account表
          跟 account關聯的表是member和store,member表示該account的owner,store表示該account是屬于哪個 store。前面曾經提到過每個Organization都可建立一個Business account,但要注意該Organization并不是acccount的owner,而只是一個participant,所有Business account的owner其實都是所屬store的owner。
          以下是一個為ecom china創建的Business account的片段,可以看到ecom china只是一個account holder,而真正的owner是ecom seller organizationecom,該owner也就是store的owner。

          <Participant role = "AccountHolder" 
                      createTime = "2009-06-12T09:17:21" updateTime = "2009-06-12T09:17:21">
                  <ParticipantMember>
                      <OrganizationRef distinguishName = "o=ecom china,o=ecom buyer organization,o=basics buyer organization,o=root organization"/>
                  </ParticipantMember>
              </Participant>
          <AccountUniqueKey name = "ecom China-10601">
                  <AccountOwner>
                      <OrganizationRef distinguishName = "ou=ecom seller organizationecom,o=ecom seller organization,o=basics seller organization,o=root organization"/>
                  </AccountOwner>
              </AccountUniqueKey>

          contract表
          與contract相關的表有cntrstore,storecntr,catcntr,store.
          在 創建一個store的時候,系統會創建一個usgae為‘reseller’的contract,這個contract是跟store本身相關的。 store表中CRTDBYCNTR_ID這個字段就指的是這個contract。該contract不是base contract也不是default contract。

          cntrstore表中存放的是用來創建store的xml信息和創建store的contract的id。

          storecntr存放的是在該store中成功部署的contracts。
          catcntr存放contract允許的catalog。
          posted on 2009-09-01 14:29 Aaron.Chu 閱讀(192) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2009年9月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          留言簿(5)

          隨筆檔案(57)

          相冊

          友情鏈接

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 平湖市| 彩票| 偏关县| 墨玉县| 饶河县| 钟山县| 满洲里市| 长治县| 香河县| 双柏县| 浦北县| 河源市| 庆云县| 大城县| 南阳市| 清丰县| 永宁县| 上思县| 历史| 岚皋县| 宜黄县| 夹江县| 吴江市| 合作市| 霍林郭勒市| 望奎县| 郧西县| 通江县| 长宁县| 江川县| 宁蒗| 堆龙德庆县| 韶山市| 聂荣县| 毕节市| 周宁县| 松江区| 安泽县| 雷山县| 清丰县| 时尚|