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.