pipekit/config/modules/iv00102.json
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

569 lines
14 KiB
JSON

{
"name": "iv00102",
"source_connection": "sqlserver",
"dest_connection": "usmidsap02",
"dest_table": "gp.iv00102",
"staging_table": "pipekit_staging.iv00102",
"merge_strategy": "full",
"merge_key": "dex_row_id",
"enabled": 1,
"dest_description": null,
"columns": [
{
"source_name": "ITEMNMBR",
"source_type": "CHAR(31)",
"dest_name": "itemnmbr",
"dest_type": "text",
"description": null
},
{
"source_name": "LOCNCODE",
"source_type": "CHAR(11)",
"dest_name": "locncode",
"dest_type": "text",
"description": null
},
{
"source_name": "BINNMBR",
"source_type": "CHAR(21)",
"dest_name": "binnmbr",
"dest_type": "text",
"description": null
},
{
"source_name": "RCRDTYPE",
"source_type": "SMALLINT",
"dest_name": "rcrdtype",
"dest_type": "smallint",
"description": null
},
{
"source_name": "PRIMVNDR",
"source_type": "CHAR(15)",
"dest_name": "primvndr",
"dest_type": "text",
"description": null
},
{
"source_name": "ITMFRFLG",
"source_type": "TINYINT",
"dest_name": "itmfrflg",
"dest_type": "smallint",
"description": null
},
{
"source_name": "BGNGQTY",
"source_type": "NUMERIC(19,5)",
"dest_name": "bgngqty",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "LSORDQTY",
"source_type": "NUMERIC(19,5)",
"dest_name": "lsordqty",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "LRCPTQTY",
"source_type": "NUMERIC(19,5)",
"dest_name": "lrcptqty",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "LSTORDDT",
"source_type": "DATETIME",
"dest_name": "lstorddt",
"dest_type": "timestamp",
"description": null
},
{
"source_name": "LSORDVND",
"source_type": "CHAR(15)",
"dest_name": "lsordvnd",
"dest_type": "text",
"description": null
},
{
"source_name": "LSRCPTDT",
"source_type": "DATETIME",
"dest_name": "lsrcptdt",
"dest_type": "timestamp",
"description": null
},
{
"source_name": "QTYRQSTN",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtyrqstn",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYONORD",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtyonord",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYBKORD",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtybkord",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTY_Drop_Shipped",
"source_type": "NUMERIC(19,5)",
"dest_name": "qty_drop_shipped",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYINUSE",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtyinuse",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYINSVC",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtyinsvc",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYRTRND",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtyrtrnd",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYDMGED",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtydmged",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYONHND",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtyonhnd",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "ATYALLOC",
"source_type": "NUMERIC(19,5)",
"dest_name": "atyalloc",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYCOMTD",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtycomtd",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "QTYSOLD",
"source_type": "NUMERIC(19,5)",
"dest_name": "qtysold",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "NXTCNTDT",
"source_type": "DATETIME",
"dest_name": "nxtcntdt",
"dest_type": "timestamp",
"description": null
},
{
"source_name": "NXTCNTTM",
"source_type": "DATETIME",
"dest_name": "nxtcnttm",
"dest_type": "timestamp",
"description": null
},
{
"source_name": "LSTCNTDT",
"source_type": "DATETIME",
"dest_name": "lstcntdt",
"dest_type": "timestamp",
"description": null
},
{
"source_name": "LSTCNTTM",
"source_type": "DATETIME",
"dest_name": "lstcnttm",
"dest_type": "timestamp",
"description": null
},
{
"source_name": "STCKCNTINTRVL",
"source_type": "SMALLINT",
"dest_name": "stckcntintrvl",
"dest_type": "smallint",
"description": null
},
{
"source_name": "Landed_Cost_Group_ID",
"source_type": "CHAR(15)",
"dest_name": "landed_cost_group_id",
"dest_type": "text",
"description": null
},
{
"source_name": "BUYERID",
"source_type": "CHAR(15)",
"dest_name": "buyerid",
"dest_type": "text",
"description": null
},
{
"source_name": "PLANNERID",
"source_type": "CHAR(15)",
"dest_name": "plannerid",
"dest_type": "text",
"description": null
},
{
"source_name": "ORDERPOLICY",
"source_type": "SMALLINT",
"dest_name": "orderpolicy",
"dest_type": "smallint",
"description": null
},
{
"source_name": "FXDORDRQTY",
"source_type": "NUMERIC(19,5)",
"dest_name": "fxdordrqty",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "ORDRPNTQTY",
"source_type": "NUMERIC(19,5)",
"dest_name": "ordrpntqty",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "NMBROFDYS",
"source_type": "SMALLINT",
"dest_name": "nmbrofdys",
"dest_type": "smallint",
"description": null
},
{
"source_name": "MNMMORDRQTY",
"source_type": "NUMERIC(19,5)",
"dest_name": "mnmmordrqty",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "MXMMORDRQTY",
"source_type": "NUMERIC(19,5)",
"dest_name": "mxmmordrqty",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "ORDERMULTIPLE",
"source_type": "NUMERIC(19,5)",
"dest_name": "ordermultiple",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "REPLENISHMENTMETHOD",
"source_type": "SMALLINT",
"dest_name": "replenishmentmethod",
"dest_type": "smallint",
"description": null
},
{
"source_name": "SHRINKAGEFACTOR",
"source_type": "NUMERIC(19,5)",
"dest_name": "shrinkagefactor",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "PRCHSNGLDTM",
"source_type": "NUMERIC(19,5)",
"dest_name": "prchsngldtm",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "MNFCTRNGFXDLDTM",
"source_type": "NUMERIC(19,5)",
"dest_name": "mnfctrngfxdldtm",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "MNFCTRNGVRBLLDTM",
"source_type": "NUMERIC(19,5)",
"dest_name": "mnfctrngvrblldtm",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "STAGINGLDTME",
"source_type": "NUMERIC(19,5)",
"dest_name": "stagingldtme",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "PLNNNGTMFNCDYS",
"source_type": "SMALLINT",
"dest_name": "plnnngtmfncdys",
"dest_type": "smallint",
"description": null
},
{
"source_name": "DMNDTMFNCPRDS",
"source_type": "SMALLINT",
"dest_name": "dmndtmfncprds",
"dest_type": "smallint",
"description": null
},
{
"source_name": "INCLDDINPLNNNG",
"source_type": "TINYINT",
"dest_name": "inclddinplnnng",
"dest_type": "smallint",
"description": null
},
{
"source_name": "CALCULATEATP",
"source_type": "TINYINT",
"dest_name": "calculateatp",
"dest_type": "smallint",
"description": null
},
{
"source_name": "AUTOCHKATP",
"source_type": "TINYINT",
"dest_name": "autochkatp",
"dest_type": "smallint",
"description": null
},
{
"source_name": "PLNFNLPAB",
"source_type": "TINYINT",
"dest_name": "plnfnlpab",
"dest_type": "smallint",
"description": null
},
{
"source_name": "FRCSTCNSMPTNPRD",
"source_type": "SMALLINT",
"dest_name": "frcstcnsmptnprd",
"dest_type": "smallint",
"description": null
},
{
"source_name": "ORDRUPTOLVL",
"source_type": "NUMERIC(19,5)",
"dest_name": "ordruptolvl",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "SFTYSTCKQTY",
"source_type": "NUMERIC(19,5)",
"dest_name": "sftystckqty",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "REORDERVARIANCE",
"source_type": "NUMERIC(19,5)",
"dest_name": "reordervariance",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "PORECEIPTBIN",
"source_type": "CHAR(15)",
"dest_name": "poreceiptbin",
"dest_type": "text",
"description": null
},
{
"source_name": "PORETRNBIN",
"source_type": "CHAR(15)",
"dest_name": "poretrnbin",
"dest_type": "text",
"description": null
},
{
"source_name": "SOFULFILLMENTBIN",
"source_type": "CHAR(15)",
"dest_name": "sofulfillmentbin",
"dest_type": "text",
"description": null
},
{
"source_name": "SORETURNBIN",
"source_type": "CHAR(15)",
"dest_name": "soreturnbin",
"dest_type": "text",
"description": null
},
{
"source_name": "BOMRCPTBIN",
"source_type": "CHAR(15)",
"dest_name": "bomrcptbin",
"dest_type": "text",
"description": null
},
{
"source_name": "MATERIALISSUEBIN",
"source_type": "CHAR(15)",
"dest_name": "materialissuebin",
"dest_type": "text",
"description": null
},
{
"source_name": "MORECEIPTBIN",
"source_type": "CHAR(15)",
"dest_name": "moreceiptbin",
"dest_type": "text",
"description": null
},
{
"source_name": "REPAIRISSUESBIN",
"source_type": "CHAR(15)",
"dest_name": "repairissuesbin",
"dest_type": "text",
"description": null
},
{
"source_name": "ReplenishmentLevel",
"source_type": "SMALLINT",
"dest_name": "replenishmentlevel",
"dest_type": "smallint",
"description": null
},
{
"source_name": "POPOrderMethod",
"source_type": "SMALLINT",
"dest_name": "popordermethod",
"dest_type": "smallint",
"description": null
},
{
"source_name": "MasterLocationCode",
"source_type": "CHAR(11)",
"dest_name": "masterlocationcode",
"dest_type": "text",
"description": null
},
{
"source_name": "POPVendorSelection",
"source_type": "SMALLINT",
"dest_name": "popvendorselection",
"dest_type": "smallint",
"description": null
},
{
"source_name": "POPPricingSelection",
"source_type": "SMALLINT",
"dest_name": "poppricingselection",
"dest_type": "smallint",
"description": null
},
{
"source_name": "PurchasePrice",
"source_type": "NUMERIC(19,5)",
"dest_name": "purchaseprice",
"dest_type": "numeric(19,5)",
"description": null
},
{
"source_name": "IncludeAllocations",
"source_type": "TINYINT",
"dest_name": "includeallocations",
"dest_type": "smallint",
"description": null
},
{
"source_name": "IncludeBackorders",
"source_type": "TINYINT",
"dest_name": "includebackorders",
"dest_type": "smallint",
"description": null
},
{
"source_name": "IncludeRequisitions",
"source_type": "TINYINT",
"dest_name": "includerequisitions",
"dest_type": "smallint",
"description": null
},
{
"source_name": "PICKTICKETITEMOPT",
"source_type": "SMALLINT",
"dest_name": "pickticketitemopt",
"dest_type": "smallint",
"description": null
},
{
"source_name": "INCLDMRPMOVEIN",
"source_type": "TINYINT",
"dest_name": "incldmrpmovein",
"dest_type": "smallint",
"description": null
},
{
"source_name": "INCLDMRPMOVEOUT",
"source_type": "TINYINT",
"dest_name": "incldmrpmoveout",
"dest_type": "smallint",
"description": null
},
{
"source_name": "INCLDMRPCANCEL",
"source_type": "TINYINT",
"dest_name": "incldmrpcancel",
"dest_type": "smallint",
"description": null
},
{
"source_name": "Move_Out_Fence",
"source_type": "SMALLINT",
"dest_name": "move_out_fence",
"dest_type": "smallint",
"description": null
},
{
"source_name": "INACTIVE",
"source_type": "TINYINT",
"dest_name": "inactive",
"dest_type": "smallint",
"description": null
},
{
"source_name": "DEX_ROW_ID",
"source_type": "INT",
"dest_name": "dex_row_id",
"dest_type": "integer",
"description": null
}
],
"watermarks": [],
"hooks": []
}