Sp_share_sRcts.md 1.99 KB

Sp_share_sRcts (procedure)

收款单(汇总)分摊

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

Parameters

# Mode Name Type
1 IN sDropTableSql longtext
2 IN sCreateTableSql longtext
3 IN insertSql longtext
4 IN selectSql longtext
5 IN sFormGuid varchar(100)
6 IN sLoginId varchar(100)
7 IN sBrId varchar(100)
8 IN sSuId varchar(100)
9 OUT sCode int
10 OUT sReturn longtext

Body

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

Narrative

Business context: 财务管理 → 收款单(汇总) — 收款单(汇总)分摊 (COMMENT '收款单(汇总)分摊'). Allocates a summary receipt header (cahreceiptmaster / cahreceiptslave / cahreceiptsumslave) across its detail rows so each slave and sum-slave line carries its share of the received money / foreign money / rounding. Used on the 收款汇总 form variant where multiple sub-bills are aggregated under one header. Per-receipt-row variant: Sp_share_sRcts_One.

What it does: Executes the four dynamic-SQL strings handed in by the Java side (sDropTableSql, sCreateTableSql, insertSql, selectSql) to materialise cahreceiptmaster_calc_tmp, cahreceiptslave_calc_tmp and cahreceiptsumslave_calc_tmp temp tables seeded from the form's current data, runs the share/round arithmetic on the slave / sum-slave temps, then SELECTs the temps back for the front-end to refresh master and slave grids.

Invocation: Dispatched dynamically by CalcProcedureServiceImpl.calc() (POST /calcprocedure/calc) — the 汇总分摊 button on the 收款单(汇总) form has sProName='Sp_share_sRcts' configured; Java builds the four temp-table SQLs from the form's current row data and forwards the call. xly-src ships script/标版/30100101/Sp_share_sRcts.sql (install).