Files
brandize_bi/sql/Delete_Activity_Period.sql
2026-10-09 15:01:40 -03:00

41 lines
1.6 KiB
PL/PgSQL

-- ============================================================================
-- Loeschen aller Datensaetze eines Abrechnungszeitraums
-- Odoo 17 / PostgreSQL
--
-- Modell : brandize.datacenter.amazon.vat.transaction
-- Tabelle: brandize_datacenter_amazon_vat_transaction
--
-- Parameter:
-- %(month)s Abrechnungszeitraum als Text, z. B. '2026-SEP'
--
-- Aufruf (Odoo / psycopg2):
-- cr.execute(open('Delete_Activity_Period.sql').read(), {'month': '2026-SEP'})
--
-- In psql stattdessen:
-- \set month '2026-SEP'
-- ... WHERE activity_period = :'month'
--
-- ACHTUNG: Loescht unwiderruflich. Vorher die Anzahl pruefen (siehe unten).
-- ============================================================================
-- Kontrolle vor dem Loeschen (betroffene Datensaetze zaehlen):
-- SELECT count(*) FROM brandize_datacenter_amazon_vat_transaction
-- WHERE activity_period = %(month)s;
DELETE FROM brandize_datacenter_amazon_vat_transaction
WHERE activity_period = %(month)s;
-- ----------------------------------------------------------------------------
-- In psql empfiehlt sich eine Transaktionsklammer, damit die Loeschung erst
-- nach Sichtkontrolle bestaetigt wird:
--
-- BEGIN;
-- DELETE FROM brandize_datacenter_amazon_vat_transaction
-- WHERE activity_period = :'month';
-- -- Ergebnis pruefen, dann:
-- COMMIT; -- bestaetigen
-- -- ROLLBACK; -- verwerfen
--
-- In Odoo NICHT verwenden: dort umschliesst Odoo die Transaktion selbst.
-- ----------------------------------------------------------------------------