Refactor data integrity verification script to use A_ETL_LOAD_SET_FK instead of A_WORKFLOW_HISTORY_KEY
This commit is contained in:
@@ -51,44 +51,44 @@ EXCEPTION
|
||||
END;
|
||||
/
|
||||
|
||||
-- Check 2: A_WORKFLOW_HISTORY_KEY distribution across source tables
|
||||
PROMPT Checking A_WORKFLOW_HISTORY_KEY distribution...
|
||||
-- Check 2: A_ETL_LOAD_SET_FK distribution across source tables
|
||||
PROMPT Checking A_ETL_LOAD_SET_FK distribution...
|
||||
DECLARE
|
||||
v1Keys NUMBER := 0; v2Keys NUMBER := 0; v3Keys NUMBER := 0;
|
||||
v4Keys NUMBER := 0; v5Keys NUMBER := 0; v6Keys NUMBER := 0;
|
||||
vDistinctAllKeys NUMBER := 0;
|
||||
BEGIN
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_ALLOTMENT' INTO v1Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_HEADER' INTO v2Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_ITEM' INTO v3Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_ANNOUNCEMENT' INTO v4Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_FBL_ITEM' INTO v5Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_FULLBID_ARRAY_COMPILED' INTO v6Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_ALLOTMENT' INTO v1Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_HEADER' INTO v2Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_ITEM' INTO v3Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_ANNOUNCEMENT' INTO v4Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_FBL_ITEM' INTO v5Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_FULLBID_ARRAY_COMPILED' INTO v6Keys;
|
||||
|
||||
SELECT COUNT(DISTINCT wk)
|
||||
INTO vDistinctAllKeys
|
||||
FROM (
|
||||
SELECT A_WORKFLOW_HISTORY_KEY AS wk FROM OU_TOP.LEGACY_ALLOTMENT UNION ALL
|
||||
SELECT A_WORKFLOW_HISTORY_KEY FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_HEADER UNION ALL
|
||||
SELECT A_WORKFLOW_HISTORY_KEY FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_ITEM UNION ALL
|
||||
SELECT A_WORKFLOW_HISTORY_KEY FROM OU_TOP.LEGACY_ANNOUNCEMENT UNION ALL
|
||||
SELECT A_WORKFLOW_HISTORY_KEY FROM OU_TOP.LEGACY_FBL_ITEM UNION ALL
|
||||
SELECT A_WORKFLOW_HISTORY_KEY FROM OU_TOP.LEGACY_FULLBID_ARRAY_COMPILED
|
||||
SELECT A_ETL_LOAD_SET_FK AS wk FROM OU_TOP.LEGACY_ALLOTMENT UNION ALL
|
||||
SELECT A_ETL_LOAD_SET_FK FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_HEADER UNION ALL
|
||||
SELECT A_ETL_LOAD_SET_FK FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_ITEM UNION ALL
|
||||
SELECT A_ETL_LOAD_SET_FK FROM OU_TOP.LEGACY_ANNOUNCEMENT UNION ALL
|
||||
SELECT A_ETL_LOAD_SET_FK FROM OU_TOP.LEGACY_FBL_ITEM UNION ALL
|
||||
SELECT A_ETL_LOAD_SET_FK FROM OU_TOP.LEGACY_FULLBID_ARRAY_COMPILED
|
||||
);
|
||||
|
||||
DBMS_OUTPUT.PUT_LINE('Distinct A_WORKFLOW_HISTORY_KEY values per table:');
|
||||
DBMS_OUTPUT.PUT_LINE('Distinct A_ETL_LOAD_SET_FK values per table (source):');
|
||||
DBMS_OUTPUT.PUT_LINE('- LEGACY_ALLOTMENT : ' || v1Keys);
|
||||
DBMS_OUTPUT.PUT_LINE('- LEGACY_ALLOTMENT_MODIFICATION_HEADER: ' || v2Keys);
|
||||
DBMS_OUTPUT.PUT_LINE('- LEGACY_ALLOTMENT_MODIFICATION_ITEM : ' || v3Keys);
|
||||
DBMS_OUTPUT.PUT_LINE('- LEGACY_ANNOUNCEMENT : ' || v4Keys);
|
||||
DBMS_OUTPUT.PUT_LINE('- LEGACY_FBL_ITEM : ' || v5Keys);
|
||||
DBMS_OUTPUT.PUT_LINE('- LEGACY_FULLBID_ARRAY_COMPILED : ' || v6Keys);
|
||||
DBMS_OUTPUT.PUT_LINE('- Total distinct workflow keys (all tables): ' || vDistinctAllKeys);
|
||||
DBMS_OUTPUT.PUT_LINE('- Total distinct ETL load keys (all tables): ' || vDistinctAllKeys);
|
||||
|
||||
IF vDistinctAllKeys > 0 THEN
|
||||
DBMS_OUTPUT.PUT_LINE('SUCCESS: Workflow key distribution looks normal');
|
||||
DBMS_OUTPUT.PUT_LINE('SUCCESS: ETL load key distribution looks normal');
|
||||
ELSE
|
||||
DBMS_OUTPUT.PUT_LINE('ERROR: No workflow keys found in source data');
|
||||
DBMS_OUTPUT.PUT_LINE('ERROR: No ETL load keys found in source data');
|
||||
END IF;
|
||||
END;
|
||||
/
|
||||
@@ -327,18 +327,18 @@ BEGIN
|
||||
|
||||
-- Workflow Key Analysis
|
||||
DBMS_OUTPUT.PUT_LINE('');
|
||||
DBMS_OUTPUT.PUT_LINE('Workflow Key Analysis (distinct A_WORKFLOW_HISTORY_KEY per table):');
|
||||
DBMS_OUTPUT.PUT_LINE('ETL Load Key Analysis (distinct A_ETL_LOAD_SET_FK per source table):');
|
||||
|
||||
DECLARE
|
||||
v1Keys NUMBER; v2Keys NUMBER; v3Keys NUMBER;
|
||||
v4Keys NUMBER; v5Keys NUMBER; v6Keys NUMBER;
|
||||
BEGIN
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_ALLOTMENT' INTO v1Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_HEADER' INTO v2Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_ITEM' INTO v3Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_ANNOUNCEMENT' INTO v4Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_FBL_ITEM' INTO v5Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_WORKFLOW_HISTORY_KEY) FROM OU_TOP.LEGACY_FULLBID_ARRAY_COMPILED' INTO v6Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_ALLOTMENT' INTO v1Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_HEADER' INTO v2Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_ALLOTMENT_MODIFICATION_ITEM' INTO v3Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_ANNOUNCEMENT' INTO v4Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_FBL_ITEM' INTO v5Keys;
|
||||
EXECUTE IMMEDIATE 'SELECT COUNT(DISTINCT A_ETL_LOAD_SET_FK) FROM OU_TOP.LEGACY_FULLBID_ARRAY_COMPILED' INTO v6Keys;
|
||||
|
||||
DBMS_OUTPUT.PUT_LINE('- LEGACY_ALLOTMENT : ' || v1Keys || ' distinct keys');
|
||||
DBMS_OUTPUT.PUT_LINE('- LEGACY_ALLOTMENT_MODIFICATION_HEADER: ' || v2Keys || ' distinct keys');
|
||||
@@ -349,7 +349,7 @@ BEGIN
|
||||
DBMS_OUTPUT.PUT_LINE('- Actual export files registered: ' || vFileCount);
|
||||
EXCEPTION
|
||||
WHEN OTHERS THEN
|
||||
DBMS_OUTPUT.PUT_LINE('WARNING: Cannot query workflow keys: ' || SQLERRM);
|
||||
DBMS_OUTPUT.PUT_LINE('WARNING: Cannot query ETL load keys: ' || SQLERRM);
|
||||
END;
|
||||
END;
|
||||
/
|
||||
|
||||
Reference in New Issue
Block a user