DECLARE @BRANCH_CODE_IMP NVARCHAR(MAX) = '1800,1400,1400,0719,0731,2200,2200,0900,0900,0900,1902,0717,2600,2600,2600,2500,2500,0903,0902,0901,0703,0700,2300,2300,3000,0726,0726,1801,0500,2000' DECLARE @DEP_CODE_IMP NVARCHAR(MAX) = 'NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,05P24,NULL' DECLARE @TABLE_DATA TABLE (BRANCH_CODE VARCHAR(20), DEP_CODE VARCHAR(20)) INSERT INTO @TABLE_DATA SELECT A.BRANCH_CODE,B.DEP_CODE FROM ( SELECT VALUE AS BRANCH_CODE ,ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID FROM STRING_SPLIT(@BRANCH_CODE_IMP,','))A LEFT JOIN (SELECT VALUE AS DEP_CODE ,ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS ID FROM STRING_SPLIT(@DEP_CODE_IMP,','))B ON A.ID = B.ID DECLARE @ASSET_ID varchar(15), @p_BRANCH_ID varchar(15), @p_DEP_ID varchar(15), @BRANCH_ID varchar(15), @LOCATION Nvarchar(500), @PURPOSE_ID Nvarchar(500), @COLLECT_NOTE nvarchar(1000), @BRANCH_ID_RECEIVE VARCHAR(15) = NULL, @DEPT_ID_RECEIVE VARCHAR(15) = NULL, --PHONG BAN SU DUNG @DEPT_ID_USE VARCHAR(15) = NULL, @IS_LIQ varchar(1)= '0', @NOTES NVARCHAR(MAX), @l_REMAIN_VALUE DECIMAL(18,0), @l_BUY_PRICE DECIMAL(18,0) DECLARE @BRANCH_NAME NVARCHAR(100) DECLARE cur CURSOR FAST_FORWARD READ_ONLY LOCAL FOR SELECT B.BRANCH_ID,C.DEP_ID FROM @TABLE_DATA A LEFT JOIN CM_BRANCH B ON A.BRANCH_CODE = B.BRANCH_CODE LEFT JOIN CM_DEPARTMENT C ON A.DEP_CODE = C.DEP_CODE OPEN cur BEGIN TRANSACTION FETCH NEXT FROM cur INTO @p_BRANCH_ID,@p_DEP_ID WHILE @@FETCH_STATUS = 0 BEGIN SET @BRANCH_NAME = (SELECT CB.BRANCH_NAME FROM CM_BRANCH CB where CB.BRANCH_ID = @p_BRANCH_ID) DECLARE @l_COL_MULTI_MASTER_ID VARCHAR(15) EXEC SYS_CodeMasters_Gen 'ASS_COLLECT_MULTI_MASTER', @l_COL_MULTI_MASTER_ID out INSERT INTO ASS_COLLECT_MULTI_MASTER([COL_MULTI_MASTER_ID],[BRANCH_ID],[COLLECT_DT], [USER_COLLECT],[NOTES],[RECORD_STATUS],[AUTH_STATUS],[MAKER_ID],[CREATE_DT],[CHECKER_ID], [APPROVE_DT],[AUTH_STATUS_KT],[CREATE_DT_KT],[APPROVE_DT_KT],[MAKER_ID_KT],[CHECKER_ID_KT], [REPORT_STATUS],CORE_NOTE,DEPT_CREATE,REQ_ID, CONTENT) VALUES(@l_COL_MULTI_MASTER_ID ,'DV0001' ,GETDATE() ,N' Nguyễn Hoàng Nghĩa' ,N'Ngày 31/03/2023 Thu hồi từ ' + @BRANCH_NAME + N' về P.QLTS' , '1' ,'E' ,'nghianh' ,GETDATE() ,NULL , NULL ,'E' ,NULL,NULL ,NULL ,NULL ,NULL,'','DEP000000000048',NULL,N'Ngày 31/03/2023 Thu hồi từ ' + @BRANCH_NAME + N' về P.QLTS') DECLARE @ERRORSYS NVARCHAR(200) = '',@ASSET_CODE nVARCHAR(20) DECLARE @l_COLLECT_MULTI_ID VARCHAR(15) EXEC SYS_CodeMasters_Gen 'ASS_COLLECT_MULTI_DT', @l_COLLECT_MULTI_ID OUT SELECT TOP 1 @DEPT_ID_USE = a.DEPT_ID, @l_BUY_PRICE = A.BUY_PRICE,@l_REMAIN_VALUE = ISNULL((A.AMORT_AMT - A.AMORTIZED_AMT), ISNULL(A.AMORT_AMT,0)),@ASSET_ID = A.ASSET_ID FROM ASS_MASTER A WHERE ((A.BRANCH_ID = @p_BRANCH_ID AND A.DEPT_ID = @p_DEP_ID AND @p_BRANCH_ID = 'DV0001') OR (A.BRANCH_ID = @p_BRANCH_ID AND @p_BRANCH_ID <> 'DV0001')) AND (A.CURRENT_TRANS IS NULL OR A.CURRENT_TRANS = '') INSERT INTO ASS_COLLECT_MULTI_DT([COLLECT_MULTI_ID],[COL_MULTI_MASTER_ID],[ASSET_ID],[BRANCH_ID],[PURPOSE_ID],[COLLECT_DT],[LOCATION],[COLLECT_NOTE],[RECORD_STATUS], [AUTH_STATUS],[MAKER_ID],[CREATE_DT],[CHECKER_ID],[APPROVE_DT],[BRANCH_CREATE],[AUTH_STATUS_KT],[CREATE_DT_KT],[APPROVE_DT_KT],[MAKER_ID_KT],[CHECKER_ID_KT],[REPORT_STATUS], [BRANCH_ID_RECEIVE], [DEPT_ID_RECEIVE], [DEPT_ID_USE],[IS_LIQ],NOTES,BUY_PRICE,REMAIN_VALUE) VALUES(@l_COLLECT_MULTI_ID ,@l_COL_MULTI_MASTER_ID ,@ASSET_ID ,ISNULL(@p_BRANCH_ID,'') ,'NSNV' ,GETDATE() ,NULL ,NULL , '1','E','nghianh' ,GETDATE() ,NULL ,NULL ,'DV0001', NULL ,NULL ,NULL ,NULL ,NULL ,'N', 'DV0001', 'DEP000000000048', @DEPT_ID_USE,NULL,NULL,@l_BUY_PRICE,@l_REMAIN_VALUE) EXEC ASS_COLLECT_MULTI_MASTER_SendAppr @p_COL_MULTI_MASTER_ID = @l_COL_MULTI_MASTER_ID ,@p_USER_LOGIN = 'nghianh' EXEC ASS_COLLECT_MULTI_MASTER_App @p_COL_MULTI_MASTER_ID = @l_COL_MULTI_MASTER_ID ,@p_AUTH_STATUS = 'A' ,@p_CHECKER_ID = 'bichnn' ,@p_APPROVE_DT = '30-03-2023' FETCH NEXT FROM cur INTO @p_BRANCH_ID,@p_DEP_ID END CLOSE cur DEALLOCATE cur -- GIANT Insert to table PL_PROCESS INSERT INTO dbo.PL_PROCESS ( REQ_ID, PROCESS_ID, CHECKER_ID, APPROVE_DT, PROCESS_DESC, NOTES ) VALUES ( @l_COL_MULTI_MASTER_ID, 'INSERT', 'nghianh', GETDATE(), N'Thêm mới phiếu thu hồi tài sản ' , N'Thêm mới phiếu thu hồi tài sản thành công' ) COMMIT TRANSACTION