PRO_ERPMERGEBASEELEEMPLOYEE.md 1.35 KB

PRO_ERPMERGEBASEELEEMPLOYEE (procedure)

  • Type: PROCEDURE
  • Deterministic: NO
  • SQL data access: CONTAINS SQL

Parameters

# Mode Name Type
1 IN sEleEmployeeId varchar(100)

Body

Body is not pre-cached. To inspect: mysql --defaults-file=~/.my.cnf -e 'SHOW CREATE PROCEDUREPROERPMERGEBASEELEEMPLOYEE'._

Narrative

Business context: 基础资料 / 员工 (Employee base data) — when an employee (ELEEMPLOYEE) is renamed in the 员工 maintenance page, this proc pushes the new sEmployeeName to every historical production-report row that already references that employee.

What it does: SELECT sEmployeeName INTO @sEmployeeName FROM ELEEMPLOYEE WHERE sId = sEleEmployeeId, then UPDATE ERPMERGEPRODUCTIONREPORT SET sEmployeeName = @sEmployeeName WHERE sEmployeeId = sEleEmployeeId. One-shot denormalization push.

Invocation: Reached via ProDao.proErpMergeBaseEleEmployee(map) → MyBatis ProMapper.proErpMergeBaseEleEmployee (CALL PRO_ERPMERGEBASEELEEMPLOYEE(#{sEleEmployeeId})). Fired by ChangeEleEmployeeServiceImpl (the JMS CHANGE_GDS_MODULE consumer for the employee entity) after a base-data row mutates, keeping denormalized reporting tables in sync without a full rebuild. See Cache invalidation on metadata change.