altocompta/include/sql/patch/upgrade125.sql
Dany De Bontridder 23f0778bd9 merge rel6919.9
2018-02-07 16:01:41 +01:00

36 lines
No EOL
1.4 KiB
PL/PgSQL

begin;
CREATE OR REPLACE FUNCTION comptaproc.anc_correct_tvand()
RETURNS VOID
AS $function$
declare
n_count numeric;
i record;
newrow_tva record;
begin
for i in select * from operation_analytique where oa_jrnx_id_source is not null loop
-- Get all the anc accounting from the base operation and insert the missing record for VAT
for newrow_tva in select * from operation_analytique where j_id=i.oa_jrnx_id_source and po_id <> i.po_id loop
-- check if the record is yet present
select count(*) into n_count from operation_analytique where po_id=newrow_tva.po_id and oa_jrnx_id_source=i.oa_jrnx_id_source;
if n_count = 0 then
raise info 'insert operation analytique po_id = % oa_group = % ',i.po_id, i.oa_group;
insert into operation_analytique
(po_id,oa_amount,oa_description,oa_debit,j_id,oa_group,oa_date,oa_jrnx_id_source,oa_positive)
values (newrow_tva.po_id,i.oa_amount,i.oa_description,i.oa_debit,i.j_id,i.oa_group,i.oa_date,i.oa_jrnx_id_source,i.oa_positive);
end if;
end loop;
end loop;
end;
$function$
LANGUAGE plpgsql;
select comptaproc.anc_correct_tvand();
update version set val=126;
commit;