# `PRO_ERPMERGEBASEGDSMODULE` (procedure) - **Type:** PROCEDURE - **Deterministic:** NO - **SQL data access:** CONTAINS SQL ## Parameters | # | Mode | Name | Type | |---|---|---|---| | 1 | IN | `sGdsModuleId` | `varchar(100)` | ## Body _Body is not pre-cached. To inspect: `mysql --defaults-file=~/.my.cnf -e 'SHOW CREATE PROCEDURE `PRO_ERPMERGEBASEGDSMODULE`'`._ ## Narrative **Business context:** Platform — form/module label sync. When a `gdsmodule` row's `sChinese` label (the human-readable form name visible in BACK navigation) changes, this proc rewrites `sChinese` onto every historical row across the three merge-reporting tables that references that form id, so report queries display the current label. **What it does:** reads `sChinese` from `GDSMODULE` for the given id, then runs `UPDATE` against `ERPMERGEWORKORDER`, `ERPMERGEPRODUCTIONREPORT`, and `ERPMERGESALSALESORDER` for rows whose `sFormId = sGdsModuleId`. **Invocation:** member of the `PRO_ERPMERGEBASE*` denorm-merge family. Called by `ProDao.proErpMergeBaseGdsModule(map)` via MyBatis CALLABLE mapper `ProMapper.xml`, driven from `ChangeGdsModuleServiceImpl.changeTableData()` after the JMS `CHANGE_GDS_MODULE` consumer detects a `GDSMODULE` row mutation. See [Cache invalidation on metadata change](../../reference/maintainer/cache-invalidation.md).