# 采购仓储低代码配置验收说明 > 本文只描述如何用平台通用能力配置采购仓储流程,不要求在平台代码中写死采购、仓库、供应商、物料等对象名。 ## 1. 采购入库 - 对象:采购单作为主对象,采购明细作为明细关系对象。 - 关系:采购单 `id` 关联采购明细的主单字段,明细关系开启行级合并保存。 - 选择器:采购明细启用子表选择器,候选对象为物料或报价明细,显示编号、名称、规格、单位,字段映射到明细的物料、单位、单价等字段。 - 动作:配置通用动作 `COMMAND`,使用“循环明细步骤”模板,`collectionPath` 指向采购明细集合。 - 数量动作:循环内执行 `DOMAIN_ACTION/QUANTITY`,`operationType=INBOUND`,按明细行映射账户、数量项、维度和数量。 - 流程回调:采购单审批通过回调执行上述通用动作;驳回不入账。 - 详情区块:采购单详情配置数量流水区块,按 `sourceObjectCode + sourceRecordId` 查询本单产生的入库流水。 ## 2. 出库扣减 - 对象:出库申请作为主对象,出库明细作为明细关系对象。 - 关系:出库申请 `id` 关联出库明细主单字段,明细关系开启行级合并保存。 - 选择器:出库明细启用子表选择器,候选对象可配置为库存余额视图对象或物料对象,并通过过滤参数按当前仓库、项目、库存状态过滤候选记录。 - 动作:提交或审批通过阶段使用 `FOREACH` 遍历出库明细。 - 数量动作:提交阶段可配置 `LOCK` 锁定数量;审批通过后配置 `COMMIT` 或扣减动作,映射锁定号、来源记录和来源明细。 - 流程回调:流程通过执行扣减,流程撤回或驳回执行释放锁定。 - 详情区块:出库详情配置数量锁定区块和数量流水区块,分别按来源单据查询锁定记录和扣减流水。 ## 3. 调拨转移 - 对象:调拨单作为主对象,调拨明细作为明细关系对象。 - 关系:调拨单 `id` 关联调拨明细主单字段。 - 选择器:调拨明细选择器按调出账户或调出维度过滤可选数量项。 - 动作:审批通过后执行 `FOREACH`,循环变量使用 `${item.xxx}` 映射每一行明细。 - 数量动作:循环内执行 `DOMAIN_ACTION/QUANTITY`,`operationType=TRANSFER`,同时映射调出账户、调入账户、数量项、目标数量项、维度和目标维度。 - 详情区块:调拨详情配置数量流水区块,展示每条转移流水及目标账户信息。 ## 4. 供应商报价维护 - 对象:供应商、报价单、报价明细按普通业务对象配置。 - 关系:报价单包含报价明细,报价明细引用物料对象。 - 选择器:报价明细字段使用记录选择器,`keywordFields` 配置编号和名称,`searchParams` 可按供应商、项目或物料分类做动态过滤。 - 字段映射:选择物料后把物料编号、名称、规格、单位等字段映射到报价明细。 - 详情区块:供应商详情通过关系页签展示报价单,通过数量区块或关联页签展示被引用的物料记录。 ## 5. 仓库详情 - 对象:仓库或库存账户作为主对象。 - 数量余额区块:配置 `quantity-balance`,查询参数映射 `accountCode=${row.accountCode}` 或 `dimensionKey=${row.dimensionKey}`。 - 数量流水区块:配置 `quantity-ledger`,查询参数映射同上,展示入库、扣减、转移等历史流水。 - 数量锁定区块:配置 `quantity-lock`,按账户和状态过滤未完成锁定。 - 关联页签:采购记录、出库记录、调拨记录使用关系配置或接口展开面板展示,不需要定制仓库页面代码。 ## 6. 验收结论 - 采购入库、出库扣减、调拨转移可以通过 `FOREACH + DOMAIN_ACTION/QUANTITY` 表达。 - 物料、报价、库存余额候选记录可以通过通用记录选择器、多字段关键词和动态过滤参数表达。 - 仓库、单据详情可以通过关系页签、数量余额、数量流水和数量锁定区块表达。 - 平台新增能力保持通用命名和通用协议,采购仓储只作为配置验收场景。