Sp_OneDatePlan_Machine.md 2.36 KB

Sp_OneDatePlan_Machine (procedure)

每日机台计划达成统计表

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

Parameters

# Mode Name Type
1 IN tStartDate varchar(100)
2 IN sMachineName varchar(100)
3 IN sAttribute varchar(100)
4 IN sLoginId varchar(100)
5 IN sBrId varchar(100)
6 IN sSuId varchar(100)
7 IN bFilter varchar(5000)
8 IN pageNum int
9 IN pageSize int
10 OUT totalCount int
11 IN countCloumn varchar(5000)
12 OUT countMapJson longtext
13 IN sFilterOrderBy varchar(5000)
14 IN sGroupby_select_sql varchar(5000)
15 IN sGroupby_group_sql varchar(5000)
16 OUT sColumnNameConfig longtext

Body

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

Narrative

Business context: 生产管理 → 生产运营报表 → 机台计划达成日报 — daily plan-vs-actual statistics per machine, split by 班别 (白班/晚班) and rolled up to a 合计 (total) row, for the workshop daily-target dashboard.

What it does: For the given date and brand/subsidiary, seeds Sp_OneDatePlan_Machine_Table with one 白班 and one 晚班 row per matching elemachine (filtered by sAttribute / sId), then joins to mftproductionplanslave grouped on sDivRowGroupBy (<date> <班别>) via Fun_GetGb to fold in 计划产量/转版数/上班时间 plus 实际产量/转版数; computes dWccl = dSjcl + dSjzbs*iSheetQty and totals (dSjjhdcl 达成率, dSbkjl 开机率, dUph). Adds a 合计 sub-table per machine, rewires sWorkCenterId/sWorkCenterName from in-flight orders, and finally PREPARE/EXECUTE a dynamic SELECT NewId() AS sSlaveId, A.* FROM Sp_OneDatePlan_Machine_Table ORDER BY sMachineName LIMIT pageNum,pageSize (note: hard-coded pageSize = 18).

Invocation: Bound as the data-source of the 机台计划达成日报 form gfm.sId=1921168137117916508762815480 via gdsconfigformmaster.sSqlStr — module 机台计划达成日报 under 生产运营报表 → 生产管理. Loaded when the user opens the report. Install script: script/标版/30100101/schedule/Sp_OneDatePlan_Machine.sql.