ALTER PROC [dbo].[TR_BUDGET_YEAR_Ins] @p_GD_ID VARCHAR(20) = NULL, @p_BRANCH_ID VARCHAR(20), @p_BRANCH_CODE VARCHAR(20), @p_BRANCH_NAME NVARCHAR(250), @p_DEP_ID VARCHAR(20), @p_DEP_CODE VARCHAR(20), @p_DEP_NAME NVARCHAR(250), @p_BRANCH_TYPE VARCHAR(20) = NULL, @p_BUDGET_YEAR VARCHAR(20) = NULL, @p_BUDGET_TYPE VARCHAR(20) = NULL, @p_MAKER_ID VARCHAR(15)= NULL, @p_CHECKER_ID VARCHAR(15)= NULL, @p_ROLENAME VARCHAR(20) = NULL, @p_TLNAME VARCHAR(20) = NULL, @p_KHOI_ID VARCHAR(20) = NULL, @p_BUDGET_LIMIT_AMT DECIMAL(18, 2), @p_M1 DECIMAL(18, 0), @p_M2 DECIMAL(18, 0), @p_M3 DECIMAL(18, 0), @p_M4 DECIMAL(18, 0), @p_M5 DECIMAL(18, 0), @p_M6 DECIMAL(18, 0), @p_M7 DECIMAL(18, 0), @p_M8 DECIMAL(18, 0), @p_M9 DECIMAL(18, 0), @p_M10 DECIMAL(18, 0), @p_M11 DECIMAL(18, 0), @p_M12 DECIMAL(18, 0) AS BEGIN TRANSACTION -- validate here IF(@p_BRANCH_TYPE = 'dvkd') BEGIN IF(EXISTS(SELECT * FROM TR_REQ_BUDGET_YEAR_LIMIT WHERE GD_ID = @p_GD_ID AND BUDGET_TYPE = 'nam' AND BRANCH_TYPE = @p_BRANCH_TYPE AND BUDGET_YEAR = @p_BUDGET_YEAR AND BRANCH_ID = @p_BRANCH_ID)) BEGIN ROLLBACK TRANSACTION SELECT '-1' as Result, '' ACC_ID, N'Thêm mới định mức chi phí thất bại. Định mức ngân sách/chi phí này đã tồn tại' ErrorDesc RETURN '-1' END END ELSE IF(@p_BRANCH_TYPE = 'ho' AND ISNULL(@p_ROLENAME, '') = '') BEGIN IF(EXISTS(SELECT * FROM TR_REQ_BUDGET_YEAR_LIMIT WHERE GD_ID = @p_GD_ID AND BUDGET_TYPE = 'nam' AND BRANCH_TYPE = @p_BRANCH_TYPE AND BUDGET_YEAR = @p_BUDGET_YEAR AND BRANCH_ID = @p_BRANCH_ID AND DEP_ID = @p_DEP_ID)) BEGIN ROLLBACK TRANSACTION SELECT '-1' as Result, '' ACC_ID, N'Thêm mới định mức chi phí thất bại. Định mức ngân sách/chi phí này đã tồn tại' ErrorDesc RETURN '-1' END END ELSE IF(@p_BRANCH_TYPE = 'ho' AND ISNULL(@p_ROLENAME, '') <> '') BEGIN IF(EXISTS(SELECT * FROM TR_REQ_BUDGET_YEAR_LIMIT WHERE GD_ID = @p_GD_ID AND BUDGET_TYPE = 'nam' AND BRANCH_TYPE = @p_BRANCH_TYPE AND BUDGET_YEAR = @p_BUDGET_YEAR AND BRANCH_ID = @p_BRANCH_ID AND DEP_ID = @p_DEP_ID AND ROLENAME = @p_ROLENAME AND KHOI_ID = @p_KHOI_ID)) BEGIN ROLLBACK TRANSACTION SELECT '-1' as Result, '' ACC_ID, N'Thêm mới định mức chi phí thất bại. Định mức ngân sách/chi phí này đã tồn tại' ErrorDesc RETURN '-1' END END DECLARE @p_BUDGET_YEAR_LIMIT_ID VARCHAR(15); EXEC SYS_CodeMasters_Gen 'BUDGET_LIMIT_YEAR', @p_BUDGET_YEAR_LIMIT_ID OUT; IF @p_BUDGET_YEAR_LIMIT_ID='' OR @p_BUDGET_YEAR_LIMIT_ID IS NULL GOTO ABORT; INSERT INTO TR_REQ_BUDGET_YEAR_LIMIT(BUDGET_YEAR_LIMIT_ID,GD_ID,BUDGET_TYPE,BRANCH_TYPE,BUDGET_YEAR,BUDGET_LIMIT_AMT, BRANCH_ID, DEP_ID, TLNAME, ROLENAME, KHOI_ID, MAKER_ID,CREATE_DT,RECORD_STATUS,AUTH_STATUS,CHECKER_ID,APPROVE_DT, M1, M2, M3, M4, M5, M6, M7, M8, M9, M10, M11, M12) VALUES (@p_BUDGET_YEAR_LIMIT_ID,@p_GD_ID, 'nam',@p_BRANCH_TYPE, @p_BUDGET_YEAR, @p_BUDGET_LIMIT_AMT, @p_BRANCH_ID, @p_DEP_ID, @p_TLNAME, @p_ROLENAME, @p_KHOI_ID, @p_MAKER_ID,GETDATE(), '1', 'U', NULL, NULL, @p_M1, @p_M2, @p_M3, @p_M4, @p_M5, @p_M6, @p_M7, @p_M8, @p_M9, @p_M10, @p_M11, @p_M12) IF(NOT EXISTS(SELECT * FROM TR_GOODSTYPE WHERE GD_ID = @p_GD_ID AND BUDGET_TYPE = 'nam')) BEGIN INSERT INTO TR_GOODSTYPE(GD_ID, BUDGET_TYPE, CREATE_DT, MAKER_ID, APPROVE_DT, CHECKER_ID, RECORD_STATUS, AUTH_STATUS) VALUES (@p_GD_ID, 'nam', NULL, NULL, NULL, NULL, '1', 'A') END COMMIT TRANSACTION SELECT '0' as Result, @p_BUDGET_YEAR_LIMIT_ID BUDGET_YEAR_LIMIT_ID, '' ErrorDesc RETURN '0' ABORT: BEGIN ROLLBACK TRANSACTION SELECT '-1' as Result, '' BUDGET_YEAR_LIMIT_ID, '' ErrorDesc RETURN '-1' END GO ALTER PROCEDURE [dbo].[TR_BUDGET_LIMIT_Search] @p_BUDGET_TYPE VARCHAR(20) = NULL, @p_BRANCH_ID VARCHAR(20) = NULL, @p_TLNAME VARCHAR(20) = NULL, @p_DEP_ID VARCHAR(20) = NULL AS BEGIN -- PAGING DECLARE @tmpAccountTable TABLE (BUDGET_ID VARCHAR(20), GD_CODE VARCHAR(150), GD_NAME NVARCHAR (250), BUDGET_TYPE NVARCHAR(20), BRANCH_TYPE NVARCHAR(100), BRANCH_NAME NVARCHAR(200), DEP_NAME NVARCHAR(200), BUDGET_LIMIT_AMT DECIMAL(18,0), M1 DECIMAL(18,0), M2 DECIMAL(18,0), M3 DECIMAL(18,0), M4 DECIMAL(18,0), M5 DECIMAL(18,0), M6 DECIMAL(18,0), M7 DECIMAL(18,0), M8 DECIMAL(18,0), M9 DECIMAL(18,0), M10 DECIMAL(18,0), M11 DECIMAL(18,0), M12 DECIMAL(18,0)) INSERT INTO @tmpAccountTable SELECT A.BUDGET_MONTH_LIMIT_ID AS BUDGET_ID, B.GD_CODE, B.GD_NAME, F.CONTENT BUDGET_TYPE, C.CONTENT AS BRANCH_TYPE, '' BRANCH_NAME, '' DEP_NAME, A.BUDGET_LIMIT_AMT, A.M1, A.M2, A.M3, A.M4, A.M5, A.M6, A.M7, A.M8, A.M9, A.M10, A.M11, A.M12 FROM TR_REQ_BUDGET_MONTH_LIMIT A LEFT JOIN CM_GOODS B ON A.GD_ID = B.GD_ID LEFT JOIN CM_ALLCODE C ON A.BRANCH_TYPE = C.CDVAL AND C.CDNAME = 'BRANCH_TYPE' AND C.CDTYPE ='TR_REQ' LEFT JOIN CM_ALLCODE F ON A.BUDGET_TYPE = F.CDVAL AND F.CDNAME = 'BUDGET_TYPE' AND F.CDTYPE ='TR_REQ' WHERE 1=1 AND (A.BUDGET_TYPE LIKE N'%'+ @p_BUDGET_TYPE +'%' OR @p_BUDGET_TYPE IS NULL OR @p_BUDGET_TYPE = '') --AND (ACC_NAME LIKE N'%'+@p_ACCNAME+'%' OR @p_ACCNAME IS NULL OR @p_ACCNAME = '') UNION SELECT BUDGET_YEAR_LIMIT_ID AS BUDGET_ID, B.GD_CODE, B.GD_NAME, F.CONTENT AS BUDGET_TYPE, E.CONTENT AS BRANCH_TYPE, C.BRANCH_NAME, D.DEP_NAME, A.BUDGET_LIMIT_AMT, A.M1, A.M2, A.M3, A.M4, A.M5, A.M6, A.M7, A.M8, A.M9, A.M10, A.M11, A.M12 FROM TR_REQ_BUDGET_YEAR_LIMIT A LEFT JOIN CM_GOODS B ON A.GD_ID = B.GD_ID LEFT JOIN CM_BRANCH C ON A.BRANCH_ID = C.BRANCH_ID LEFT JOIN CM_DEPARTMENT D ON A.DEP_ID = D.DEP_ID LEFT JOIN CM_ALLCODE E ON A.BRANCH_TYPE = E.CDVAL AND E.CDNAME = 'BRANCH_TYPE' AND E.CDTYPE ='TR_REQ' LEFT JOIN CM_ALLCODE F ON A.BUDGET_TYPE = F.CDVAL AND F.CDNAME = 'BUDGET_TYPE' AND F.CDTYPE ='TR_REQ' WHERE 1=1 AND (A.BUDGET_TYPE LIKE N'%'+ @p_BUDGET_TYPE +'%' OR @p_BUDGET_TYPE IS NULL OR @p_BUDGET_TYPE = '') AND (A.BRANCH_ID LIKE N'%'+ @p_BRANCH_ID +'%' OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = '') AND (A.DEP_ID LIKE N'%'+ @p_DEP_ID +'%' OR @p_DEP_ID IS NULL OR @p_DEP_ID = '') AND (A.TLNAME LIKE N'%'+ @p_TLNAME +'%' OR @p_TLNAME IS NULL OR @p_TLNAME = '') --AND (ACC_NAME LIKE N'%'+@p_ACCNAME+'%' OR @p_ACCNAME IS NULL OR @p_ACCNAME = '') --AND ISNULL(ACC_NUM,'') NOT IN (SELECT ACC_NO FROM CM_ACCOUNT) BEGIN -- PAGING BEGIN SELECT * -- SELECT END FROM @tmpAccountTable -- PAGING END END END -- PAGING GO ALTER PROC [dbo].[TR_BUDGET_MONTH_Upd] @p_GD_ID VARCHAR(20) = NULL, @p_BUDGET_TYPE VARCHAR(20) = NULL, @p_BRANCH_TYPE VARCHAR(20) = NULL, @p_BUDGET_YEAR VARCHAR(20) = NULL, @p_BUDGET_MONTH VARCHAR(20) = NULL, @p_BUDGET_LIMIT_AMT VARCHAR(20) = NULL, @p_MAKER_ID VARCHAR(15)= NULL, @p_CHECKER_ID VARCHAR(15)= NULL, @p_MONTH_RATE VARCHAR(20) = NULL, @p_M1 DECIMAL(18, 0), @p_M2 DECIMAL(18, 0), @p_M3 DECIMAL(18, 0), @p_M4 DECIMAL(18, 0), @p_M5 DECIMAL(18, 0), @p_M6 DECIMAL(18, 0), @p_M7 DECIMAL(18, 0), @p_M8 DECIMAL(18, 0), @p_M9 DECIMAL(18, 0), @p_M10 DECIMAL(18, 0), @p_M11 DECIMAL(18, 0), @p_M12 DECIMAL(18, 0) AS BEGIN TRANSACTION UPDATE TR_REQ_BUDGET_MONTH_LIMIT SET GD_ID = @p_GD_ID, BUDGET_TYPE = @p_BUDGET_TYPE, BRANCH_TYPE = @p_BRANCH_TYPE, BUDGET_YEAR = @p_BUDGET_YEAR, BUDGET_LIMIT_AMT = @p_BUDGET_LIMIT_AMT, M1 = @p_M1, M2 = @p_M2, M3 = @p_M3, M4 = @p_M4, M5 = @p_M5, M6 = @p_M6, M7 = @p_M7, M8= @p_M8, M9 = @p_M9, M10 = @p_M10, M11 = @p_M11, M12 = @p_M12 COMMIT TRANSACTION SELECT '0' as Result, '' BUDGET_MONTH_LIMIT_ID, '' ErrorDesc RETURN '0' ABORT: BEGIN ROLLBACK TRANSACTION SELECT '-1' as Result, '' BUDGET_MONTH_LIMIT_ID, '' ErrorDesc RETURN '-1' END