Sp_SalOrder_BtnEventClaim (procedure)
研发任务认领
- Type: PROCEDURE
- Deterministic: NO
- SQL data access: CONTAINS SQL
Parameters
| # | Mode | Name | Type |
|---|---|---|---|
| 1 | IN | sProInParam |
varchar(10000) |
| 2 | IN | sMakePerson |
varchar(100) |
| 3 | IN | sBrId |
varchar(100) |
| 4 | IN | sSuId |
varchar(100) |
| 5 | OUT | sReturn |
varchar(1000) |
| 6 | OUT | sCode |
int |
Body
Body is not pre-cached. To inspect: mysql --defaults-file=~/.my.cnf -e 'SHOW CREATE PROCEDURESpSalOrder_BtnEventClaim'._
Narrative
Business context: 销售管理 → 销售订单管理 → 销售订单 (salsalesorderslave) — 研发任务认领 (R&D task claim) button. When a sales order has lines that need new-product development (NPI), an engineer presses 认领 on the grid to take ownership: the proc flips bClaim=1, stamps sClaimPerson=sMakePerson and tClaimDate=NOW(). The commented-out guard "该任务已被认领" suggests the original spec was to refuse re-claim; in the current body the row is overwritten unconditionally. Naming variant in script/客户/千彩/: Sp_Zld_BtnEventClaim (customer-specific override).
What it does: Validates sProInParam, parses $.params[0].value[*].sSlaveId. For each line first reads the current bClaim (the result p_bClaimed is captured but the check is commented out), then unconditionally runs UPDATE salsalesorderslave SET bClaim=1, sClaimPerson=sMakePerson, tClaimDate=NOW() WHERE sId=p_sTmpId AND sBrandsId=sBrId AND sSubsidiaryId=sSuId.
Invocation: Generic-dispatch button signature (sProInParam, sMakePerson, sBrId, sSuId, OUT sReturn, OUT sCode) — dispatched by GenericProcedureCallServiceImpl.doGenericProcedureCall() from the 销售订单 grid's 认领 line-toolbar button. No xly-src reference for the base proc; the 千彩 customer ships an Sp_Zld_BtnEventClaim.sql override. No gdsmodule row, no other proc references it — binding lives in the grid-button metadata.