mirror of
https://github.com/YunoHost-Apps/noalyss_ynh.git
synced 2024-09-03 19:46:20 +02:00
72 lines
No EOL
1.5 KiB
PL/PgSQL
72 lines
No EOL
1.5 KiB
PL/PgSQL
begin;
|
|
|
|
CREATE or replace FUNCTION t_jrn_def_sequence() RETURNS "trigger"
|
|
AS $$
|
|
declare
|
|
nCounter integer;
|
|
|
|
BEGIN
|
|
select count(*) into nCounter
|
|
from pg_class where relname='s_jrn_'||NEW.jrn_def_id;
|
|
if nCounter = 0 then
|
|
execute 'create sequence s_jrn_'||NEW.jrn_def_id;
|
|
raise notice 'Creating sequence s_jrn_%',NEW.jrn_def_id;
|
|
end if;
|
|
|
|
RETURN NEW;
|
|
END;
|
|
$$
|
|
LANGUAGE plpgsql;
|
|
|
|
create or replace function correct_sequence_jrn () returns void
|
|
as $$
|
|
declare
|
|
nCounter integer;
|
|
nJrn_id record;
|
|
begin
|
|
for nJrn_id in select jrn_Def_id from jrn_def loop
|
|
select count(*) into nCounter
|
|
from pg_class where relname='s_jrn_'||nJrn_id.jrn_def_id;
|
|
if nCounter = 0 then
|
|
execute 'create sequence s_jrn_'||nJrn_id.jrn_def_id;
|
|
raise notice 'Creating sequence s_jrn_%',nJrn_id.jrn_def_id;
|
|
end if;
|
|
|
|
|
|
end loop;
|
|
end;
|
|
$$
|
|
LANGUAGE plpgsql;
|
|
select correct_sequence_jrn();
|
|
|
|
drop function correct_sequence_jrn();
|
|
|
|
|
|
|
|
CREATE OR REPLACE FUNCTION tva_delete(int4)
|
|
RETURNS void AS
|
|
$BODY$
|
|
declare
|
|
p_tva_id alias for $1;
|
|
nCount integer;
|
|
begin
|
|
nCount=0;
|
|
select count(*) into nCount from quant_sold where qs_vat_code=p_tva_id;
|
|
if nCount != 0 then
|
|
return;
|
|
|
|
end if;
|
|
select count(*) into nCount from quant_purchase where qp_vat_code=p_tva_id;
|
|
if nCount != 0 then
|
|
return;
|
|
|
|
end if;
|
|
|
|
delete from tva_rate where tva_id=p_tva_id;
|
|
return;
|
|
end;
|
|
$BODY$
|
|
LANGUAGE 'plpgsql' VOLATILE;
|
|
|
|
update version set val=35;
|
|
commit; |