第五章 網路服務客戶端的設計
附錄圖 5 資料淨化
在進行資料淨化工作後,接著將淨化後的資料與三規正規化資料庫中資料進行比對以決 定相關的異動操作。在此步驟中,異動操作會依資料比對的結果來決定資料異動的方式,包 括新增、修改、停用三項,而新增、修改、停用判斷的程式碼見附錄表 21。
完成異動操作之後,結束供應人資料表、承銷人資料表、花卉品名資料表的更新,將例 外資料表的內容匯出至例外資料庫的例外資料表,並把供應人等三個資料檔刪除,完成資料
轉換服務 1 的整個作業流程。
附錄表 21 新增、修改、停用判斷之程式碼與說明
項目 內容 說明
新增 SELECT S.SNUM,S.SNAME,S.SDATE,S.SCODE,S.TYPE FROM SU1 As S
WHERE (S.SNUM NOT IN
(SELECT SUP_ONUM FROM 供應人資料表)) OR
((S.SNUM IN (SELECT SUP_ONUM FROM 供 應 人資料表 WHERE SUP_IFUSE='Y')) AND
(S.SNAME NOT IN (SELECT SUP_NAME FROM 供應人資 料表 WHERE SUP_IFUSE='Y'))) OR
(S.SNUM IN (SELECT SUP_ONUM FROM 供應人資料表 WHERE SUP_IFUSE='N') AND
(S.SNAME NOT IN (SELECT SUP_NAME FROM 供應人資
修改 SELECT S.SNUM,S.SNAME,S.SDATE,S.SCODE,TYPE FROM SU1 As S
WHERE ((S.SNUM IN (SELECT SUP_ONUM FROM 供應人資料 表 WHERE SUP_IFUSE='Y')) AND
(S.SNAME IN (SELECT SUP_NAME FROM 供 應 人 資 料 表 WHERE SUP_IFUSE='Y')))
供應人代碼和姓名都存在
資料轉換服務 2 中,其主要工作流程近似於前述之資料轉換服務流程 1。其中與資料轉 SET ATYPE='1' where ATYPE is null
將 ATYPE 欄位為空值更正為 1。
修補殘貨交易紀錄 的承銷人
UPDATE A2
SET ABU='00000' , ATYPE='0'
WHERE RTRIM(ISNULL(ABU,''))='XXXXX'
更正殘貨的資料的承銷人代 碼欄位及類型欄位。
修補 NUM2 不滿兩 位數者
UPDATE A2
SET ANUM2='0'+ Right(Rtrim(ANUM2),1) WHERE((Len(Rtrim(ANUM2))=1)AND Right(Rtrim(ANUM2),1)in
('1','2','3','4','5','6','7','8','9','0') )
補齊交易子序號的位數。
修補 ADATE 為由西 元轉為民國
UPDATE A2
SET ADATE=ADATE-19110000
將交易日期從西元轉為民國。
修補拍賣線不規則 值令其為 D 拍賣線
UPDATE A2 SET ALINE='4'
WHERE ALINE NOT IN ('0','1','2','3')
將拍賣線謬誤的資料更正為 4,也就是其他。
修 補 ANUM2 為 NULL
UPDATE A2 SET ANUM2='20'
WHERE ANUM2 is NULL
交易子序號如為空值則設為 20。
修 補
FLOWER_RANK1
UPDATE A2 SET ARANK='B'
WHERE ((Len(Rtrim(ARANK))=1) AND
Right(Rtrim(ARANK),1) in ('1','2','3','4','5','6','7','8','9','0') )
花卉等級只有一個字元,且存 在於 0~9 之間,更正為 B。
修 補
FLOWER_RANK2
UPDATE A2
SET ARANK='A'+ Right(Rtrim(ARANK),1)
WHERE ((Len(Rtrim(ARANK))=2) AND
Left(Rtrim(ARANK),1) ='1'AND Right(Rtrim(ARANK),1) in ('1','2','3','4','5','6','7','8','9','0','+','-') )
花卉等級有兩個字元,且第一 個字元為 1,更正為 A,例如 12->A2。
在資料異動部份,程式會檢查交易資料中的供應人代碼、承銷人代碼、花卉品名代碼是 WHERE SUP_IFUSE='Y' )
交易資料中的供應人代碼 不 存 在 於 供 應 人 資 料 表 中。
承銷人代碼比對 SELECT * FROM A1 WHERE ABU NOT IN
(SELECT BUY_BUYNUM FROM 承銷人資料表)
交易資料中的承銷人代碼
將比對失敗的資料移至 A_EXCEPTION 資料表,剩餘資料轉入交易資料表,並將例外資 料表的內容匯出至例外資料庫的例外資料表,及交易資料檔刪除,完成資料轉換服務 2 的整
附錄圖 8 資料轉換服務作業樹狀結構圖
附錄表 24 資料轉換服務工作統計表
封裝 工作流程 連線 工作 限制
工作流程-1 2 14 12 工作流程-2 2 12 10 封裝-1(資料轉換服務 1)
工作流程-3 2 11 9
DTS
封裝-2(資料轉換服務 2) 工作流程-1 2 16 13
在完成系統更新轉換程序設計後,接著介紹自動化排程設計方式,在此採用的是 SQL Server2000[3][4]套裝軟體中的排程設定。在步驟內的命令指定執行『系統更新轉換程序.dts』, 如附錄圖 9,在排程內的排程類型設為重覆執行。
附錄圖 9 自動化設定排程語法