3 .1Giới thiệu về bộ dữ liệu hợp đồng giao dịch trong data warehouse
3.2.1.4 Các bảng quan hệ
Check các trường của bảng AR_X_IP
Các giá trị của thuộc tính trong bảng AR_X_IP tương ứng với quan hệ
'AR_TO_OWNER' và thuộc tính code tương ứng trong mapping
Khơng có bản ghi nào có giá trị của thuộc tính khác với giá trị thuộc tính code được trả về
Các giá trị của thuộc tính trong bảng AR_X_IP tương ứng với quan hệ
'AR_TO_BR' và thuộc tính code tương ứng trong mapping
Khơng có bản ghi nào có giá trị của thuộc tính khác với giá trị thuộc tính code được trả về
(AR_X_IP) - Nguồn
Select count (1)
From STAGING.SI_DAT_DDMAST SI_DAT_DDMAST;--1390189 - Đích
Select count (1) From
( (
Select AR_ID, IP_ID From AR_X_IP_RLTNP
Where AR_X_IP_RLTNP_TP_ID= (SELECT CL_ID FROM CV WHERE CL_SCM_CODE='AR_X_IP_TP' AND CL_CODE='AR_TO_OWNER')--130001
Khóa luận tốt nghiệp Quy trình xây dựng và kiểm thử data warehouse ) A
LEFT JOIN (
Select UNQ_ID_IN_SRC_STM, AR_ID From AR
Where SRC_STM_ID = (select CL_ID from CV where
CL_SCM_CODE='SRC_STM' AND CL_CODE='SIBS_SI_DAT_DDMAST')-- 60002
) B
ON A.AR_ID=B.AR_ID LEFT JOIN
(
Select IP_ID, UNQ_ID_IN_SRC_STM From IP
Where IP_TP_ID= (select CL_ID from CV where CL_SCM_CODE= 'IP_TP' and CL_CODE= 'IDV')
OR IP_TP_ID= (select CL_ID from CV where CL_SCM_CODE= 'IP_TP' and CL_CODE='ORG')) C
On A.IP_ID=C.IP_ID);
Ket quả: Nguồn trùng đích (=1390189 bản ghi)
❖Kiểm tra sự trùng lặp dữ liệu ở trường khóa chính của bảng AR_X_IP Select AR_ID||IP_ID||AR_X_IP_RLTNP_TP_ID, count
(AR_ID||IP_ID||AR_X_IP_RLTNP_TP_ID) From AR_X_IP_RLTNP
Group by AR_ID||IP_ID||AR_X_IP_RLTNP_TP_ID
Having count (AR_ID||IP_ID||AR_X_IP_RLTNP_TP_ID)>1; Kết quả: Khơng có bản ghi nào bị trùng lặp theo từng đối tượng
❖Check các trường của bảng AR_X_IP đối với quan hệ ‘AR_TO_OWNER’ Select *
From (
Select TO_CHAR (ACCTNO), TO_CHAR (BRANCH) From STAGING.SI_DAT_DDMAST
Chức năng Dữ liệu đâu vào Kêt quả mong đợi
Count Sô các bản ghi của bảng
SI_DAT_DDMAST ở STAGING
Sô các bản ghi AR_X_PD
Nguồn trùng đích
Duplication Gom nhóm dữ liệu theo key
của bảng AR_X_PD
Khơng có bản ghi nào trùng lặp
) Minus (
Select B.UNQ_ID_IN_SRC_STM, C.UNQ_ID_IN_SRC_STM From
(
Select AR_ID, IP_ID From AR_X_IP_RLTNP
Where AR_X_IP_RLTNP_TP_ID = (SELECT CL_ID FROM CV WHERE CL_SCM_CODE='AR_X_IP_TP' AND CL_CODE= 'AR_TO_BR')--40002
) A Left join (
Select UNQ_ID_IN_SRC_STM, AR_ID From AR
Where SRC_STM_ID= (SELECT CL_ID FROM CV WHERE
CL_SCM_CODE='SRC_STM' AND CL_CODE='SIBS_SI_DAT_DDMAST')-- 60002
) B
On A.AR_ID=B.AR_ID Left join
(
Select IP_ID, UNQ_ID_IN_SRC_STM From IP
Where IP_TP_ID= (SELECT CL_ID FROM CV WHERE CL_SCM_CODE= 'IP_TP' and CL_CODE='BR')
) C
On A.IP_ID=C.IP_ID
Where B.UNQ_ID_IN_SRC_STM=2107010900011);
Ket quả: Các trường của AR_X_IP ở trong sor đều khớp với thuộc tính code - Bảng AR_X_PD (Hợp đồng theo sản phẩm)
Check các trường của bảng AR_X_PD
Các giá trị của thuộc tính trong bảng AR_X_IP và thuộc tính code tương ứng trong mapping
Khơng có bản ghi nào có giá trị của thuộc tính khác với giá trị thuộc tính code được trả về
- Nguồn
Select count (*) from STAGING.SI_DAT_CFMAST - Đích
Select COUNT (1) From
(
Select AR_ID, PD_ID From AR_X_PD_RLTNP
Where AR_X_PD_RLTNP_TP_ID= (SELECT CL_ID FROM CV WHERE CL_SCM_CODE='AR_X_PD_TP' AND CL_CODE='AR_TO_PD')
) A
Left join (
Select AR_ID, UNQ_ID_IN_SRC_STM From AR
Where SRC_STM_ID= (select CL_ID from CV where
CL_SCM_CODE='SRC_STM' and CL_CODE='SIBS_SI_DAT_DDMAST')-- 60002
) B
Chức năng Dữ liệu đầu vào Ket quả mong đợi
Khóa luận tốt nghiệp Quy trình xây dựng và kiểm thử data warehouse Left join
(
Select PD_ID, PD_CODE From PD
) C
On A.PD_ID=C.PD_ID;
Ket quả: Nguồn trùng đích (= 325480 bản ghi)
❖Kiểm tra sự trùng lặp dữ liệu theo khóa chính
Select AR_ID||PD_ID||AR_X_PD_RLTNP_TP_ID, count (AR_ID||PD_ID||AR_X_PD_RLTNP_TP_ID)
From AR_X_PD_RLTNP
Group by AR_ID||PD_ID||AR_X_PD_RLTNP_TP_ID
Having count (AR_ID||PD_ID||AR_X_PD_RLTNP_TP_ID)>1;
Kết quả: Khơng có bản ghi nào bị trùng lặp khi được gom nhóm theo khóa chính
❖Kiểm tra thuộc tính của bảng AR_X_PD
Select * From (
Select TO_CHAR(ACCTNO), TO_CHAR(SCCODE||'_'||DDCTYP) From STAGING.DDMAST
) Minus (
Select B.UNQ_ID_IN_SRC_STM, C.UNQ_ID_IN_SRC_STM From
(
Select AR_ID, PD_ID From AR_X_PD_RLTNP
Where AR_X_PD_RLTNP_TP_ID=(select CL_ID from CV where CL_SCM_CODE='AR_X_PD_TP' AND CL_CODE='AR_TO_PD')
)A
Left join (
Select AR_ID, UNQ_ID_IN_SRC_STM
Khóa luận tơt nghiệp Quy trình xây dựng và kiêm thử data warehouse From AR
Where SRC_STM_ID= (select CL_ID from CV where
CL_SCM_CODE='SRC_STM' and CL_CODE='SIBS_SI_DAT_DDMAST')-- 60002
)B
On A.AR_ID=B.AR_ID Left join
(
Select PD_ID, UNQ_ID_IN_SRC_STM From PD
)C
On A.PD_ID=C.PD_ID );
Ket quả: Các giá trị của các thuộc tính trong bảng AR_X_PD đều khớp với thuộc tính code
❖ Kiêm tra tất cả các thuộc tính của bảng AR_X_PD đều đúng với yêu cầu và được truyền lên tầng đích chính xác