Project

General

Profile

GET_INFO.txt

Luc Tran Van, 03/01/2023 10:35 AM

 
1

    
2

    
3
ALTER  PROCEDURE [dbo].[TR_BUDGET_CHECK_LIMIT_YEAR_GET_INFO_LIMIT]
4
@p_GD_ID	varchar(20)  = NULL,
5
@p_GD_CODE	varchar(20)  = NULL,
6
@p_BRANCH_ID varchar(20)  = NULL,
7
@p_DEP_ID	varchar(20)  = NULL,
8
@p_KHOI_ID	varchar(20)  = NULL,
9
@p_TLNAME	varchar(20)  = NULL,
10
@p_ROLENAME	varchar(20)  = NULL,
11
@p_MONTH varchar(20) = NULL,
12
@p_YEAR varchar(20) = NULL,
13
@p_BRANCH_KIND varchar(20) = NULL
14
AS
15
IF(@p_YEAR != 'null')
16
BEGIN
17
	IF(CONVERT(INT,@p_YEAR) < YEAR(GETDATE()))
18
	BEGIN
19
		SET @p_MONTH = 'M12'
20
	END
21
	ELSE
22
	BEGIN
23
		SET @p_MONTH = 'M'+ CONVERT(VARCHAR, MONTH(GETDATE()))
24
	END
25
END
26
DECLARE @l_BUDGET_LIMIT_CURRENT DECIMAL(18,0)
27
	-- Lấy hạn mức đã sử dụng đến hiện tại
28
DECLARE @l_BUDGET_USED_CURRENT DECIMAL(18,0)
29
DECLARE @l_BUDGET_USED_M1 DECIMAL(18,0), @l_BUDGET_USED_M2 DECIMAL(18,0), @l_BUDGET_USED_M3 DECIMAL(18,0), @l_BUDGET_USED_M4 DECIMAL(18,0), @l_BUDGET_USED_M5 DECIMAL(18,0),
30
@l_BUDGET_USED_M6 DECIMAL(18,0), @l_BUDGET_USED_M7 DECIMAL(18,0), @l_BUDGET_USED_M8 DECIMAL(18,0), @l_BUDGET_USED_M9 DECIMAL(18,0), @l_BUDGET_USED_M10 DECIMAL(18,0),
31
@l_BUDGET_USED_M11 DECIMAL(18,0), @l_BUDGET_USED_M12 DECIMAL(18,0)
32
	-- Lấy hạn mức đã gửi duyệt đến hiện tại
33
DECLARE @l_BUDGET_SEND_APPR_CURRENT DECIMAL(18,0)
34
DECLARE @l_BUDGET_SEND_APPR_M1 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M2 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M3 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M4 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M5 DECIMAL(18,0),
35
@l_BUDGET_SEND_APPR_M6 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M7 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M8 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M9 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M10 DECIMAL(18,0),
36
@l_BUDGET_SEND_APPR_M11 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M12 DECIMAL(18,0)
37
DECLARE @BRANCH_TYPE VARCHAR(15)
38
SELECT @BRANCH_TYPE = BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_ID
39
IF(ISNULL(@p_BRANCH_ID,'') = 'DV0001')
40
BEGIN
41
	SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE	WHEN @p_MONTH = 'M1' then M1
42
																						WHEN @p_MONTH = 'M2' then M2
43
																						WHEN @p_MONTH = 'M3' then M3
44
																						WHEN @p_MONTH = 'M4' then M4
45
																						WHEN @p_MONTH = 'M5' then M5
46
																						WHEN @p_MONTH = 'M6' then M6
47
																						WHEN @p_MONTH = 'M7' then M7
48
																						WHEN @p_MONTH = 'M8' then M8
49
																						WHEN @p_MONTH = 'M9' then M9
50
																						WHEN @p_MONTH = 'M10' then M10
51
																						WHEN @p_MONTH = 'M11' then M11
52
																						WHEN @p_MONTH = 'M12' then M12
53
																						ELSE M1
54
																				END
55
											FROM TR_REQ_BUDGET_YEAR_LIMIT 
56
											WHERE GD_ID = @p_GD_ID AND (BRANCH_TYPE = 'HO' OR BRANCH_TYPE = 'ho') AND DEP_ID = @p_DEP_ID AND BUDGET_YEAR = @p_YEAR AND AUTH_STATUS = 'A' AND RECORD_STATUS = '1'),0)
57

    
58
			-- Lấy hạn mức đã sử dụng đến hiện tại
59
			SET @l_BUDGET_USED_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
60
			SET @l_BUDGET_USED_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
61
			SET @l_BUDGET_USED_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
62
			SET @l_BUDGET_USED_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
63
			SET @l_BUDGET_USED_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
64
			SET @l_BUDGET_USED_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
65
			SET @l_BUDGET_USED_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
66
			SET @l_BUDGET_USED_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
67
			SET @l_BUDGET_USED_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
68
			SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
69
			SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
70
			SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
71

    
72
			SET @l_BUDGET_USED_CURRENT = @l_BUDGET_USED_M1 + @l_BUDGET_USED_M2 + @l_BUDGET_USED_M3 + @l_BUDGET_USED_M4 + @l_BUDGET_USED_M5 + @l_BUDGET_USED_M6 + @l_BUDGET_USED_M7 + @l_BUDGET_USED_M8 
73
			+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12 
74

    
75
			-- Lấy hạn mức đã gửi duyệt đến hiện tại
76
			SET @l_BUDGET_SEND_APPR_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
77
			SET @l_BUDGET_SEND_APPR_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
78
			SET @l_BUDGET_SEND_APPR_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
79
			SET @l_BUDGET_SEND_APPR_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
80
			SET @l_BUDGET_SEND_APPR_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
81
			SET @l_BUDGET_SEND_APPR_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
82
			SET @l_BUDGET_SEND_APPR_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
83
			SET @l_BUDGET_SEND_APPR_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
84
			SET @l_BUDGET_SEND_APPR_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
85
			SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
86
			SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
87
			SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
88

    
89
			SET @l_BUDGET_SEND_APPR_CURRENT = @l_BUDGET_SEND_APPR_M1 + @l_BUDGET_SEND_APPR_M2 + @l_BUDGET_SEND_APPR_M3 + @l_BUDGET_SEND_APPR_M4 + @l_BUDGET_SEND_APPR_M5 + @l_BUDGET_SEND_APPR_M6 + @l_BUDGET_SEND_APPR_M7 + @l_BUDGET_SEND_APPR_M8 
90
			+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12  
91
END
92
ELSE
93
BEGIN
94
		SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE	WHEN @p_MONTH = 'M1' then M1
95
																						WHEN @p_MONTH = 'M2' then M2
96
																						WHEN @p_MONTH = 'M3' then M3
97
																						WHEN @p_MONTH = 'M4' then M4
98
																						WHEN @p_MONTH = 'M5' then M5
99
																						WHEN @p_MONTH = 'M6' then M6
100
																						WHEN @p_MONTH = 'M7' then M7
101
																						WHEN @p_MONTH = 'M8' then M8
102
																						WHEN @p_MONTH = 'M9' then M9
103
																						WHEN @p_MONTH = 'M10' then M10
104
																						WHEN @p_MONTH = 'M11' then M11
105
																						WHEN @p_MONTH = 'M12' then M12
106
																						ELSE M1
107
																				END
108
											FROM TR_REQ_BUDGET_YEAR_LIMIT 
109
											WHERE GD_ID = @p_GD_ID AND (BRANCH_TYPE = 'DVKD' OR BRANCH_TYPE = 'dvkd') AND BRANCH_ID = @p_BRANCH_ID AND BRANCH_KIND = @p_BRANCH_KIND AND BUDGET_YEAR = @p_YEAR AND AUTH_STATUS = 'A' AND RECORD_STATUS = '1'),0)
110

    
111
			-- Lấy hạn mức đã sử dụng đến hiện tại
112
			SET @l_BUDGET_USED_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
113
			SET @l_BUDGET_USED_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
114
			SET @l_BUDGET_USED_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
115
			SET @l_BUDGET_USED_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
116
			SET @l_BUDGET_USED_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
117
			SET @l_BUDGET_USED_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
118
			SET @l_BUDGET_USED_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
119
			SET @l_BUDGET_USED_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
120
			SET @l_BUDGET_USED_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
121
			SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
122
			SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
123
			SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
124

    
125
			SET @l_BUDGET_USED_CURRENT = @l_BUDGET_USED_M1 + @l_BUDGET_USED_M2 + @l_BUDGET_USED_M3 + @l_BUDGET_USED_M4 + @l_BUDGET_USED_M5 + @l_BUDGET_USED_M6 + @l_BUDGET_USED_M7 + @l_BUDGET_USED_M8 
126
			+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12
127

    
128
			-- Lấy hạn mức đã gửi duyệt đến hiện tại
129
			SET @l_BUDGET_SEND_APPR_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
130
			SET @l_BUDGET_SEND_APPR_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
131
			SET @l_BUDGET_SEND_APPR_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
132
			SET @l_BUDGET_SEND_APPR_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
133
			SET @l_BUDGET_SEND_APPR_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
134
			SET @l_BUDGET_SEND_APPR_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
135
			SET @l_BUDGET_SEND_APPR_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
136
			SET @l_BUDGET_SEND_APPR_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
137
			SET @l_BUDGET_SEND_APPR_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
138
			SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
139
			SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
140
			SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_YEAR_LIMIT_DETAIL A WHERE 1=1 AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
141

    
142
			SET @l_BUDGET_SEND_APPR_CURRENT = @l_BUDGET_SEND_APPR_M1 + @l_BUDGET_SEND_APPR_M2 + @l_BUDGET_SEND_APPR_M3 + @l_BUDGET_SEND_APPR_M4 + @l_BUDGET_SEND_APPR_M5 + @l_BUDGET_SEND_APPR_M6 + @l_BUDGET_SEND_APPR_M7 + @l_BUDGET_SEND_APPR_M8 
143
			+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12
144
END
145

    
146
SELECT FORMAT(@l_BUDGET_LIMIT_CURRENT,'#,#', 'vi-VN') + ' VND' AS BUDGET_LIMIT_APPR, FORMAT(@l_BUDGET_USED_CURRENT,'#,#', 'vi-VN') + ' VND' AS BUDGET_LIMIT_USED, FORMAT(@l_BUDGET_LIMIT_CURRENT - @l_BUDGET_USED_CURRENT,'#,#', 'vi-VN') + ' VND' AS BUDGET_LIMIT_REMAIN
147

    
148

    
149
GO
150

    
151

    
152
ALTER   PROCEDURE [dbo].[TR_BUDGET_CHECK_LIMIT_MONTH_GET_INFO_LIMIT]
153
@p_GD_ID	varchar(20)  = NULL,
154
@p_GD_CODE	varchar(20)  = NULL,
155
@p_BRANCH_ID varchar(20)  = NULL,
156
@p_DEP_ID	varchar(20)  = NULL,
157
@p_KHOI_ID	varchar(20)  = NULL,
158
@p_TLNAME	varchar(20)  = NULL,
159
@p_ROLENAME	varchar(20)  = NULL,
160
@p_MONTH varchar(20) = NULL,
161
@p_YEAR varchar(20) = NULL,
162
@p_BRANCH_KIND varchar(20) = NULL
163
AS
164
DECLARE @l_BUDGET_LIMIT_CURRENT DECIMAL(18,0)
165
	-- Lấy hạn mức đã sử dụng đến hiện tại
166
DECLARE @l_BUDGET_USED_CURRENT DECIMAL(18,0)
167
DECLARE @l_BUDGET_USED_M1 DECIMAL(18,0), @l_BUDGET_USED_M2 DECIMAL(18,0), @l_BUDGET_USED_M3 DECIMAL(18,0), @l_BUDGET_USED_M4 DECIMAL(18,0), @l_BUDGET_USED_M5 DECIMAL(18,0),
168
@l_BUDGET_USED_M6 DECIMAL(18,0), @l_BUDGET_USED_M7 DECIMAL(18,0), @l_BUDGET_USED_M8 DECIMAL(18,0), @l_BUDGET_USED_M9 DECIMAL(18,0), @l_BUDGET_USED_M10 DECIMAL(18,0),
169
@l_BUDGET_USED_M11 DECIMAL(18,0), @l_BUDGET_USED_M12 DECIMAL(18,0)
170
	-- Lấy hạn mức đã gửi duyệt đến hiện tại
171
DECLARE @l_BUDGET_SEND_APPR_CURRENT DECIMAL(18,0)
172
DECLARE @l_BUDGET_SEND_APPR_M1 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M2 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M3 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M4 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M5 DECIMAL(18,0),
173
@l_BUDGET_SEND_APPR_M6 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M7 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M8 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M9 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M10 DECIMAL(18,0),
174
@l_BUDGET_SEND_APPR_M11 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M12 DECIMAL(18,0)
175

    
176
DECLARE @BRANCH_TYPE VARCHAR(15)
177
SELECT @BRANCH_TYPE = BRANCH_TYPE FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_ID
178
IF(ISNULL(@p_BRANCH_ID,'') = 'DV0001')
179
BEGIN
180
	SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE	WHEN @p_MONTH = 'M1' then M1
181
																						WHEN @p_MONTH = 'M2'  then M2
182
																						WHEN @p_MONTH = 'M3'  then M3
183
																						WHEN @p_MONTH = 'M4'  then M4
184
																						WHEN @p_MONTH = 'M5'  then M5
185
																						WHEN @p_MONTH = 'M6'  then M6
186
																						WHEN @p_MONTH = 'M7'  then M7
187
																						WHEN @p_MONTH = 'M8'  then M8
188
																						WHEN @p_MONTH = 'M9'  then M9
189
																						WHEN @p_MONTH = 'M10' then M10
190
																						WHEN @p_MONTH = 'M11' then M11
191
																						WHEN @p_MONTH = 'M12' then M12
192
																						ELSE M1
193
																				END
194
											FROM TR_REQ_BUDGET_MONTH_LIMIT 
195
											WHERE GD_ID = @p_GD_ID AND BRANCH_TYPE = 'HO' AND BUDGET_YEAR = @p_YEAR AND AUTH_STATUS = 'A' AND RECORD_STATUS = '1'),0)
196

    
197
			-- Lấy hạn mức đã sử dụng đến hiện tại
198
			SET @l_BUDGET_USED_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
199
			AND A.BUDGET_YEAR = @p_YEAR
200
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
201
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
202
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
203
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
204
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
205
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
206
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
207
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
208
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
209
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
210
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
211
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
212
			)
213
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
214
			SET @l_BUDGET_USED_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
215
						AND A.BUDGET_YEAR = @p_YEAR
216
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
217
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
218
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
219
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
220
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
221
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
222
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
223
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
224
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
225
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
226
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
227
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
228
			)
229
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
230
			SET @l_BUDGET_USED_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
231
						AND A.BUDGET_YEAR = @p_YEAR
232
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
233
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
234
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
235
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
236
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
237
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
238
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
239
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
240
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
241
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
242
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
243
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
244
			)
245
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
246
			SET @l_BUDGET_USED_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
247
						AND A.BUDGET_YEAR = @p_YEAR
248
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
249
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
250
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
251
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
252
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
253
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
254
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
255
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
256
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
257
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
258
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
259
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
260
			)
261
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
262
			SET @l_BUDGET_USED_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
263
						AND A.BUDGET_YEAR = @p_YEAR
264
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
265
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
266
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
267
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
268
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
269
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
270
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
271
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
272
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
273
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
274
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
275
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
276
			)
277
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
278
			SET @l_BUDGET_USED_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
279
						AND A.BUDGET_YEAR = @p_YEAR
280
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
281
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
282
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
283
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
284
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
285
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
286
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
287
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
288
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
289
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
290
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
291
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
292
			)
293
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
294
			SET @l_BUDGET_USED_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
295
						AND A.BUDGET_YEAR = @p_YEAR
296
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
297
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
298
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
299
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
300
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
301
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
302
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
303
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
304
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
305
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
306
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
307
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
308
			)
309
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
310
			SET @l_BUDGET_USED_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
311
						AND A.BUDGET_YEAR = @p_YEAR
312
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
313
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
314
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
315
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
316
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
317
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
318
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
319
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
320
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
321
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
322
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
323
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
324
			)
325
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
326
			SET @l_BUDGET_USED_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
327
						AND A.BUDGET_YEAR = @p_YEAR
328
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
329
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
330
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
331
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
332
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
333
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
334
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
335
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
336
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
337
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
338
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
339
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
340
			)
341
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
342
			SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
343
						AND A.BUDGET_YEAR = @p_YEAR
344
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
345
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
346
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
347
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
348
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
349
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
350
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
351
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
352
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
353
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
354
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
355
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
356
			)
357
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
358
			SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
359
						AND A.BUDGET_YEAR = @p_YEAR
360
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
361
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
362
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
363
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
364
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
365
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
366
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
367
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
368
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
369
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
370
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
371
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
372
			)
373
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
374
			SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
375
						AND A.BUDGET_YEAR = @p_YEAR
376
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
377
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
378
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
379
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
380
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
381
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
382
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
383
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
384
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
385
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
386
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
387
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
388
			)
389
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
390

    
391
			SET @l_BUDGET_USED_CURRENT = @l_BUDGET_USED_M1 + @l_BUDGET_USED_M2 + @l_BUDGET_USED_M3 + @l_BUDGET_USED_M4 + @l_BUDGET_USED_M5 + @l_BUDGET_USED_M6 + @l_BUDGET_USED_M7 + @l_BUDGET_USED_M8 
392
			+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12 
393

    
394
-- Lấy hạn mức đã gửi duyệt đến hiện tại
395
			SET @l_BUDGET_SEND_APPR_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
396
			AND A.BUDGET_YEAR = @p_YEAR
397
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
398
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
399
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
400
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
401
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
402
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
403
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
404
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
405
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
406
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
407
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
408
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
409
			)
410
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
411
			SET @l_BUDGET_SEND_APPR_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
412
						AND A.BUDGET_YEAR = @p_YEAR
413
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
414
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
415
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
416
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
417
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
418
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
419
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
420
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
421
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
422
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
423
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
424
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
425
			)
426
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
427
			SET @l_BUDGET_SEND_APPR_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
428
						AND A.BUDGET_YEAR = @p_YEAR
429
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
430
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
431
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
432
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
433
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
434
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
435
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
436
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
437
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
438
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
439
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
440
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
441
			)
442
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
443
			SET @l_BUDGET_SEND_APPR_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
444
						AND A.BUDGET_YEAR = @p_YEAR
445
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
446
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
447
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
448
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
449
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
450
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
451
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
452
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
453
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
454
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
455
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
456
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
457
			)
458
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
459
			SET @l_BUDGET_SEND_APPR_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
460
						AND A.BUDGET_YEAR = @p_YEAR
461
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
462
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
463
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
464
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
465
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
466
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
467
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
468
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
469
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
470
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
471
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
472
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
473
			)
474
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
475
			SET @l_BUDGET_SEND_APPR_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
476
						AND A.BUDGET_YEAR = @p_YEAR
477
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
478
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
479
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
480
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
481
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
482
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
483
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
484
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
485
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
486
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
487
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
488
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
489
			)
490
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
491
			SET @l_BUDGET_SEND_APPR_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
492
						AND A.BUDGET_YEAR = @p_YEAR
493
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
494
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
495
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
496
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
497
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
498
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
499
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
500
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
501
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
502
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
503
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
504
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
505
			)
506
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
507
			SET @l_BUDGET_SEND_APPR_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
508
						AND A.BUDGET_YEAR = @p_YEAR
509
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
510
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
511
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
512
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
513
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
514
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
515
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
516
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
517
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
518
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
519
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
520
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
521
			)
522
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
523
			SET @l_BUDGET_SEND_APPR_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
524
						AND A.BUDGET_YEAR = @p_YEAR
525
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
526
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
527
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
528
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
529
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
530
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
531
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
532
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
533
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
534
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
535
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
536
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
537
			)
538
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
539
			SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
540
						AND A.BUDGET_YEAR = @p_YEAR
541
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
542
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
543
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
544
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
545
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
546
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
547
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
548
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
549
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
550
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
551
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
552
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
553
			)
554
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
555
			SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
556
						AND A.BUDGET_YEAR = @p_YEAR
557
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
558
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
559
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
560
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
561
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
562
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
563
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
564
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
565
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
566
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
567
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
568
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
569
			)
570
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
571
			SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
572
						AND A.BUDGET_YEAR = @p_YEAR
573
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
574
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
575
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
576
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
577
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
578
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
579
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
580
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
581
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
582
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
583
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
584
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
585
			)
586
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.DEP_ID = @p_DEP_ID AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
587

    
588
			SET @l_BUDGET_SEND_APPR_CURRENT = @l_BUDGET_SEND_APPR_M1 + @l_BUDGET_SEND_APPR_M2 + @l_BUDGET_SEND_APPR_M3 + @l_BUDGET_SEND_APPR_M4 + @l_BUDGET_SEND_APPR_M5 + @l_BUDGET_SEND_APPR_M6 + @l_BUDGET_SEND_APPR_M7 + @l_BUDGET_SEND_APPR_M8 
589
			+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12 
590

    
591
END
592
ELSE IF(@BRANCH_TYPE = 'CN')
593
BEGIN
594
		SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE	WHEN @p_MONTH = 'M1' then M1
595
																						WHEN @p_MONTH = 'M2'  then M2
596
																						WHEN @p_MONTH = 'M3'  then M3
597
																						WHEN @p_MONTH = 'M4'  then M4
598
																						WHEN @p_MONTH = 'M5'  then M5
599
																						WHEN @p_MONTH = 'M6'  then M6
600
																						WHEN @p_MONTH = 'M7'  then M7
601
																						WHEN @p_MONTH = 'M8'  then M8
602
																						WHEN @p_MONTH = 'M9'  then M9
603
																						WHEN @p_MONTH = 'M10' then M10
604
																						WHEN @p_MONTH = 'M11' then M11
605
																						WHEN @p_MONTH = 'M12' then M12
606
																						ELSE M1
607
																				END
608
											FROM TR_REQ_BUDGET_MONTH_LIMIT 
609
											WHERE GD_ID = @p_GD_ID AND BRANCH_TYPE = 'DVKD' AND BRANCH_KIND = @p_BRANCH_KIND AND BUDGET_YEAR = @p_YEAR AND AUTH_STATUS = 'A' AND RECORD_STATUS = '1'),0)
610

    
611
			-- Lấy hạn mức đã sử dụng đến hiện tại
612
			SET @l_BUDGET_USED_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
613
						AND A.BUDGET_YEAR = @p_YEAR
614
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
615
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
616
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
617
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
618
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
619
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
620
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
621
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
622
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
623
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
624
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
625
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
626
			)
627
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
628
			SET @l_BUDGET_USED_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
629
						AND A.BUDGET_YEAR = @p_YEAR
630
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
631
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
632
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
633
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
634
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
635
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
636
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
637
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
638
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
639
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
640
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
641
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
642
			)
643
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
644
			SET @l_BUDGET_USED_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
645
						AND A.BUDGET_YEAR = @p_YEAR
646
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
647
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
648
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
649
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
650
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
651
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
652
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
653
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
654
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
655
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
656
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
657
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
658
			)
659
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
660
			SET @l_BUDGET_USED_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
661
						AND A.BUDGET_YEAR = @p_YEAR
662
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
663
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
664
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
665
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
666
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
667
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
668
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
669
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
670
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
671
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
672
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
673
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
674
			)
675
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
676
			SET @l_BUDGET_USED_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
677
						AND A.BUDGET_YEAR = @p_YEAR
678
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
679
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
680
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
681
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
682
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
683
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
684
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
685
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
686
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
687
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
688
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
689
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
690
			)
691
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
692
			SET @l_BUDGET_USED_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
693
						AND A.BUDGET_YEAR = @p_YEAR
694
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
695
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
696
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
697
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
698
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
699
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
700
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
701
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
702
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
703
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
704
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
705
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
706
			)
707
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
708
			SET @l_BUDGET_USED_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
709
						AND A.BUDGET_YEAR = @p_YEAR
710
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
711
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
712
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
713
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
714
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
715
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
716
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
717
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
718
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
719
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
720
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
721
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
722
			)
723
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
724
			SET @l_BUDGET_USED_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
725
						AND A.BUDGET_YEAR = @p_YEAR
726
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
727
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
728
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
729
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
730
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
731
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
732
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
733
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
734
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
735
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
736
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
737
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
738
			)
739
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
740
			SET @l_BUDGET_USED_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
741
						AND A.BUDGET_YEAR = @p_YEAR
742
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
743
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
744
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
745
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
746
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
747
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
748
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
749
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
750
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
751
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
752
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
753
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
754
			)
755
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
756
			SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
757
						AND A.BUDGET_YEAR = @p_YEAR
758
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
759
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
760
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
761
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
762
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
763
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
764
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
765
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
766
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
767
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
768
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
769
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
770
			)
771
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
772
			SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
773
						AND A.BUDGET_YEAR = @p_YEAR
774
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
775
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
776
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
777
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
778
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
779
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
780
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
781
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
782
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
783
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
784
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
785
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
786
			)
787
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
788
			SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
789
						AND A.BUDGET_YEAR = @p_YEAR
790
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
791
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
792
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
793
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
794
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
795
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
796
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
797
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
798
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
799
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
800
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
801
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
802
			)
803
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
804

    
805
			SET @l_BUDGET_USED_CURRENT = @l_BUDGET_USED_M1 + @l_BUDGET_USED_M2 + @l_BUDGET_USED_M3 + @l_BUDGET_USED_M4 + @l_BUDGET_USED_M5 + @l_BUDGET_USED_M6 + @l_BUDGET_USED_M7 + @l_BUDGET_USED_M8 
806
			+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12
807
-- Lấy hạn mức đã gửi duyệt đến hiện tại
808
			SET @l_BUDGET_SEND_APPR_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
809
						AND A.BUDGET_YEAR = @p_YEAR
810
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
811
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
812
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
813
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
814
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
815
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
816
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
817
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
818
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
819
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
820
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
821
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
822
			)
823
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
824
			SET @l_BUDGET_SEND_APPR_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
825
						AND A.BUDGET_YEAR = @p_YEAR
826
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
827
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
828
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
829
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
830
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
831
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
832
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
833
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
834
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
835
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
836
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
837
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
838
			)
839
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
840
			SET @l_BUDGET_SEND_APPR_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
841
						AND A.BUDGET_YEAR = @p_YEAR
842
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
843
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
844
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
845
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
846
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
847
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
848
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
849
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
850
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
851
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
852
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
853
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
854
			)
855
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
856
			SET @l_BUDGET_SEND_APPR_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
857
						AND A.BUDGET_YEAR = @p_YEAR
858
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
859
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
860
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
861
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
862
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
863
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
864
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
865
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
866
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
867
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
868
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
869
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
870
			)
871
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
872
			SET @l_BUDGET_SEND_APPR_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
873
						AND A.BUDGET_YEAR = @p_YEAR
874
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
875
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
876
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
877
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
878
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
879
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
880
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
881
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
882
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
883
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
884
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
885
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
886
			)
887
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
888
			SET @l_BUDGET_SEND_APPR_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
889
						AND A.BUDGET_YEAR = @p_YEAR
890
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
891
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
892
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
893
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
894
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
895
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
896
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
897
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
898
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
899
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
900
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
901
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
902
			)
903
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
904
			SET @l_BUDGET_SEND_APPR_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
905
						AND A.BUDGET_YEAR = @p_YEAR
906
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
907
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
908
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
909
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
910
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
911
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
912
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
913
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
914
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
915
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
916
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
917
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
918
			)
919
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
920
			SET @l_BUDGET_SEND_APPR_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
921
						AND A.BUDGET_YEAR = @p_YEAR
922
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
923
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
924
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
925
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
926
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
927
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
928
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
929
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
930
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
931
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
932
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
933
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
934
			)
935
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
936
			SET @l_BUDGET_SEND_APPR_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
937
						AND A.BUDGET_YEAR = @p_YEAR
938
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
939
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
940
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
941
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
942
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
943
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
944
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
945
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
946
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
947
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
948
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
949
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
950
			)
951
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
952
			SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
953
						AND A.BUDGET_YEAR = @p_YEAR
954
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
955
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
956
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
957
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
958
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
959
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
960
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
961
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
962
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
963
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
964
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
965
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
966
			)
967
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
968
			SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
969
						AND A.BUDGET_YEAR = @p_YEAR
970
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
971
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
972
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
973
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
974
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
975
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
976
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
977
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
978
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
979
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
980
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
981
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
982
			)
983
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
984
			SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
985
						AND A.BUDGET_YEAR = @p_YEAR
986
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
987
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
988
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
989
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
990
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
991
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
992
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
993
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
994
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
995
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
996
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
997
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
998
			)
999
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1000

    
1001
			SET @l_BUDGET_SEND_APPR_CURRENT = @l_BUDGET_SEND_APPR_M1 + @l_BUDGET_SEND_APPR_M2 + @l_BUDGET_SEND_APPR_M3 + @l_BUDGET_SEND_APPR_M4 + @l_BUDGET_SEND_APPR_M5 + @l_BUDGET_SEND_APPR_M6 + @l_BUDGET_SEND_APPR_M7 + @l_BUDGET_SEND_APPR_M8 
1002
			+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12
1003
END
1004
ELSE
1005
BEGIN
1006
	SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE	WHEN @p_MONTH = 'M1' then M1
1007
																						WHEN @p_MONTH = 'M2'  then M2
1008
																						WHEN @p_MONTH = 'M3'  then M3
1009
																						WHEN @p_MONTH = 'M4'  then M4
1010
																						WHEN @p_MONTH = 'M5'  then M5
1011
																						WHEN @p_MONTH = 'M6'  then M6
1012
																						WHEN @p_MONTH = 'M7'  then M7
1013
																						WHEN @p_MONTH = 'M8'  then M8
1014
																						WHEN @p_MONTH = 'M9'  then M9
1015
																						WHEN @p_MONTH = 'M10' then M10
1016
																						WHEN @p_MONTH = 'M11' then M11
1017
																						WHEN @p_MONTH = 'M12' then M12
1018
																						ELSE M1
1019
																				END
1020
											FROM TR_REQ_BUDGET_MONTH_LIMIT 
1021
											WHERE GD_ID = @p_GD_ID AND BRANCH_TYPE = 'PGD' AND BRANCH_KIND = @p_BRANCH_KIND AND BUDGET_YEAR = @p_YEAR AND AUTH_STATUS = 'A' AND RECORD_STATUS = '1'),0)
1022

    
1023
-- Lấy hạn mức đã sử dụng đến hiện tại
1024
			SET @l_BUDGET_USED_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1025
						AND A.BUDGET_YEAR = @p_YEAR
1026
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1027
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1028
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1029
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1030
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1031
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1032
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1033
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1034
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1035
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1036
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1037
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1038
			)
1039
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1040
			SET @l_BUDGET_USED_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1041
						AND A.BUDGET_YEAR = @p_YEAR
1042
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1043
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1044
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1045
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1046
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1047
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1048
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1049
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1050
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1051
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1052
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1053
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1054
			)
1055
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1056
			SET @l_BUDGET_USED_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1057
						AND A.BUDGET_YEAR = @p_YEAR
1058
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1059
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1060
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1061
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1062
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1063
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1064
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1065
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1066
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1067
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1068
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1069
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1070
			)
1071
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1072
			SET @l_BUDGET_USED_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1073
						AND A.BUDGET_YEAR = @p_YEAR
1074
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1075
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1076
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1077
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1078
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1079
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1080
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1081
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1082
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1083
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1084
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1085
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1086
			)
1087
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1088
			SET @l_BUDGET_USED_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1089
						AND A.BUDGET_YEAR = @p_YEAR
1090
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1091
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1092
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1093
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1094
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1095
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1096
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1097
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1098
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1099
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1100
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1101
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1102
			)
1103
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1104
			SET @l_BUDGET_USED_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1105
						AND A.BUDGET_YEAR = @p_YEAR
1106
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1107
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1108
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1109
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1110
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1111
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1112
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1113
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1114
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1115
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1116
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1117
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1118
			)
1119
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1120
			SET @l_BUDGET_USED_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1121
						AND A.BUDGET_YEAR = @p_YEAR
1122
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1123
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1124
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1125
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1126
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1127
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1128
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1129
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1130
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1131
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1132
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1133
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1134
			)
1135
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1136
			SET @l_BUDGET_USED_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1137
						AND A.BUDGET_YEAR = @p_YEAR
1138
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1139
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1140
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1141
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1142
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1143
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1144
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1145
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1146
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1147
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1148
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1149
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1150
			)
1151
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1152
			SET @l_BUDGET_USED_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1153
						AND A.BUDGET_YEAR = @p_YEAR
1154
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1155
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1156
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1157
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1158
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1159
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1160
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1161
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1162
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1163
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1164
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1165
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1166
			)
1167
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1168
			SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1169
						AND A.BUDGET_YEAR = @p_YEAR
1170
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1171
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1172
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1173
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1174
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1175
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1176
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1177
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1178
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1179
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1180
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1181
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1182
			)
1183
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1184
			SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1185
						AND A.BUDGET_YEAR = @p_YEAR
1186
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1187
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1188
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1189
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1190
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1191
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1192
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1193
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1194
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1195
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1196
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1197
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1198
			)
1199
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1200
			SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1201
						AND A.BUDGET_YEAR = @p_YEAR
1202
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1203
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1204
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1205
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1206
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1207
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1208
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1209
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1210
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1211
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1212
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1213
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1214
			)
1215
			AND (EXISTS(SELECT * FROM TR_REQ_PAYMENT B WHERE A.REQ_PAY_ID = B.REQ_PAY_ID AND B.AUTH_STATUS_KT = 'A')) AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1216

    
1217
			SET @l_BUDGET_USED_CURRENT = @l_BUDGET_USED_M1 + @l_BUDGET_USED_M2 + @l_BUDGET_USED_M3 + @l_BUDGET_USED_M4 + @l_BUDGET_USED_M5 + @l_BUDGET_USED_M6 + @l_BUDGET_USED_M7 + @l_BUDGET_USED_M8 
1218
			+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12
1219
-- Lấy hạn mức đã gửi duyệt đến hiện tại
1220
			SET @l_BUDGET_SEND_APPR_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1221
						AND A.BUDGET_YEAR = @p_YEAR
1222
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1223
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1224
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1225
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1226
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1227
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1228
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1229
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1230
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1231
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1232
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1233
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1234
			)
1235
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1236
			SET @l_BUDGET_SEND_APPR_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1237
						AND A.BUDGET_YEAR = @p_YEAR
1238
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1239
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1240
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1241
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1242
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1243
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1244
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1245
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1246
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1247
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1248
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1249
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1250
			)
1251
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1252
			SET @l_BUDGET_SEND_APPR_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1253
						AND A.BUDGET_YEAR = @p_YEAR
1254
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1255
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1256
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1257
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1258
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1259
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1260
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1261
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1262
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1263
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1264
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1265
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1266
			)
1267
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1268
			SET @l_BUDGET_SEND_APPR_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1269
						AND A.BUDGET_YEAR = @p_YEAR
1270
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1271
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1272
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1273
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1274
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1275
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1276
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1277
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1278
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1279
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1280
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1281
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1282
			)
1283
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1284
			SET @l_BUDGET_SEND_APPR_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1285
						AND A.BUDGET_YEAR = @p_YEAR
1286
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1287
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1288
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1289
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1290
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1291
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1292
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1293
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1294
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1295
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1296
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1297
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1298
			)
1299
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1300
			SET @l_BUDGET_SEND_APPR_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1301
						AND A.BUDGET_YEAR = @p_YEAR
1302
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1303
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1304
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1305
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1306
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1307
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1308
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1309
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1310
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1311
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1312
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1313
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1314
			)
1315
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1316
			SET @l_BUDGET_SEND_APPR_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1317
						AND A.BUDGET_YEAR = @p_YEAR
1318
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1319
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1320
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1321
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1322
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1323
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1324
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1325
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1326
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1327
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1328
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1329
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1330
			)
1331
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1332
			SET @l_BUDGET_SEND_APPR_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1333
						AND A.BUDGET_YEAR = @p_YEAR
1334
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1335
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1336
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1337
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1338
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1339
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1340
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1341
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1342
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1343
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1344
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1345
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1346
			)
1347
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1348
			SET @l_BUDGET_SEND_APPR_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1349
						AND A.BUDGET_YEAR = @p_YEAR
1350
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1351
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1352
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1353
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1354
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1355
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1356
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1357
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1358
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1359
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1360
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1361
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1362
			)
1363
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1364
			SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1365
						AND A.BUDGET_YEAR = @p_YEAR
1366
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1367
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1368
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1369
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1370
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1371
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1372
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1373
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1374
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1375
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1376
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1377
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1378
			)
1379
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1380
			SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1381
						AND A.BUDGET_YEAR = @p_YEAR
1382
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1383
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1384
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1385
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1386
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1387
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1388
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1389
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1390
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1391
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1392
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1393
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1394
			)
1395
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1396
			SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
1397
						AND A.BUDGET_YEAR = @p_YEAR
1398
			AND (  ( M1 <> 0  AND @p_MONTH = 'M1' )
1399
				OR ( M2 <> 0  AND @p_MONTH = 'M2' )
1400
				OR ( M3 <> 0  AND @p_MONTH = 'M3' )
1401
				OR ( M4 <> 0  AND @p_MONTH = 'M4' )
1402
				OR ( M5 <> 0  AND @p_MONTH = 'M5' )
1403
				OR ( M6 <> 0  AND @p_MONTH = 'M6' )
1404
				OR ( M7 <> 0  AND @p_MONTH = 'M7' )
1405
				OR ( M8 <> 0  AND @p_MONTH = 'M8' )
1406
				OR ( M9 <> 0  AND @p_MONTH = 'M9' )
1407
				OR ( M10 <> 0 AND @p_MONTH = 'M10')
1408
				OR ( M11 <> 0 AND @p_MONTH = 'M11')
1409
				OR ( M12 <> 0 AND @p_MONTH = 'M12')
1410
			)
1411
			AND A.GD_ID = @p_GD_ID AND A.BRANCH_ID = @p_BRANCH_ID AND A.BRANCH_KIND = @p_BRANCH_KIND AND A.BUDGET_YEAR = @p_YEAR AND A.RECORD_STATUS = '1' GROUP BY GD_ID),0)
1412

    
1413
			SET @l_BUDGET_SEND_APPR_CURRENT = @l_BUDGET_SEND_APPR_M1 + @l_BUDGET_SEND_APPR_M2 + @l_BUDGET_SEND_APPR_M3 + @l_BUDGET_SEND_APPR_M4 + @l_BUDGET_SEND_APPR_M5 + @l_BUDGET_SEND_APPR_M6 + @l_BUDGET_SEND_APPR_M7 + @l_BUDGET_SEND_APPR_M8 
1414
			+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12
1415
END
1416

    
1417
SELECT FORMAT(@l_BUDGET_LIMIT_CURRENT,'#,#', 'vi-VN') + ' VND' AS BUDGET_LIMIT_APPR, FORMAT(@l_BUDGET_USED_CURRENT,'#,#', 'vi-VN') + ' VND' AS BUDGET_LIMIT_USED, FORMAT(@l_BUDGET_LIMIT_CURRENT - @l_BUDGET_USED_CURRENT,'#,#', 'vi-VN') + ' VND' AS BUDGET_LIMIT_REMAIN