Sp_CalcAttribDate.md 1.57 KB

Sp_CalcAttribDate (procedure)

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

Parameters

# Mode Name Type
1 IN sGuid varchar(50)
2 IN sBrId varchar(100)
3 IN sSuId varchar(100)

Body

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

Narrative

Business context: 生产管理 / 上报 — date-attribution helper that resolves which calendar day a production-report slave (mftproductionreportslave) should belong to. The shop runs across shift boundaries, so the slave row's tVestingDate (归属日期) is not always the same as tCreateDate; the team type (白班/晚班) and the machine's sOffWork/sShiftsWork cut-off govern which day the output is credited to for shift-based wage and KPI roll-ups.

What it does: Cursors over viw_mftproductionreport (optionally narrowed by sGuid) where bInvalid=0. For each row, reads elemachine.sOffWork, sShiftsWork, sWorkType. When sWorkType='1' (day-only) sets tVestingDate to the create date with sTeamType='1'. Otherwise compares the create-time-of-day to the shift cut-off (tShiftsWork) and assigns the date to either the same day or the previous day, with sTeamType updated accordingly on mftproductionreportslave.

Invocation: Called by procedure Sp_Calc_sPpr (生产上报审核 audit handler) — re-derives the slave's vesting date whenever an upstream report is audited. No direct Java caller; no form-master binding.