b0de46790a
Rename migration files (039-052) from sequential to real deployed timestamps, add 11 missing migration files that were applied directly to production, apply invoice_delivery_note_sequences migration, and rename placeholder files for clarity. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
16 lines
608 B
SQL
16 lines
608 B
SQL
-- Enforce BFL 3 kap. month boundary rules at the database level.
|
|
-- period_start must be the 1st of a month.
|
|
-- period_end must be the last day of its month.
|
|
-- Using NOT VALID so existing non-conforming rows are not blocked,
|
|
-- but all future inserts/updates must comply.
|
|
|
|
ALTER TABLE public.fiscal_periods
|
|
ADD CONSTRAINT fiscal_period_start_first_of_month
|
|
CHECK (EXTRACT(DAY FROM period_start) = 1)
|
|
NOT VALID;
|
|
|
|
ALTER TABLE public.fiscal_periods
|
|
ADD CONSTRAINT fiscal_period_end_last_of_month
|
|
CHECK (period_end = (date_trunc('month', period_end) + interval '1 month - 1 day')::date)
|
|
NOT VALID;
|