46 lines
1.6 KiB
Transact-SQL
46 lines
1.6 KiB
Transact-SQL
IF EXISTS(SELECT * FROM SYS.PROCEDURES WHERE NAME='PROC_INSERT_STK_SYNC_RECORD')
|
|
DROP PROCEDURE dbo.PROC_INSERT_STK_SYNC_RECORD;
|
|
GO
|
|
|
|
CREATE PROCEDURE PROC_INSERT_STK_SYNC_RECORD
|
|
@newId varchar(100)
|
|
,@oId varchar(100)
|
|
,@itemNo varchar(100)
|
|
,@declaId varchar(100)
|
|
,@syncId varchar(100)
|
|
,@status int
|
|
AS
|
|
BEGIN
|
|
|
|
UPDATE T_STK_INVENTORY set FBILLNO = @itemNo ,FSTATUS = @status WHERE FID = @oId;
|
|
|
|
/*第一步,查看报错表的当前种子值*/
|
|
DBCC CHECKIDENT('z_STK_SYNC_RECORD', NORESEED)
|
|
|
|
/*第二步,查看报错表的主键最大值*/
|
|
DECLARE @FID bigint
|
|
SELECT @FID=ISNULL(MAX(FID),100001)+1 FROM t_STK_SYNC_RECORD
|
|
SELECT @FID
|
|
|
|
/*第三步,更新种子值(更新前对比第一步和第二步获取的值,如果第一步获取的种子值更大,则无需更新)*/
|
|
DBCC CHECKIDENT('z_STK_SYNC_RECORD', RESEED, @FID)
|
|
|
|
INSERT INTO T_STK_SYNC_RECORD (
|
|
FID,FSTOCKORGID,FKEEPERTYPEID,FKEEPERID,FOWNERTYPEID,FOWNERID,
|
|
FSTOCKID,FSTOCKLOCID,FAUXPROPID,FSTOCKSTATUSID,FLOT,FBOMID,FMTONO,
|
|
FPROJECTNO,FPRODUCEDATE,FEXPIRYDATE,FBASEUNITID,FBASEQTY,FBASELOCKQTY,
|
|
FSECQTY,FSECLOCKQTY,FSTOCKUNITID,FMATERIALID,FQTY,FLOCKQTY,FSECUNITID
|
|
,FBASEAVBQTY,FAVBQTY,FSECAVBQTY,FUPDATETIME,FISEFFECTIVED
|
|
,FITEMNO,FOSTKID,FDeclaId,FSyncId,FSyncDateTime
|
|
)
|
|
SELECT
|
|
@FID,FSTOCKORGID,FKEEPERTYPEID,FKEEPERID,FOWNERTYPEID,FOWNERID,
|
|
FSTOCKID,FSTOCKLOCID,FAUXPROPID,FSTOCKSTATUSID,FLOT,FBOMID,FMTONO,
|
|
FPROJECTNO,FPRODUCEDATE,FEXPIRYDATE,FBASEUNITID,FBASEQTY,FBASELOCKQTY,
|
|
FSECQTY,FSECLOCKQTY,FSTOCKUNITID,FMATERIALID,FQTY,FLOCKQTY,FSECUNITID
|
|
,FBASEAVBQTY,FAVBQTY,FSECAVBQTY,FUPDATETIME,FISEFFECTIVED
|
|
,@itemNo,FID,@declaId,@syncId,getdate()
|
|
FROM T_STK_INVENTORY
|
|
WHERE FID = @oId
|
|
|
|
END |