# `Sp_Check_dOraQtyTs` (procedure) > 校验是否超过源单数量 - **Type:** PROCEDURE - **Deterministic:** NO - **SQL data access:** CONTAINS SQL ## Parameters | # | Mode | Name | Type | |---|---|---|---| | 1 | IN | `sTableName` | `varchar(50)` | | 2 | IN | `sCloumnQtyName` | `varchar(255)` | | 3 | IN | `sSrcTableName` | `varchar(50)` | | 4 | IN | `sSrcCloumnName` | `varchar(50)` | | 5 | IN | `sSrcCloumnQtyName` | `varchar(255)` | | 6 | IN | `sTsCloumnName` | `varchar(50)` | | 7 | IN | `sTsCloumnNameCon` | `varchar(50)` | | 8 | IN | `sTsTableName` | `varchar(50)` | | 9 | IN | `sGuid` | `varchar(50)` | | 10 | IN | `sBrId` | `varchar(50)` | | 11 | IN | `sSuId` | `varchar(50)` | | 12 | OUT | `sCode` | `int` | | 13 | OUT | `sReturn` | `longtext` | ## Body _Body is not pre-cached. To inspect: `mysql --defaults-file=~/.my.cnf -e 'SHOW CREATE PROCEDURE `Sp_Check_dOraQtyTs`'`._ ## Narrative **Business context:** Reusable generic check 校验是否超过源单数量 — prevents a downstream document from issuing more quantity than its upstream source authorizes, with an extra layer of specification-attribute (`Ts`) grouping for fabric/colour-spec scenarios. **What it does:** Given the slave table, its quantity columns, the source table/column, and an optional `Ts` specification table/column, builds temp tables `p_sSrcSlaveId` and `p_sSlaveId_qty` via dynamic SQL, sums the current document's quantities per source-slave, joins back to source quantities and the spec table, and returns `sCode = -1` with a `已开数量 / 源单据数量` diff message (formatted via `Sp_Sis_GetConst('sDoraQtyUpQty', …)`) when any current quantity exceeds the source. The non-`Ts` sibling is `Sp_Check_dOraQty`. **Invocation:** Called from save-quantity checks in upstream/downstream document procedures, including `Sp_Check_sRgd` (新增销售退货 / 销售送货流程) — the `Sp_Check_*` family is invoked by `Sp_Calc_*` save procedures via the dispatcher pattern. Also called by `Sp_Check_sDgda`.