ALTER PROCEDURE dbo.ASS_ADDNEW_KT_BVB_Appr @p_ADDNEW_ID VARCHAR(15) = NULL, @p_CHECKER_ID varchar(100) = NULL, @p_APPROVE_DT VARCHAR(20) = NULL AS 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(500) = NULL declare @l_ENTRY_BOOKED varchar(1) = null DECLARE @l_MAKER_ID varchar(15) DECLARE @l_AUTH_STATUS_KT varchar(1) declare @l_DO_BRANCH_ID varchar(15) DECLARE @l_CONSTRUCT_ID varchar(15) = NULL DECLARE @l_USE_DATE_KT DATETIME = NULL DECLARE @l_AMORTIZED_AMT DECIMAL = 0 DECLARE @l_AMORTIZED_MONTH DECIMAL = 0 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_AMORTDT_ID VARCHAR(15) = NULL 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 @PRICE_NONE_VAT DECIMAL(18,0) DECLARE @PRICE_VAT DECIMAL(18,0) DECLARE @l_SUPPEND_GL varchar(50) DECLARE @l_ASSET_GL varchar(50) declare @l_ASSET_VALUE decimal(18,0) DECLARE @l_EXP_ACCTNO varchar(50)--TK CHI PHI DECLARE @l_AMORT_ACCTNO varchar(50)--TK CHO PHAN BO DECLARE @l_PAY_HS_ACCTNO VARCHAR(50) DECLARE @_BUY_TS_ACCTNO VARCHAR(50) DECLARE @l_WAIT_AMORT VARCHAR(50) DECLARE @l_TRANFER_ACCTNO VARCHAR(50) DECLARE @l_DR_BRANCH VARCHAR(15) -- DV GHI NO DECLARE @ERRORSYS NVARCHAR(15) = '' DECLARE @ACCOUNT_GL VARCHAR(50), @ACCOUNT_VAT VARCHAR(50) DECLARE @i INT, @l_USE_DATE_CUR DATETIME = NULL DECLARE @l_CURR_AMORT_AMT DECIMAL(18,0) = 0 DECLARE @sExecDT DATETIME DECLARE @l_AMORT_TERM VARCHAR(500), @l_AMORT_DESC VARCHAR(500) DECLARE @l_OLD_QT INT, @l_CUR_QT INT -- 26/12/2014 THIEUVQ DECLARE @l_IS_AMORT_WR VARCHAR(1) = '1' --THIEUVQ 27/07/2015 THEM DIEU KIEN KIEM TRA KHI NAO GHI NHAN KHAU HAO DECLARE @l_BRANCH_CREATE VARCHAR(15), @BRN_TYPE_TRN VARCHAR(15), @BRN_TYPE_REC VARCHAR(15), @TCCT_TRN_ACCTNO VARCHAR(50), @TCCT_REC_ACCTNO VARCHAR(50) DECLARE @l_VAT DECIMAL(18,0), @ERROR NVARCHAR(500) = '' DECLARE @l_COST_MASTER_ID VARCHAR(15) DECLARE @l_COSTDT_ID VARCHAR(15) DECLARE @CUR_DATE DATETIME = GETDATE() -- khiemchg bo sung thong tin pyc DECLARE @REQ_ID VARCHAR(15) DECLARE @REQ_CODE VARCHAR(50) DECLARE @ASS_CONTRACT_CODE VARCHAR(50) DECLARE @PL_CODE VARCHAR(50) --check ngày khấu hao null IF (EXISTS(SELECT 1 FROM ASS_ADDNEW WHERE ADDNEW_ID =@p_ADDNEW_ID AND BRANCH_ID IS NOT NULL AND AMORT_START_DATE IS NULL)) BEGIN SELECT '-1' AS Result, '' ADDNEW_ID, N'Thông tin ngày bắt đầu phân bổ không hợp lệ' 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 = A.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_KT, @l_AUTH_STATUS_KT = A.AUTH_STATUS_KT, @ACCOUNT_GL = A.ACCOUNT_GL, @PRICE_VAT = A.PRICE_VAT,@l_BRANCH_CREATE= A.BRANCH_CREATE, @l_VAT = A.VAT ,@REQ_CODE = A.REQ_CODE, @REQ_ID = A.REQ_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 ------LUCTV: 21-12-2018KIEM TRA NEU TINH TRANG DANG LA 'R' THI KHONG CHO PHEP DUYET----- IF(EXISTS(SELECT * FROM ASS_ADDNEW WHERE AUTH_STATUS_KT ='R' AND ADDNEW_ID =@p_ADDNEW_ID)) BEGIN --ROLLBACK TRANSACTION SELECT '-1' as Result, '' ADDNEW_ID, N'Thông tin nhập mới tài sản đang bị trả về. Vui lòng cập nhật lại thông tin trước khi duyệt' ErrorDesc RETURN '-1' END IF(EXISTS(SELECT * FROM ASS_ADDNEW WHERE AUTH_STATUS_KT ='A' AND ADDNEW_ID =@p_ADDNEW_ID)) BEGIN --ROLLBACK TRANSACTION SELECT '-1' as Result, '' ADDNEW_ID, N'Phiếu nhập mới đã được duyệt.' ErrorDesc RETURN '-1' END ------LUCTV: 21-12-2021 KIEM TRA NEU GDV CHUA CAP NHAT PHIEU THI KHONG CHO PHEP DUYET----- IF((SELECT MAKER_ID_KT FROM ASS_ADDNEW WHERE ADDNEW_ID =@p_ADDNEW_ID) IS NULL) BEGIN --ROLLBACK TRANSACTION SELECT '-1' as Result, '' ADDNEW_ID, N'Thông tin nhập mới tài sản đang bị trả về. Vui lòng cập nhật lại thông tin trước khi duyệt' ErrorDesc RETURN '-1' END /*******DIEN GIAI PHAN BO CHI PHI ***********/ SET @l_AMORT_DESC = 'PHAN BO CHI PHI CCLD KY ' + convert(varchar(10),month(getdate())) + ' ' + convert(varchar(10),year(getdate())) /********** chekc vadilation ************/ IF (@l_AUTH_STATUS_KT = 'A') SET @ERRORSYS = 'ASS-99998' /*********** Kiem tra gia tri khau hao voi gia tri 30Tr **************/ SELECT @l_ASSET_VALUE = CONVERT(decimal(18,0), ParaValue) FROM SYS_PARAMETERS WHERE ParaKey = 'ASSET_VALUE' IF (@l_TYPE_ID = 'CCLD' AND @l_AMORT_AMT > @l_ASSET_VALUE) SET @ERRORSYS = 'ASS-00011' --IF @l_AMORT_MONTH < 1 AND @l_AMORT_MONTH IS NOT NULL AND @l_AMORT_MONTH <> '' --BEGIN -- SET @ERRORSYS = 'ASS-00020' --END --IF (@l_ASS_TYPE = 'TSCD' AND @l_AMORT_AMT < @l_ASSET_VALUE) -- SET @ERRORSYS = 'ASS-00012' /************ Xuat tai san thi phai hach toan tang tai sai ****************/ --IF (@l_ENTRY_BOOKED = 'N' AND (@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <>'')) -- SET @ERRORSYS = 'ASS-00013' /*************** Doi voi CCLD phai khau hao het trong nam tai chinh ***********/ --Tinh ngay ket thuc khau hao SET @l_AMORT_END_DATE = DATEADD(MONTH, @l_AMORT_MONTH, @l_AMORT_START_DATE) - 1 IF @ERRORSYS <> '' BEGIN SELECT ErrorCode Result, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS RETURN '0' END --Lay thong tin nha cung cap SELECT @l_SUP_ID = SUP_ID FROM TR_PO_MASTER A WHERE A.PO_ID = @l_PO_ID --BRN_ID HOI SO SELECT @l_HO_BRN_ID = BRANCH_ID FROM CM_BRANCH A WHERE A.BRANCH_TYPE = 'HS' --Lay thong tin kho mac dinh --SELECT @l_WAH_ID = P.ParaValue FROM SYS_PARAMETERS P WHERE P.ParaKey='ASSET_WAREHOUSE' SET @l_WAH_ID = @l_BRANCH_CREATE --Lay suppend GL - THIEUVQ 26092016 - GHI NHAN THEO TAI KHOAN NHAP TU PHAN MEM --SET @l_SUPPEND_GL = UPPER(@ACCOUNT_GL) + 'XXXX' --SELECT @l_SUPPEND_GL = A.ParaValue FROM SYS_PARAMETERS A WHERE A.ParaKey='ASSET_SUPPEND_GL' --SELECT * FROM SYS_PARAMETERS A WHERE A.ParaKey='ASSET_SUPPEND_GL' ----THIEUVQ - 30/05/2014 DOI VOI CCLD THI GHI NHAN TAI DON VI --SET @l_SUPPEND_GL = SUBSTRING(@l_SUPPEND_GL,1,LEN(@l_SUPPEND_GL) - 4) + 'XXXX' --TAI KHOAN HACH TOAN VAT SET @ACCOUNT_VAT = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='ACC_VAT') --- TAI KHOAN PHAI TRA HS --NẾU XSD THÌ TĂNG TÀI SẢN IF(@l_TYPE_ID='TSCD') BEGIN IF(@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <> '') BEGIN SET @l_ENTRY_BOOKED = 'Y' END ELSE IF(@l_BRANCH_ID IS NULL OR @l_BRANCH_ID = '') BEGIN SET @l_ENTRY_BOOKED = 'N' END SET @l_BUY_PRICE = @l_BUY_PRICE + @PRICE_VAT SET @l_AMORT_AMT = @l_BUY_PRICE END SET @l_TRANFER_ACCTNO =(SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='TRANSFER') SET @l_PAY_HS_ACCTNO = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='PAY_HS') SET @_BUY_TS_ACCTNO = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='BUY_TSCD' AND epa.GROUP_ID=(SELECT AG.PARENT_ID FROM ASS_GROUP AG WHERE AG.GROUP_ID = (SELECT AG.PARENT_ID FROM ASS_GROUP AG WHERE AG.GROUP_ID = @l_GROUP_ID))) SET @l_WAIT_AMORT = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='AMORT_CCLD') --ASSET_GL SELECT @l_ASSET_GL = ASSET_ACCTNO, @l_EXP_ACCTNO = EXP_ACCTNO, @l_AMORT_ACCTNO = AMORT_ACCTNO FROM ASS_GROUP A WHERE A.GROUP_ID = @l_GROUP_ID --Lay branch_id cua user duyet select @l_DO_BRANCH_ID = a.TLSUBBRID from TL_USER a where a.TLNANME = @p_CHECKER_ID --Trang thai khau hao IF (@l_BRANCH_ID IS NULL OR @l_BRANCH_ID = '') --Chua xuat su dung BEGIN SET @l_AMORT_STATUS = 'VNM' SET @l_AMORT_START_DATE = NULL SET @l_AMORT_END_DATE = NULL SET @l_MONTHLY_AMT = NULL SET @l_FIRST_AMORT_AMT = NULL SET @l_USE_DATE = NULL END ELSE IF @l_AMORT_MONTH = 0 OR @l_AMORT_START_DATE IS NULL OR @l_AMORT_START_DATE = '' BEGIN SET @l_AMORT_STATUS = 'KKH' SET @l_AMORT_START_DATE = NULL SET @l_AMORT_END_DATE = NULL SET @l_MONTHLY_AMT = 0 SET @l_FIRST_AMORT_AMT = 0 SET @l_USE_DATE = @sToday SET @l_USE_DATE_KT = CONVERT(DATETIME, @sToday, 103) END ELSE BEGIN SET @l_AMORT_STATUS = 'CKH' SET @l_USE_DATE = @sToday SET @l_USE_DATE_KT = CONVERT(DATETIME, @sToday, 103) --Ngay bat dau khau hao mac dinh la ngay hien tai IF(@l_AMORT_START_DATE IS NULL) ---THIEUVQ MOI THEM BEGIN SET @l_AMORT_START_DATE = GETDATE() END --Tinh so tien khau hao thang dau tien va so tien khau hao hang thang SET @l_MONTHLY_AMT = ROUND(@l_AMORT_AMT / @l_AMORT_MONTH, 0) --SET @l_FIRST_AMORT_AMT = @l_MONTHLY_AMT -- IF(@l_TYPE_ID='TSCD') --BEGIN DECLARE @AMORT_ON_DAY DECIMAL(18,0) SET @AMORT_ON_DAY = ROUND(@l_MONTHLY_AMT/dbo.[FN_GetDaysInMonth](@l_AMORT_START_DATE),0) SET @l_FIRST_AMORT_AMT = ROUND(@AMORT_ON_DAY * (DATEDIFF(day,@l_AMORT_START_DATE, dbo.FN_GetLastDayOfMonth(@l_AMORT_START_DATE)) + 1), 0) --END IF(DAY(@l_AMORT_START_DATE)=1) SET @l_FIRST_AMORT_AMT=@l_MONTHLY_AMT -- ELSE -- SET @l_FIRST_AMORT_AMT = @l_MONTHLY_AMT END DECLARE @ASSID_TEMP TABLE([ID] [int] IDENTITY(1,1) NOT NULL, ASSET_ID VARCHAR(15)) --INSERT INTO @ASSID_TEMP SELECT A FROM ASS_MASTER AA WHERE AA.ADD = @p_ADDNEW_ID INSERT INTO @ASSID_TEMP SELECT AT.ASSET_ID FROM ASS_TRANSACTIONS AT WHERE AT.TRN_ID = @p_ADDNEW_ID AND AT.TRN_TYPE ='ADD_NEW' BEGIN TRANSACTION --UPDATE GIAO DICH ADDNEW --IF(@l_IS_MULTIPLE = '1') BEGIN--Phân lại seri nếu thêm vào lúc kế toán DECLARE @l_LSTSERI TABLE ( [ID] [int] IDENTITY(1,1) NOT NULL, [VALUE] [NVARCHAR](MAX) NULL) DECLARE @l_SERI VARCHAR(MAX) = NULL INSERT INTO @l_LSTSERI SELECT VALUE FROM WSISPLIT(@l_ASSET_SERIAL_NO,',') --Phân lại seri nếu thêm vào lúc kế toán END UPDATE ASS_ADDNEW SET AUTH_STATUS_KT = 'A', CHECKER_ID_KT = @p_CHECKER_ID, APPROVE_DT_KT = CONVERT(DATETIME, @p_APPROVE_DT, 103) , POSTED_STATUS = 'Y' WHERE ADDNEW_ID = @p_ADDNEW_ID IF @@Error <> 0 GOTO ABORT DECLARE @l_TRN_NO VARCHAR(15) EXEC ENTRIES_POST_GEN_NO @p_BRANCH_ID = @l_BRANCH_CREATE ,@p_TRN_DATE = @p_APPROVE_DT ,@p_KeyGen = @l_TRN_NO OUT --IF (@l_IS_MULTIPLE = '0') --nhap tai san don le DECLARE @int INT = 1 WHILE (@int <= (SELECT COUNT(*) FROM @ASSID_TEMP)) BEGIN SET @l_ASSET_ID = (SELECT ASSET_ID FROM @ASSID_TEMP WHERE ID = @int) SET @l_SERI = (SELECT VALUE FROM @l_LSTSERI WHERE ID = @int) --Phat sinh ma tai san EXEC ASS_CODE_Gen_VB @l_ASSET_CODE OUT IF @l_ASSET_CODE = '' OR @l_ASSET_CODE IS NULL GOTO ABORT --Insert bang ASS_MASTER UPDATE ASS_MASTER SET [TYPE_ID] = @l_TYPE_ID, [GROUP_ID] = @l_GROUP_ID, [ASSET_CODE] = @l_ASSET_CODE, [ASSET_NAME] = @l_ASSET_NAME, [ASSET_SERIAL_NO] = @l_SERI, [ASSET_DESC] = @l_ASSET_DESC, [SUP_ID] = @l_SUP_ID, [BUY_PRICE] = @l_BUY_PRICE, [AMORT_AMT] = @l_AMORT_AMT, [ASS_TYPE] = @l_ASS_TYPE, -- [BRANCH_ID] = @l_BRANCH_ID, -- [DEPT_ID] = @l_DEPT_ID, -- [EMP_ID] = @l_EMP_ID, -- [DIVISION_ID] = @l_DIVISION_ID, [BUY_DATE] = CONVERT(DATETIME, @l_BUY_DATE, 103), [USE_DATE] = CONVERT(DATETIME, @l_USE_DATE, 103), [SPECIAL_ASS] = '0', [AMORT_MONTH] = @l_AMORT_MONTH, [AMORT_RATE] = @l_AMORT_RATE, [AMORT_START_DATE] = @l_AMORT_START_DATE, [AMORT_END_DATE] = @l_AMORT_END_DATE, [FIRST_AMORT_AMT] = @l_FIRST_AMORT_AMT, [MONTHLY_AMORT_AMT] = @l_MONTHLY_AMT, [AMORTIZED_MONTH] = 0, [AMORTIZED_AMT] = 0, [PO_ID] = @l_PO_ID, [PD_ID] = @l_PD_ID, [WAREHOUSE_ID] = NULL, [LOCATION] = NULL, [REF_ASSET_ID] = @l_REF_ASSET_ID, [REF_AMORTIZED_AMT] = @l_REF_AMORTIZED_AMT, [WARRANTY_MONTHS] = @l_WARRANTY_MONTHS, [NOTES] = @l_NOTES, [AMORT_STATUS] = @l_AMORT_STATUS, [ASS_STATUS] = '1', [ASS_STATUS_DESC] = N'', [ENTRY_BOOKED] = @l_ENTRY_BOOKED, [RECORD_STATUS] = '1', [AUTH_STATUS] = 'A', [MAKER_ID] = @l_MAKER_ID, [CREATE_DT] = CONVERT(DATETIME, @sToday, 103), [CHECKER_ID] = @p_CHECKER_ID, [APPROVE_DT] = CONVERT(DATETIME, @p_APPROVE_DT, 103), [CONSTRUCT_ID] = @l_CONSTRUCT_ID, [USE_STATUS] = 'BT', [BRANCH_CREATE] = @l_BRANCH_CREATE, [ACCOUNT_GL] = @ACCOUNT_GL, VAT = @l_VAT, PRICE_VAT = @PRICE_VAT, [BUY_DATE_KT] = CONVERT(DATETIME, @sToday, 103), [USE_DATE_KT] = @l_USE_DATE_KT, ASS_CODE_TMP = @l_ASSET_CODE, ASS_CONTRACT_CODE = @ASS_CONTRACT_CODE, PL = @PL_CODE WHERE ASSET_ID = @l_ASSET_ID SET @l_ASSET_CODE= (SELECT am.ASSET_CODE FROM ASS_MASTER am WHERE am.ASSET_ID=@l_ASSET_ID) IF @@Error <> 0 GOTO ABORT DECLARE @l_ETP_ID VARCHAR(20),@l_D_BRANCH_CODE VARCHAR(25) , @l_C_BRANCH_CODE VARCHAR(25), @l_DEP_CODE VARCHAR(20) SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_CREATE) SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_CREATE) --IF (@l_ENTRY_BOOKED = 'Y') --Neu nhap TS va hach toan tang tai san IF (@l_ENTRY_BOOKED = 'Y' ) --Neu nhap TS va hach toan tang tai san thieuvq 15/04/2014 BEGIN --insert dbo.ASS_VALUES EXEC SYS_CodeMasters_Gen 'ASS_VALUES', @l_VALUE_ID out IF @l_VALUE_ID='' OR @l_VALUE_ID IS NULL GOTO ABORT INSERT INTO ASS_VALUES ( VALUE_ID, ASSET_ID, BRANCH_ID, TRN_DT, CRDR, ASSET_AMT, [DESCRIPTION], TRN_ID, TRN_TYPE, RECORD_STATUS, AUTH_STATUS, MAKER_ID, CREATE_DT, CHECKER_ID, APPROVE_DT, AMORT_AMT ) VALUES ( @l_VALUE_ID, @l_ASSET_ID, @l_BRANCH_CREATE, CONVERT(datetime, @sToday, 103), 'C', @l_BUY_PRICE, N'NHAP MOI TSCD/CCLD', @p_ADDNEW_ID, 'ASS_ADDNEW', '1','A',@l_MAKER_ID, CONVERT(datetime, @sToday, 103), @p_CHECKER_ID, CONVERT(datetime, @sToday, 103), @l_AMORT_AMT ) IF @@Error <> 0 GOTO ABORT IF(@l_TYPE_ID='TSCD') BEGIN IF(@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <>'') BEGIN SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID) SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID) SET @l_DEP_CODE = ( SELECT cd.DEP_CODE FROM CM_DEPARTMENT cd WHERE cd.DEP_ID=@l_DEPT_ID) END EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_PAY_HS_ACCTNO, @l_BRANCH_CREATE, @l_ASSET_GL, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y', @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID, @l_ET_ID OUT EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_D_BRANCH_CODE ,@l_ASSET_GL,'VND', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO); EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_C_BRANCH_CODE , @l_PAY_HS_ACCTNO, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO); END ELSE IF (@l_TYPE_ID='CCLD') BEGIN IF(@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <>'') BEGIN SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID) SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID) SET @l_DEP_CODE = ( SELECT cd.DEP_CODE FROM CM_DEPARTMENT cd WHERE cd.DEP_ID=@l_DEPT_ID) END EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_PAY_HS_ACCTNO, @l_BRANCH_CREATE, @l_ASSET_GL, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y', @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID, @l_ET_ID OUT --- Hạch toán nhập CCLĐ: EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_D_BRANCH_CODE ,@l_ASSET_GL,'VND', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO); EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_C_BRANCH_CODE , @l_PAY_HS_ACCTNO, 'VND', 'C', @l_BUY_PRICE + @PRICE_VAT,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO); IF(@PRICE_VAT >0) BEGIN EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID OUT INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_D_BRANCH_CODE ,@ACCOUNT_VAT,'VND', 'D', @PRICE_VAT, 1, @PRICE_VAT, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO); END -- EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_WAIT_AMORT, @l_BRANCH_ID, @l_BUY_PRICE, 'Y', -- @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD' -- @l_ET_ID OUT -- --Đồng thời kết chuyển tài khoản CCLĐ đang dùng sang tài khoản chờ phân bổ: -- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out -- -- INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS) -- VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_ASSET_GL, 'LCY', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE); -- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out -- -- INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS) -- VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_WAIT_AMORT, 'LCY', 'D', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE); END END ELSE IF @l_TYPE_ID = 'TSCD' BEGIN --Insert vao bang dbo.ASS_ENTRIES_POST EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_PAY_HS_ACCTNO, @l_BRANCH_CREATE, @_BUY_TS_ACCTNO, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y', @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD' @l_ET_ID OUT EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_D_BRANCH_CODE ,@_BUY_TS_ACCTNO,'VND', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO); EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_C_BRANCH_CODE , @l_PAY_HS_ACCTNO, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO); END --Insert nhap kho EXEC SYS_CodeMasters_Gen 'ASS_WAREHOUSE_DT', @l_WAHDT_ID out IF @l_WAHDT_ID='' OR @l_WAHDT_ID IS NULL GOTO ABORT INSERT INTO ASS_WAREHOUSE_DT(WAHDT_ID, WAH_ID, ASSET_ID, IN_DATE, OUT_DATE, STATUS) VALUES(@l_WAHDT_ID, @l_WAH_ID, @l_ASSET_ID, GETDATE(), NULL, 'I') IF @@Error <> 0 GOTO ABORT IF @l_BRANCH_ID IS NOT NULL AND @l_BRANCH_ID <> '' BEGIN PRINT 'A' UPDATE ASS_WAREHOUSE_DT SET OUT_DATE = GETDATE(), STATUS = 'O' WHERE WAHDT_ID = @l_WAHDT_ID IF @@Error <> 0 GOTO ABORT IF @l_BRANCH_CREATE <> @l_BRANCH_ID BEGIN SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_CREATE) SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID) SET @l_DEP_CODE = ( SELECT cd.DEP_CODE FROM CM_DEPARTMENT cd WHERE cd.DEP_ID=@l_DEPT_ID) IF @l_TYPE_ID = 'TSCD' BEGIN SELECT @BRN_TYPE_TRN = BRANCH_TYPE,@TCCT_TRN_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_CREATE SELECT @BRN_TYPE_REC = BRANCH_TYPE, @TCCT_REC_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_ID /*****THIEUVQ 211118 - CHAU XAC NHAN KHONG HACH TOAN QUA TK TRUNG GIAN NUA*******/ ----NEU CN XUAT CHO PGD THI KHONG HACH TOAN THONG QUA TK TRUNG GIAN TCCT --IF @BRN_TYPE_TRN = 'CN' AND @BRN_TYPE_REC = 'PGD' --BEGIN -- EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_USE', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_TRANFER_ACCTNO, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y', -- @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD' -- @l_ET_ID OUT -- -- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out -- -- INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS) -- VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_C_BRANCH_CODE , @l_ASSET_GL, 'LCY', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE); -- -- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out -- -- INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS) -- VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_C_BRANCH_CODE ,@l_TRANFER_ACCTNO,'LCY', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE); -- -- EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_USE', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_TRANFER_ACCTNO, @l_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_ID, @l_BUY_PRICE, 'Y', -- @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD' -- @l_ET_ID OUT -- -- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out -- -- INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS) -- VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_TRANFER_ACCTNO, 'LCY', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE); -- -- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out -- -- INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS) -- VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_D_BRANCH_CODE ,@l_ASSET_GL,'LCY', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE); -- END ELSE ---CCLD BEGIN SELECT @BRN_TYPE_TRN = BRANCH_TYPE,@TCCT_TRN_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_CREATE SELECT @BRN_TYPE_REC = BRANCH_TYPE, @TCCT_REC_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_ID EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_WAIT_AMORT, @l_BRANCH_ID, @l_BUY_PRICE, 'Y', @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD' @l_ET_ID OUT --Đồng thời kết chuyển tài khoản CCLĐ đang dùng sang tài khoản chờ phân bổ: EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO,TRN_IS_SUM) VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_WAIT_AMORT, 'VND', 'D', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO,1); EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_IS_SUM,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_ASSET_GL, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,1,@l_TRN_NO); END END ELSE IF (@l_TYPE_ID = 'CCLD') BEGIN EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_WAIT_AMORT, @l_BRANCH_ID, @l_BUY_PRICE, 'Y', @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD' @l_ET_ID OUT --Đồng thời kết chuyển tài khoản CCLĐ đang dùng sang tài khoản chờ phân bổ: EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO,TRN_IS_SUM) VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_WAIT_AMORT, 'VND', 'D', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO,1); EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_IS_SUM,TRN_NO) VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_ASSET_GL, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,1,@l_TRN_NO); END ---Phong added 17/6/2018: xu ly khao hao ngay qua khu :: ends /***********PHAN BO HOI SO CHIU CHI PHI -- BEGIN 201218**************/ -- SET @l_DEP_CODE = (SELECT A.DEP_CODE FROM CM_DEPARTMENT A WHERE A.DEP_ID = @l_DEPT_ID) -- IF @l_DEP_CODE IS NOT NULL AND @l_DEP_CODE <> '' -- BEGIN -- IF @l_BRANCH_ID <> @l_HO_BRN_ID AND LEFT(@l_DEP_CODE,3) = '069' ------CN NHAP NHUNG HOI SO CHIU CHI PHI -- BEGIN -- --LAY PHONG BAN CUA HOI SO TUONG UNG MA PHONG BAN CN -- SET @l_DEPT_ID = (SELECT DEP_ID FROM CM_DEPARTMENT A WHERE A.DEP_CODE = @l_DEP_CODE AND BRANCH_ID = @l_HO_BRN_ID) -- IF @l_DEPT_ID IS NOT NULL AND @l_DEPT_ID <> '' -- BEGIN -- -----THEM VAO BANG ASS_COST_ALLOCATION -- -- EXEC SYS_CodeMasters_Gen 'ASS_COST_ALLOCATION', @l_COST_MASTER_ID out -- INSERT INTO ASS_COST_ALLOCATION (COS_ID,ASSET_ID,NOTE,TRN_DATE,[RECORD_STATUS],[AUTH_STATUS],[MAKER_ID],[CREATE_DT],EDITOR_ID, EDITOR_DT,[CHECKER_ID],[APPROVE_DT],BRANCH_CREATE,XML_TEMP,SECURE_01,SERCURE_01) -- VALUES(@l_COST_MASTER_ID,@l_ASSET_ID,'AUTO',@CUR_DATE,'1' ,'A',@l_MAKER_ID , -- @CUR_DATE ,NULL, NULL,@p_CHECKER_ID, -- @CUR_DATE,@l_HO_BRN_ID,NULL,NULL,NULL) -- -- -----THEM BANG CHI TIET ASS_COST_ALLOC_DT 100% SO TIEN PHAN BO THANG -- EXEC SYS_CodeMasters_Gen 'ASS_COST_ALLOC_DT', @l_COSTDT_ID out -- -- INSERT INTO ASS_COST_ALLOC_DT -- VALUES(@l_COSTDT_ID,@l_COST_MASTER_ID,@l_HO_BRN_ID,@l_DEPT_ID,@l_MONTHLY_AMT,'100',@l_AMORT_MONTH,@CUR_DATE, @l_AMORT_END_DATE,0,0,@l_EXP_ACCTNO,'','1' ,'A' ,@l_MAKER_ID , -- @CUR_DATE ,NULL, NULL,@p_CHECKER_ID,@CUR_DATE) -- END -- END -- END -- /**************************************************** END 201218************/ DECLARE @l_AMORT_RUN_DATE DATETIME = (SELECT TOP 1 TTS.SENT_DATE FROM THREAD_TIME_SEND TTS WHERE TTS.TIME_VALUE = 'KH') DECLARE @DATE_EXEC DATETIME=CONVERT(DATETIME, @p_APPROVE_DT, 103) IF( DATEDIFF(MONTH, @l_AMORT_START_DATE, @l_AMORT_RUN_DATE)>0) BEGIN EXEC ASS_AMORT_BackDate @p_ASSET_ID = @l_ASSET_ID ,@p_MAKER_ID = @l_MAKER_ID ,@p_CHECKER_ID = @p_CHECKER_ID ,@p_APPROVE_DT = @DATE_EXEC ,@p_TRN_ID = @p_ADDNEW_ID ,@P_TRN_REF_NO = @l_TRN_NO ,@p_TRN_TYPE = 'ADD_NEW' END END --Luctv:End --CAP NHAT LOCATION_HIST - THIEUVQ 11112015 UPDATE ASS_LOCATION_HIST SET BRANCH_ID = @l_BRANCH_ID, DEPT_ID = @l_DEPT_ID WHERE ASSET_ID = @l_ASSET_ID IF @@Error <> 0 GOTO ABORT --END SET @int = @int + 1 END -- KHIEMCHG - Update PYC hoàn tất khi đã đủ số lượng PYC IF(NOT EXISTS(SELECT TOP 1 A.REQDT_ID FROM TR_REQUEST_SHOP_DOC_DT A WHERE A.REQ_DOC_ID = @REQ_ID AND ( A.QTY_ETM <> A.ALLOCATED OR (A.ALLOCATED IS NULL OR A.ALLOCATED = '' OR A.ALLOCATED = 0)) AND ((A.REQ_DT_TYPE = 'XKSD' AND A.TYPE_XL = 'CPDC') OR (A.REQ_DT_TYPE = 'XKSD' AND A.TYPE_XL = 'CPTK') OR (A.REQ_DT_TYPE = 'BUYNEW')) )) BEGIN UPDATE TR_REQUEST_SHOP_DOC SET IS_DONE = '1', STATUS = 'DONE' WHERE REQ_ID = @REQ_ID UPDATE PL_REQUEST_PROCESS SET STATUS = 'P' WHERE PROCESS_ID = 'APPROVE' AND REQ_ID = @REQ_ID UPDATE PL_REQUEST_PROCESS SET STATUS = 'C', RECEPTION_DT = CONVERT(datetime, GETDATE(), 103), APPROVE_DT = CONVERT(datetime, GETDATE(), 103) WHERE PROCESS_ID = 'DONE' AND REQ_ID = @REQ_ID END -- HUYHT 06/05/2022 THAY ĐỔI TRẠNG THÁI UPDATE CŨ THÀNH UPDATE_HC UPDATE dbo.PL_PROCESS SET PROCESS_ID = 'UPDATE_KT' WHERE REQ_ID = @p_ADDNEW_ID AND PROCESS_ID = 'UPDATE' -- GIANT Insert to table PL_PROCESS 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'Kiểm soát viên phê duyệt hoàn tất' , N'Kiểm soát viên phê duyệt' ) COMMIT TRANSACTION SELECT '0' as Result, @p_ADDNEW_ID ADDNEW_ID, '' ErrorDesc RETURN '0' ABORT: BEGIN ROLLBACK TRANSACTION --CLOSE pCur --DEALLOCATE pCur SELECT '-1' as Result, '' ADDNEW_ID, @ERROR ErrorDesc RETURN '-1' End