From 41e90694a7e973fef2e1a3176cc95cd692a00f0d Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Sat, 20 Oct 2018 08:11:46 -0400 Subject: [PATCH] LP#1793802 Age circ ages payments before billings When aging a circulation, payments must be deleted before billings, since account_adjustements (payment) reference billings. Signed-off-by: Bill Erickson Signed-off-by: Chris Sharp Signed-off-by: Galen Charlton --- Open-ILS/src/sql/Pg/090.schema.action.sql | 2 +- .../sql/Pg/upgrade/XXXX.schema.aged-billing-payment.sql | 7 ++----- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/Open-ILS/src/sql/Pg/090.schema.action.sql b/Open-ILS/src/sql/Pg/090.schema.action.sql index fe3c78a6cc..83e48bf8cf 100644 --- a/Open-ILS/src/sql/Pg/090.schema.action.sql +++ b/Open-ILS/src/sql/Pg/090.schema.action.sql @@ -358,8 +358,8 @@ BEGIN INSERT INTO money.aged_payment SELECT * FROM money.payment_view WHERE xact = OLD.id; - DELETE FROM money.billing WHERE xact = OLD.id; DELETE FROM money.payment WHERE xact = OLD.id; + DELETE FROM money.billing WHERE xact = OLD.id; RETURN OLD; END; diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.aged-billing-payment.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.aged-billing-payment.sql index a88bdd28f3..ab8128f008 100644 --- a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.aged-billing-payment.sql +++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.aged-billing-payment.sql @@ -71,8 +71,8 @@ BEGIN INSERT INTO money.aged_payment SELECT * FROM money.payment_view WHERE xact = OLD.id; - DELETE FROM money.billing WHERE xact = OLD.id; DELETE FROM money.payment WHERE xact = OLD.id; + DELETE FROM money.billing WHERE xact = OLD.id; RETURN OLD; END; @@ -91,10 +91,7 @@ ALTER TABLE money.forgive_payment DISABLE TRIGGER mat_summary_del_tgr; ALTER TABLE money.credit_payment DISABLE TRIGGER mat_summary_del_tgr; ALTER TABLE money.goods_payment DISABLE TRIGGER mat_summary_del_tgr; -DELETE FROM money.payment WHERE id IN ( - SELECT mp.id FROM money.payment mp - JOIN money.aged_payment USING (id) -); +DELETE FROM money.payment WHERE id IN (SELECT id FROM money.aged_payment); ALTER TABLE money.payment ENABLE TRIGGER mat_summary_del_tgr; ALTER TABLE money.cash_payment ENABLE TRIGGER mat_summary_del_tgr; -- 2.43.2