Advertisement
DjonathanKrause

Query Buffer Barcellos Corrigida

Jan 31st, 2017
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2.   Query criada por Barcellos. Chamado 122490.
  3.  
  4. */
  5.  
  6. SELECT ARMAZEM
  7.       ,ITM.BR_ITEM_PAI
  8.       ,ITEM
  9.       ,ITM.br_hie_sub_class AS Subclasse
  10.       ,ALOCACAO
  11.       ,TIPO
  12.       ,DATAALOCACAO
  13.       ,USF_GET_SKU_PACK_QTY(ITEM, ARMAZEM, "QTD ALOCADA") AS "QTD ALOCADA PECAS"
  14.       ,ONDA
  15.       ,CASE
  16.         WHEN ONDA IS NULL
  17.           THEN 'Nao Atribuido'
  18.         WHEN EXISTS (SELECT 1 FROM t_pick_detail PKD2
  19.                   WHERE PKD2.wh_id = cons.ARMAZEM
  20.                     AND PKD2.wave_id = cons.ONDA
  21.                     AND PKD2.item_number = cons.ITEM
  22.                     AND PKD2.TYPE <> 'PP'
  23.                     AND PKD2.status = 'RELEASED')
  24.           THEN 'Pendente'
  25.         /* Add Djonathan 31/01/17 */                    
  26.         WHEN EXISTS (SELECT 1 FROM t_pick_detail PKD2  
  27.                      WHERE PKD2.wh_id = cons.ARMAZEM      
  28.                      AND PKD2.wave_id = cons.ONDA
  29.                      AND PKD2.item_number = cons.ITEM
  30.                      AND PKD2.TYPE <> 'PP'
  31.                      AND PKD2.status = 'STAGED')
  32.           THEN 'Em Stage'
  33.         WHEN EXISTS (SELECT 1 FROM t_pick_detail PKD2  
  34.                      WHERE PKD2.wh_id = cons.ARMAZEM      
  35.                      AND PKD2.wave_id = cons.ONDA
  36.                      AND PKD2.item_number = cons.ITEM
  37.                      AND PKD2.TYPE <> 'PP'
  38.                      AND PKD2.status = 'SHIPPED')
  39.           THEN 'Expedido'            
  40.         -- ELSE 'Concluido'
  41.         ELSE (SELECT pkd2.status FROM t_pick_detail PKD2  
  42.               WHERE PKD2.wh_id = cons.ARMAZEM      
  43.               AND PKD2.wave_id = cons.ONDA
  44.               AND PKD2.item_number = cons.ITEM
  45.               AND PKD2.TYPE <> 'PP')
  46.        /* Fim add DJ */      
  47.       END AS STATUS
  48.       ,"CRIACAO ONDA"
  49.       ,"RELEASED DATE"
  50.       ,"ULTIMA SEPAR"
  51.       ,USF_GET_SKU_PACK_QTY(ITEM, ARMAZEM, "QTD SEP") AS "QTD SEP PECAS"
  52.       ,USF_GET_SKU_PACK_QTY(ITEM, ARMAZEM, "QTD DIS") AS "QTD DIS PECAS"
  53.       ,USF_GET_SKU_PACK_QTY(ITEM, ARMAZEM, "QTD EXP") AS "QTD EXP PECAS"
  54.       ,USF_GET_SKU_PACK_QTY(ITEM, ARMAZEM, "QTD PECAS BUF") AS "QTD PECAS BUF"
  55.       ,USF_GET_SKU_PACK_QTY(ITEM, ARMAZEM, "QTD PECAS PRE BUF") AS "QTD PECAS PRE BUF"
  56. FROM (SELECT  orm.wh_id AS "ARMAZEM"
  57.      ,ord.item_number AS "ITEM"
  58.      ,ord.order_number AS "ALOCACAO"
  59.      ,(SELECT t.text FROM t_lookup t WHERE t.lookup_id = orm.type_id) AS "TIPO"
  60.      ,orm.order_date AS "DATAALOCACAO"
  61.      ,SUM(ord.qty) AS "QTD ALOCADA"
  62.      ,wm.wave_id AS "ONDA"
  63.      ,wm.CREATED_DATE AS "CRIACAO ONDA"
  64.      ,wm.released_date AS "RELEASED DATE"  
  65.      ,(SELECT MAX(TO_CHAR(tl.end_tran_date, 'DD/MM/YYYY') || ' ' || TO_CHAR(tl.end_tran_time,'HH:MI:SS')) FROM t_tran_log tl
  66.        WHERE tl.tran_type IN ('326','327','328')
  67.        AND tl.control_number IN (SELECT pkd.order_number FROM t_pick_detail pkd
  68.                                  WHERE pkd.wave_id = wm.wave_id
  69.                                  AND pkd.item_number = ord.item_number
  70.                                  AND (pkd.work_type = '26' OR pkd.work_type = '23'))) AS "ULTIMA SEPAR"
  71.      ,(SELECT SUM(pkd.staged_quantity) FROM t_pick_detail pkd
  72.        WHERE pkd.wave_id = wm.wave_id
  73.        AND pkd.item_number = ord.item_number
  74.        AND (pkd.work_type = '26' OR pkd.work_type = '23')) AS "QTD SEP"
  75.      ,SUM(pkd.staged_quantity) AS "QTD DIS"
  76.      ,SUM(pkd.shipped_quantity) AS "QTD EXP"
  77.      ,(SELECT SUM(sto.actual_qty) FROM t_stored_item sto, t_location loc
  78.        WHERE loc.location_id = sto.location_id
  79.        AND sto.item_number = ord.item_number
  80.        AND sto.wh_id = orm.wh_id
  81.        AND loc.TYPE = 'I'
  82.        AND sto.wh_id = loc.wh_id -- Add DJ 31/07/17
  83.        GROUP BY si.wh_id, si.item_number) AS "QTD PECAS BUF"
  84.      , (SELECT SUM(sto.actual_qty)
  85.         FROM t_stored_item sto, t_location loc
  86.         WHERE loc.location_id = sto.location_id
  87.         AND sto.wh_id = loc.wh_id -- Add DJ 31/07/17
  88.         AND sto.item_number = ord.item_number
  89.         AND sto.wh_id = orm.wh_id
  90.         AND loc.TYPE != 'I'
  91.         --and loc.location_id like 'RECE%'
  92.         AND loc.location_id NOT IN ('PRE_RECE_TRANSF','RETENCAO')
  93.         AND NOT EXISTS (SELECT 1 FROM t_tran_log LOG
  94.                         WHERE loc.wh_id = LOG.wh_id
  95.                         AND loc.TYPE = 'I'
  96.                         AND LOG.location_id_2 = loc.location_id
  97.                         AND LOG.wh_id = sto.wh_id
  98.                         AND LOG.hu_id = sto.hu_id) -- Armazenado alguma vez
  99.         GROUP BY sto.wh_id, sto.item_number;) AS "QTD PECAS PRE BUF"
  100.       FROM t_order orm
  101.         INNER JOIN t_order_detail ord
  102.           ON ord.order_number = orm.order_number
  103.           AND ord.wh_id = orm.wh_id
  104.         LEFT JOIN t_pick_detail pkd
  105.           ON pkd.order_number = orm.order_number
  106.           AND pkd.wh_id = orm.wh_id
  107.           AND pkd.line_number = ord.line_number
  108.           AND pkd.item_number = ord.item_number
  109.         LEFT JOIN t_wave_master wm
  110.           ON wm.wave_id = pkd.wave_id
  111.           AND wm.wh_id = pkd.wh_id
  112. WHERE TRUNC(orm.order_date) >= TRUNC(SYSDATE - 90)
  113. AND orm.type_id IN ('1670','1902')
  114. AND orm.wh_id = '114'
  115. GROUP BY orm.wh_id, ord.item_number, ord.order_number, orm.type_id, orm.order_date, wm.wave_id, wm.released_date, wm.created_date
  116. ORDER BY orm.order_date DESC) cons
  117. INNER JOIN t_item_master ITM
  118.    ON ITM.wh_id = cons.ARMAZEM
  119.    AND ITM.item_number = cons.ITEM;
  120.  
  121. SELECT * FROM t_pick_detail
  122. WHERE wave_id = 'wave31.07.11.16cx';
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement