[firebase-br] Procedure de Insercao

Samuel Duarte Matos samuelmatos em cprinformatica.com.br
Sex Maio 11 10:28:43 -03 2007


SET TERM ^ ;

CREATE PROCEDURE NEW_PROCEDURE (
    PAR_PEDIDO INTEGER)
RETURNS (
    NEW_PEDIDO INTEGER)
AS
begin
  NEW_PEDIDO = GEN_ID(GEN_PEDIDONET,1);

  INSERT INTO PEDIDO_NET_ITENS(CD_PEDIDO, CD_ITEM, QT_ITEM, DE_ITEM,
VL_ITEM)
  SELECT :new_pedido, CD_ITEM, QT_ITEM, DE_ITEM, VL_ITEM FROM 
PEDIDO_NET_ITENS
WHERE CD_PEDIDO=:par_pedido

  suspend;
end

^

SET TERM ; ^



"INFOSAG" <infosag em terra.com.br> escreveu na 
mensagem news:00c401c79342$5d620ce0$6900a8c0 em infozx...
amigo eu fiz essa procedure dessa forma:

criei um variavel de saida chamada NEW_PEDIDO, pois vou precisar saber qual
o numero

do pedido que ele gerou

e criei uma variavel de entrada PAR_PEDIDO, onde vou passar o numero do
pedido que
quero clonar.

pergunto, como "jogo" essas variaveis ali no select ? (a PAR_PEDIDO  vai no
lugar do 999
e a NEW_PEDIDO vai no lugar da 1000)

desde ja agradeço a ajuda !


SET TERM ^ ;

CREATE PROCEDURE NEW_PROCEDURE (
    PAR_PEDIDO INTEGER)
RETURNS (
    NEW_PEDIDO INTEGER)
AS
begin
  NEW_PEDIDO = GEN_ID(GEN_PEDIDONET,1);

  INSERT INTO PEDIDO_NET_ITENS(CD_PEDIDO, CD_ITEM, QT_ITEM, DE_ITEM,
VL_ITEM)
  SELECT 1000, CD_ITEM, QT_ITEM, DE_ITEM, VL_ITEM FROM PEDIDO_NET_ITENS
WHERE CD_PEDIDO=9999;

  suspend;
end

^

SET TERM ; ^


----- Original Message ----- 
From: "omar l m rosa" <omar em conesul.inf.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Thursday, May 10, 2007 3:49 PM
Subject: Re: [firebase-br] Procedure de Insercao


Barbada...


insert into itenspedido (pedido, x, y, z)
select 101,z, y, x from itemspedido where pedido = 100;



----- Original Message -----
From: "INFOSAG" <infosag em terra.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Thursday, May 10, 2007 3:25 PM
Subject: [firebase-br] Procedure de Insercao


Pessoal tenho uma funcao no meu sistema e clona uma determinada venda;

essa funcao, por ser on-line as vezes ela demora bastante.

Existe um jeito de fazer um procedure no firebird, onde eu passe o numero do
pedido
e ele me clona a quantidade de itens que tiver para um proximo numero de
pedido ?

exemplificando:

Pedido Nr 100
Itens, A, B, C, D

Funcao  p/ clonar - Resultado= Pedido nr 101
                                                Itens A, B, C, D



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa







Mais detalhes sobre a lista de discussão lista