Sp_Manufacture_InsertMftPlan.md 2.35 KB

Sp_Manufacture_InsertMftPlan (procedure)

@author:钱豹 @date:20210711 封存 @describe: 生产计划:插入计划(工单审核,重新投入规划调用),主要功能: 1、根据工序中设定的 拆单方式 按贴,按付... 插入到机台计划表中 2、根据工单工序从表ID汇总数量 反写工单工序的已排程数

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

Parameters

# Mode Name Type
1 IN sWorkOrderGuid varchar(255)
2 IN sWorkOrderBillNo varchar(100)
3 IN bCheck int
4 IN sLoginId varchar(100)
5 IN sBrId varchar(100)
6 IN sSuId varchar(100)
7 OUT sCode int
8 OUT sReturn varchar(5000)

Body

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

Narrative

Business context: 生产管理 → 生产计划管理 — work-order (工单) plan-explosion engine. On work-order audit (审核) or re-plan (重新投入规划), it expands each work-order process row into MftProductionPlanSlave per the process's 拆单方式 (按贴/按付/...), then writes back the scheduled qty (已排程数) on the work-order process side. Per the COMMENT, owned by 钱豹, 封存 20210711.

What it does: Iterates work-order processes for the given sWorkOrderGuid (or by sWorkOrderBillNo). DELETE FROM MftProductionPlanSlave for stale rows, CALL Sp_GetMachineByApsRule to pick the candidate machine per process, then re-inserts plan-slaves via the per-process detail helpers (the slave-level Sp_Manufacture_InsertMftPlanSlave is invoked indirectly). UPDATE MftProductionPlanSlave aggregations roll back to the work-order to refresh the 已排程数.

Invocation: Chained — called from Sp_Calc_sSmb (生产排单单审核), Sp_Calc_sWod (工单审核), Sp_PLC_ScanInsertToERP, Sp_productionMainPlan_BtnEventPlanning, Sp_productionMainPlan_BtnEventworkorder, Sp_productionMainPlan_Process_BtnEventUnOutProcessing, Sp_commonList_BtnEventBillReturn, and the dynamic sp_btn_action dispatcher. No direct form-master / gdsmodule hook binding. Install: xly-src script/标版/30100101/schedule/Sp_Manufacture_InsertMftPlan.sql plus several upgrade patches.