DECLARE @RECORD_STATUS VARCHAR(1) , @REQPL_DT_ID VARCHAR(15) , @REQ_DOC_ID VARCHAR(15) , @PL_REQDT_ID VARCHAR(15) , @GD_ID VARCHAR(15) , @SUP_ID VARCHAR(15) , @HH_ID VARCHAR(15) , @TRAN_TYPE_ID VARCHAR(15) , @MAKER_ID VARCHAR(15) , @CREATE_DT DATETIME , @AUTH_STATUS VARCHAR(50) , @CHECKER_ID VARCHAR(15) , @APPROVE_DT DATETIME , @DES_GOOD NVARCHAR(500) , @QUANTITY_PL DECIMAL(18, 0) , @PRICE_PL DECIMAL(18, 2) , @CURRENCY NVARCHAR(50) , @EXCHANGE_RATE DECIMAL(18, 2) , @TAXES DECIMAL(18, 2) , @TOTAL_AMT_ETM DECIMAL(18, 2) , @REASON_CDT NVARCHAR(500) , @REQ_DT DATETIME , @NOTES NVARCHAR(500), @REQDT_ID VARCHAR(15) DECLARE lstDATA CURSOR FOR SELECT TR.REQPL_DT_ID, TR.REQ_DOC_ID, TR.PL_REQDT_ID, TR.GD_ID, TR.SUP_ID, TR.HANGHOA_ID, PL.TRADE_TYPE, TR.MAKER_ID, TR.CREATE_DT, TR.AUTH_STATUS, TR.CHECKER_ID, TR.APPROVE_DT, TR.DESCRIPTION, TR.QUANTITY, TR.PRICE_ETM, TR.CURRENCY, TR.EXCHANGE_RATE, TR.TAXES, TR.TOTAL_AMT_ETM, PL.NAME , TR.REQ_DT, TR.NOTES, TR.RECORD_STATUS,TR.REQDT_ID FROM dbo.TR_REQUEST_DOC_DT TR LEFT JOIN dbo.PL_REQUEST_DOC_DT PL ON PL.REQDT_ID=TR.PL_REQDT_ID OPEN lstDATA FETCH NEXT FROM lstDATA INTO @REQPL_DT_ID,@REQ_DOC_ID,@PL_REQDT_ID,@GD_ID,@SUP_ID,@HH_ID,@TRAN_TYPE_ID,@MAKER_ID,@CREATE_DT,@AUTH_STATUS,@CHECKER_ID,@APPROVE_DT, @DES_GOOD,@QUANTITY_PL,@PRICE_PL,@CURRENCY,@EXCHANGE_RATE,@TAXES,@TOTAL_AMT_ETM,@REASON_CDT,@REQ_DT,@NOTES,@RECORD_STATUS,@REQDT_ID WHILE @@FETCH_STATUS=0 BEGIN EXEC dbo.SYS_CodeMasters_Gen @p_Kind = 'TR_REQUEST_DOC_PL_DT', -- varchar(100) @p_KeyGen = @REQPL_DT_ID OUTPUT -- varchar(15) INSERT INTO dbo.TR_REQUEST_DOC_PL_DT ( REQPL_DT_ID, REQ_DOC_ID, PL_REQDT_ID, GD_ID, SUP_ID, HH_ID, TRAN_TYPE_ID, MAKER_ID, CREATE_DT, AUTH_STATUS, CHECKER_ID, APPROVE_DT, DES_GOOD, QUANTITY_PL, PRICE_PL, CURRENCY, EXCHANGE_RATE, TAXES, TOTAL_AMT_ETM, REASON_CDT, REQ_DT, NOTES, RECORD_STATUS ) VALUES ( @REQPL_DT_ID, -- REQPL_DT_ID - varchar(15) @REQ_DOC_ID, -- REQ_DOC_ID - varchar(15) @PL_REQDT_ID, -- PL_REQDT_ID - varchar(15) @GD_ID, -- GD_ID - varchar(15) @SUP_ID, -- SUP_ID - varchar(15) @HH_ID, -- HH_ID - varchar(15) @TRAN_TYPE_ID, -- TRAN_TYPE_ID - varchar(15) @MAKER_ID, -- MAKER_ID - varchar(15) @CREATE_DT, -- CREATE_DT - datetime @AUTH_STATUS, -- AUTH_STATUS - varchar(50) @CHECKER_ID, -- CHECKER_ID - varchar(15) @APPROVE_DT, -- APPROVE_DT - datetime @DES_GOOD, -- DES_GOOD - nvarchar(500) @QUANTITY_PL, -- QUANTITY_PL - decimal(18, 0) @PRICE_PL, -- PRICE_PL - decimal(18, 2) @CURRENCY, -- CURRENCY - nvarchar(50) @EXCHANGE_RATE, -- EXCHANGE_RATE - decimal(18, 2) @TAXES, -- TAXES - decimal(18, 2) @TOTAL_AMT_ETM, -- TOTAL_AMT_ETM - decimal(18, 2) @REASON_CDT, -- REASON_CDT - nvarchar(500) @REQ_DT, -- REQ_DT - datetime @NOTES, -- NOTES - nvarchar(500) @RECORD_STATUS -- RECORD_STATUS - varchar(1) ) UPDATE dbo.TR_REQUEST_DOC_DT SET REQPL_DT_ID=@REQPL_DT_ID WHERE REQDT_ID=@REQDT_ID FETCH NEXT FROM lstDATA INTO @REQPL_DT_ID,@REQ_DOC_ID,@PL_REQDT_ID,@GD_ID,@SUP_ID,@HH_ID,@TRAN_TYPE_ID,@MAKER_ID,@CREATE_DT,@AUTH_STATUS,@CHECKER_ID,@APPROVE_DT, @DES_GOOD,@QUANTITY_PL,@PRICE_PL,@CURRENCY,@EXCHANGE_RATE,@TAXES,@TOTAL_AMT_ETM,@REASON_CDT,@REQ_DT,@NOTES,@RECORD_STATUS,@REQDT_ID END CLOSE lstDATA DEALLOCATE lstDATA