Project

General

Profile

TR_BUDGET_CHECK_LIMIT_MONTH_GET_INFO_LIMIT.txt

Luc Tran Van, 03/07/2023 11:23 AM

 
1

    
2
ALTER   PROCEDURE [dbo].[TR_BUDGET_CHECK_LIMIT_MONTH_GET_INFO_LIMIT]
3
@p_GD_ID	varchar(20)  = NULL,
4
@p_GD_CODE	varchar(20)  = NULL,
5
@p_BRANCH_ID varchar(20)  = NULL,
6
@p_DEP_ID	varchar(20)  = NULL,
7
@p_KHOI_ID	varchar(20)  = NULL,
8
@p_TLNAME	varchar(20)  = NULL,
9
@p_ROLENAME	varchar(20)  = NULL,
10
@p_MONTH varchar(20) = NULL,
11
@p_YEAR varchar(20) = NULL,
12
@p_BRANCH_KIND varchar(20) = NULL
13
AS
14
DECLARE @l_BUDGET_LIMIT_CURRENT DECIMAL(18,0)
15
	-- Lấy hạn mức đã sử dụng đến hiện tại
16
DECLARE @l_BUDGET_USED_CURRENT DECIMAL(18,0)
17
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),
18
@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),
19
@l_BUDGET_USED_M11 DECIMAL(18,0), @l_BUDGET_USED_M12 DECIMAL(18,0)
20
	-- Lấy hạn mức đã gửi duyệt đến hiện tại
21
DECLARE @l_BUDGET_SEND_APPR_CURRENT DECIMAL(18,0)
22
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),
23
@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),
24
@l_BUDGET_SEND_APPR_M11 DECIMAL(18,0), @l_BUDGET_SEND_APPR_M12 DECIMAL(18,0)
25

    
26
DECLARE @BRANCH_TYPE VARCHAR(15), @IS_POTENTIAL VARCHAR(15)
27
SELECT @BRANCH_TYPE = BRANCH_TYPE, @IS_POTENTIAL = IS_POTENTIAL FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_ID
28
IF(ISNULL(@p_BRANCH_ID,'') = 'DV0001')
29
BEGIN
30
	SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE	WHEN @p_MONTH = 'M1' then M1
31
																						WHEN @p_MONTH = 'M2'  then M2
32
																						WHEN @p_MONTH = 'M3'  then M3
33
																						WHEN @p_MONTH = 'M4'  then M4
34
																						WHEN @p_MONTH = 'M5'  then M5
35
																						WHEN @p_MONTH = 'M6'  then M6
36
																						WHEN @p_MONTH = 'M7'  then M7
37
																						WHEN @p_MONTH = 'M8'  then M8
38
																						WHEN @p_MONTH = 'M9'  then M9
39
																						WHEN @p_MONTH = 'M10' then M10
40
																						WHEN @p_MONTH = 'M11' then M11
41
																						WHEN @p_MONTH = 'M12' then M12
42
																						ELSE M1
43
																				END
44
											FROM TR_REQ_BUDGET_MONTH_LIMIT 
45
											WHERE GD_ID = @p_GD_ID AND BRANCH_TYPE = 'HO' AND BUDGET_YEAR = @p_YEAR AND AUTH_STATUS = 'A' AND RECORD_STATUS = '1'),0)
46
SELECT *  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL 
47
			-- Lấy hạn mức đã sử dụng đến hiện tại
48
			SET @l_BUDGET_USED_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
49
			AND A.BUDGET_YEAR = @p_YEAR
50
			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)
51
			
52
			SET @l_BUDGET_USED_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
53
			AND A.BUDGET_YEAR = @p_YEAR
54
			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)
55
			
56
			SET @l_BUDGET_USED_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
57
			AND A.BUDGET_YEAR = @p_YEAR
58
			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)
59
			
60
			SET @l_BUDGET_USED_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
61
			AND A.BUDGET_YEAR = @p_YEAR
62
			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
			
64
			SET @l_BUDGET_USED_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
65
			AND A.BUDGET_YEAR = @p_YEAR
66
			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
			
68
			SET @l_BUDGET_USED_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
69
			AND A.BUDGET_YEAR = @p_YEAR
70
			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_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
73
			AND A.BUDGET_YEAR = @p_YEAR
74
			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)
75
			
76
			SET @l_BUDGET_USED_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
77
			AND A.BUDGET_YEAR = @p_YEAR
78
			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)
79
			
80
			SET @l_BUDGET_USED_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
81
			AND A.BUDGET_YEAR = @p_YEAR
82
			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)
83
			
84
			SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
85
			AND A.BUDGET_YEAR = @p_YEAR
86
			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)
87
			
88
			SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
89
			AND A.BUDGET_YEAR = @p_YEAR
90
			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)
91
			
92
			SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
93
			AND A.BUDGET_YEAR = @p_YEAR
94
			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)
95

    
96
			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 
97
			+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12 
98

    
99
-- Lấy hạn mức đã gửi duyệt đến hiện tại
100
			SET @l_BUDGET_SEND_APPR_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
101
			AND A.BUDGET_YEAR = @p_YEAR
102
			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)
103
			
104
			SET @l_BUDGET_SEND_APPR_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
105
			AND A.BUDGET_YEAR = @p_YEAR
106
			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)
107
			
108
			SET @l_BUDGET_SEND_APPR_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
109
			AND A.BUDGET_YEAR = @p_YEAR
110
			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)
111
			
112
			SET @l_BUDGET_SEND_APPR_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
113
			AND A.BUDGET_YEAR = @p_YEAR
114
			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)
115
			
116
			SET @l_BUDGET_SEND_APPR_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
117
			AND A.BUDGET_YEAR = @p_YEAR
118
			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)
119
			
120
			SET @l_BUDGET_SEND_APPR_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
121
			AND A.BUDGET_YEAR = @p_YEAR
122
			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)
123
			
124
			SET @l_BUDGET_SEND_APPR_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
125
			AND A.BUDGET_YEAR = @p_YEAR
126
			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)
127
			
128
			SET @l_BUDGET_SEND_APPR_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
129
			AND A.BUDGET_YEAR = @p_YEAR
130
			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)
131
			
132
			SET @l_BUDGET_SEND_APPR_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
133
			AND A.BUDGET_YEAR = @p_YEAR
134
			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)
135
			
136
			SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
137
			AND A.BUDGET_YEAR = @p_YEAR
138
			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)
139
			
140
			SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
141
			AND A.BUDGET_YEAR = @p_YEAR
142
			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)
143
			
144
			SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
145
			AND A.BUDGET_YEAR = @p_YEAR
146
			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)
147

    
148
			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 
149
			+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12 
150

    
151
END
152
ELSE IF(@BRANCH_TYPE = 'CN' OR (@IS_POTENTIAL = 'Y' AND @BRANCH_TYPE = 'PGD'))
153
BEGIN
154
		SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE	WHEN @p_MONTH = 'M1' then M1
155
																						WHEN @p_MONTH = 'M2'  then M2
156
																						WHEN @p_MONTH = 'M3'  then M3
157
																						WHEN @p_MONTH = 'M4'  then M4
158
																						WHEN @p_MONTH = 'M5'  then M5
159
																						WHEN @p_MONTH = 'M6'  then M6
160
																						WHEN @p_MONTH = 'M7'  then M7
161
																						WHEN @p_MONTH = 'M8'  then M8
162
																						WHEN @p_MONTH = 'M9'  then M9
163
																						WHEN @p_MONTH = 'M10' then M10
164
																						WHEN @p_MONTH = 'M11' then M11
165
																						WHEN @p_MONTH = 'M12' then M12
166
																						ELSE M1
167
																				END
168
											FROM TR_REQ_BUDGET_MONTH_LIMIT 
169
											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)
170

    
171
			-- Lấy hạn mức đã sử dụng đến hiện tại
172
			SET @l_BUDGET_USED_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
173
			AND A.BUDGET_YEAR = @p_YEAR
174
			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)
175
			
176
			SET @l_BUDGET_USED_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
177
			AND A.BUDGET_YEAR = @p_YEAR
178
			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)
179
			
180
			SET @l_BUDGET_USED_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
181
			AND A.BUDGET_YEAR = @p_YEAR
182
			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)
183
			
184
			SET @l_BUDGET_USED_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
185
			AND A.BUDGET_YEAR = @p_YEAR
186
			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)
187
			
188
			SET @l_BUDGET_USED_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
189
			AND A.BUDGET_YEAR = @p_YEAR
190
			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)
191
			
192
			SET @l_BUDGET_USED_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
193
			AND A.BUDGET_YEAR = @p_YEAR
194
			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)
195
			
196
			SET @l_BUDGET_USED_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
197
			AND A.BUDGET_YEAR = @p_YEAR
198
			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)
199
			
200
			SET @l_BUDGET_USED_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
201
			AND A.BUDGET_YEAR = @p_YEAR
202
			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)
203
			
204
			SET @l_BUDGET_USED_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
205
			AND A.BUDGET_YEAR = @p_YEAR
206
			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)
207
			
208
			SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
209
			AND A.BUDGET_YEAR = @p_YEAR
210
			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)
211
			
212
			SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
213
			AND A.BUDGET_YEAR = @p_YEAR
214
			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)
215
			
216
			SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
217
			AND A.BUDGET_YEAR = @p_YEAR
218
			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)
219

    
220
			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 
221
			+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12
222
-- Lấy hạn mức đã gửi duyệt đến hiện tại
223
			SET @l_BUDGET_SEND_APPR_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
224
			AND A.BUDGET_YEAR = @p_YEAR
225
			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)
226
			
227
			SET @l_BUDGET_SEND_APPR_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
228
			AND A.BUDGET_YEAR = @p_YEAR
229
			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)
230
			
231
			SET @l_BUDGET_SEND_APPR_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
232
			AND A.BUDGET_YEAR = @p_YEAR
233
			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)
234
			
235
			SET @l_BUDGET_SEND_APPR_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
236
			AND A.BUDGET_YEAR = @p_YEAR
237
			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)
238
			
239
			SET @l_BUDGET_SEND_APPR_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
240
			AND A.BUDGET_YEAR = @p_YEAR
241
			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)
242
			
243
			SET @l_BUDGET_SEND_APPR_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
244
			AND A.BUDGET_YEAR = @p_YEAR
245
			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)
246
			
247
			SET @l_BUDGET_SEND_APPR_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
248
			AND A.BUDGET_YEAR = @p_YEAR
249
			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)
250
			
251
			SET @l_BUDGET_SEND_APPR_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
252
			AND A.BUDGET_YEAR = @p_YEAR
253
			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)
254
			
255
			SET @l_BUDGET_SEND_APPR_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
256
			AND A.BUDGET_YEAR = @p_YEAR
257
			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)
258
			
259
			SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
260
			AND A.BUDGET_YEAR = @p_YEAR
261
			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)
262
			
263
			SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
264
			AND A.BUDGET_YEAR = @p_YEAR
265
			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)
266
			
267
			SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
268
			AND A.BUDGET_YEAR = @p_YEAR
269
			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)
270

    
271
			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 
272
			+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12
273
END
274
ELSE
275
BEGIN
276
	SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE	WHEN @p_MONTH = 'M1' then M1
277
																						WHEN @p_MONTH = 'M2'  then M2
278
																						WHEN @p_MONTH = 'M3'  then M3
279
																						WHEN @p_MONTH = 'M4'  then M4
280
																						WHEN @p_MONTH = 'M5'  then M5
281
																						WHEN @p_MONTH = 'M6'  then M6
282
																						WHEN @p_MONTH = 'M7'  then M7
283
																						WHEN @p_MONTH = 'M8'  then M8
284
																						WHEN @p_MONTH = 'M9'  then M9
285
																						WHEN @p_MONTH = 'M10' then M10
286
																						WHEN @p_MONTH = 'M11' then M11
287
																						WHEN @p_MONTH = 'M12' then M12
288
																						ELSE M1
289
																				END
290
											FROM TR_REQ_BUDGET_MONTH_LIMIT 
291
											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)
292

    
293
-- Lấy hạn mức đã sử dụng đến hiện tại
294
			SET @l_BUDGET_USED_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
295
			AND A.BUDGET_YEAR = @p_YEAR
296
			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)
297
			
298
			SET @l_BUDGET_USED_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
299
			AND A.BUDGET_YEAR = @p_YEAR
300
			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)
301
			
302
			SET @l_BUDGET_USED_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
303
			AND A.BUDGET_YEAR = @p_YEAR
304
			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)
305
			
306
			SET @l_BUDGET_USED_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
307
			AND A.BUDGET_YEAR = @p_YEAR
308
			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)
309
			
310
			SET @l_BUDGET_USED_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
311
			AND A.BUDGET_YEAR = @p_YEAR
312
			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)
313
			
314
			SET @l_BUDGET_USED_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
315
			AND A.BUDGET_YEAR = @p_YEAR
316
			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)
317
			
318
			SET @l_BUDGET_USED_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
319
			AND A.BUDGET_YEAR = @p_YEAR
320
			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)
321
			
322
			SET @l_BUDGET_USED_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
323
			AND A.BUDGET_YEAR = @p_YEAR
324
			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)
325
			
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 (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)
329
			
330
			SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
331
			AND A.BUDGET_YEAR = @p_YEAR
332
			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)
333
			
334
			SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
335
			AND A.BUDGET_YEAR = @p_YEAR
336
			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)
337
			
338
			SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
339
			AND A.BUDGET_YEAR = @p_YEAR
340
			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)
341

    
342
			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 
343
			+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12
344
-- Lấy hạn mức đã gửi duyệt đến hiện tại
345
			
346
			SET @l_BUDGET_SEND_APPR_M1  = ISNULL((SELECT SUM(M1)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
347
			AND A.BUDGET_YEAR = @p_YEAR
348
			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)
349
			
350
			SET @l_BUDGET_SEND_APPR_M2  = ISNULL((SELECT SUM(M2)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
351
			AND A.BUDGET_YEAR = @p_YEAR
352
			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)
353
			
354
			SET @l_BUDGET_SEND_APPR_M3  = ISNULL((SELECT SUM(M3)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
355
			AND A.BUDGET_YEAR = @p_YEAR
356
			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)
357
			
358
			SET @l_BUDGET_SEND_APPR_M4  = ISNULL((SELECT SUM(M4)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
359
			AND A.BUDGET_YEAR = @p_YEAR
360
			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)
361
			
362
			SET @l_BUDGET_SEND_APPR_M5  = ISNULL((SELECT SUM(M5)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
363
			AND A.BUDGET_YEAR = @p_YEAR
364
			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)
365
			
366
			SET @l_BUDGET_SEND_APPR_M6  = ISNULL((SELECT SUM(M6)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
367
			AND A.BUDGET_YEAR = @p_YEAR
368
			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)
369
			
370
			SET @l_BUDGET_SEND_APPR_M7  = ISNULL((SELECT SUM(M7)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
371
			AND A.BUDGET_YEAR = @p_YEAR
372
			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)
373
			
374
			SET @l_BUDGET_SEND_APPR_M8  = ISNULL((SELECT SUM(M8)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
375
			AND A.BUDGET_YEAR = @p_YEAR
376
			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)
377
			
378
			SET @l_BUDGET_SEND_APPR_M9  = ISNULL((SELECT SUM(M9)  FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
379
			AND A.BUDGET_YEAR = @p_YEAR
380
			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)
381
			
382
			SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
383
			AND A.BUDGET_YEAR = @p_YEAR
384
			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)
385
			
386
			SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
387
			AND A.BUDGET_YEAR = @p_YEAR
388
			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)
389
			
390
			SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1 
391
			AND A.BUDGET_YEAR = @p_YEAR
392
			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)
393

    
394
			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 
395
			+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12
396
END
397

    
398
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