bspkrs

QA_DATA_FEED_FIELD_VW

Nov 27th, 2013
434
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 5.11 KB | None | 0 0
  1. CREATE OR REPLACE VIEW QA_DATA_FEED_FIELD_VW AS
  2. SELECT
  3.   (setA || setC || setL || setM || setD || setO || setR) AS SET_CODE,
  4.   sdsdf.DATA_FILE_NAME,
  5.   sdff.FIELD_NAME,
  6.   to_char(sdff.FIELD_POSITION) AS FIELD_POSITION,
  7.   sdsdf.DATA_FILE_CODE,
  8.   srl.REF_SCHEMA_NAME,
  9.   srl.REF_TABLE_NAME,
  10.   srl.REF_COLUMN_NAME,
  11.   sdsdf.STG_TABLE_NAME,
  12.   sdff.STG_TABLE_COLUMN_NAME,
  13.   sfdt.DATA_TYPE_CODE,
  14.   to_char(sdff.FIELD_DATA_LENGTH) AS FIELD_DATA_LENGTH,
  15.   to_char(sdff.FIELD_DATA_SCALE) AS FIELD_DATA_SCALE,
  16.   To_Char(Sdff.Nullable_Flag) AS Nullable_Flag,
  17. --  
  18.   (CASE WHEN sdfkc.FIELD_ORDER IS NOT NULL
  19.       THEN 'D' || to_char(sdfkc.DATA_ERR_CHECK_PID) || ' ' || to_char(sdfkc.FIELD_ORDER) ELSE ' ' END) ||
  20.       (CASE WHEN sdec_DUPL.CRITICAL_ERR_FLAG = 1 THEN '*' ELSE '' END) AS DUPL,
  21. --
  22.   (CASE WHEN sdec_INVDATE1.ERR_PID IS NOT NULL THEN '!YMD1' ELSE ' ' END) ||
  23.       (CASE WHEN sdec_INVDATE1.CRITICAL_ERR_FLAG = 1 THEN '*' ELSE '' END) AS INVDATE1,
  24.   (CASE WHEN sdec_INVDATE2.ERR_PID IS NOT NULL THEN '!YMD2' ELSE ' ' END) ||
  25.       (CASE WHEN sdec_INVDATE2.CRITICAL_ERR_FLAG = 1 THEN '*' ELSE '' END) AS INVDATE2,
  26.   (CASE WHEN sdec_INVLEN.ERR_PID IS NOT NULL THEN 'Len' ELSE ' ' END) ||
  27.       (CASE WHEN sdec_INVLEN.CRITICAL_ERR_FLAG = 1 THEN '*' ELSE '' END) AS INVLEN,
  28.   (CASE WHEN sdec_INVNBR.ERR_PID IS NOT NULL THEN '!123' ELSE ' ' END) ||
  29.       (CASE WHEN sdec_INVNBR.CRITICAL_ERR_FLAG = 1 THEN '*' ELSE '' END) AS INVNBR,
  30.   (CASE WHEN sdec_NV.ERR_PID IS NOT NULL THEN 'NV' ELSE ' ' END) ||
  31.       (CASE WHEN sdec_NV.CRITICAL_ERR_FLAG = 1 THEN '*' ELSE '' END) AS NV,
  32.   (CASE WHEN sdec_REF.ERR_PID IS NOT NULL THEN 'Ref' ELSE ' ' END) ||
  33.       (CASE WHEN SDEC_REF.CRITICAL_ERR_FLAG = 1 THEN '*' ELSE '' END) AS "REF",
  34.   (CASE WHEN SDEC_REF_RJCT.ERR_PID IS NOT NULL THEN 'Ref_Rjct' ELSE ' ' END) ||
  35.       (CASE WHEN SDEC_REF_RJCT.Critical_Err_Flag = 1 THEN '*' ELSE '' END) AS "REF_RJCT",
  36.   (CASE WHEN sdec_PASTPED.ERR_PID IS NOT NULL THEN 'PED' ELSE ' ' END) ||
  37.       (CASE WHEN sdec_PASTPED.Critical_Err_Flag = 1 THEN '*' ELSE '' END) AS PASTPED
  38. --  
  39. FROM (
  40.   SELECT
  41.     sdf.DATA_FEED_PID,
  42.     sdf.DATA_FILE_CODE,
  43.     sdf.DATA_FILE_NAME,
  44.     sdf.STG_TABLE_NAME,
  45.     sdf.DATA_FEED_ORDER,
  46.     MAX(decode(DATA_SET_CODE, 'A', DATA_SET_CODE)) AS setA,
  47.     MAX(decode(DATA_SET_CODE, 'C', DATA_SET_CODE)) AS setC,
  48.     MAX(decode(DATA_SET_CODE, 'L', DATA_SET_CODE)) AS setL,
  49.     MAX(decode(DATA_SET_CODE, 'M', DATA_SET_CODE)) AS setM,
  50.     MAX(decode(DATA_SET_CODE, 'D', DATA_SET_CODE)) AS setD,
  51.     MAX(decode(DATA_SET_CODE, 'O', DATA_SET_CODE)) AS setO,
  52.     MAX(decode(DATA_SET_CODE, 'R', DATA_SET_CODE)) AS setR
  53.   FROM STAGE.DATA_SET sds
  54.   JOIN STAGE.MODEL_FEED_SET smfs
  55.     ON smfs.DATA_SET_PID = sds.DATA_SET_PID
  56.   JOIN STAGE.DATA_FEED sdf
  57.     ON sdf.DATA_FEED_PID = smfs.DATA_FEED_PID
  58.   GROUP BY sdf.DATA_FEED_PID, sdf.DATA_FILE_CODE, sdf.DATA_FILE_NAME, sdf.STG_TABLE_NAME, sdf.DATA_FEED_ORDER
  59.   ) Sdsdf
  60. --
  61. JOIN STAGE.DATA_FEED_FIELD sdff
  62.   ON  sdff.DATA_FEED_PID = sdsdf.DATA_FEED_PID
  63. JOIN STAGE.FIELD_DATA_TYPE sfdt
  64.   ON sfdt.FIELD_DATA_TYPE_PID = sdff.FIELD_DATA_TYPE_PID
  65. --
  66. LEFT OUTER JOIN STAGE.REF_LIST srl
  67.   ON Srl.Data_Feed_Field_Pid = Sdff.Data_Feed_Field_Pid
  68. --  
  69. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK sdec_NV
  70.   ON sdec_NV.DATA_FEED_FIELD_PID = sdff.DATA_FEED_FIELD_PID
  71.   AND sdec_NV.ERR_PID IN (SELECT ERR_PID FROM STAGE.ERR WHERE ERR_CODE='NV')
  72. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK sdec_INVNBR
  73.   ON sdec_INVNBR.DATA_FEED_FIELD_PID = sdff.DATA_FEED_FIELD_PID
  74.   AND sdec_INVNBR.ERR_PID IN (SELECT ERR_PID FROM STAGE.ERR WHERE ERR_CODE='INVNBR')
  75. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK sdec_INVDATE1
  76.   ON sdec_INVDATE1.DATA_FEED_FIELD_PID = sdff.DATA_FEED_FIELD_PID
  77.   AND sdec_INVDATE1.ERR_PID IN (SELECT ERR_PID FROM STAGE.ERR WHERE ERR_CODE='INVDATE1')
  78. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK sdec_INVDATE2
  79.   ON sdec_INVDATE2.DATA_FEED_FIELD_PID = sdff.DATA_FEED_FIELD_PID
  80.   AND sdec_INVDATE2.ERR_PID IN (SELECT ERR_PID FROM STAGE.ERR WHERE ERR_CODE='INVDATE2')
  81. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK sdec_INVLEN
  82.   ON sdec_INVLEN.DATA_FEED_FIELD_PID = sdff.DATA_FEED_FIELD_PID
  83.   AND sdec_INVLEN.ERR_PID IN (SELECT ERR_PID FROM STAGE.ERR WHERE ERR_CODE='INVLEN')
  84. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK sdec_REF
  85.   ON sdec_REF.DATA_FEED_FIELD_PID = sdff.DATA_FEED_FIELD_PID
  86.   AND Sdec_Ref.Err_Pid IN (SELECT Err_Pid FROM Stage.Err WHERE Err_Code='REF')
  87. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK SDEC_REF_RJCT
  88.   ON SDEC_REF_RJCT.DATA_FEED_FIELD_PID = SDFF.DATA_FEED_FIELD_PID
  89.   AND SDEC_REF_RJCT.Err_Pid IN (SELECT Err_Pid FROM Stage.Err WHERE Err_Code='REF_RJCT')
  90. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK sdec_PASTPED
  91.   ON sdec_PASTPED.DATA_FEED_FIELD_PID = sdff.DATA_FEED_FIELD_PID
  92.   AND sdec_PASTPED.Err_Pid IN (SELECT Err_Pid FROM Stage.Err WHERE Err_Code='PASTPED')
  93. --  
  94. LEFT OUTER JOIN STAGE.DATA_FEED_KEY_COLUMN sdfkc
  95.   ON sdfkc.DATA_FEED_FIELD_PID = sdff.DATA_FEED_FIELD_PID
  96. LEFT OUTER JOIN STAGE.DATA_ERR_CHECK sdec_DUPL
  97.   ON sdec_DUPL.DATA_ERR_CHECK_PID = sdfkc.DATA_ERR_CHECK_PID
  98.   AND Sdec_Dupl.Err_Pid IN (SELECT Err_Pid FROM Stage.Err WHERE Err_Code='DUPL')
  99. --
  100. ORDER BY
  101.   sdsdf.DATA_FEED_ORDER,
  102.   sdff.FIELD_POSITION;
  103. /
  104. exit
Advertisement
Add Comment
Please, Sign In to add comment