PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum Erro ao Tentar Fazer uma Procedure para execultar no delphi #506273

05/01/2015

0

Boa Tarde Pessoal, Estou tentando fazer uma procedure para obter estoque dos produtos com entradas de notas e inventario, e que os tatais das entradas diminuem com a saidas e perdas, so que e oseguinte, estou execultando essa procedure abaixo so que ela nao apresenta todos os lotes apenas uns, preciso muito dessas informacoes para concluir um sistema,

Banco Firebird 2.5 uso o componente no delphi ZEOS,

Sao as seguintes tabelas
SNGPC_INVENTARIO
SNGPC_PERDAS
FARMA_SNGPC TIPO_MOVIMENTO = 1 ENTRADAS 3 SAIDAS
ITENS_SNGPC QUE E LIGADA COM O COD_SNGPC DA TABELA FARMA_SNGPC

SEGUE A PROCEDURE
begin
total_entradas = 0;
total_saidas =0;
total_saldo =0;
total_inventario=0;


FOR select I.numero_lote, SUM( I.QUANT) from itens_sngpc I
inner join c000025 C
on (i.cod_barras = C.codbarra)
where C.codbarra = :COD_BARRA
GROUP BY I.numero_lote
into :num_lote, :total_entradas do
begin
select sum(QUANT) from sngpc_inventario
where COD_BARRAS = :cod_barra
INTO :total_inventario;

select sum(T.QUANT) from itens_sngpc T
inner join farma_sngpc S
on ( T.cod_sngpc = S.cod_sngpc )
WHERE S.tipo_movimento = 1 AND T.COD_BARRAS = :cod_barra
INTO :total_entradas;


select sum(T.QUANT) from itens_sngpc T
inner join farma_sngpc S
on ( T.cod_sngpc = S.cod_sngpc )
WHERE S.tipo_movimento = 3 AND T.COD_BARRAS = :cod_barra
INTO :total_saidas;

if (:total_inventario is null) then total_inventario = 0;
if (:total_entradas is null ) then total_entradas = 0;
total_entradas = total_entradas + total_inventario;
if (:total_saidas is null ) then total_saidas = 0;
total_saldo = ( :total_entradas - :total_saidas);



suspend;

end




end

de ja agradesco a ajuda
Cayro Rodrigo

Cayro Rodrigo

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar