Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

d_gneto

Agrupando datas diferentes e somando

Recommended Posts

Olá, bom dia a todos.

Estou com um problema tenho uma query onde me traz o saldo de pedido, saldo de estoque e a diferença que eu preciso produzir, porém existe casos eu tenho o mesmo código de item com prazos de entrega diferente ou seja tenho um item numero 10 com prazo de entrega para o dia 9, dia 10 e 11 quero que o mesmo some as 3 datas caso o usuário puxe do dia 11 para tras e quando ele puxar só o dia 9 ele puxe somente a quantidade do dia 9 e assim por diante, abaixo a query que eu montei.

SELECT
a.cod_empresa
,a.cod_item
,c.den_item
,c.den_item_reduz
,c.cod_unid_med
,a.prz_entrega
,sum(a.qtd_pecas_solic-a.qtd_pecas_atend-a.qtd_pecas_cancel)saldo_pedidos
,(SELECT (z.qtd_liberada) 
  FROM estoque z 
  WHERE z.cod_empresa = a.cod_empresa 
  AND z.cod_item = a.cod_item) AS saldo_estoque
,((SELECT (z.qtd_liberada) 
   FROM estoque z 
   WHERE z.cod_empresa = a.cod_empresa 
   AND z.cod_item = a.cod_item) - 
   sum(a.qtd_pecas_solic-a.qtd_pecas_atend-a.qtd_pecas_cancel)) dif_receb
,(SELECT b.den_estr_linprod 
  FROM linha_prod b 
  WHERE b.cod_lin_prod = c.cod_lin_prod 
  AND b.cod_lin_recei = '0' 
  AND b.cod_seg_merc = '0') teste_a
,(SELECT b.den_estr_linprod 
  FROM linha_prod b 
  WHERE b.cod_lin_prod = c.cod_lin_prod 
  AND b.cod_lin_recei = c.cod_lin_recei AND b.cod_seg_merc = '0') teste_b

FROM ped_itens a

JOIN item c
ON(c.cod_empresa = a.cod_empresa)
AND(c.cod_item = a.cod_item)
AND(c.ies_situacao = 'A')
AND(c.ies_tip_item = 'F')

WHERE (a.qtd_pecas_solic-a.qtd_pecas_atend-a.qtd_pecas_cancel) > '0'

GROUP BY
a.cod_empresa
,a.cod_item
,c.den_item
,c.den_item_reduz
,c.cod_unid_med
,a.prz_entrega
,teste_a
,teste_b

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas qual o limite para se buscar datas para trás ?

3 dias ? dias úteis ?

Talvez um CASE resolva a questão.

 

A sua query não parece tratar datas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.