CREATE PROCEDURE [dbo].[车间生产管理工艺_零件工序_取消派工] @工艺任务流水号 int = null, @工序流水号 int = null, @数量 int = null, @退货人 int =null, @订单流水号 int = null AS declare @工艺计划流水号 int declare @n int = 0 declare @图号 nvarchar(50) declare @物料名称 nvarchar(50) declare @出库记录流水号 int select @工艺计划流水号=工艺计划流水号 from 车间生产管理工艺_零件工序 where 工序流水号=@工序流水号 select @图号=零件图号+'MP',@物料名称 = 零件名称+'MP' from 车间生产管理_零件工艺计划_视图 where 工艺计划流水号 = @工艺计划流水号 select @出库记录流水号 = 出库记录流水号 from 仓储管理_出库记录_视图 where 图号或型号 = @图号 AND 物料名称 = @物料名称 AND 订单流水号 = @订单流水号 if(@出库记录流水号>0) begin EXEC 仓储管理_退料入库_执行 @出库记录流水号,@数量,@退货人 end update 车间生产管理工艺_零件工序 set 已分配数 = ISNULL(已分配数,0) - @数量 where 工序流水号=@工序流水号 delete from 车间生产管理工艺_零件工序_任务分配 where 工艺任务流水号=@工艺任务流水号 select @n=count(*) from 车间生产管理工艺_零件工序_任务分配 where 工序流水号 in (select 工序流水号 from 车间生产管理工艺_零件工序 where 工艺计划流水号=@工艺计划流水号) if @n = 0 begin update 车间生产管理工艺_零件工艺计划 set 分配日期 = NULL where 工艺计划流水号=@工艺计划流水号 end