For dentro de uma procedure como ?

Firebird

21/10/2003

Quero fazer uma inserção na tabela de nota e uma multipla inserção na tabela de itens da nota. Acho que deve ser feita atraves de um for dentro da procedure. Mas como ?
Como fazer uma procedure para inserir a nota e os itens da nota ?
Delphi 6 / firebird 1.5 rc3


Midas

Midas

Curtidas 0

Respostas

Afarias

Afarias

21/10/2003

depende muito do que vc realmente quer fazer... mais detalhes seriam importante... mas ai vai um ex::

set term ^;

create procedure insere_meste_e_detalhes (no_detalhes integer) as
declare variable id_mestre integer;
begin
id_mestre = gen_id(generator_mestre, 1);
insert into mestre (id_mestre, data) values (:id_mestre, current_date);
while (no_detalhes > 0) do
begin
insert into detalhe (id_mestre, ordem) values (:id_mestre, no_detalhe);
no_detalhe = no_detalhe - 1;
end
end^



T+


GOSTEI 0
Midas

Midas

21/10/2003

Tenho uma tabela de notas e outra de itens da nota.
Sendo que existe um relacionamento de 1 para N
1 nota para varios itens.
desejo fazer uma procedure que grave dados na tabela nota e na mesma procedure grave os itens referente a nota na tabela itens.

tabela nota
cod_ent, data_ent, emissao_ent, nrdocto_ent, serie_ent, frete_ent,
cod_clien, cod_cfop, cod_doc

tabela itens
cod_item, cod_ent, cod_prod, quant_item, total_item, ipi_item, icms_item

Existem um relacionamento duplo na tabela itens ´filha´ (cod_item,cod_ent)


GOSTEI 0
Afarias

Afarias

21/10/2003

cara... esse tipo de coisa não é feito via procedimento (procedimentos não são pra isso!!)

o máximo q vc pode ter é um procedimento que ´emcapsule´ um insert na tabela Mestre e outro procedimento que faça o mesmo para a tabela Detalhe.

de qualquer forma, vc terá sempre q realizar INSERTS separados para a mestre e a detalhe.


T+


GOSTEI 0
Midas

Midas

21/10/2003

Obrigado pela ajuda....
valeu.


GOSTEI 0
POSTAR