查看單個文章
舊 2004-06-21, 02:00 PM   #4 (permalink)
mic64
註冊會員
 
mic64 的頭像
榮譽勳章
UID - 582
在線等級: 級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時級別:16 | 在線時長:330小時 | 升級還需:27小時
註冊日期: 2002-12-06
VIP期限: 2007-04
住址: MIB總部
文章: 412
精華: 0
現金: 499 金幣
資產: 499 金幣
預設

B2B訂單處理管線2


當兩家企業成為彼此的電子夥伴,他們可以利用B2B的訂單處理管線(OPP)來建立採購訂單,並將之傳送給彼此。電子夥伴利用兩種形式的管線來建立與傳送採購訂單:

組織採購計劃管線 (Corporate Purchasing Plan)

這種形式的管線會執行OPP元件來計算採購訂單的總額。而影響總額的因素包括有折扣、課稅、以及運輸成本。這種管線與B2C電子商務網站所使用的「計劃管線」相似。
組織採購確定管線 (Corporate Purchasing Submit)

這種形式的管線會對採購訂單的申請要求進行驗證、傳輸、及寫入資料庫等處理。這種管線與B2C的電子商務網站所使用的「採購管線」很像。3組織採購計劃管線


在B2C電子商務裡,訂單的處理是發生在企業網站本身。因為B2C的交易並不涉及產生採購訂單並將其送交廠商的動作,所以使用的是計劃管線。

下面介紹了「組織採購計劃管線」的十四個階段。




在B2B電子商務中,一家企業產生採購訂單並將之傳送給另一家企業。在這種情況下,「組織採購計劃管線」與「組織採購確定管線」將會先後運作來執行如產生採購訂單、確認採購訂單等工作。因此,在B2B的交易裡「組織採購計劃管線」是用來計算採購訂單的總和。

在計算採購訂單的總和時,「組織採購計劃管線」會將所有促銷折扣、課稅、運費與處理費用等一併計算在內。

組織採購計劃管線與計劃管線的比較4


「組織採購計劃管線」中共有十四個階段。這些階段相當於B2C「計劃管線」的十四個階段。「組織採購計劃管線」是利用CorpPurchasingPlan.pct樣板來建立的。

底下的列表是組織採購計劃管線中各階段與計劃管線中各對應階段所做的比較:

組織採購計劃管線中的階段 在B2C計劃管線的對應階段
Requisition Item Info Product Info
Supplier Information5 Merchant Information
Buyer Information Shopper Information
Requisition Initialization Order Initialization
Requisition Check Order Check6
Requisition Item Price
Requisition Adjust Price Order Item Adjust Price
Requisition Subtotal Adjust Price
Shipping7 Shipping
Handling Handling
Tax Tax
Requisition Total Order Total8
Inventory Inventory

組織採購確定管線


當「組織採購計劃管線」在採購訂單的表單上成功地執行時,採購訂單已經完成準備可以傳送給e-Partner。「組織採購確定管線」會確認採購訂單的申請要求,建立採購訂單,然後將之傳送給e-Partner。

當管線元件將資料寫入資料庫時,是以「組織採購確定管線」為交易管線。交易管線是由那些支援Microsoft Transaction Server(MTS)交易的元件所組成。

用來建立組織採購確定管線的樣版是CorpPurchasingSubmit.pct。這個管線樣板由兩個階段所組成:採購訂單驗證階段(Purchase Order Validate stage)與採購訂單確定階段(Purchase Order Submit stage)。

採購訂單驗證階段9


「採購訂單驗證階段」會驗證採購訂單是否正確。


--------------------------------------------------------------------------------
注意
Site Server 3.0 Commerce Edition並未包含本階段的元件。然而,你可以加入自訂的元件,或協力廠商所開發的元件,來驗證採購訂單。


--------------------------------------------------------------------------------

採購訂單確定階段


在進行採購訂單確定階段之前,訂單已經完成並經過驗證。採購訂單確定階段負責將已完成且經過驗證的訂單傳送給e-Partner。

下面的表格詳細介紹了這個階段中使用的相關元件

元件 說明10
ExecuteProcess 在伺服器端利用特定參數來執行應用程式。
MakePO 根據樣板檔案產生採購訂單將OrderForm或Dictionary從PipeToPipe Transfer目前正在執行中的管線轉移到另一個管線。
PotoFile 將採購訂單(通常是MakePO的結果) 傳送到檔案中。
SaveReceipt11 將OrderForm的內容寫入收據儲存區。
SendSMTP 送出電子郵件到特定位址。
SQLItem 為採購訂單中的每一項物品執行特定的SQL指令。利用訂單中的欄位及物品當作參數。
SQLItemADO 為採購訂單中的每一項物品執行特定的SQL指令。元件會利用訂單中的欄位及物品當作參數。這個元件與SQLItem元件一樣,除了它使用的是Microsoft ActiveX Data Objects(ADO),同時元件也可以被含括在交易管線中。12
SQLOrder 為每一份採購訂單執行一次特定的SQL指令,使用訂單中指定的欄位當作參數。
SQLOrderADO 為每一份採購訂單執行一次特定的SQL指令,使用訂單中給定的欄位當作參數。這個元件與SQLOrder元 件一樣,除了它使用的是ADO,同時可以被含括在交易管線中。

接下來,你將學習如何使用「採購訂單確定階段」裡的MakePO與PotoFile元件。

產生採購訂單


利用MakePO元件你可以產生採購訂單(PO)。該元件運用採購訂單,配合訂單表單上的資訊,來建立採購訂單。MakePO元件擁有下列的設定:13
設定 說明
Template File Name 指定製作採購訂單的樣板的檔案名稱。樣板通常是副檔名為 .txt的Microsoft Visual Basic Scripting(VBS) 檔案。
Script language for the template 指定樣板中使用的程式語言。預設值是VBScript。
Output Property Name14 指定元件將PO寫入訂單表單上的欄位的名稱。
Child Object Name 指定被傳送到管線Transport Dictionary裡所參照的物件。只有當Use Child Object選項被設定時才可使用這項元件。
Use Child Object 指定元件讀取採購訂單資訊的來源。當你使用CIP時,選定這項選項,這樣元件便可以從Child Object Name欄位所指定的企業資料物件中讀取這項資訊。

將採購訂單寫入檔案


利用PotoFile元件你可以將採購訂單寫入到檔案。PotoFile元件擁有下列的設定:15
設定 說明
Source Field Name 指定元件在採購訂單資料裡所讀取的訂單欄位名稱。
File Name 指定寫入採購訂單資料的檔案路徑。
File names in field16 指定訂單上的欄位值,而其值是元件欲把採購訂單寫入的檔案名稱。
Temporary file , Name saved in field 指定元件應該將採購訂單儲存在另一個暫存檔案,然後將檔案名填入這個欄位。

Commerce Interchange Pipeline介紹


在前一節裡你學到了訂單處理管線。它們是用來計算採購訂單的總額、確認訂單的申請要求,並建立採購訂單。在B2B電子商務中,產生的採購訂單必須傳送給合作廠商。Site Server 3.0 Commerce Edition提供一組Commerce Interchange Pipeline,讓你可以用來和e-Partner交換資訊。在這個部分,你將學習Commerce Interchange Pipeline的相關事務,包括它的架構,及如何使用它在e-Partner間交換文件。

Commerce Interchange Pipeline(CIP)概論


Commerce Interchange Pipeline讓各種規模的企業可以以電子化的方式交換資訊。電子夥伴利用這種管線安全地傳送採購訂單、收據、送貨通知、發票或帳單紀錄等等。傳送的過程可以發生在單一電腦上,或是透過LAN、WAN、附加價值網路(VAN),或與網際網路連結的電腦中。17
下圖描述了Commerce Interchange Pipeline的作業流程。




CIP的優點


Commerce Interchange Pipeline是電子交易中的建議選擇,原因有以下幾點:

CIP可以透過設定來傳送或接收企業物件。

CIP支援多種B2B交易與通信情境,包括組織採購、供應鏈採購,與訂單狀態等。

CIP能夠與現行的傳輸系統如電子郵件、HTTP,或新系統如DCOM、Microsoft Message Queue(MSMQ)等共同運作。18

CIP是獨立於資料格式與資料傳輸模式。因此開發人員及協力廠商皆可以建立連結到個人化環境設定的相容元件。

CIP凌駕OPP的好處


Commerce Interchange Pipeline與訂單處理管線都可以用來傳送採購訂單。然而,CIP擁有某些特性可提供凌駕OPP的優點:

CIP OPP
對應元件可以用來將資料物件轉換成適合傳輸的位元串流。 OPP不支援這項功能。19
SendSMTP、SendHTTP、SendDCOM或協力廠商所開發的元件都可以被用來傳送資料。 只支援SendSMTP
傳送的資訊可以進行加密的動作。 OPP不支援這項功能。

CIP架構與傳運辭典


在B2B的交易中,企業會產生採購訂單並將之傳送給廠商。這時,Commerce Interchange Pipeline被用來傳輸與接收採購訂單。

下面介紹Commerce Interchange Pipeline與20 傳輸辭典 (transport dictionary)的互動。




在採購訂單可以被傳送或接收之前,Commerce Interchange Pipeline必須執行一連串的作業,如加密/解密或數位簽名等等。

因此,儲存在採購訂單中的企業資料物件會被轉換成傳輸辭典。每一個Commerce Interchange Pipeline的元件都會在辭典物件上執行一些工作。

瞭解CIP架構


CIP為Site Server 3.0 Commerce Edition管線架構的實作。每一條管線是一個循序執行處理程序的架構。這個架構是由眾多21 階段 (stage)組成,每一個階段描述了由一個或多個與該階段相關聯元件所執行的工作,而每一個階段都可以完全地融入到你的應用程式中。

每一個CIP的階段是由一個或多個管線元件所組成。元件指的是Component Object Model(COM)的in-process伺服器程式,並在企業資料物件上執行某些工作。例如,CIP的加密階段可能包含EncryptPCKS元件,該元件是設計來為企業資料物件加密。在一個階段中,元件會從前一個階段接收資料物件並於其上執行它該執行的處理程序,然後產生結果以供下一個元件使用。你可以藉著新增、移動或設定管線元件來自訂電子商務應用程式。

傳輸辭典


傳輸辭典為應用程式傳送給CIP的一個辭典物件(dictionary object),是所有CIP活動的目標資料。

應用程式建立傳輸辭典並以參數的模式將之傳送到CIP的Execute方法。當Execute方法被執行,CIP的元件會從傳輸辭典讀取資料到記憶體中,執行資料的運算,然後將結果寫回傳輸辭典。

Commerce Interchange Pipeline的類型22


一個典型的企業之間通信聯絡的例子是使用兩個在不同伺服器上執行的Commerce Interchange Pipeline。兩條管線分別是:

傳送管線

在貿易夥伴中透過網路來傳送企業資料物件。
接收管線

接收企業資料物件,解開物件,並將資料物件整合至應用程式中。
下面的介紹描述了典型的B2B電子商務通信聯絡的步驟。




23
Commerce Interchange Pipeline同時也提供完整的回傳收據。伴隨著數位簽名,回傳收據可以核對發生於網際網路上的企業溝通過程。

個別管線的設定是存放在管線設定檔(.pcf)。下面的表格詳細地介紹包含在管線設定中的元件類別:

元件類別 說明
Mapping component 將企業資料物件的內容轉換成可傳送的格式,或將接收到的資料轉換回原本儲存的物件。
Add/Open Header Components24 新增元素到傳輸辭典從傳輸辭典移除元素包括傳送者與接收者的位址,以及收據要求。
Digital Signature Components 決定使用何種形式的數位簽名來簽署企業資料物件,或負責驗證數位簽名。
Encryption/Decryption Components 決定如何為企業資料物件的內容進行加密解密,及如何使用認證。
Audit components 將企業資料物件上不同的資料寫入稽核資料庫。25
Transport connector 設計並設定傳送或接收企業資料物件。
Application Integration 啟動應用程式以處理接收到的企業資料物件。

對於傳輸管線中的每一階段及元件,在接收管線上都有一對應部分。而接收管線另外還有一個稱之為Generate Receipt的附加元件。

建立與傳送採購訂單


在B2B的交易裡,傳輸管線是用來封裝企業資料物件並將之傳送給e-Partner。企業資料物件在傳送出去之前會在傳輸管線內歷經六個階段。下面的章節將就這六個階段做更詳盡的介紹。26
傳輸管線的各個階段


傳輸管線是一種封裝企業資料物件與將之傳送給e-Partner的Commerce Interchange Pipeline。這類管線的樣板為Transmit.pct。傳輸管線擁有下面六個階段:

對應階段(Map stage)

加入標題階段(Add Header stage)

數位簽名階段(Digitally Sigh stage)

加密階段(Encrypt stage)

稽核階段(Audit stage)27

傳送階段(Transport stage)

下面的介紹說明傳輸管線中的六個階段。




在對應階段中轉換企業資料物件


對應(mapping)描述了將物件的資料從一種形式轉換成另一種的過程。對應階段可以包含協力廠商元件用以將電子資料交換(EDI)的資料轉換成適合傳輸的資料形式。

在傳輸管線中,對應階段可以包括MapToXML元件。該元件從企業資料物件的物件名/值對所關聯的物件中讀取資料,並將之轉換成XML封裝的二進位檔或純粹的XML資料流,並將結果當作新的名/值對,命名為working_data,並寫入傳輸辭典。

從下面的辭典物件看看範例:28
Set myObj = Server.CreateObject("Commerce.Dictionary")
MyObj.Company = "Microsoft"
當辭典物件被傳送到MapToXML元件,元件會產生:

<MAPXML><VALUE dt:dt="object" dt:classid="classid:
B7990D09-45FD-11D0-8176-00A0C90A90C7">
<DICTIONARY>
<DICTITEM key="Company"><VALUE dt:dt="string" xml-space="preserve">
Microsoft</VALUE></DICTITEM>
</DICTIONARY>
</VALUE></MAPXML>
加入標題


加入標題階段是將作業資料封裝在標題之內,標題提供了有關傳輸與將資料寫回作業資料等附加資訊。

當你利用傳輸管線傳送企業資料物件時,你可以要求資料的回傳收據。想要求收據,必須將一個名為Receipt_requested的屬性加入傳輸辭典中,並將其值設定為Yes。

TransportDictionary.Receipt_requested= "Yes"29
在CIP的加入標題階段,如果Receipt_requested屬性存在且其值設定為Yes的話,那麼在傳送之前AddHeader元件會將收據要求寫入傳輸辭典。

收據要求包含了下列項目:

用來對企業物件資料進行hash以取得摘要演算法。SHA1為一個標準的hash演算法。

文件形式標籤,指定從接收管線中要求的是何種文件。其值通常為Receipt,代表要求的文件形式是收據。

在這個階段裡相關的元件詳述如下:

元件 說明30
AddHeader 為作業資料裡加入一連串的XML資料,包括交易ID、交易的日期與時間、回傳收據要求、傳送者的位址,與接收者的位址。其中,回傳收據要求、傳送者的位址、與接收者的位址等資料是選擇性的。
EncodeMIME 運用MIME的編碼方式為作業資料名值對的資料進行編碼。

為資料加上數位簽名


當傳輸辭典從加入標題階段中出現時,它包含了傳輸所需要的所有資料。你可以為資料加上數位簽名來確保安全傳送。

數位簽名階段會在資料位元組的資料流裡加入數位簽名。另外,你也可以選擇在這個階段中使用元件將S/MIME編碼方式應用到資料作編碼。31
在這個階段裡相關的元件詳述如下:

元件 說明
DigitalSig 為作業資料名/值對中的資料加上數位簽名,使用的是Public Key Crypto System 7(PKCS7)。
EncodeSMIME 利用安全的MIME編碼方式為作業資料名/值對中的資料進行編碼。32

資料加密


資料加密階段會將要傳輸的作業資料加密,確保未經授權的使用者無法使用這些資料。元件使用由Microsoft Cryptographic應用程式介面(CryptoAPI)支援的加密技術,包括有:

Public Key Crypto System 7(PKCS7) 標準。

使用IETF EDINT draft Internet standard的EDI Message的S/MIME封裝技術。

自訂元件或協力廠商設計的元件。

在這個階段裡相關的元件有:

元件33 說明
EncryptPKCS 利用Public Key Crypto System (PKCS) 安全標準為企業資料物件進行加密。
EncodeSMIME 運用IETF EDINT draft Internet standard的MIME安全編碼方式為作業資料名值對中的資料進行編碼。 這個動作包括了為企業資料物件簽署數位簽名以及進行加密等動作。

稽核企業交易


審核階段會將企業交易中被選定的元素寫入稽核資料庫。34
在這個階段中相關的元件有:

元件 說明
Audit 從傳輸辭典中將特定資料寫入稽核資料庫的表格中。
AuditReceipt 將資料從收據裡寫入稽核資料庫。這個元件並不在傳輸管線中使用。35

傳輸資料


傳輸階段中包含了元件準備要傳輸的作業資料,以及接著將資料傳輸出去。在這個階段裡將其他元件與實際傳輸協定的細節部分隔離,並將對應的、簽過名的,及加密過的位元組串流傳送到目的地。

DCOM、SMTP與HTTP等傳輸協定及協力廠商所定義的協定都是目前廣被支援的協定。

在這個階段中相關的元件有:

元件 說明36
PipetoPipeTransfer 對遠端管線進行初始設定,並執行管線以便從目前的管線中接收傳輸目錄。
SendSMTP 將經過署名及加密的作業資料轉換成文字,然後將之以電子郵件訊息的方式傳送給特定的接收者。
SendHTTP 將經過署名及加密的作業資料轉換成文字,然後使用HTTP POST將資料傳送到網站的網頁上。
SendDCOM37 利用分散式元件物件模型(DCOM)傳送轉換過的作業資料,以在遠端商務伺服器電腦上建立並執行MtsTxPipeline或MtsPipeline物件。

建立與傳送採購訂單的程序


當企業個體想在電子商務交易之中開出訂單,它必須先作計劃,然後傳送訂單給企業的e-Partner。在這個主題中,你將學習如何建立採購訂單並以電子方式傳送訂單。

思考一下FiveLakes網站產生採購訂單並將之傳送給Ramona Publishing Web網站時使用的電子商務規則。欲建立並傳送採購訂單,FiveLakes網站必須執行下列程序:

建立並啟動「組織採購計劃管線」

當你使用Site Builder Wizard來建立電子商務網站時,系統會自動產生i_util.asp及xt_orderform_purchase.asp網頁。你將利用這些檔案來建立並啟動計劃管線。你必須修改這些檔案來建立並啟動「組織採購計劃管線」。
建立「組織採購確定管線」38

你必須建立「組織採購確定管線」來傳送採購訂單。管線的元件與元件的功能如下:

MakePO:產生採購訂單。

PotoFile:將採購訂單寫入檔案。

Scriptor:執行下面的工作:

建立交易用管線並載入管線設定參數檔案。

建立傳輸辭典。

執行管線的Execute方法。39

修改程式碼來啟動「組織採購確定管線」。

你必須修改xt_orderform_purchase.asp網頁,來啟動「組織採購確定管線」。
建立傳輸管線

你必須建立傳輸管線來傳送採購訂單給廠商。
啟動i_utli.asp網頁中的組織採購計劃管線


利用「組織採購計劃管線」你可以計算採購訂單的總和,包括所有促銷折扣、課稅、運送及處理費用。你必須修改i_util.asp網頁的UtlRunPlan函式來啟動新的「組織採購計劃管線」。 UtlRunPlan函式中啟動計劃管線的程式碼如下:

errorLevel = UtilRunPipe("plan.pcf", mscsOrderForm, _
mscsPipeContext)40
將之修改成:

errorLevel = UtilRunPipe("CorpPlan.pcf", mscsOrderForm, _
mscsPipeContext)
在這段程式範例中,CorpPlan.pcf為「組織採購計劃管線」的名字。

啟動xt_orderform_purchase.asp網頁中的組織採購計劃管線


在xt_orderform_purchase.asp網頁中,函式OrderFormPurchase會呼叫i_util.asp網頁的UtilRunPipe函式來載入並執行計劃管線。

下面的程式碼會在OrderFormPurchase函式中啟動計劃管線:

errorLevel = UtilRunPipe("plan.pcf", mscsOrderForm, _
mscsPipeContext)41
上面的程式碼修改如下,以啟動「組織採購計劃管線」:

errorLevel = UtilRunPipe("CorpPlan.pcf", mscsOrderForm, _
mscsPipeContext)
這段程式會執行管線中的特定階段,將它們的動作應用到OrderForm中。

建立組織採購確定管線


你可以建立「組織採購確定管線」來產生採購訂單。在採購訂單傳送階段中,藉著利用採購訂單樣板將資訊整合到訂單,你可以加入MakePO元件來產生採購訂單。

MakePO元件


就像ASP網頁一樣,在MakePO樣板中包含了散置在各特殊標籤中的純文字,標籤中內含script程式碼。在script程式裡,利用PageGen.Print指令可以產生輸出(output),或者利用<%% =expression %%> 指令。42
從MakePO樣板之中,企業物件以名為Items的物件展示出來。下面的程式碼執行了這項工作。

<%%
Dim nItemCount
nItemCount = Items.Items.count
If (nItemCount > 0) Then
Dim iItem,Item
For iItem = 0 To nItemCount - 1
Set Item = Items.Items.Item(iItem)
%%>
Order ID : <%% =Items.order_id %%> Item
Number:<%%= Item.sku %%> Qty:<%%= Item.quantity %%>
<%%
Next
End If
%%>
PotoFile元件


你所產生的採購訂單可以利用PotoFile元件寫入檔案。檔案的名稱與位址必須在PotoFile元件的屬性裡指定。

Scriptor元件


Scriptor元件是組織採購傳輸管線中最後一個被執行的元件。Scriptor元件負責執行以下的工作:

建立交易管線並載入管線的設定檔案。43

建立傳輸目錄。

執行管線的Execute方法。

Scriptor元件會建立並執行商務往來傳輸管線。函式會用到下面的四個參數:

Function mscsexecute(config, orderform, context, flags)
建立交易管線並載入管線的設定檔案


函式從建立交易管線(mscsMtsTxPipeline)開始,然後載入Transmit.pct管線的環境設定參數檔案。

Dim mscsMtsTxPipeline
Set mscsMtsTxPipeline = _
CreateObject("Commerce.MtsTxPipeline")
Call mscsMtsTxPipeline.loadpipe("transmit.pcf")44
建立傳輸辭典


接下來,函式會建立一個傳輸辭典,當作參數傳送給CIP。傳輸辭典包含了一個名/值對,指定要被傳送出去的企業物件。

Dim TransportDictionary
Set TransportDictionary = _
CreateObject("Commerce.Dictionary")
一個名為Object的值會被加入傳輸辭典,其值會被設定到訂單表單,如下所示:

Set TransportDictionary.object = orderform
物件屬性會被往來傳輸管線的第一個元件MapToXML使用。MapToXML負責讀取物件,將物件對應到連續的二進位格式,並將結果寫回working_data屬性。

在要求收據的個案中 必須加入以下的程式碼:45
TransportDictionary.Receipt_requested = "Yes"
執行管線的Execute方法


最後,函式會執行管線的Execute方法,將傳輸辭典與PipeContext辭典當作參數傳送,如下面的程式碼所示:

errorlevel = mscsMtsTxPipeline.Execute(1, _
TransportDictionary, context, 0)
啟動xt_orderform_purchase.asp網頁中的組織採購確定管線


「組織採購確定管線」必須從xt_orderform_purchase.asp網頁啟動。管線必須在採購被確認之後,以及在訂單表格被摧毀之前執行。

在xt_orderform_purchase.asp裡,OrderFormPurchase函式會呼叫UtilRunTxPipe函式在交易模式中來載入並執行「組織採購確定管線」。46
errorLevel = UtilRunTxPipe ("CorpSubmit.pcf"mscsOrderForm, _
mscsPipeContext)
建立傳輸管線


傳輸管線從將物件傳送給傳輸辭典的管線開始。隨著管線運作,不同的元件會將新的值傳給傳輸辭典。

現在你將建立一條傳輸管線,來從FiveLakes範例網站傳送採購訂單到Ramona Publishing網站。管線的各個階段將包括以下的元件:

在傳輸管線中的階段 包括的元件
對應47 MapToXML
加入標題 AddHeader
數位簽名 DigitalSig
加密 EncryptPKCS48
稽核 Audit
傳送 SendHTTP

在傳輸階段中,SendHTTP元件被用來將企業資料物件當作參數傳送到HTTP要求。SendHTTP元件利用HTTP POST來傳送資料,從傳輸辭典或訂單表單上的指定欄位傳到元件的URL欄位裡指定的網站網頁。

Localhost/Ramona/getdata.asp

--------------------------------------------------------------------------------
注意
本範例中的管線元件是適用於上述的狀況。你可以加入、移除,或修改元件以符合你的企業需求。49

--------------------------------------------------------------------------------

當管線執行完成,雖然原始的訂單表單物件還存在,但是傳輸辭典會自動被摧毀。

實作3: 建立並傳送採購訂單


目標


在完成這個實作之後,你將能夠:

建立「組織採購計劃管線」。

建立「組織採購確定管線」。

建立商務往來傳輸管線。50

利用傳輸管線來傳送採購訂單。

在您開始之前


先決條件


在開始進行實作之前,你必須擁有:

HTML與ASP scripting的基本知識。

熟悉Microsoft Internet Explorer與Microsoft Visual InterDev 6.0。

環境設定51


要完成本實作,你必須將檔案從<install folder>\Labs\Lab\03\FiveLakes \StartCode複製到C:\Interpub\wwwroot\FiveLakes\目錄下。如果出現提示畫面,按下 Yes 以覆蓋檔案與目錄。

4 預估完成時間:45分鐘

練習1:建立並執行組織採購計劃管線


在這個練習中,你將建立一個「組織採購計劃管線」並撰寫程式在FiveLakes網站啟動「組織採購計劃管線」。52
4 啟動Pipeline Editor (管線編輯器)。

點選開始,指向程式集,選擇 Microsoft Site Server 中的 Commerce ,然後按下53 Pipeline Editor 。

4 將FiveLakes網站的計劃管線修改成「組織採購計劃管線」

在 File 功能表中,點選54 New 。
會出現 Choose a Pipeline Template 對話盒,列出所有可以使用的樣板。
選擇 CorpPurchasingPlan.pct55 樣板,然後點選 OK 。
在 File 功能表中,點選 Open56 。
在路徑C:\InterPub\wwwroot\FiveLakes下,選擇 Config 目錄。
在 Config 目錄下,選擇plan.pcf,然後按下57 Open 來開啟目前的計劃管線。
在 Window 功能表中,點選 Tile 。兩個視窗會以水平方式並列。58
在計劃管線Product Info的步驟中,對 QueryProdInfoAdo 按下滑鼠右鍵,然後點選 Copy 。
在「組織採購計劃管線」的視窗裡,利用滑鼠右鍵點選 Requisition Item Info59 ,然後選擇 Paste Component 。
將元件換成下面表格所列的元件,重複步驟7與8。

計劃管線階段元件 組織採購計劃 管線階段60
Order Check Validate Ship-To Requisition Check
Item Adjust Price SaleAdjust Requisition Item Adjust Price
Order Adjust Price61 DbOrderPromoAdo Requisition Adjust Price

在元件上按滑鼠右鍵,點選 Delete 將目前的元件從「組織採購計劃管線」的傳輸階段中移除。
複製三個計劃管線的運送階段中的FixedShipping元件到「組織採購計劃管線」的傳輸階段中。
--------------------------------------------------------------------------------
注意
「組織採購計劃管線」的傳輸階段中,元件的順序應該要與計劃管線中傳輸階段的階層結構一樣。62

--------------------------------------------------------------------------------

在 File 功能表中,點選 Save As 將「組織採購計劃管線」儲存在C:\InterPub\wwwroot\ FiveLakes\Config目錄下。將檔案存成 CorpPlan.pcf 。當出現提示畫面時,選擇覆蓋現有檔案的選項。63
--------------------------------------------------------------------------------
注意
確定管線的檔名是文中所指定的檔名。不要使用預設的檔名。


--------------------------------------------------------------------------------

4 悉FiveLakes網站中的i_util.asp網頁與xt_orderform_purchase.asp網頁

在Microsoft Visual InterDev中開啟i_util.asp網頁。檔案位於C:\InterPub\wwwroot\ FiveLakes。
在UtilRunPlan函式中,找出下面的程式碼:

errorLevel = UtilRunPipe("CorpPlan.pcf", mscsOrderForm, _
mscsPipeContext)
在Microsoft Vusual InterDev中開啟64 xt_orderform_purchase.asp 網頁。檔案的位置是在FiveLakes網站的根目錄下。
在OrderFormPurchase函式中,找出下面的程式碼:

errorLevel = UtilRunPipe("CorpPlan.pcf", mscsOrderForm, _
mscsPipeContext)
練習2:建立組織採購確定管線


在這個練習中,你將建立一個「組織採購確定管線」。你也將撰寫程式碼來啟動FiveLakes範例網站的「組織採購確定管線」。

465 建立FiveLakes網站的「組織採購確定管線」

在Pipeline Editor裡,在 File 功能表中,點選 New 。
會出現66 Choose a Pipeline Template 對話盒,列出所有可以使用的樣板。
選擇 CorpPurchaseSubmit.pct ,然後點選 OK 。674 在採購訂單傳輸階段加入MakePO與POtoFile元件。

利用滑鼠右鍵點選 Purchase Order Submit ,然後點選 Insert Component 。68
會出現 Choose a component 對話盒,列出所有可以在這個階段中加入的元件。
選擇 MakePO ,然後按下 OK69 ,將元件加入這個階段。
利用滑鼠右鍵點選 MakePO ,然後點選 Properties 。會出現 Properties70 對話盒。
MakePO元件會運用樣板檔案來建立PO。點選 Browse 來選擇樣板檔案,選定FiveLakes網站Config目錄下的 POTemplate.txt ,然後按下 Open71 。
按下 OK 確認設定情形。
接下來,加入一個PotoFile元件到採購訂單傳輸階段中。利用滑鼠右鍵點選 MakePO ,指向72 Insert Component ,然後按下 After 。
此時會出現 Choose a component 對話盒,列出所有可以放入這個步驟的元件。73
選擇 PotoFile ,然後按下 OK ,將元件加入步驟中。
利用滑鼠右鍵點選 PotoFile74 ,然後點選 Properties 。
點選 Browse 來設定PO將被寫入檔案的名字。將Destination File Name改到FiveLakes目錄中,設定檔案名為 PO_Data.txt75 ,然後按下 Save 。
點選 Append to file instead of overwritting file ,然後按下 OK76 ,確認設定情形。
4 加入scriptor元件到採購訂單委託階段。

利用滑鼠右鍵點選 PotoFile ,指向 Insert Component77 ,然後點選 After 。
在 Choose a component 對話盒中,選擇 Scriptor78 ,然後按下 OK 將元件加入這個階段。
利用滑鼠右鍵點選 Scriptor ,然後點選 Properties79 。
於 Component Properties 對話盒的 Scriptor 標籤頁中,點選 External80 。
在 Scriptor 確認對話盒中,點選 No 。你將使用外部的script檔案。
點選81 Browse 來設定script檔案的名字及路徑。檔案CallTransmit.vbs是在FiveLakes網站的Config目錄下。該檔案將會啟動傳輸管線。在 Open 對話盒中,選擇 CallTransmit.vbs ,然後按下 Open82 。
按下 OK 來確認設定情形。
點選 File 功能表,然後按下83 Save As 來儲存「組織採購確定管線」。存到C:\InterPub\wwwroot\ FiveLakes\Config目錄中。在 Save As 對話盒中,輸入CorpSubmit.pcf,然後點選 Save 。當出現提示畫面時,選擇覆蓋現有檔案的選項。
--------------------------------------------------------------------------------
注意
確定管線的名字是文中所指定的。84

--------------------------------------------------------------------------------

4 熟悉FiveLakes網站的xt_orderform_purchase.asp網頁

在xt_orderform_purchase.asp網頁中,找出下面的程式碼:

errorLevel = UtilRunTxPipe("purchaseupdate.pcf",mscsOrderForm,_
mscsPipeContext)
else
REM Run the transacted pipe
errorLevel = UtilRunTxPipe("purchaseinsert.pcf",mscsOrderForm,_
mscsPipeContext)
end if
errorLevel = UtilRunSubmit("CorpSubmit.pcf",mscsOrderForm,_
mscsPipeContext)
這段程式會啟動採購與傳輸管線。

練習3:建立傳輸管線


在這個練習中,你將在FiveLakes範例網站上建立一個商務往來傳輸管線,用來傳送採購訂單。你將利用SendHTTP元件將採購訂單傳送到Ramona Publishing網站。85
4 在FiveLakes網站中建立商務往來傳輸管線

在Pipeline Editor視窗中,於 File 功能表上點選 New 。86
會出現 Choose a Pipeline Template 對話盒,列出所有可以使用的樣板。
選擇 transmit.pct ,然後按下 OK87 。
4 將MapToXML元件加入傳輸管線的對應階段

利用滑鼠右鍵點選 Map ,然後點選 Insert Component88 。
會出現 Choose a component 對話盒,列出所有可以選用的元件。
選擇 MapToXML ,然後按下89 OK 將元件加入對應階段。
利用滑鼠右鍵點選 MapToXML ,然後點選 Properties 。90
必須使用預設的設定。預設的Object Source Key為 object ,預設的Results XML Key為 working_data ,而優先的資料格式為 XML 標籤。91
點選 OK 以關閉 Properties 對話盒。
4 將AddHeader元件加到傳輸管線的加入標題階段92

利用滑鼠右鍵點選 Add Header ,然後按下 Insert Component 。
在 Choose a component93 對話盒中,選擇 AddHeader 元件,然後點選 OK 將元件加入這個階段。
利用滑鼠右鍵點選 AddHeader94 ,然後點選 Properties 。
必須使用預設的設定。輸入與輸出欄位的值都設定成 working_data 。
按下95 OK 以關閉 Properties 對話盒。
4 將SendHTTP元件加入到傳輸管線的傳輸階段

利用滑鼠右鍵點選96 Transport ,然後按下 Insert Component 。
在Choose a component對話盒中,選擇SendHTTP元件,然後按下 OK 將元件加入這個階段。97
利用滑鼠右鍵點選SendHTTP,然後點選Properties。
在URL欄位,輸入『localhost/Ramona/getdata.asp』。
指定的URL位址將會啟動Ramona網站的getdata.asp網頁。
在Field to be posted方塊中輸入『working_data』,然後按下OK確認設定情形。
在File功能表中,點選 Save As 儲存傳輸管線。將檔案存放在C:\InterPub\wwwroot\FiveLakes\ Config\目錄中,檔名為98 transmit.pcf 。當出現提示畫面時,選擇覆蓋現有檔案的選項。
mic64 目前離線  
送花文章: 0, 收花文章: 21 篇, 收花: 61 次