Desculpa meu email do yahoo bagunço a resposta segue novamente select cod_produto, ent_saida, qte_mov, sum(decode(ent_saida,'ENTRADA',qte_mov,qte_mov*-1)) over (order by rownum) from estoque;
[] ________________________________ From: alex borgmann <alexborgm...@yahoo.com> To: oracle_br@yahoogrupos.com.br Sent: Thursday, February 26, 2009 12:21:34 PM Subject: Re: RES: [oracle_br] Kardex ou Extrato de saldo de estoque. Boa tarde, Marcelo, Experimenta com função analitica, select COD_PRODUTO ,sumFROM ESTOQUE ; (decode( ENT_SAIDA ,'ENTRADA',QTE_ MOV,QTE_MOV* -1)) over(order by rownum) [] ____________ _________ _________ __ From: Marcelo <marc...@autopratens e.com.br> To: oracle...@yahoogrup os.com.br Sent: Thursday, February 26, 2009 11:43:49 AM Subject: RES: [oracle_br] Kardex ou Extrato de saldo de estoque. Não, se fosse simples assim não teria perguntado, rsss. Eu quero montar uma query que me exiba o saldo a cada movimentação, como um Kardex. Tentei algo aqui com a função LAG, que permite retornar valores de linhas anteriores, mas não consegui fazer funcionar, pois não consigo pegar o saldo anterior e sim apenas a quantidade movimentada na linha anterior. Assim é o resultado da query que eu espero obter. COD_PRODUTO ENT_SAIDA QTE_MOV SALDO ------------ ------------ ---------- ------ PRODUTO ENTRADA 10 10 PRODUTO ENTRADA 5 15 PRODUTO SAIDA 3 12 PRODUTO SAIDA 6 6 Entendeu? Marcelo Alberto Lauschner Analista/Desenvolve dor de Sistemas Auto Pratense Ltda *- Fone: (0XX54) 3242-3620 *- Fax: (0XX54) 3242-3648 * - E-mail: <mailto:marcelo@ autopratens e.com.br> marc...@autopratens e.com.br * - WWW: www.autopratense. com.br _____ De: oracle...@yahoogrup os.com.br [mailto:oracle_ b...@yahoogrup os.com.br] Em nome de Elis Azevedo Nery Enviada em: quinta-feira, 26 de fevereiro de 2009 11:22 Para: oracle...@yahoogrup os.com.br Assunto: Res: [oracle_br] Kardex ou Extrato de saldo de estoque. É disso que você precisa? select COD_PRODUTO ,SUM(decode( ENT_SAIDA ,'ENTRADA',QTE_ MOV,QTE_MOV* -1)) SALDO FROM ESTOQUE GROUP BY COD_PRODUTO ____________ _________ _________ __ De: Marcelo Alberto Lauschner <marc...@autopraten s <mailto:marcelo% 40autopratense. com.br> e.com.br> Para: oracle...@yahoogrup <mailto:oracle_ br%40yahoogrupos .com.br> os.com.br Enviadas: Quinta-feira, 26 de Fevereiro de 2009 14:13:56 Assunto: [oracle_br] Kardex ou Extrato de saldo de estoque. Estou quebrando a cabeça para tentar montar uma query que consiga retornar numa coluna o saldo de estoque de um produto a cada movimento, como um extrato de conta bancária. Connected to Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 Connected as SIGA SQL> CREATE TABLE ESTOQUE(COD_ PRODUTO VARCHAR2(15) ,ENT_SAIDA VARCHAR2 (7),QTE_MOV NUMBER); Table created SQL> INSERT INTO ESTOQUE('PRODUTO' ,'ENTRADA' ,10); SQL> INSERT INTO ESTOQUE VALUES ('PRODUTO',' ENTRADA', 10); 1 row inserted SQL> INSERT INTO ESTOQUE VALUES ('PRODUTO',' ENTRADA', 5); 1 row inserted SQL> INSERT INTO ESTOQUE VALUES ('PRODUTO',' SAIDA',3) ; 1 row inserted SQL> INSERT INTO ESTOQUE VALUES ('PRODUTO',' SAIDA',6) ; 1 row inserted SQL> SELECT * FROM ESTOQUE ORDER BY ROWID; COD_PRODUTO ENT_SAIDA QTE_MOV ------------ --- --------- ---------- PRODUTO ENTRADA 10 PRODUTO ENTRADA 5 PRODUTO SAIDA 3 PRODUTO SAIDA 6 Ao final adicionar uma coluna que tenha o saldo linha a linha. COD_PRODUTO ENT_SAIDA QTE_MOV SALDO ------------ --- --------- ---------- ------ PRODUTO ENTRADA 10 10 PRODUTO ENTRADA 5 15 PRODUTO SAIDA 3 12 PRODUTO SAIDA 6 6 Espero que alguém tenha uma luz para me ajudar. At. Marcelo Alberto Lauschner. Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbusca <http://br.maisbusca dos.yahoo. com> dos.yahoo.com [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]