Sp_System_DelMsgCheckFlow.md 1.71 KB

Sp_System_DelMsgCheckFlow (procedure)

业务单据保存校验

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

Parameters

# Mode Name Type
1 IN sFormGuid varchar(100)
2 IN sGuid varchar(100)
3 OUT sReturn varchar(4000)
4 IN sLoginId varchar(100)
5 IN sBrId varchar(100)
6 IN sSuId varchar(100)
7 OUT sCode int

Body

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

Narrative

Business context: 单据删除连带清审批消息 — when a business bill is invalidated or deleted, this proc tears down its parked approval-flow records: the sysMsg rows (pending-approval inbox), their sysmsguser recipient mappings, and the sysbillcheckresult per-condition results. Keeps the in-flight 审批 queue clean when a 单据 is retracted.

What it does: Counts sysMsg WHERE sBillId=sGuid for the tenant; if zero, returns sCode=1 (nothing to clean). Otherwise issues three cascading deletes scoped to the bill: DELETE FROM sysbillcheckresult WHERE sMsgId IN (SELECT sId FROM sysMsg WHERE sBillId=sGuid ...), the same for sysmsguser keyed on sParentId, and finally DELETE FROM sysMsg WHERE sBillId=sGuid itself.

Invocation: Statically called from Sp_Calc_sQtt_hm (报价单 audit slot) inside its uncheck/delete branch, and likely intended for the wider Sp_Calc_s* family — only this one current caller in the DB. Install script script/标版/30100101/Sp_System_DelMsgCheckFlow.sql. Not bound through any gdsmodule / form-master hook; pure proc-to-proc helper.