pipekit/config/modules/artrn.sql
Paul Trowbridge dd9f89f4b5 feat: version-control pipeline definitions via export/apply
Add `pipekit export` / `pipekit apply` (pipekit/config_io.py) to serialise the
DB's config — drivers, connections, modules (+ columns, watermarks, hooks),
groups, schedules — to a git-trackable text tree under config/, and rehydrate
it. SQLite stays runtime state; definitions become diffable/reviewable/
revertible.

- config only: run_log/group_run/settings and per-run state columns excluded
- name-keyed refs (portable across databases); source_query in .sql sidecars;
  columns as real JSON arrays for line-by-line diffs
- newline-normalised so CRLF-vs-LF is never a spurious change
- apply is create/update by name; child collections fully synced; top-level
  deletes gated behind --prune; --dry-run prints the plan
- round-trip is identity (export -> apply --dry-run == nothing to do)

Commits the current config/ as the first baseline, capturing the freshly
populated columns_json for rm00101/rm00301/iv00101. Documented in SPEC.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-22 10:56:55 -04:00

35 lines
1.0 KiB
SQL

SELECT
RTRIM(LOCOMP) AS locomp,
RTRIM(LOCUST) AS locust,
RTRIM("LOINV#") AS "loinv#",
RTRIM(LOTTYP) AS lottyp,
CASE WHEN LOIDAT IN (DATE('0001-01-01'), DATE('9999-12-31')) THEN NULL ELSE LOIDAT END AS loidat,
CASE WHEN LOTDAT IN (DATE('0001-01-01'), DATE('9999-12-31')) THEN NULL ELSE LOTDAT END AS lotdat,
RTRIM(LOTRTP) AS lotrtp,
LOAMT AS loamt,
RTRIM(LOCURR) AS locurr,
RTRIM("LOCHQ#") AS "lochq#",
RTRIM(LOTRDS) AS lotrds,
RTRIM("LOCOM#") AS "locom#",
RTRIM(LOARAC) AS loarac,
RTRIM(A1) AS a1,
LOFSYR AS lofsyr,
LOFSPR AS lofspr,
RTRIM(A2) AS a2,
RTRIM(LOPCUS) AS lopcus,
CASE WHEN LOCHDT IN (DATE('0001-01-01'), DATE('9999-12-31')) THEN NULL ELSE LOCHDT END AS lochdt,
RTRIM(LOMAJR) AS lomajr,
RTRIM(LOMINR) AS lominr,
RTRIM(LOTERY) AS lotery,
RTRIM(LOCUSR) AS locusr,
RTRIM(LOARBC) AS loarbc,
RTRIM(LOPYBC) AS lopybc,
LOCRID AS locrid,
LOCUEX AS locuex,
LOTNX AS lotnx,
LOABTH AS loabth,
LOCBTH AS locbth,
LOVAMT AS lovamt
FROM LGDAT.ARTRN
WHERE LOTNX >= {lotnx}