Sp_purpurchasearrive_CheckUpdate (procedure)
采购到货保存更新批号
- Type: PROCEDURE
- Deterministic: NO
- SQL data access: CONTAINS SQL
Parameters
| # | Mode | Name | Type |
|---|---|---|---|
| 1 | IN | sGuid |
varchar(100) |
| 2 | IN | sFormGuid |
varchar(100) |
| 3 | IN | sLoginId |
varchar(100) |
| 4 | IN | sBrId |
varchar(100) |
| 5 | IN | sSuId |
varchar(100) |
| 6 | IN | iFlag |
int |
| 7 | OUT | sCode |
int |
| 8 | OUT | sReturn |
varchar(4000) |
Body
Body is not pre-cached. To inspect: mysql --defaults-file=~/.my.cnf -e 'SHOW CREATE PROCEDURESppurpurchasearrive_CheckUpdate'._
Narrative
Business context: 采购管理 / 物料采购流程 → 采购到货(送检)单据 — auto-fills the batch number (sDefineNo) on 采购到货 slave lines (purpurchasearriveslave) according to the tenant's CbxMaterialsDefine system setting. Saves the operator from typing batch codes by hand when the company has a standard date/year/work-order numbering scheme.
What it does: Reads SysSystemSettings.sValue where sName='CbxMaterialsDefine'. Branches on the value: datenum → YYYYMMDD, datetimenum/createnownum → YYYYMMDDHHMM, worknum → the row's sWorkOrderNo, yearnum → YYYY, yearmonthnum → YYYYMM. Each branch is a guarded UPDATE purpurchasearriveslave SET sDefineNo = … WHERE sParentId = sGuid AND IFNULL(sDefineNo,'') = '' — only blank batch codes are populated, manually-entered ones are preserved. Always returns sCode=1, sReturn='保存成功!'.
Invocation: Status: appears orphaned. No caller found in any channel (form-master sSqlStr/sConfigSqlStr, gdsmodule sSaveProName/sSaveProNameBefore on 采购到货(送检)单据 form 101251240115016068096930620, other routines, xly-src grep across all extensions). Signature matches the standard sSaveProNameBefore hook contract (sGuid, sFormGuid, sLoginId, sBrId, sSuId, iFlag, sCode, sReturn) — the binding looks intended but is currently not present in production metadata; candidate for maintainer audit.