Store Procedure auxilito
Ola pessoal eu desenvoli uma sp onde eu trabalho junto com um generator, o objetivo desta eh zerar diariamente o generator e caso o cliente retroceder a data voltar a situacao do generator para dia em questao, gostaria de saber de vcs mais experientes, se este é o caminho....
Agradeco desde ja
CREATE OR ALTER PROCEDURE PED_SEQUENCIA_IU (
mdata date,
msequencia integer)
returns (
msequencia_out integer)
as
declare variable i integer;
begin
if (exists(select DATA, sequencia from ped_sequencia where (DATA = :MDATA))) then
begin
select sequencia from ped_sequencia where (data = :Mdata) into MSequencia;
i = gen_id(sequencia_pedido, -1*gen_id(sequencia_pedido,0));
i = gen_id(sequencia_pedido,msequencia);
update ped_sequencia
set sequencia = gen_id(sequencia_pedido,1)
where (DATA = :MDATA);
end
else
begin
i = gen_id(sequencia_pedido, -1*gen_id(sequencia_pedido,0));
/* gen_id(GENERATOR sequencia_pedido TO 1);*/
insert into ped_sequencia (
data,
sequencia)
values (
:Mdata,
gen_id(sequencia_pedido,1));
end
Select sequencia from ped_sequencia where (data = :mdata) into msequencia_out;
end^
Agradeco desde ja
CREATE OR ALTER PROCEDURE PED_SEQUENCIA_IU (
mdata date,
msequencia integer)
returns (
msequencia_out integer)
as
declare variable i integer;
begin
if (exists(select DATA, sequencia from ped_sequencia where (DATA = :MDATA))) then
begin
select sequencia from ped_sequencia where (data = :Mdata) into MSequencia;
i = gen_id(sequencia_pedido, -1*gen_id(sequencia_pedido,0));
i = gen_id(sequencia_pedido,msequencia);
update ped_sequencia
set sequencia = gen_id(sequencia_pedido,1)
where (DATA = :MDATA);
end
else
begin
i = gen_id(sequencia_pedido, -1*gen_id(sequencia_pedido,0));
/* gen_id(GENERATOR sequencia_pedido TO 1);*/
insert into ped_sequencia (
data,
sequencia)
values (
:Mdata,
gen_id(sequencia_pedido,1));
end
Select sequencia from ped_sequencia where (data = :mdata) into msequencia_out;
end^
Ricardo54351060
Curtidas 0