config_io handled dest_description but never the module's own description field: it was absent from export_config, from both repo.create_module and repo.update_module calls in apply_config, and from the change-detection watch tuple. Descriptions set via the web form were therefore invisible to the config tree — `pipekit apply` silently ignored a description in a module's JSON, and `pipekit export` would have dropped all 127 existing ones on a round-trip. Adding "description" to the watch tuple means a module file without the key now reads as a change to NULL, so backfill the key into all 131 existing module files from the DB. Without this, the next apply would have wiped every description it was meant to preserve. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
388 lines
9.4 KiB
JSON
388 lines
9.4 KiB
JSON
{
|
|
"name": "methdm",
|
|
"source_connection": "S78030956",
|
|
"dest_connection": "usmidsap02",
|
|
"dest_table": "cms.methdm",
|
|
"staging_table": "pipekit_staging.methdm",
|
|
"merge_strategy": "full",
|
|
"merge_key": null,
|
|
"enabled": 1,
|
|
"dest_description": "Method Detail - Material (M-Record) 6.0",
|
|
"description": "Bill of Materials",
|
|
"columns": [
|
|
{
|
|
"source_name": "AQTYPE",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqtype",
|
|
"dest_type": "text",
|
|
"description": "Record Type"
|
|
},
|
|
{
|
|
"source_name": "AQPART",
|
|
"source_type": "CHAR(20)",
|
|
"dest_name": "aqpart",
|
|
"dest_type": "text",
|
|
"description": "Part Number"
|
|
},
|
|
{
|
|
"source_name": "AQSEQ#",
|
|
"source_type": "NUMERIC(3,0)",
|
|
"dest_name": "aqseq#",
|
|
"dest_type": "numeric(3,0)",
|
|
"description": "Sequence Number"
|
|
},
|
|
{
|
|
"source_name": "AQLIN#",
|
|
"source_type": "NUMERIC(4,0)",
|
|
"dest_name": "aqlin#",
|
|
"dest_type": "numeric(4,0)",
|
|
"description": "Line #"
|
|
},
|
|
{
|
|
"source_name": "AQMTLP",
|
|
"source_type": "CHAR(20)",
|
|
"dest_name": "aqmtlp",
|
|
"dest_type": "text",
|
|
"description": "Material Part #"
|
|
},
|
|
{
|
|
"source_name": "AQMTLD",
|
|
"source_type": "CHAR(30)",
|
|
"dest_name": "aqmtld",
|
|
"dest_type": "text",
|
|
"description": "Material Description"
|
|
},
|
|
{
|
|
"source_name": "AQQPPC",
|
|
"source_type": "NUMERIC(10,5)",
|
|
"dest_name": "aqqppc",
|
|
"dest_type": "numeric(10,5)",
|
|
"description": "Quantity per AQQTYM fld"
|
|
},
|
|
{
|
|
"source_name": "AQUNIT",
|
|
"source_type": "CHAR(3)",
|
|
"dest_name": "aqunit",
|
|
"dest_type": "text",
|
|
"description": "Unit of Measure"
|
|
},
|
|
{
|
|
"source_name": "AQSQTY",
|
|
"source_type": "NUMERIC(8,4)",
|
|
"dest_name": "aqsqty",
|
|
"dest_type": "numeric(8,4)",
|
|
"description": "Spare Parts Quantity"
|
|
},
|
|
{
|
|
"source_name": "AQQTYM",
|
|
"source_type": "NUMERIC(6,2)",
|
|
"dest_name": "aqqtym",
|
|
"dest_type": "numeric(6,2)",
|
|
"description": "Quantity Multiplier"
|
|
},
|
|
{
|
|
"source_name": "AQBLWT",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqblwt",
|
|
"dest_type": "text",
|
|
"description": "Blow Through Part"
|
|
},
|
|
{
|
|
"source_name": "AQBK01",
|
|
"source_type": "CHAR(3)",
|
|
"dest_name": "aqbk01",
|
|
"dest_type": "text",
|
|
"description": "AQBK01"
|
|
},
|
|
{
|
|
"source_name": "AQSTYP",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqstyp",
|
|
"dest_type": "text",
|
|
"description": "Stock Type"
|
|
},
|
|
{
|
|
"source_name": "AQLEAD",
|
|
"source_type": "NUMERIC(3,0)",
|
|
"dest_name": "aqlead",
|
|
"dest_type": "numeric(3,0)",
|
|
"description": "Lead Time"
|
|
},
|
|
{
|
|
"source_name": "AQMAJG",
|
|
"source_type": "CHAR(3)",
|
|
"dest_name": "aqmajg",
|
|
"dest_type": "text",
|
|
"description": "Major Group Code"
|
|
},
|
|
{
|
|
"source_name": "AQITM",
|
|
"source_type": "NUMERIC(3,0)",
|
|
"dest_name": "aqitm",
|
|
"dest_type": "numeric(3,0)",
|
|
"description": "Item Number"
|
|
},
|
|
{
|
|
"source_name": "AQITMX",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqitmx",
|
|
"dest_type": "text",
|
|
"description": "Item Number Extension"
|
|
},
|
|
{
|
|
"source_name": "AQBK02",
|
|
"source_type": "CHAR(14)",
|
|
"dest_name": "aqbk02",
|
|
"dest_type": "text",
|
|
"description": "AQBK02"
|
|
},
|
|
{
|
|
"source_name": "AQALLC",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqallc",
|
|
"dest_type": "text",
|
|
"description": "Allocation"
|
|
},
|
|
{
|
|
"source_name": "AQBACK",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqback",
|
|
"dest_type": "text",
|
|
"description": "Back Flush"
|
|
},
|
|
{
|
|
"source_name": "AQSCRP",
|
|
"source_type": "NUMERIC(3,1)",
|
|
"dest_name": "aqscrp",
|
|
"dest_type": "numeric(3,1)",
|
|
"description": "Scrap %"
|
|
},
|
|
{
|
|
"source_name": "AQRQBY",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqrqby",
|
|
"dest_type": "text",
|
|
"description": "Requirement By-product"
|
|
},
|
|
{
|
|
"source_name": "AQSTKL",
|
|
"source_type": "CHAR(6)",
|
|
"dest_name": "aqstkl",
|
|
"dest_type": "text",
|
|
"description": "Stock Location"
|
|
},
|
|
{
|
|
"source_name": "AQBK03",
|
|
"source_type": "CHAR(9)",
|
|
"dest_name": "aqbk03",
|
|
"dest_type": "text",
|
|
"description": "AQBK03"
|
|
},
|
|
{
|
|
"source_name": "AQDRAW",
|
|
"source_type": "CHAR(9)",
|
|
"dest_name": "aqdraw",
|
|
"dest_type": "text",
|
|
"description": "Drawing Number"
|
|
},
|
|
{
|
|
"source_name": "AQDFLC",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqdflc",
|
|
"dest_type": "text",
|
|
"description": "Draw From Loc As Defined"
|
|
},
|
|
{
|
|
"source_name": "AQFUT1",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqfut1",
|
|
"dest_type": "text",
|
|
"description": "Support Sub- Aassembly Dual Reporting"
|
|
},
|
|
{
|
|
"source_name": "AQFUT2",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqfut2",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUT3",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqfut3",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUT4",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqfut4",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUT5",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqfut5",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUT6",
|
|
"source_type": "CHAR(3)",
|
|
"dest_name": "aqfut6",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUT7",
|
|
"source_type": "CHAR(3)",
|
|
"dest_name": "aqfut7",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUT8",
|
|
"source_type": "CHAR(10)",
|
|
"dest_name": "aqfut8",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUT9",
|
|
"source_type": "CHAR(10)",
|
|
"dest_name": "aqfut9",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUTA",
|
|
"source_type": "CHAR(20)",
|
|
"dest_name": "aqfuta",
|
|
"dest_type": "text",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUTB",
|
|
"source_type": "NUMERIC(15,5)",
|
|
"dest_name": "aqfutb",
|
|
"dest_type": "numeric(15,5)",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUTC",
|
|
"source_type": "NUMERIC(15,5)",
|
|
"dest_name": "aqfutc",
|
|
"dest_type": "numeric(15,5)",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUTD",
|
|
"source_type": "NUMERIC(15,5)",
|
|
"dest_name": "aqfutd",
|
|
"dest_type": "numeric(15,5)",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQFUTE",
|
|
"source_type": "NUMERIC(9,0)",
|
|
"dest_name": "aqfute",
|
|
"dest_type": "numeric(9,0)",
|
|
"description": "Future Use"
|
|
},
|
|
{
|
|
"source_name": "AQDEPT",
|
|
"source_type": "CHAR(5)",
|
|
"dest_name": "aqdept",
|
|
"dest_type": "text",
|
|
"description": "Production Department Code"
|
|
},
|
|
{
|
|
"source_name": "AQRESC",
|
|
"source_type": "CHAR(5)",
|
|
"dest_name": "aqresc",
|
|
"dest_type": "text",
|
|
"description": "Resource Code"
|
|
},
|
|
{
|
|
"source_name": "AQPLNT",
|
|
"source_type": "CHAR(3)",
|
|
"dest_name": "aqplnt",
|
|
"dest_type": "text",
|
|
"description": "Plant Code"
|
|
},
|
|
{
|
|
"source_name": "AQMJCM",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqmjcm",
|
|
"dest_type": "text",
|
|
"description": "Major Component"
|
|
},
|
|
{
|
|
"source_name": "AQECND",
|
|
"source_type": "NUMERIC(3,0)",
|
|
"dest_name": "aqecnd",
|
|
"dest_type": "numeric(3,0)",
|
|
"description": "last applied ECN dtl#"
|
|
},
|
|
{
|
|
"source_name": "AQECNL",
|
|
"source_type": "NUMERIC(3,0)",
|
|
"dest_name": "aqecnl",
|
|
"dest_type": "numeric(3,0)",
|
|
"description": "last applied ECN line#"
|
|
},
|
|
{
|
|
"source_name": "AQLDAT",
|
|
"source_type": "DATE",
|
|
"dest_name": "aqldat",
|
|
"dest_type": "date",
|
|
"description": "last applied ECN date"
|
|
},
|
|
{
|
|
"source_name": "AQLECN",
|
|
"source_type": "CHAR(10)",
|
|
"dest_name": "aqlecn",
|
|
"dest_type": "text",
|
|
"description": "last applied ECN#"
|
|
},
|
|
{
|
|
"source_name": "AQLEDAT",
|
|
"source_type": "DATE",
|
|
"dest_name": "aqledat",
|
|
"dest_type": "date",
|
|
"description": "ECN Effective Date"
|
|
},
|
|
{
|
|
"source_name": "AQLETME",
|
|
"source_type": "NUMERIC(6,0)",
|
|
"dest_name": "aqletme",
|
|
"dest_type": "numeric(6,0)",
|
|
"description": "last applied ECN time"
|
|
},
|
|
{
|
|
"source_name": "AQFUSG",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqfusg",
|
|
"dest_type": "text",
|
|
"description": "Fix Usage Flag"
|
|
},
|
|
{
|
|
"source_name": "AQWUCM",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "aqwucm",
|
|
"dest_type": "text",
|
|
"description": "Whole Unit Consumption Flag"
|
|
},
|
|
{
|
|
"source_name": "AQRDCF",
|
|
"source_type": "NUMERIC(5,5)",
|
|
"dest_name": "aqrdcf",
|
|
"dest_type": "numeric(5,5)",
|
|
"description": "Rounding Cutoff Decimal Value"
|
|
}
|
|
],
|
|
"watermarks": [],
|
|
"hooks": []
|
|
}
|