ALTER PROCEDURE dbo.ASS_ADDNEW_QLTS_Appr @p_ADDNEW_ID VARCHAR(15) = NULL, @p_CHECKER_ID varchar(100) = NULL, @p_APPROVE_DT VARCHAR(20) = NULL AS IF((SELECT AUTH_STATUS FROM ASS_ADDNEW WHERE ADDNEW_ID = @p_ADDNEW_ID) = 'A') BEGIN SELECT '-1' as Result, '' ADDNEW_ID, N'Dữ liệu đã được duyệt' ErrorDesc RETURN '-1' END DECLARE @l_SUP_ID varchar(15) DECLARE @l_BUY_DATE datetime = NULL DECLARE @l_TYPE_ID varchar(15) = NULL DECLARE @l_GROUP_ID varchar(15) = NULL DECLARE @l_ASSET_NAME nvarchar(1000) = NULL DECLARE @l_ASSET_SERIAL_NO nvarchar(max) = NULL DECLARE @l_ASSET_DESC nvarchar(max) = NULL DECLARE @l_BRANCH_ID varchar(15) = NULL DECLARE @l_DEPT_ID varchar(15) = NULL DECLARE @l_EMP_ID varchar(15) = NULL DECLARE @l_DIVISION_ID varchar(15) = NULL DECLARE @l_BUY_PRICE decimal(18) = NULL DECLARE @l_AMORT_AMT decimal(18) = NULL DECLARE @l_AMORT_MONTH decimal(18,2) = NULL DECLARE @l_AMORT_RATE decimal(18,2) = NULL DECLARE @l_IS_MULTIPLE varchar(1) = NULL DECLARE @l_QTY int = NULL DECLARE @l_PO_ID varchar(15) = NULL DECLARE @l_PD_ID varchar(15) = NULL DECLARE @l_REF_ASSET_ID varchar(15) = NULL DECLARE @l_REF_AMORTIZED_AMT decimal(18) = NULL DECLARE @l_WARRANTY_MONTHS int = NULL DECLARE @l_NOTES nvarchar(1000) = NULL DECLARE @l_CORE_NOTE nvarchar(200) = NULL declare @l_ENTRY_BOOKED varchar(1) = null DECLARE @l_MAKER_ID varchar(15) DECLARE @l_AUTH_STATUS varchar(1) declare @l_DO_BRANCH_ID varchar(15) DECLARE @l_CONSTRUCT_ID varchar(15) = NULL DECLARE @l_AMORT_STATUS nvarchar(20) DECLARE @l_AMORT_START_DATE datetime, @l_AMORT_END_DATE datetime DECLARE @l_FIRST_AMORT_AMT numeric(18,0) DECLARE @l_MONTHLY_AMT numeric(18,0) DECLARE @l_HO_BRN_ID varchar(15) DECLARE @l_WAH_ID varchar(15) DECLARE @sToday varchar(10) = convert(varchar(10), getdate(), 103) DECLARE @l_USE_DATE varchar(15) DECLARE @l_ASS_TYPE varchar(1) = '1' declare @l_TRN_REF_NO varchar(20) DECLARE @l_ET_ID varchar(15) DECLARE @l_VALUE_ID varchar(15) DECLARE @l_ASSET_ID varchar(15) DECLARE @l_ASSET_CODE nvarchar(100) DECLARE @l_WAHDT_ID varchar(15) DECLARE @l_LOCHIST_ID varchar(15) DECLARE @l_SUPPEND_GL varchar(50) DECLARE @l_ASSET_GL varchar(50) declare @l_ASSET_VALUE decimal(18,0) DECLARE @ERRORSYS NVARCHAR(15) = '' DECLARE @BRANCH_CREATE VARCHAR(15) = NULL DECLARE @ACCOUNT_GL VARCHAR(50) DECLARE @VAT DECIMAL(18,2) DECLARE @PRICE_VAT DECIMAL(18,0) DECLARE @REQ_ID VARCHAR(15) DECLARE @REQ_CODE VARCHAR(50) DECLARE @WIN VARCHAR(1) DECLARE @OFFICE VARCHAR(1) DECLARE @ASS_CONTRACT_CODE VARCHAR(50) DECLARE @PL_CODE VARCHAR(50) DECLARE @i INT PRINT 'OK1' --DECLARE @PD_ID VARCHAR(15) --SELECT @PD_ID = PD_ID FROM ASS_ADDNEW WHERE ADDNEW_ID = @p_ADDNEW_ID --DECLARE @TOTAL_TT INT, @TOTAL_PO INT --SET @TOTAL_TT = (SELECT SUM(QTY) FROM ASS_ADDNEW WHERE PD_ID = @PD_ID AND AUTH_STATUS = 'A') + (SELECT QTY FROM ASS_ADDNEW WHERE ADDNEW_ID = @p_ADDNEW_ID) --SET @TOTAL_PO = (SELECT SUM(QUANTITY) FROM TR_PO_DETAIL WHERE PD_ID = @PD_ID) --IF(@TOTAL_TT > @TOTAL_PO) --BEGIN -- SELECT '-1' as Result, '' ADDNEW_ID, N'Số lượng hàng hóa đã nhập vượt quá số lượng PO' ErrorDesc -- RETURN '-1' --END --lay thong tin giao dich SELECT @l_BUY_DATE = BUY_DATE, @l_TYPE_ID = A.[TYPE_ID], @l_GROUP_ID = A.GROUP_ID, @l_ASSET_NAME = ASSET_NAME, @l_ASSET_SERIAL_NO = ASSET_SERIAL_NO, @l_ASSET_DESC = ASSET_DESC, @l_CONSTRUCT_ID = CONSTRUCT_ID, @l_BRANCH_ID = BRANCH_ID, @l_DEPT_ID = DEPT_ID, @l_EMP_ID = EMP_ID, @l_DIVISION_ID = DIVISION_ID, @l_BUY_PRICE = BUY_PRICE, @l_AMORT_AMT = AMORT_AMT, @l_AMORT_START_DATE = AMORT_START_DATE, --@l_AMORT_MONTH = AMORT_MONTH, @l_AMORT_MONTH = CASE WHEN G.AMORT_MONTH<>0 THEN G.AMORT_MONTH ELSE A.AMORT_MONTH END, @l_AMORT_RATE = A.AMORT_RATE, @l_CORE_NOTE = A.CORE_NOTE, @l_IS_MULTIPLE = IS_MULTIPLE, @l_QTY = QTY, @l_PO_ID = PO_ID,@l_PD_ID=PD_ID, @l_REF_ASSET_ID = REF_ASSET_ID, @l_REF_AMORTIZED_AMT = REF_AMORTIZED_AMT, @l_WARRANTY_MONTHS = WARRANTY_MONTHS, @l_NOTES = A.NOTES, @l_ENTRY_BOOKED = ENTRY_BOOKED, @l_MAKER_ID = A.MAKER_ID, @l_AUTH_STATUS = A.AUTH_STATUS, @l_AMORT_END_DATE = AMORT_END_DATE, @BRANCH_CREATE = BRANCH_CREATE, @ACCOUNT_GL = A.ACCOUNT_GL, @VAT = A.VAT, @PRICE_VAT = A.PRICE_VAT, @REQ_CODE = A.REQ_CODE, @REQ_ID = A.REQ_ID, @WIN = A.WIN_CRACK, @OFFICE = A.OFFICE_CRACK , @l_SUP_ID = A.SUP_ID, @ASS_CONTRACT_CODE = A.CONTRACT_ID, @PL_CODE = A.PL_CODE FROM ASS_ADDNEW A INNER JOIN ASS_GROUP G on G.GROUP_ID = A.GROUP_ID WHERE ADDNEW_ID = @p_ADDNEW_ID IF @@Error <> 0 GOTO ABORT /********** chekc vadilation ************/ IF (@l_AUTH_STATUS = 'A') SET @ERRORSYS = 'ASS-99998' IF @ERRORSYS <> '' BEGIN SELECT ErrorCode Result, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS RETURN '0' END BEGIN TRANSACTION IF @l_BRANCH_ID <>'' OR @l_BRANCH_ID IS NOT NULL SET @l_ENTRY_BOOKED = 'Y' IF @l_BRANCH_ID ='' OR @l_BRANCH_ID IS NULL SET @l_AMORT_STATUS = 'VNM' DECLARE @l_SL_IN_PYC INT =(SELECT ISNULL(SUM(TRSDD.QTY_ETM),0) FROM TR_REQUEST_SHOP_DOC_DT TRSDD LEFT JOIN TR_REQUEST_SHOP_DOC TRSD ON TRSD.REQ_ID = TRSDD.REQ_DOC_ID WHERE TRSD.REQ_CODE = @REQ_CODE AND TRSDD.ASS_GROUP_ID = @l_GROUP_ID AND TRSDD.REQ_DT_TYPE = 'BUYNEW') DECLARE @l_SL_ASS_MASTER INT =(SELECT ISNULL(COUNT(*),0) FROM ASS_MASTER AM WHERE AM.GROUP_ID = @l_GROUP_ID AND AM.REQ_CODE = @REQ_CODE) IF (@REQ_CODE IS NOT NULL OR @REQ_CODE <> '') BEGIN --kiem tra so luong so voi PYC IF((SELECT ISNULL(QTY,0) FROM ASS_ADDNEW WHERE ADDNEW_ID = @p_ADDNEW_ID) > (@l_SL_IN_PYC - @l_SL_ASS_MASTER)) BEGIN ROLLBACK TRANSACTION SELECT '-1' as Result, '' ADDNEW_ID, N'Số lượng tài sản không được lớn hơn số lượng tài sản có cùng loại được thêm mới theo Phiếu yêu cầu.' ErrorDesc RETURN '-1' END END --INSERT TYPE_XL PYC IF(@REQ_CODE IS NOT NULL OR @REQ_CODE <> '') BEGIN --TĂNG LOCATED NẾU XSD IF(@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <> '') BEGIN SET @l_USE_DATE = convert(varchar(10), getdate(), 103) UPDATE TR_REQUEST_SHOP_DOC_DT SET ALLOCATED = ALLOCATED + @l_QTY WHERE REQDT_ID IN (SELECT TRSDD.REQDT_ID FROM TR_REQUEST_SHOP_DOC_DT TRSDD WHERE TRSDD.REQ_DOC_ID = @REQ_ID AND TRSDD.ASS_GROUP_ID = @l_GROUP_ID AND TRSDD.REQ_DT_TYPE = 'BUYNEW') END END --INSERT TYPE_XL PYC END --UPDATE GIAO DICH ADDNEW UPDATE ASS_ADDNEW SET AUTH_STATUS = 'A', CHECKER_ID = @p_CHECKER_ID, APPROVE_DT = CONVERT(DATETIME, @p_APPROVE_DT, 103), AUTH_STATUS_KT = 'E' WHERE ADDNEW_ID = @p_ADDNEW_ID IF @@Error <> 0 GOTO ABORT IF (@l_IS_MULTIPLE = '0') --nhap tai san don le BEGIN --Phat sinh Asset_ID EXEC SYS_CodeMasters_Gen 'ASS_MASTER', @l_ASSET_ID out IF @l_ASSET_ID='' OR @l_ASSET_ID IS NULL GOTO ABORT DECLARE @ASSET_CODE_TMP VARCHAR(50) --Phat sinh ma tai san -- EXEC ASS_CODE_Gen @l_TYPE_ID, @l_GROUP_ID, @ASSET_CODE_TMP OUT -- IF @l_ASSET_CODE='' OR @l_ASSET_CODE IS NULL GOTO ABORT --Insert bang ASS_MASTER INSERT INTO ASS_MASTER ( [ASSET_ID], [TYPE_ID], [GROUP_ID], [ASSET_CODE], [ASSET_NAME], [ASSET_SERIAL_NO], [ASSET_DESC], [SUP_ID], [BUY_PRICE], [AMORT_AMT], [ASS_TYPE], [BRANCH_ID], [DEPT_ID], [EMP_ID], [DIVISION_ID], [BUY_DATE], [USE_DATE], [SPECIAL_ASS], [AMORT_MONTH], [AMORT_RATE], [AMORT_START_DATE], [AMORT_END_DATE], [FIRST_AMORT_AMT], [MONTHLY_AMORT_AMT], [AMORTIZED_MONTH], [AMORTIZED_AMT], [PO_ID], [PD_ID], [WAREHOUSE_ID], [LOCATION], [REF_ASSET_ID], [REF_AMORTIZED_AMT], [WARRANTY_MONTHS], [NOTES], [AMORT_STATUS], [ASS_STATUS], [ASS_STATUS_DESC], [ENTRY_BOOKED], [RECORD_STATUS], [AUTH_STATUS], [MAKER_ID], [CREATE_DT], [CHECKER_ID], [APPROVE_DT], [CONSTRUCT_ID], [USE_STATUS], [BRANCH_CREATE], [ACCOUNT_GL], VAT,PRICE_VAT, LIQ_W_STATUS, -- HUNGDV MAC DINH = '0', REQ_ID, REQ_CODE, -- KHIEMCHG thêm số phiếu yêu cầu để biết tài sản sinh ra từ pyc nào, ASS_CODE_TMP --khiemchg lưu asset code được gen ra lưu tạm ,OS, MO_LICENSE, ASS_CONTRACT_CODE, PL ) VALUES ( @l_ASSET_ID, @l_TYPE_ID , @l_GROUP_ID, @l_ASSET_ID, @l_ASSET_NAME, @l_ASSET_SERIAL_NO, @l_ASSET_DESC, @l_SUP_ID, @l_BUY_PRICE, @l_AMORT_AMT, @l_ASS_TYPE, @l_BRANCH_ID, @l_DEPT_ID, @l_EMP_ID, @l_DIVISION_ID, CONVERT(DATETIME, @l_BUY_DATE, 103), CONVERT(DATETIME, @l_USE_DATE, 103), '0', @l_AMORT_MONTH, @l_AMORT_RATE, @l_AMORT_START_DATE, @l_AMORT_END_DATE, @l_FIRST_AMORT_AMT, @l_MONTHLY_AMT, 0, 0, @l_PO_ID, @l_PD_ID, NULL, NULL, @l_REF_ASSET_ID, @l_REF_AMORTIZED_AMT, @l_WARRANTY_MONTHS, @l_NOTES, @l_AMORT_STATUS, '1', --Mac dinh moi insert vao tinh trang tai san la binh thuong N'', @l_ENTRY_BOOKED, '1', 'U', @l_MAKER_ID, CONVERT(DATETIME, @sToday, 103), @p_CHECKER_ID, CONVERT(DATETIME, @p_APPROVE_DT, 103) , @l_CONSTRUCT_ID, 'BT', @BRANCH_CREATE, @ACCOUNT_GL, @VAT,@PRICE_VAT, '0' -- LIQ_W_STATUS HUNGDV MAC DINH = '0' ,@REQ_ID ,@REQ_CODE, @l_ASSET_ID, @WIN, @OFFICE, @ASS_CONTRACT_CODE, @PL_CODE ) IF @@Error <> 0 GOTO ABORT --INSERT CHI TIET TAI SAN INSERT INTO ASS_MASTER_PO SELECT @l_ASSET_ID, POAD.PO_ID, GDDT.TRPO_ID,CONVERT(DATETIME, @sToday, 103) FROM ASS_ADDNEW_PO POAD LEFT JOIN ASS_ADDNEW_GD GDDT ON GDDT.PO_ID = POAD.PO_ID AND GDDT.ADDNEW_ID = @p_ADDNEW_ID WHERE POAD.ADDNEW_ID = @p_ADDNEW_ID --Insert bang ASS_WARRANTY_DET tu bang ASS_ADDNEW_DT insert into ASS_WARRANTY_DT(ASSET_ID, WAR_DT, WAR_CONTENT, WAR_END_DT) select @l_ASSET_ID, A.WAR_DT, A.WAR_CONTENT, WAR_EXPIRED from ASS_ADDNEW_DT A WHERE A.ADDNEW_ID= @p_ADDNEW_ID IF @@Error <> 0 GOTO ABORT --INSERT VAO BANG ASS_TRANSACTIONS INSERT INTO ASS_TRANSACTIONS(ASSET_ID, TRN_ID, TRN_TYPE, TRN_DATE, RECORD_STATUS, AUTH_STATUS, [MAKER_ID], [CREATE_DT], [CHECKER_ID], [APPROVE_DT] )VALUES ( @l_ASSET_ID, @p_ADDNEW_ID, 'ADD_NEW', CONVERT(DATETIME, @sToday, 103), '1', 'A', @l_MAKER_ID, CONVERT(DATETIME, @sToday, 103), @p_CHECKER_ID, CONVERT(DATETIME, @p_APPROVE_DT, 103) ) IF @@Error <> 0 GOTO ABORT --Insert bang ASS_LOCATION_HIST EXEC SYS_CodeMasters_Gen 'ASS_LOCATION_HIST', @l_LOCHIST_ID out IF @l_LOCHIST_ID='' OR @l_LOCHIST_ID IS NULL GOTO ABORT INSERT INTO ASS_LOCATION_HIST ( LOCHIST_ID, ASSET_ID, USE_START_DT, USE_END_DT, BRANCH_ID, DEPT_ID, EMP_ID, LOCATION, ISLEAF, PARENT_ID ) VALUES ( @l_LOCHIST_ID, @l_ASSET_ID, GETDATE(), NULL, @l_BRANCH_ID, @l_DEPT_ID, @l_EMP_ID, '', 'Y', NULL ) IF @@Error <> 0 GOTO ABORT END ELSE --- NHẬP LÔ BEGIN IF(EXISTS(SELECT * FROM ASS_TRANSACTIONS AT WHERE AT.TRN_ID = @p_ADDNEW_ID)) BEGIN DELETE ASS_MASTER_PO WHERE ASSET_ID IN (SELECT AT.ASSET_ID FROM ASS_TRANSACTIONS AT WHERE AT.TRN_ID = @p_ADDNEW_ID) DELETE ASS_MASTER WHERE ASSET_ID IN (SELECT AT.ASSET_ID FROM ASS_TRANSACTIONS AT WHERE AT.TRN_ID = @p_ADDNEW_ID) DELETE ASS_LOCATION_HIST WHERE ASSET_ID IN (SELECT AT.ASSET_ID FROM ASS_TRANSACTIONS AT WHERE AT.TRN_ID = @p_ADDNEW_ID) DELETE ASS_WARRANTY_DT WHERE ASSET_ID IN (SELECT AT.ASSET_ID FROM ASS_TRANSACTIONS AT WHERE AT.TRN_ID = @p_ADDNEW_ID) DELETE ASS_TRANSACTIONS WHERE TRN_ID = @p_ADDNEW_ID END ----thieuvq 14/10/2014 nhap seri theo lo --DECLARE @l_LSTSERI TABLE ( -- [ID] [int] NULL, -- [VALUE] [NVARCHAR](MAX) NULL) --DECLARE @l_SERI VARCHAR(MAX) ----LAY THONG TIN SO SERI --INSERT INTO @l_LSTSERI SELECT ROW_NUMBER() OVER (ORDER BY VALUE), VALUE FROM WSISPLIT(@l_ASSET_SERIAL_NO,',') --thieuvq 14/10/2014 nhap seri theo lo DECLARE @l_LSTSERI TABLE ( [ID] [int] IDENTITY(1,1) NOT NULL, [VALUE] [NVARCHAR](MAX) NULL) DECLARE @l_SERI VARCHAR(MAX) --LAY THONG TIN SO SERI --INSERT INTO @l_LSTSERI SELECT ROW_NUMBER() OVER (ORDER BY VALUE), VALUE FROM WSISPLIT(@l_ASSET_SERIAL_NO,',') INSERT INTO @l_LSTSERI SELECT VALUE FROM WSISPLIT(@l_ASSET_SERIAL_NO,',') DECLARE @TBTEMP TABLE(PO_ID VARCHAR(15),PD_ID VARCHAR(15),CREATE_DATE DATETIME) --INSERT CHI TIET TAI SAN INSERT INTO @TBTEMP SELECT POAD.PO_ID, GDDT.TRPO_ID,CONVERT(DATETIME, @sToday, 103) FROM ASS_ADDNEW_PO POAD LEFT JOIN ASS_ADDNEW_GD GDDT ON GDDT.PO_ID = POAD.PO_ID AND GDDT.ADDNEW_ID = @p_ADDNEW_ID WHERE POAD.ADDNEW_ID = @p_ADDNEW_ID -- SET @i = 1 WHILE (@i <= @l_QTY) BEGIN --Phat sinh Asset_ID EXEC SYS_CodeMasters_Gen 'ASS_MASTER', @l_ASSET_ID out IF @l_ASSET_ID='' OR @l_ASSET_ID IS NULL GOTO ABORT --Phat sinh ma tai san -- EXEC ASS_CODE_Gen @l_TYPE_ID, @l_GROUP_ID, @l_ASSET_CODE OUT -- IF @l_ASSET_CODE='' OR @l_ASSET_CODE IS NULL GOTO ABORT --THIEUVQ 14/10/2014 LAY SO SERI SET @l_SERI = (SELECT VALUE FROM @l_LSTSERI WHERE ID = @i) --Insert bang ASS_MASTER INSERT INTO ASS_MASTER ( [ASSET_ID], [TYPE_ID], [GROUP_ID], [ASSET_CODE], [ASSET_NAME], [ASSET_SERIAL_NO], [ASSET_DESC], [SUP_ID], [BUY_PRICE], [AMORT_AMT], [ASS_TYPE], [BRANCH_ID], [DEPT_ID], [EMP_ID], [DIVISION_ID], [BUY_DATE], [USE_DATE], [SPECIAL_ASS], [AMORT_MONTH], [AMORT_RATE], [AMORT_START_DATE], [AMORT_END_DATE], [FIRST_AMORT_AMT], [MONTHLY_AMORT_AMT], [AMORTIZED_MONTH], [AMORTIZED_AMT], [PO_ID], [PD_ID], [WAREHOUSE_ID], [LOCATION], [REF_ASSET_ID], [REF_AMORTIZED_AMT], [WARRANTY_MONTHS], [NOTES], [AMORT_STATUS], [ASS_STATUS], [ASS_STATUS_DESC], [ENTRY_BOOKED], [RECORD_STATUS], [AUTH_STATUS], [MAKER_ID], [CREATE_DT], [CHECKER_ID], [APPROVE_DT], [CONSTRUCT_ID], [USE_STATUS], [BRANCH_CREATE],[ACCOUNT_GL], VAT,PRICE_VAT, LIQ_W_STATUS -- HUNGDV MAC DINH = '0' ,REQ_ID ,REQ_CODE, -- KHIEMCHG thêm số phiếu yêu cầu để biết tài sản sinh ra từ pyc nào ASS_CODE_TMP,OS, MO_LICENSE ) VALUES ( @l_ASSET_ID, @l_TYPE_ID , @l_GROUP_ID, @l_ASSET_ID, @l_ASSET_NAME, @l_SERI, --@l_ASSET_SERIAL_NO, @l_ASSET_DESC, @l_SUP_ID, @l_BUY_PRICE, @l_AMORT_AMT, @l_ASS_TYPE, @l_BRANCH_ID, @l_DEPT_ID, @l_EMP_ID, @l_DIVISION_ID, CONVERT(DATETIME, @l_BUY_DATE, 103), CONVERT(DATETIME, @l_USE_DATE, 103), '0', NULL, --@l_AMORT_MONTH, @l_AMORT_RATE, @l_AMORT_START_DATE, @l_AMORT_END_DATE, @l_FIRST_AMORT_AMT, @l_MONTHLY_AMT, 0, 0, @l_PO_ID, @l_PD_ID, NULL, NULL, @l_REF_ASSET_ID, @l_REF_AMORTIZED_AMT, @l_WARRANTY_MONTHS, @l_NOTES, @l_AMORT_STATUS, '1', --Mac dinh moi insert vao tinh trang tai san la binh thuong N'', @l_ENTRY_BOOKED, '1', 'U', @l_MAKER_ID, CONVERT(DATETIME, @sToday, 103), @p_CHECKER_ID, CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_CONSTRUCT_ID , 'BT', @BRANCH_CREATE,@ACCOUNT_GL, @VAT,@PRICE_VAT, '0' -- HUNGDV LIQ_W_STATUS MAC DINH = '0' ,@REQ_ID ,@REQ_CODE,@l_ASSET_ID, @WIN, @OFFICE ) IF @@Error <> 0 GOTO ABORT --INSERT CHI TIET TAI SAN INSERT INTO ASS_MASTER_PO SELECT @l_ASSET_ID, * FROM @TBTEMP --Insert bang ASS_WARRANTY_DET tu bang ASS_ADDNEW_DT insert into ASS_WARRANTY_DT(ASSET_ID, WAR_DT, WAR_CONTENT) select @l_ASSET_ID, A.WAR_DT, A.WAR_CONTENT from ASS_ADDNEW_DT A WHERE A.ADDNEW_ID= @p_ADDNEW_ID IF @@Error <> 0 GOTO ABORT --INSERT VAO BANG ASS_TRANSACTIONS INSERT INTO ASS_TRANSACTIONS(ASSET_ID, TRN_ID, TRN_TYPE, TRN_DATE, RECORD_STATUS, AUTH_STATUS, [MAKER_ID], [CREATE_DT], [CHECKER_ID], [APPROVE_DT] )VALUES ( @l_ASSET_ID, @p_ADDNEW_ID, 'ADD_NEW', CONVERT(DATETIME, @sToday, 103), '1', 'A', @l_MAKER_ID, CONVERT(DATETIME, @sToday, 103), @p_CHECKER_ID, CONVERT(DATETIME, @p_APPROVE_DT, 103) ) IF @@Error <> 0 GOTO ABORT --Insert bang ASS_LOCATION_HIST EXEC SYS_CodeMasters_Gen 'ASS_LOCATION_HIST', @l_LOCHIST_ID out IF @l_LOCHIST_ID='' OR @l_LOCHIST_ID IS NULL GOTO ABORT INSERT INTO ASS_LOCATION_HIST ( LOCHIST_ID, ASSET_ID, USE_START_DT, USE_END_DT, BRANCH_ID, DEPT_ID, EMP_ID, LOCATION, ISLEAF, PARENT_ID ) VALUES ( @l_LOCHIST_ID, @l_ASSET_ID, GETDATE(), NULL, @l_BRANCH_ID, @l_DEPT_ID, @l_EMP_ID, '', 'Y', NULL ) IF @@Error <> 0 GOTO ABORT SET @i = @i + 1 END END ---- SET VE NULL ĐỂ KT LƯU HIỆN RÀNG BUỘC UPDATE ASS_ADDNEW SET AMORT_MONTH = NULL WHERE ADDNEW_ID = @p_ADDNEW_ID INSERT INTO dbo.PL_PROCESS ( REQ_ID, PROCESS_ID, CHECKER_ID, APPROVE_DT, PROCESS_DESC, NOTES ) VALUES ( @p_ADDNEW_ID, 'APPROVE', @p_CHECKER_ID, GETDATE(), N'Trưởng đơn vị phê duyệt' , N'Trưởng đơn vị phê duyệt thành công' ) -- ---UPDATE NGAY HOA DON VA SO HOA DON LEN PO -- UPDATE TR_PO_DETAIL SET INVOICENO = A.INVOICE_NO, INVOICE_DT = A.INVOICE_DT -- FROM ASS_ADDNEW_GD A -- WHERE A.TRPO_ID = PD_ID AND A.ADDNEW_ID = @p_ADDNEW_ID -- UPDATE SỐ TỜ TRÌNH VÀO PYC --IF(@REQ_CODE IS NOT NULL AND @REQ_CODE <> '') UPDATE TR_REQUEST_SHOP_DOC SET PL_CODE = @PL_CODE WHERE REQ_CODE = @REQ_CODE COMMIT TRANSACTION SELECT '0' as Result, @p_ADDNEW_ID ADDNEW_ID, @l_TYPE_ID ErrorDesc--LUU TRU TAM DE GUI MAIL THONG BAO -- HUNGDV Them Code de gui notification , (SELECT STUFF((SELECT '; ' + DTA.PO_CODE FROM ASS_ADDNEW_PO DTA WHERE DTA.ADDNEW_ID = @p_ADDNEW_ID FOR XML PATH('') ),1,1,'') ) as CODE RETURN '0' ABORT: BEGIN ROLLBACK TRANSACTION SELECT '-1' as Result, '' ADDNEW_ID, '' ErrorDesc RETURN '-1' End