pipekit/config/modules/pm00300.json
Paul Trowbridge e8a3acaebd Add GP Payables (PM) modules and an Accounts Payable group
Only pm00200 (vendor master) covered the AP side; every transactional
PM table was missing even though the parallel receivables (rm*) set was
fully built out. Add ten modules mirroring that AR structure:

  pm00100  vendor class setup        pm20100  open apply detail
  pm00300  vendor address master     pm30200  paid transaction history
  pm00400  key master (doc index)    pm30300  apply history
  pm10100  open GL distributions     pm30600  GL distribution history
  pm20000  open transactions         pm30700  tax history

All full reloads. The whole set is <=230k rows and loads in seconds over
the Postgres COPY path, so a watermark buys nothing — and a date-keyed
incremental carries the row-level purge drift documented for icstt.
pm20000 and pm30200 do have DEX_ROW_TS if that changes.

Column maps come from pipekit's own /api/introspect/columns over the
GPSERVER linked server. Descriptions are null throughout: GP populates
no MS_Description extended properties (CHG has zero), and the metadata
lives in the Dexterity dictionary rather than SQL Server.

The group is scheduled 0 1 * * * but left disabled, matching the
Accounts Receivable group.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-04 00:06:09 -04:00

206 lines
4.7 KiB
JSON

{
"name": "pm00300",
"source_connection": "sqlserver",
"dest_connection": "usmidsap02",
"dest_table": "gp.pm00300",
"staging_table": "pipekit_staging.pm00300",
"merge_strategy": "full",
"merge_key": null,
"enabled": 1,
"dest_description": "Dynamics GP payables vendor address master",
"columns": [
{
"source_name": "VENDORID",
"source_type": "CHAR(15)",
"dest_name": "vendorid",
"dest_type": "text",
"description": null
},
{
"source_name": "ADRSCODE",
"source_type": "CHAR(15)",
"dest_name": "adrscode",
"dest_type": "text",
"description": null
},
{
"source_name": "VNDCNTCT",
"source_type": "CHAR(61)",
"dest_name": "vndcntct",
"dest_type": "text",
"description": null
},
{
"source_name": "ADDRESS1",
"source_type": "CHAR(61)",
"dest_name": "address1",
"dest_type": "text",
"description": null
},
{
"source_name": "ADDRESS2",
"source_type": "CHAR(61)",
"dest_name": "address2",
"dest_type": "text",
"description": null
},
{
"source_name": "ADDRESS3",
"source_type": "CHAR(61)",
"dest_name": "address3",
"dest_type": "text",
"description": null
},
{
"source_name": "CITY",
"source_type": "CHAR(35)",
"dest_name": "city",
"dest_type": "text",
"description": null
},
{
"source_name": "STATE",
"source_type": "CHAR(29)",
"dest_name": "state",
"dest_type": "text",
"description": null
},
{
"source_name": "ZIPCODE",
"source_type": "CHAR(11)",
"dest_name": "zipcode",
"dest_type": "text",
"description": null
},
{
"source_name": "COUNTRY",
"source_type": "CHAR(61)",
"dest_name": "country",
"dest_type": "text",
"description": null
},
{
"source_name": "UPSZONE",
"source_type": "CHAR(3)",
"dest_name": "upszone",
"dest_type": "text",
"description": null
},
{
"source_name": "PHNUMBR1",
"source_type": "CHAR(21)",
"dest_name": "phnumbr1",
"dest_type": "text",
"description": null
},
{
"source_name": "PHNUMBR2",
"source_type": "CHAR(21)",
"dest_name": "phnumbr2",
"dest_type": "text",
"description": null
},
{
"source_name": "PHONE3",
"source_type": "CHAR(21)",
"dest_name": "phone3",
"dest_type": "text",
"description": null
},
{
"source_name": "FAXNUMBR",
"source_type": "CHAR(21)",
"dest_name": "faxnumbr",
"dest_type": "text",
"description": null
},
{
"source_name": "SHIPMTHD",
"source_type": "CHAR(15)",
"dest_name": "shipmthd",
"dest_type": "text",
"description": null
},
{
"source_name": "TAXSCHID",
"source_type": "CHAR(15)",
"dest_name": "taxschid",
"dest_type": "text",
"description": null
},
{
"source_name": "EmailPOs",
"source_type": "TINYINT",
"dest_name": "emailpos",
"dest_type": "smallint",
"description": null
},
{
"source_name": "POEmailRecipient",
"source_type": "CHAR(81)",
"dest_name": "poemailrecipient",
"dest_type": "text",
"description": null
},
{
"source_name": "EmailPOFormat",
"source_type": "SMALLINT",
"dest_name": "emailpoformat",
"dest_type": "smallint",
"description": null
},
{
"source_name": "FaxPOs",
"source_type": "TINYINT",
"dest_name": "faxpos",
"dest_type": "smallint",
"description": null
},
{
"source_name": "POFaxNumber",
"source_type": "CHAR(21)",
"dest_name": "pofaxnumber",
"dest_type": "text",
"description": null
},
{
"source_name": "FaxPOFormat",
"source_type": "SMALLINT",
"dest_name": "faxpoformat",
"dest_type": "smallint",
"description": null
},
{
"source_name": "CCode",
"source_type": "CHAR(7)",
"dest_name": "ccode",
"dest_type": "text",
"description": null
},
{
"source_name": "DECLID",
"source_type": "CHAR(15)",
"dest_name": "declid",
"dest_type": "text",
"description": null
},
{
"source_name": "DEX_ROW_TS",
"source_type": "DATETIME",
"dest_name": "dex_row_ts",
"dest_type": "timestamp",
"description": null
},
{
"source_name": "DEX_ROW_ID",
"source_type": "INT",
"dest_name": "dex_row_id",
"dest_type": "integer",
"description": null
}
],
"watermarks": [],
"hooks": [],
"description": "Dynamics GP payables vendor address master"
}