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
|
|
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 (@p_MONTH = 'M1')
|
51
|
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)
|
52
|
|
53
|
SET @l_BUDGET_USED_M2 = ISNULL((SELECT SUM(M2) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
54
|
AND A.BUDGET_YEAR = @p_YEAR
|
55
|
AND (@p_MONTH = 'M2')
|
56
|
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)
|
57
|
|
58
|
SET @l_BUDGET_USED_M3 = ISNULL((SELECT SUM(M3) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
59
|
AND A.BUDGET_YEAR = @p_YEAR
|
60
|
AND (@p_MONTH = 'M3')
|
61
|
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
|
|
63
|
SET @l_BUDGET_USED_M4 = ISNULL((SELECT SUM(M4) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
64
|
AND A.BUDGET_YEAR = @p_YEAR
|
65
|
AND (@p_MONTH = 'M4')
|
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_M5 = ISNULL((SELECT SUM(M5) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
69
|
AND A.BUDGET_YEAR = @p_YEAR
|
70
|
AND (@p_MONTH = 'M5')
|
71
|
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)
|
72
|
|
73
|
SET @l_BUDGET_USED_M6 = ISNULL((SELECT SUM(M6) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
74
|
AND A.BUDGET_YEAR = @p_YEAR
|
75
|
AND (@p_MONTH = 'M6')
|
76
|
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)
|
77
|
|
78
|
SET @l_BUDGET_USED_M7 = ISNULL((SELECT SUM(M7) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
79
|
AND A.BUDGET_YEAR = @p_YEAR
|
80
|
AND (@p_MONTH = 'M7')
|
81
|
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)
|
82
|
|
83
|
SET @l_BUDGET_USED_M8 = ISNULL((SELECT SUM(M8) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
84
|
AND A.BUDGET_YEAR = @p_YEAR
|
85
|
AND (@p_MONTH = 'M8')
|
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_M9 = ISNULL((SELECT SUM(M9) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
89
|
AND A.BUDGET_YEAR = @p_YEAR
|
90
|
AND (@p_MONTH = 'M9')
|
91
|
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)
|
92
|
|
93
|
SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
94
|
AND A.BUDGET_YEAR = @p_YEAR
|
95
|
AND (@p_MONTH = 'M10')
|
96
|
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)
|
97
|
|
98
|
SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
99
|
AND A.BUDGET_YEAR = @p_YEAR
|
100
|
AND (@p_MONTH = 'M11')
|
101
|
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)
|
102
|
|
103
|
SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
104
|
AND A.BUDGET_YEAR = @p_YEAR
|
105
|
AND (@p_MONTH = 'M12')
|
106
|
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)
|
107
|
|
108
|
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
|
109
|
+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12
|
110
|
|
111
|
-- Lấy hạn mức đã gửi duyệt đến hiện tại
|
112
|
SET @l_BUDGET_SEND_APPR_M1 = ISNULL((SELECT SUM(M1) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
113
|
AND A.BUDGET_YEAR = @p_YEAR
|
114
|
AND (@p_MONTH = 'M1')
|
115
|
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)
|
116
|
|
117
|
SET @l_BUDGET_SEND_APPR_M2 = ISNULL((SELECT SUM(M2) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
118
|
AND A.BUDGET_YEAR = @p_YEAR
|
119
|
AND (@p_MONTH = 'M2')
|
120
|
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)
|
121
|
|
122
|
SET @l_BUDGET_SEND_APPR_M3 = ISNULL((SELECT SUM(M3) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
123
|
AND A.BUDGET_YEAR = @p_YEAR
|
124
|
AND (@p_MONTH = 'M3')
|
125
|
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)
|
126
|
|
127
|
SET @l_BUDGET_SEND_APPR_M4 = ISNULL((SELECT SUM(M4) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
128
|
AND A.BUDGET_YEAR = @p_YEAR
|
129
|
AND (@p_MONTH = 'M4')
|
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_M5 = ISNULL((SELECT SUM(M5) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
133
|
AND A.BUDGET_YEAR = @p_YEAR
|
134
|
AND (@p_MONTH = 'M5')
|
135
|
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)
|
136
|
|
137
|
SET @l_BUDGET_SEND_APPR_M6 = ISNULL((SELECT SUM(M6) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
138
|
AND A.BUDGET_YEAR = @p_YEAR
|
139
|
AND (@p_MONTH = 'M6')
|
140
|
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)
|
141
|
|
142
|
SET @l_BUDGET_SEND_APPR_M7 = ISNULL((SELECT SUM(M7) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
143
|
AND A.BUDGET_YEAR = @p_YEAR
|
144
|
AND (@p_MONTH = 'M7')
|
145
|
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)
|
146
|
|
147
|
SET @l_BUDGET_SEND_APPR_M8 = ISNULL((SELECT SUM(M8) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
148
|
AND A.BUDGET_YEAR = @p_YEAR
|
149
|
AND (@p_MONTH = 'M8')
|
150
|
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)
|
151
|
|
152
|
SET @l_BUDGET_SEND_APPR_M9 = ISNULL((SELECT SUM(M9) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
153
|
AND A.BUDGET_YEAR = @p_YEAR
|
154
|
AND (@p_MONTH = 'M9')
|
155
|
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)
|
156
|
|
157
|
SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
158
|
AND A.BUDGET_YEAR = @p_YEAR
|
159
|
AND (@p_MONTH = 'M10')
|
160
|
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)
|
161
|
|
162
|
SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
163
|
AND A.BUDGET_YEAR = @p_YEAR
|
164
|
AND (@p_MONTH = 'M11')
|
165
|
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)
|
166
|
|
167
|
SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
168
|
AND A.BUDGET_YEAR = @p_YEAR
|
169
|
AND (@p_MONTH = 'M12')
|
170
|
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)
|
171
|
|
172
|
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
|
173
|
+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12
|
174
|
|
175
|
END
|
176
|
ELSE IF(@BRANCH_TYPE = 'CN' OR (@IS_POTENTIAL = 'Y' AND @BRANCH_TYPE = 'PGD'))
|
177
|
BEGIN
|
178
|
SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE WHEN @p_MONTH = 'M1' then M1
|
179
|
WHEN @p_MONTH = 'M2' then M2
|
180
|
WHEN @p_MONTH = 'M3' then M3
|
181
|
WHEN @p_MONTH = 'M4' then M4
|
182
|
WHEN @p_MONTH = 'M5' then M5
|
183
|
WHEN @p_MONTH = 'M6' then M6
|
184
|
WHEN @p_MONTH = 'M7' then M7
|
185
|
WHEN @p_MONTH = 'M8' then M8
|
186
|
WHEN @p_MONTH = 'M9' then M9
|
187
|
WHEN @p_MONTH = 'M10' then M10
|
188
|
WHEN @p_MONTH = 'M11' then M11
|
189
|
WHEN @p_MONTH = 'M12' then M12
|
190
|
ELSE M1
|
191
|
END
|
192
|
FROM TR_REQ_BUDGET_MONTH_LIMIT
|
193
|
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)
|
194
|
|
195
|
-- Lấy hạn mức đã sử dụng đến hiện tại
|
196
|
SET @l_BUDGET_USED_M1 = ISNULL((SELECT SUM(M1) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
197
|
AND A.BUDGET_YEAR = @p_YEAR
|
198
|
AND (@p_MONTH = 'M1')
|
199
|
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)
|
200
|
|
201
|
SET @l_BUDGET_USED_M2 = ISNULL((SELECT SUM(M2) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
202
|
AND A.BUDGET_YEAR = @p_YEAR
|
203
|
AND (@p_MONTH = 'M2')
|
204
|
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)
|
205
|
|
206
|
SET @l_BUDGET_USED_M3 = ISNULL((SELECT SUM(M3) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
207
|
AND A.BUDGET_YEAR = @p_YEAR
|
208
|
AND (@p_MONTH = 'M3')
|
209
|
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)
|
210
|
|
211
|
SET @l_BUDGET_USED_M4 = ISNULL((SELECT SUM(M4) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
212
|
AND A.BUDGET_YEAR = @p_YEAR
|
213
|
AND (@p_MONTH = 'M4')
|
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_M5 = ISNULL((SELECT SUM(M5) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
217
|
AND A.BUDGET_YEAR = @p_YEAR
|
218
|
AND (@p_MONTH = 'M5')
|
219
|
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)
|
220
|
|
221
|
SET @l_BUDGET_USED_M6 = ISNULL((SELECT SUM(M6) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
222
|
AND A.BUDGET_YEAR = @p_YEAR
|
223
|
AND (@p_MONTH = 'M6')
|
224
|
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)
|
225
|
|
226
|
SET @l_BUDGET_USED_M7 = ISNULL((SELECT SUM(M7) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
227
|
AND A.BUDGET_YEAR = @p_YEAR
|
228
|
AND (@p_MONTH = 'M7')
|
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.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_USED_M8 = ISNULL((SELECT SUM(M8) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
232
|
AND A.BUDGET_YEAR = @p_YEAR
|
233
|
AND (@p_MONTH = 'M8')
|
234
|
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)
|
235
|
|
236
|
SET @l_BUDGET_USED_M9 = ISNULL((SELECT SUM(M9) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
237
|
AND A.BUDGET_YEAR = @p_YEAR
|
238
|
AND (@p_MONTH = 'M9')
|
239
|
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)
|
240
|
|
241
|
SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
242
|
AND A.BUDGET_YEAR = @p_YEAR
|
243
|
AND (@p_MONTH = 'M10')
|
244
|
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)
|
245
|
|
246
|
SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
247
|
AND A.BUDGET_YEAR = @p_YEAR
|
248
|
AND (@p_MONTH = 'M11')
|
249
|
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)
|
250
|
|
251
|
SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
252
|
AND A.BUDGET_YEAR = @p_YEAR
|
253
|
AND (@p_MONTH = 'M12')
|
254
|
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)
|
255
|
|
256
|
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
|
257
|
+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12
|
258
|
-- Lấy hạn mức đã gửi duyệt đến hiện tại
|
259
|
SET @l_BUDGET_SEND_APPR_M1 = ISNULL((SELECT SUM(M1) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
260
|
AND A.BUDGET_YEAR = @p_YEAR
|
261
|
AND (@p_MONTH = 'M1')
|
262
|
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)
|
263
|
|
264
|
SET @l_BUDGET_SEND_APPR_M2 = ISNULL((SELECT SUM(M2) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
265
|
AND A.BUDGET_YEAR = @p_YEAR
|
266
|
AND (@p_MONTH = 'M2')
|
267
|
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)
|
268
|
|
269
|
SET @l_BUDGET_SEND_APPR_M3 = ISNULL((SELECT SUM(M3) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
270
|
AND A.BUDGET_YEAR = @p_YEAR
|
271
|
AND (@p_MONTH = 'M3')
|
272
|
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)
|
273
|
|
274
|
SET @l_BUDGET_SEND_APPR_M4 = ISNULL((SELECT SUM(M4) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
275
|
AND A.BUDGET_YEAR = @p_YEAR
|
276
|
AND (@p_MONTH = 'M4')
|
277
|
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)
|
278
|
|
279
|
SET @l_BUDGET_SEND_APPR_M5 = ISNULL((SELECT SUM(M5) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
280
|
AND A.BUDGET_YEAR = @p_YEAR
|
281
|
AND (@p_MONTH = 'M5')
|
282
|
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)
|
283
|
|
284
|
SET @l_BUDGET_SEND_APPR_M6 = ISNULL((SELECT SUM(M6) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
285
|
AND A.BUDGET_YEAR = @p_YEAR
|
286
|
AND (@p_MONTH = 'M6')
|
287
|
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)
|
288
|
|
289
|
SET @l_BUDGET_SEND_APPR_M7 = ISNULL((SELECT SUM(M7) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
290
|
AND A.BUDGET_YEAR = @p_YEAR
|
291
|
AND (@p_MONTH = 'M7')
|
292
|
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)
|
293
|
|
294
|
SET @l_BUDGET_SEND_APPR_M8 = ISNULL((SELECT SUM(M8) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
295
|
AND A.BUDGET_YEAR = @p_YEAR
|
296
|
AND (@p_MONTH = 'M8')
|
297
|
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)
|
298
|
|
299
|
SET @l_BUDGET_SEND_APPR_M9 = ISNULL((SELECT SUM(M9) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
300
|
AND A.BUDGET_YEAR = @p_YEAR
|
301
|
AND (@p_MONTH = 'M9')
|
302
|
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)
|
303
|
|
304
|
SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
305
|
AND A.BUDGET_YEAR = @p_YEAR
|
306
|
AND (@p_MONTH = 'M10')
|
307
|
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)
|
308
|
|
309
|
SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
310
|
AND A.BUDGET_YEAR = @p_YEAR
|
311
|
AND (@p_MONTH = 'M11')
|
312
|
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_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
315
|
AND A.BUDGET_YEAR = @p_YEAR
|
316
|
AND (@p_MONTH = 'M12')
|
317
|
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)
|
318
|
|
319
|
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
|
320
|
+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12
|
321
|
END
|
322
|
ELSE
|
323
|
BEGIN
|
324
|
SET @l_BUDGET_LIMIT_CURRENT = ISNULL((SELECT BUDGET_LIMIT_CURRENT = CASE WHEN @p_MONTH = 'M1' then M1
|
325
|
WHEN @p_MONTH = 'M2' then M2
|
326
|
WHEN @p_MONTH = 'M3' then M3
|
327
|
WHEN @p_MONTH = 'M4' then M4
|
328
|
WHEN @p_MONTH = 'M5' then M5
|
329
|
WHEN @p_MONTH = 'M6' then M6
|
330
|
WHEN @p_MONTH = 'M7' then M7
|
331
|
WHEN @p_MONTH = 'M8' then M8
|
332
|
WHEN @p_MONTH = 'M9' then M9
|
333
|
WHEN @p_MONTH = 'M10' then M10
|
334
|
WHEN @p_MONTH = 'M11' then M11
|
335
|
WHEN @p_MONTH = 'M12' then M12
|
336
|
ELSE M1
|
337
|
END
|
338
|
FROM TR_REQ_BUDGET_MONTH_LIMIT
|
339
|
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)
|
340
|
|
341
|
-- Lấy hạn mức đã sử dụng đến hiện tại
|
342
|
SET @l_BUDGET_USED_M1 = ISNULL((SELECT SUM(M1) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
343
|
AND A.BUDGET_YEAR = @p_YEAR
|
344
|
AND (@p_MONTH = 'M1')
|
345
|
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)
|
346
|
|
347
|
SET @l_BUDGET_USED_M2 = ISNULL((SELECT SUM(M2) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
348
|
AND A.BUDGET_YEAR = @p_YEAR
|
349
|
AND (@p_MONTH = 'M2')
|
350
|
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)
|
351
|
|
352
|
SET @l_BUDGET_USED_M3 = ISNULL((SELECT SUM(M3) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
353
|
AND A.BUDGET_YEAR = @p_YEAR
|
354
|
AND (@p_MONTH = 'M3')
|
355
|
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)
|
356
|
|
357
|
SET @l_BUDGET_USED_M4 = ISNULL((SELECT SUM(M4) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
358
|
AND A.BUDGET_YEAR = @p_YEAR
|
359
|
AND (@p_MONTH = 'M4')
|
360
|
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)
|
361
|
|
362
|
SET @l_BUDGET_USED_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 (@p_MONTH = 'M5')
|
365
|
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)
|
366
|
|
367
|
SET @l_BUDGET_USED_M6 = ISNULL((SELECT SUM(M6) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
368
|
AND A.BUDGET_YEAR = @p_YEAR
|
369
|
AND (@p_MONTH = 'M6')
|
370
|
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)
|
371
|
|
372
|
SET @l_BUDGET_USED_M7 = ISNULL((SELECT SUM(M7) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
373
|
AND A.BUDGET_YEAR = @p_YEAR
|
374
|
AND (@p_MONTH = 'M7')
|
375
|
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)
|
376
|
|
377
|
SET @l_BUDGET_USED_M8 = ISNULL((SELECT SUM(M8) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
378
|
AND A.BUDGET_YEAR = @p_YEAR
|
379
|
AND (@p_MONTH = 'M8')
|
380
|
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)
|
381
|
|
382
|
SET @l_BUDGET_USED_M9 = ISNULL((SELECT SUM(M9) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
383
|
AND A.BUDGET_YEAR = @p_YEAR
|
384
|
AND (@p_MONTH = 'M9')
|
385
|
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)
|
386
|
|
387
|
SET @l_BUDGET_USED_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
388
|
AND A.BUDGET_YEAR = @p_YEAR
|
389
|
AND (@p_MONTH = 'M10')
|
390
|
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)
|
391
|
|
392
|
SET @l_BUDGET_USED_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
393
|
AND A.BUDGET_YEAR = @p_YEAR
|
394
|
AND (@p_MONTH = 'M11')
|
395
|
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)
|
396
|
|
397
|
SET @l_BUDGET_USED_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
398
|
AND A.BUDGET_YEAR = @p_YEAR
|
399
|
AND (@p_MONTH = 'M12')
|
400
|
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)
|
401
|
|
402
|
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
|
403
|
+ @l_BUDGET_USED_M9 + @l_BUDGET_USED_M10 + @l_BUDGET_USED_M11 + @l_BUDGET_USED_M12
|
404
|
-- Lấy hạn mức đã gửi duyệt đến hiện tại
|
405
|
|
406
|
SET @l_BUDGET_SEND_APPR_M1 = ISNULL((SELECT SUM(M1) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
407
|
AND A.BUDGET_YEAR = @p_YEAR
|
408
|
AND (@p_MONTH = 'M1')
|
409
|
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)
|
410
|
|
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 (@p_MONTH = 'M2')
|
414
|
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)
|
415
|
|
416
|
SET @l_BUDGET_SEND_APPR_M3 = ISNULL((SELECT SUM(M3) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
417
|
AND A.BUDGET_YEAR = @p_YEAR
|
418
|
AND (@p_MONTH = 'M3')
|
419
|
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)
|
420
|
|
421
|
SET @l_BUDGET_SEND_APPR_M4 = ISNULL((SELECT SUM(M4) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
422
|
AND A.BUDGET_YEAR = @p_YEAR
|
423
|
AND (@p_MONTH = 'M4')
|
424
|
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)
|
425
|
|
426
|
SET @l_BUDGET_SEND_APPR_M5 = ISNULL((SELECT SUM(M5) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
427
|
AND A.BUDGET_YEAR = @p_YEAR
|
428
|
AND (@p_MONTH = 'M5')
|
429
|
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)
|
430
|
|
431
|
SET @l_BUDGET_SEND_APPR_M6 = ISNULL((SELECT SUM(M6) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
432
|
AND A.BUDGET_YEAR = @p_YEAR
|
433
|
AND (@p_MONTH = 'M6')
|
434
|
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)
|
435
|
|
436
|
SET @l_BUDGET_SEND_APPR_M7 = ISNULL((SELECT SUM(M7) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
437
|
AND A.BUDGET_YEAR = @p_YEAR
|
438
|
AND (@p_MONTH = 'M7')
|
439
|
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)
|
440
|
|
441
|
SET @l_BUDGET_SEND_APPR_M8 = ISNULL((SELECT SUM(M8) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
442
|
AND A.BUDGET_YEAR = @p_YEAR
|
443
|
AND (@p_MONTH = 'M8')
|
444
|
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)
|
445
|
|
446
|
SET @l_BUDGET_SEND_APPR_M9 = ISNULL((SELECT SUM(M9) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
447
|
AND A.BUDGET_YEAR = @p_YEAR
|
448
|
AND (@p_MONTH = 'M9')
|
449
|
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)
|
450
|
|
451
|
SET @l_BUDGET_SEND_APPR_M10 = ISNULL((SELECT SUM(M10) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
452
|
AND A.BUDGET_YEAR = @p_YEAR
|
453
|
AND (@p_MONTH = 'M10')
|
454
|
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)
|
455
|
|
456
|
SET @l_BUDGET_SEND_APPR_M11 = ISNULL((SELECT SUM(M11) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
457
|
AND A.BUDGET_YEAR = @p_YEAR
|
458
|
AND (@p_MONTH = 'M11')
|
459
|
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)
|
460
|
|
461
|
SET @l_BUDGET_SEND_APPR_M12 = ISNULL((SELECT SUM(M12) FROM TR_REQ_BUDGET_MONTH_LIMIT_DETAIL A WHERE 1=1
|
462
|
AND A.BUDGET_YEAR = @p_YEAR
|
463
|
AND (@p_MONTH = 'M12')
|
464
|
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)
|
465
|
|
466
|
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
|
467
|
+ @l_BUDGET_SEND_APPR_M9 + @l_BUDGET_SEND_APPR_M10 + @l_BUDGET_SEND_APPR_M11 + @l_BUDGET_SEND_APPR_M12
|
468
|
END
|
469
|
|
470
|
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
|