Advertisement
Guest User

Untitled

a guest
Aug 6th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 5.80 KB | None | 0 0
  1.  
  2. WITH suppliers AS
  3.             (
  4.                 SELECT t1.datasupplier_id, t1.oproj_id, t2.tecdoc_datasupplier_id tecdoc_id
  5.                     FROM datasupplier t1,
  6.                              mv_map_einsp_datasupplier t2
  7.                  WHERE t1.deldate >= SYSDATE
  8.                      AND t2.tm_datasupplier_id = t1.datasupplier_id
  9.             ),
  10.             processes AS
  11.             (
  12.                 SELECT t1.datasupplier_id,
  13.                              RAWTONHEX(t1.data_package_guid) data_package_guid,
  14.                              t1.import_id,
  15.                              t2.seq_id,
  16.                              t2.end_timestamp,
  17.                              t2.cuser,
  18.                              t2.remark,
  19.                              t2.process_id,
  20.                              t3.activity_id,
  21.                              t4.oproj_id,
  22.                              t1.first_process_id,
  23.                              t4.tecdoc_id
  24.                     FROM supplier_data.import_header_v2 t1,
  25.                              supplier_data.import_detail_v2 t2,
  26.                              supplier_data.import_detail_activity t3,
  27.                              suppliers t4              
  28.                  WHERE t2.data_package_guid = t1.data_package_guid
  29.                      AND t3.data_package_guid = t2.data_package_guid
  30.                      AND t3.seq_id            = t2.seq_id
  31.                      AND t4.datasupplier_id   = t1.datasupplier_id
  32.                      AND t1.closing_activity_id IS NULL
  33.                      AND t3.end_timestamp       IS NOT NULL
  34.                      AND t2.end_timestamp       IS NOT NULL
  35.                      AND t2.process_id        = 15
  36.                      AND t3.activity_id       = 3
  37.                      AND NOT EXISTS (SELECT t11.data_package_guid
  38.                                                          FROM supplier_data.import_detail_activity t11
  39.                                                         WHERE t11.data_package_guid  = t1.data_package_guid
  40.                                                             AND t11.activity_id             IN (4,
  41.                                                                                                                         9
  42.                                                                                                                      )
  43.                                                     )
  44.                      AND NOT EXISTS (SELECT *
  45.                                                          FROM supplier_data.import_detail_v2 t21
  46.                                                         WHERE t21.data_package_guid = t1.data_package_guid
  47.                                                             AND t21.process_id = 9
  48.                                                     )
  49.             UNION
  50.                  SELECT t1.datasupplier_id,
  51.                              RAWTONHEX(t1.data_package_guid) data_package_guid,
  52.                              t1.import_id,
  53.                              t2.seq_id,
  54.                              t2.end_timestamp,
  55.                              t2.cuser,
  56.                              t2.remark,
  57.                              t2.process_id,
  58.                              t3.activity_id,
  59.                              t4.oproj_id,
  60.                              t1.first_process_id,
  61.                              t4.tecdoc_id
  62.                     FROM supplier_data.import_header_v2 t1,
  63.                              supplier_data.import_detail_v2 t2,
  64.                              supplier_data.import_detail_activity t3,
  65.                              suppliers t4
  66.                  WHERE t2.data_package_guid = t1.data_package_guid
  67.                      AND t3.data_package_guid = t2.data_package_guid
  68.                      AND t3.seq_id            = t2.seq_id
  69.                      AND t4.datasupplier_id   = t1.datasupplier_id
  70.                      AND t1.closing_activity_id IS NULL
  71.                      AND t3.end_timestamp       IS NOT NULL
  72.                      AND t2.end_timestamp       IS NOT NULL
  73.                      AND t2.process_id        = 14
  74.                      AND t3.activity_id       = 3
  75.                      AND NOT EXISTS (SELECT t11.data_package_guid
  76.                                                          FROM supplier_data.import_detail_activity t11
  77.                                                         WHERE t11.data_package_guid  = t1.data_package_guid
  78.                                                             AND t11.activity_id             IN (4,
  79.                                                                                                                         9
  80.                                                                                                                      )
  81.                                                     )
  82.                      AND NOT EXISTS (SELECT *
  83.                                                          FROM supplier_data.import_detail_v2 t21
  84.                                                         WHERE t21.data_package_guid = t1.data_package_guid
  85.                                                             AND t21.process_id = 9
  86.                                                     )
  87.             UNION
  88.                 SELECT t1.datasupplier_id,
  89.                              RAWTONHEX(t1.data_package_guid) data_package_guid,
  90.                              t1.import_id,
  91.                              t2.seq_id,
  92.                              t2.end_timestamp,
  93.                              t2.cuser,
  94.                              t2.remark,
  95.                              t2.process_id,
  96.                              t3.activity_id,
  97.                              t4.oproj_id,
  98.                              t1.first_process_id,
  99.                              t4.tecdoc_id
  100.                     FROM supplier_data.import_header_v2 t1,
  101.                              supplier_data.import_detail_v2 t2,
  102.                              supplier_data.import_detail_activity t3,
  103.                              suppliers t4              
  104.                  WHERE t2.data_package_guid = t1.data_package_guid
  105.                      AND t3.data_package_guid = t2.data_package_guid
  106.                      AND t3.seq_id            = t2.seq_id
  107.                      AND t4.datasupplier_id   = t1.datasupplier_id
  108.                      AND t1.closing_activity_id IS NULL
  109.                      AND t3.end_timestamp       IS NOT NULL
  110.                      AND t2.end_timestamp       IS NOT NULL
  111.                      AND t2.process_id        = 7
  112.                      AND t3.activity_id       IN (7,
  113.                                                                                 8
  114.                                                                              )
  115.                      AND NOT EXISTS (SELECT t11.data_package_guid
  116.                                                          FROM supplier_data.import_detail_activity t11
  117.                                                         WHERE t11.data_package_guid  = t1.data_package_guid
  118.                                                             AND t11.activity_id             IN (4,
  119.                                                                                                                         9
  120.                                                                                                                      )
  121.                                                     )
  122.                      AND NOT EXISTS (SELECT *
  123.                                                          FROM supplier_data.import_detail_v2 t21
  124.                                                         WHERE t21.data_package_guid = t1.data_package_guid
  125.                                                             AND t21.process_id = 9
  126.                                                     )
  127.             ),
  128.             events AS
  129.             (
  130.                 SELECT
  131.                     t1.event_id,
  132.                     t1.update_period_id,
  133.                     t2.event_date,
  134.                     t2.cdate
  135.                 FROM
  136.                     data_center.update_event t1,
  137.                     data_center.event_destination t2
  138.                 WHERE t2.destination_id = 1
  139.                 AND t1.event_id = t2.event_id
  140.             ),
  141.             ordered_events AS
  142.             (
  143.                 SELECT
  144.                             t2.data_package_guid,
  145.                             t3.event_id,
  146.                             NVL(t3.event_date, t4.cdate) AS event_date,
  147.                             t3.update_period_id,
  148.                             t2.end_timestamp,
  149.                             t2.cuser,
  150.                             t2.datasupplier_id,
  151.                             t2.tecdoc_id,
  152.                             t2.import_id,
  153.                             t2.oproj_id,
  154.                             t2.remark,
  155.                             t2.seq_id,
  156.                             t2.first_process_id,
  157.                             t2.process_id,
  158.                             t2.activity_id
  159.                     FROM processes t2,
  160.                     events t3,
  161.                     cdp_data.datasupplier_event t4
  162.                     WHERE t2.data_package_guid = t4.data_package_guid
  163.                     AND t3.event_id (+)= t4.event_id
  164.                     ORDER BY NVL(t3.event_date, t4.cdate), t2.import_id, t2.end_timestamp, t2.seq_id
  165.             )
  166.             SELECT *
  167.             FROM (
  168.                 SELECT * FROM ordered_events t1 WHERE t1.update_period_id = 1 AS
  169.             )
  170.             ORDER BY (CASE t1.update_period_id WHEN 1 THEN 0 ELSE 1 END)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement