1
|
ALTER PROCEDURE dbo.ASS_USE_MULTI_BVB_KT_Appr
|
2
|
@p_USER_MASTER_ID varchar(15) = NULL,
|
3
|
--@p_AUTH_STATUS varchar(1) = NULL,
|
4
|
@p_CHECKER_ID varchar(100) = NULL,
|
5
|
@p_APPROVE_DT VARCHAR(20) = NULL
|
6
|
AS
|
7
|
DECLARE @l_BRANCH_ID VARCHAR(15)
|
8
|
DECLARE @l_DEPT_ID VARCHAR(15)
|
9
|
DECLARE @l_EMP_ID VARCHAR(15)
|
10
|
DECLARE @l_DIVISION_ID VARCHAR(15)
|
11
|
DECLARE @l_VALUE_ID VARCHAR(15)
|
12
|
|
13
|
--DECLARE @l_LOCATION nvarchar(500)
|
14
|
DECLARE @l_LOCHIST_ID VARCHAR(15)
|
15
|
|
16
|
DECLARE @l_ASSET_ID VARCHAR(15)
|
17
|
DECLARE @l_WAHDT_ID VARCHAR(15)
|
18
|
DECLARE @l_WAH_ID VARCHAR(15)
|
19
|
DECLARE @l_MAKER_ID varchar(15)
|
20
|
|
21
|
DECLARE @l_AMORT_MONTH decimal(18,2)
|
22
|
DECLARE @l_AMORT_START_DATE datetime, @l_AMORT_END_DATE datetime
|
23
|
DECLARE @l_FIRST_AMORT_AMT numeric(18,0)
|
24
|
DECLARE @l_MONTHLY_AMT numeric(18,0)
|
25
|
DECLARE @l_ASS_AMORT_AMT numeric(18,0)
|
26
|
DECLARE @sToday varchar(10) = convert(varchar(10), getdate(), 103)
|
27
|
DECLARE @l_ENTRY_BOOKED varchar(1)
|
28
|
DECLARE @l_HO_BRN_ID varchar(15)
|
29
|
DECLARE @l_AMORT_AMT decimal(18) = NULL
|
30
|
DECLARE @l_BUY_PRICE decimal(18) = NULL
|
31
|
DECLARE @l_ET_ID varchar(15)
|
32
|
--DEClare @p_ADDNEW_ID varchar(15)
|
33
|
|
34
|
DECLARE @l_SUPPEND_GL varchar(50)
|
35
|
DECLARE @l_ASSET_GL varchar(50)--TK TAI SAN
|
36
|
DECLARE @l_EXP_ACCTNO varchar(50)--TK CHI PHI
|
37
|
DECLARE @l_AMORT_ACCTNO varchar(50)--TK CHO PHAN BO
|
38
|
DECLARE @l_PAY_HS_ACCTNO VARCHAR(50)
|
39
|
DECLARE @_BUY_TS_ACCTNO VARCHAR(50)
|
40
|
DECLARE @l_WAIT_AMORT VARCHAR(50)
|
41
|
DECLARE @l_TRANFER_ACCTNO VARCHAR(50)
|
42
|
|
43
|
|
44
|
DECLARE @l_DR_BRANCH VARCHAR(15) -- DV GHI NO
|
45
|
DECLARE @l_ASSET_VALUE decimal(18,0)
|
46
|
DECLARE @l_ASSET_CODE VARCHAR(25)
|
47
|
DECLARE @l_GROUP_ID varchar(15)
|
48
|
DECLARE @l_CORE_NOTE NVARCHAR(500)
|
49
|
DECLARE @l_TYPE_ID varchar(15) = NULL
|
50
|
declare @l_TRN_REF_NO varchar(20)
|
51
|
declare @l_DO_BRANCH_ID varchar(15)
|
52
|
DECLARE @l_AMORT_STATUS VARCHAR(15) = 'CKH'
|
53
|
DECLARE @l_AMORT_MONTH_ASS_USE DECIMAL(18,2) = NULL
|
54
|
DECLARE @l_AMORT_RATE DECIMAL(18,2) = 0
|
55
|
declare @l_AUTH_STATUS varchar(15) = ''
|
56
|
DECLARE @l_CURR_AMORT_AMT DECIMAL(18,0)
|
57
|
DECLARE @sExecDT DATE
|
58
|
DECLARE @l_AMORT_TERM VARCHAR(500)
|
59
|
DECLARE @l_AMORTDT_ID VARCHAR(15) = NULL
|
60
|
DECLARE @l_AMORTIZED_MONTH DECIMAL(18,0), @ERROR NVARCHAR(500) = ''
|
61
|
DECLARE @l_BRANCH_CREATE VARCHAR(15), @BRN_TYPE_TRN VARCHAR(15), @BRN_TYPE_REC VARCHAR(15), @TCCT_TRN_ACCTNO VARCHAR(50), @TCCT_REC_ACCTNO VARCHAR(50)
|
62
|
DECLARE @l_DEP_CODE VARCHAR(15)
|
63
|
DECLARE @l_COST_MASTER_ID VARCHAR(15)
|
64
|
DECLARE @l_COSTDT_ID VARCHAR(15),
|
65
|
@l_REMAIN_VALUE_UPD DECIMAL(18,0),
|
66
|
@l_BUY_PRICE_UPD DECIMAL(18,0)
|
67
|
|
68
|
DECLARE @CUR_DATE DATETIME = GETDATE()
|
69
|
BEGIN TRY
|
70
|
BEGIN TRANSACTION
|
71
|
|
72
|
IF(EXISTS(SELECT 1 FROM ASS_USE_MULTI_MASTER WHERE AUTH_STATUS_KT ='A' AND USER_MASTER_ID =@p_USER_MASTER_ID))
|
73
|
BEGIN
|
74
|
ROLLBACK TRANSACTION
|
75
|
SELECT '-1' as Result, N'Thông tin xuất sử dụng tài sản đã được duyệt' ErrorDesc
|
76
|
RETURN '-1'
|
77
|
END
|
78
|
|
79
|
--LUCTV: 26-20-2018 KIEM TRA NEU TINH TRANG DANG LA 'R' THI KHONG CHO PHEP DUYET
|
80
|
IF(EXISTS(SELECT * FROM ASS_USE_MULTI_MASTER WHERE AUTH_STATUS_KT ='R' AND USER_MASTER_ID =@p_USER_MASTER_ID))
|
81
|
BEGIN
|
82
|
ROLLBACK TRANSACTION
|
83
|
SELECT '-1' as Result, N'Thông tin xuất sử dụng tài sản đang bị trả về. Vui lòng cập nhật lại thông tin trước khi duyệt' ErrorDesc
|
84
|
RETURN '-1'
|
85
|
END
|
86
|
--APPROVE KT MASTER
|
87
|
UPDATE [dbo].[ASS_USE_MULTI_MASTER]
|
88
|
SET AUTH_STATUS_KT = 'A',
|
89
|
CHECKER_ID_KT = @p_CHECKER_ID,
|
90
|
APPROVE_DT_KT = CONVERT(DATETIME, @p_APPROVE_DT, 103)
|
91
|
WHERE USER_MASTER_ID= @p_USER_MASTER_ID
|
92
|
|
93
|
|
94
|
--thieuvq 260719 lay thong makerid kt--
|
95
|
SET @l_MAKER_ID = (SELECT MAKER_ID_KT FROM ASS_USE_MULTI_MASTER WHERE USER_MASTER_ID = @p_USER_MASTER_ID)
|
96
|
--
|
97
|
DECLARE @l_TRN_NO VARCHAR(15)
|
98
|
|
99
|
|
100
|
EXEC ENTRIES_POST_GEN_NO @p_BRANCH_ID = 'DV0001'
|
101
|
,@p_TRN_DATE = @p_APPROVE_DT
|
102
|
,@p_KeyGen = @l_TRN_NO OUT
|
103
|
|
104
|
DECLARE @USE_MULTI_ID varchar(15)
|
105
|
DECLARE @ASSET_ID varchar(15)
|
106
|
DECLARE XmlData SCROLL CURSOR
|
107
|
FOR
|
108
|
SELECT A.USE_MULTI_ID,A.ASSET_ID
|
109
|
FROM [dbo].[ASS_USE_MULTI_DT] A
|
110
|
WHERE USER_MASTER_ID= @p_USER_MASTER_ID AND AUTH_STATUS_KT <> 'A'
|
111
|
OPEN XmlData
|
112
|
FETCH NEXT FROM XmlData INTO @USE_MULTI_ID,@ASSET_ID
|
113
|
WHILE @@FETCH_STATUS = 0
|
114
|
BEGIN
|
115
|
|
116
|
--Lay thong tin giao dich
|
117
|
SELECT @l_ASSET_ID = ASSET_ID, @l_BRANCH_ID = BRANCH_ID, @l_DEPT_ID = DEPT_ID,
|
118
|
@l_EMP_ID = EMP_ID, @l_DIVISION_ID = DIVISION_ID, @l_CORE_NOTE = CORE_NOTE, @l_AUTH_STATUS = AUTH_STATUS_KT,
|
119
|
@l_AMORT_START_DATE = AMORT_START_DATE, /*@l_MAKER_ID = MAKER_ID_KT,*/ @l_AMORT_MONTH_ASS_USE = AMORT_MONTH,
|
120
|
@l_AMORT_END_DATE = AMORT_END_DATE
|
121
|
FROM [ASS_USE_MULTI_DT]
|
122
|
WHERE USE_MULTI_ID = @USE_MULTI_ID
|
123
|
|
124
|
--Lay thong tin so thang khau hao
|
125
|
SELECT @l_AMORT_MONTH = A.AMORT_MONTH, @l_ASS_AMORT_AMT = AMORT_AMT, @l_ENTRY_BOOKED = ENTRY_BOOKED,
|
126
|
@l_AMORT_AMT = A.AMORT_AMT, @l_BUY_PRICE = BUY_PRICE, @l_GROUP_ID = ISNULL(A.REF_GROUP_ID,A.GROUP_ID),@l_TYPE_ID = A.[TYPE_ID],
|
127
|
@l_BRANCH_CREATE = BRANCH_CREATE,@l_ASSET_CODE=A.ASSET_CODE
|
128
|
FROM ASS_MASTER A
|
129
|
WHERE A.ASSET_ID = @l_ASSET_ID
|
130
|
|
131
|
--TINH THEO SO THANG KHI XUAT
|
132
|
SET @l_AMORT_MONTH = @l_AMORT_MONTH_ASS_USE
|
133
|
|
134
|
--IF @l_ENTRY_BOOKED = 'N'
|
135
|
--BEGIN
|
136
|
-- SELECT '-1' as Result, (SELECT S.ErrorDesc FROM SYS_ERROR S WHERE S.ErrorCode = 'ASS-00018') ErrorDesc
|
137
|
-- ROLLBACK TRANSACTION
|
138
|
-- CLOSE XmlData
|
139
|
-- DEALLOCATE XmlData
|
140
|
-- RETURN '-1'
|
141
|
--END
|
142
|
|
143
|
IF (SELECT AMORT_STATUS FROM ASS_MASTER WHERE ASSET_ID = @l_ASSET_ID) NOT IN ('VNM','KKH')
|
144
|
BEGIN
|
145
|
SELECT '-1' as Result, N'TAI SAN DA DUOC XUAT SU DUNG' ErrorDesc
|
146
|
ROLLBACK TRANSACTION
|
147
|
CLOSE XmlData
|
148
|
DEALLOCATE XmlData
|
149
|
RETURN '-1'
|
150
|
END
|
151
|
|
152
|
UPDATE ASS_USE_MULTI_DT
|
153
|
SET AUTH_STATUS_KT = 'A',
|
154
|
CHECKER_ID_KT = @p_CHECKER_ID,
|
155
|
APPROVE_DT_KT = CONVERT(DATETIME, @p_APPROVE_DT, 103)
|
156
|
WHERE USE_MULTI_ID = @USE_MULTI_ID
|
157
|
--IF @l_AUTH_STATUS = 'A'
|
158
|
--BEGIN
|
159
|
-- SELECT '-1' as Result, (SELECT ErrorDesc from SYS_ERROR WHERE ErrorCode = 'ASS-99998') ErrorDesc
|
160
|
-- ROLLBACK TRANSACTION
|
161
|
-- CLOSE XmlData
|
162
|
-- DEALLOCATE XmlData
|
163
|
-- RETURN '-1'
|
164
|
--END
|
165
|
|
166
|
--Lay thong tin kho mac dinh
|
167
|
--SELECT @l_WAH_ID = P.ParaValue FROM SYS_PARAMETERS P WHERE P.ParaKey='ASSET_WAREHOUSE'
|
168
|
SET @l_WAH_ID = @l_BRANCH_CREATE
|
169
|
--BRN_ID HOI SO
|
170
|
SELECT @l_HO_BRN_ID = BRANCH_ID FROM CM_BRANCH A WHERE A.BRANCH_TYPE = 'HS'
|
171
|
|
172
|
--Lay branch_id cua user duyet
|
173
|
select @l_DO_BRANCH_ID = a.TLSUBBRID from TL_USER a where a.TLNANME = @p_CHECKER_ID
|
174
|
|
175
|
--Lay suppend GL
|
176
|
SELECT @l_SUPPEND_GL = A.ParaValue FROM SYS_PARAMETERS A WHERE A.ParaKey='ASSET_SUPPEND_GL'
|
177
|
|
178
|
DECLARE @l_WAIT_AMORT_NEW VARCHAR(50)
|
179
|
|
180
|
SET @l_PAY_HS_ACCTNO = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='PAY_HS')
|
181
|
SET @_BUY_TS_ACCTNO = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='BUY_TSCD' AND epa.GROUP_ID=(SELECT AG.PARENT_ID FROM ASS_GROUP AG WHERE AG.GROUP_ID = (SELECT AG.PARENT_ID FROM ASS_GROUP AG WHERE AG.GROUP_ID = @l_GROUP_ID)))
|
182
|
IF(@_BUY_TS_ACCTNO IS NULL OR @_BUY_TS_ACCTNO = '') SET @_BUY_TS_ACCTNO = (SELECT ACC_NO FROM ENTRIES_POST_ACCNO WHERE ACC_TYPE ='BUY_TSCD' AND GROUP_ID = @l_GROUP_ID)
|
183
|
SET @l_WAIT_AMORT = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='AMORT_CCLD')
|
184
|
SET @l_TRANFER_ACCTNO =(SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='TRANSFER')
|
185
|
SET @l_WAIT_AMORT_NEW =(SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='ASSET_CCLD_N')
|
186
|
--SET @l_PAY_HS_ACCTNO = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='PAY_HS')
|
187
|
DECLARE @l_ETP_ID VARCHAR(20),@l_D_BRANCH_CODE VARCHAR(25) , @l_C_BRANCH_CODE VARCHAR(25)
|
188
|
|
189
|
--ASSET_GL
|
190
|
SELECT @l_ASSET_GL = ASSET_ACCTNO,
|
191
|
@l_EXP_ACCTNO = EXP_ACCTNO,
|
192
|
@l_AMORT_ACCTNO = AMORT_ACCTNO
|
193
|
FROM ASS_GROUP A
|
194
|
WHERE A.GROUP_ID = @l_GROUP_ID
|
195
|
|
196
|
IF @l_AMORT_MONTH_ASS_USE = 0
|
197
|
BEGIN
|
198
|
SET @l_AMORT_END_DATE = NULL;
|
199
|
SET @l_MONTHLY_AMT = 0;
|
200
|
SET @l_FIRST_AMORT_AMT = 0;
|
201
|
SET @l_AMORT_STATUS = 'KKH'
|
202
|
END
|
203
|
ELSE
|
204
|
BEGIN
|
205
|
--Tinh ngay ket thuc khau hao
|
206
|
--IF @l_AMORT_END_DATE IS NULL OR @l_AMORT_END_DATE = ''
|
207
|
-- SET @l_AMORT_END_DATE = DATEADD(MONTH, @l_AMORT_MONTH_ASS_USE, @l_AMORT_START_DATE) - 1
|
208
|
IF @l_AMORT_END_DATE IS NULL OR @l_AMORT_END_DATE = ''
|
209
|
BEGIN
|
210
|
--DECLARE @l_ENDDATE_TEMP DATETIME = (CONVERT(VARCHAR(10),(YEAR(@l_AMORT_START_DATE))) + '-' + CONVERT(VARCHAR(10),MONTH(@l_AMORT_START_DATE))+'-' + '1')
|
211
|
--SET @l_AMORT_END_DATE = DATEADD(MONTH, @l_AMORT_MONTH, @l_ENDDATE_TEMP ) - 1
|
212
|
SET @l_AMORT_END_DATE = DATEADD(MONTH, @l_AMORT_MONTH, @l_AMORT_START_DATE) - 1
|
213
|
END
|
214
|
|
215
|
--Tinh so tien khau hao thang dau tien va so tien khau hao hang thang
|
216
|
|
217
|
|
218
|
|
219
|
|
220
|
SET @l_MONTHLY_AMT = ROUND(@l_ASS_AMORT_AMT / @l_AMORT_MONTH, 0)
|
221
|
-- IF(@l_TYPE_ID='TSCD')
|
222
|
--BEGIN
|
223
|
DECLARE @AMORT_ON_DAY DECIMAL(18,0)
|
224
|
SET @AMORT_ON_DAY = ROUND(@l_MONTHLY_AMT/dbo.[FN_GetDaysInMonth](@l_AMORT_START_DATE),0)
|
225
|
SET @l_FIRST_AMORT_AMT = ROUND(@AMORT_ON_DAY * (DATEDIFF(day,@l_AMORT_START_DATE, dbo.FN_GetLastDayOfMonth(@l_AMORT_START_DATE)) + 1), 0)
|
226
|
IF(DAY(@l_AMORT_START_DATE)=1)
|
227
|
SET @l_FIRST_AMORT_AMT=@l_MONTHLY_AMT
|
228
|
|
229
|
|
230
|
--END
|
231
|
--ELSE
|
232
|
|
233
|
-- SET @l_FIRST_AMORT_AMT = @l_MONTHLY_AMT--ROUND(@l_MONTHLY_AMT/dbo.[FN_GetDaysInMonth](@l_AMORT_START_DATE) * (DATEDIFF(day,@l_AMORT_START_DATE, dbo.FN_GetLastDayOfMonth(@l_AMORT_START_DATE)) + 1), -3)
|
234
|
--CAP NHAT TRANG THAI KHAU HAO
|
235
|
SET @l_AMORT_STATUS = 'CKH'
|
236
|
END
|
237
|
|
238
|
|
239
|
|
240
|
|
241
|
--IF (@l_ENTRY_BOOKED = 'N') --Neu nhap TS va hach toan tang tai san
|
242
|
IF (@l_ENTRY_BOOKED = 'N') --Neu nhap TS va hach toan tang tai san thieuvq 14/05/2014
|
243
|
BEGIN
|
244
|
--insert dbo.ASS_VALUES
|
245
|
EXEC SYS_CodeMasters_Gen 'ASS_VALUES', @l_VALUE_ID out
|
246
|
IF @l_VALUE_ID='' OR @l_VALUE_ID IS NULL GOTO ABORT
|
247
|
|
248
|
INSERT INTO ASS_VALUES
|
249
|
(
|
250
|
VALUE_ID, ASSET_ID, BRANCH_ID, TRN_DT, CRDR, ASSET_AMT, [DESCRIPTION], TRN_ID, TRN_TYPE,
|
251
|
RECORD_STATUS, AUTH_STATUS, MAKER_ID, CREATE_DT, CHECKER_ID, APPROVE_DT, AMORT_AMT
|
252
|
)
|
253
|
VALUES
|
254
|
(
|
255
|
@l_VALUE_ID, @l_ASSET_ID, @l_BRANCH_CREATE, CONVERT(datetime, @sToday, 103), 'C', @l_BUY_PRICE, N'XUAT SU DUNG '+@l_TYPE_ID, @USE_MULTI_ID, 'ASS_USE',
|
256
|
'1','A',@l_MAKER_ID, CONVERT(datetime, @sToday, 103), @p_CHECKER_ID, CONVERT(datetime, @sToday, 103), @l_AMORT_AMT
|
257
|
)
|
258
|
IF @@Error <> 0 GOTO ABORT
|
259
|
|
260
|
|
261
|
SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_HO_BRN_ID)
|
262
|
SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_CREATE)
|
263
|
IF(@l_BRANCH_ID = @l_BRANCH_CREATE)
|
264
|
SET @l_DEP_CODE =( SELECT cd.DEP_CODE FROM CM_DEPARTMENT cd WHERE cd.DEP_ID=@l_DEPT_ID)
|
265
|
|
266
|
|
267
|
---NEU LA TAI SAN THI GHI TANG - BUT TOAN XUAT O DUOI, CCLD THI 2 BUT TOAN GOM LAI THANH 1
|
268
|
IF @l_TYPE_ID = 'TSCD'
|
269
|
BEGIN
|
270
|
--Insert vao bang dbo.ASS_ENTRIES_POST
|
271
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ASS_USE', @USE_MULTI_ID,@l_DO_BRANCH_ID, @_BUY_TS_ACCTNO, @l_BRANCH_CREATE, @l_ASSET_GL, @l_BRANCH_CREATE, @l_BUY_PRICE,'Y',
|
272
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID,@p_USER_MASTER_ID, --N'XUAT SU DUNG TSCD/CCLD'
|
273
|
@l_ET_ID OUT
|
274
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
275
|
|
276
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
277
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_D_BRANCH_CODE , @l_ASSET_GL, 'VND', 'D', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO);
|
278
|
|
279
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
280
|
|
281
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
282
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_USER_MASTER_ID,@l_D_BRANCH_CODE ,@_BUY_TS_ACCTNO,'VND', 'C', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO);
|
283
|
|
284
|
|
285
|
|
286
|
END
|
287
|
--SET @l_ENTRY_BOOKED = 'Y'
|
288
|
END
|
289
|
---THIEUVQ 101018 NEU XUAT KHAC DON VI THI HACH TOAN
|
290
|
--BEGIN
|
291
|
--Insert vao bang dbo.ASS_ENTRIES_POST
|
292
|
|
293
|
SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_CREATE)
|
294
|
SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID)
|
295
|
SET @l_DEP_CODE = ( SELECT cd.DEP_CODE FROM CM_DEPARTMENT cd WHERE cd.DEP_ID=@l_DEPT_ID)
|
296
|
IF @l_BRANCH_CREATE <> @l_BRANCH_ID
|
297
|
BEGIN
|
298
|
|
299
|
SELECT @BRN_TYPE_TRN = BRANCH_TYPE,@TCCT_TRN_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_CREATE
|
300
|
SELECT @BRN_TYPE_REC = BRANCH_TYPE, @TCCT_REC_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_ID
|
301
|
|
302
|
IF @l_TYPE_ID = 'TSCD'
|
303
|
BEGIN
|
304
|
/*****THIEUVQ 211118 - CHAU XAC NHAN KHONG HACH TOAN QUA TK TRUNG GIAN NUA*******/
|
305
|
----NEU CN XUAT CHO PGD THI KHONG HACH TOAN THONG QUA TK TRUNG GIAN TCCT
|
306
|
--IF @BRN_TYPE_TRN = 'CN' AND @BRN_TYPE_REC = 'PGD'
|
307
|
--BEGIN
|
308
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ASS_USE', @p_USER_MASTER_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_TRANFER_ACCTNO, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y',
|
309
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_USER_MASTER_ID,--N'NHAP MOI TSCD/CCLD'
|
310
|
@l_ET_ID OUT
|
311
|
|
312
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
313
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
314
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_USER_MASTER_ID,@l_C_BRANCH_CODE ,@l_TRANFER_ACCTNO,'VND', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO);
|
315
|
|
316
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
317
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
318
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_C_BRANCH_CODE , @l_ASSET_GL, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO);
|
319
|
|
320
|
--------------------------------
|
321
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ASS_USE', @p_USER_MASTER_ID, @l_DO_BRANCH_ID, @l_TRANFER_ACCTNO, @l_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_ID, @l_BUY_PRICE, 'Y',
|
322
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_USER_MASTER_ID,--N'NHAP MOI TSCD/CCLD'
|
323
|
@l_ET_ID OUT
|
324
|
|
325
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
326
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
327
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_USER_MASTER_ID,@l_D_BRANCH_CODE ,@l_ASSET_GL,'VND', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO);
|
328
|
|
329
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
330
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
331
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_D_BRANCH_CODE , @l_TRANFER_ACCTNO, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO);
|
332
|
|
333
|
|
334
|
END
|
335
|
|
336
|
IF @l_TYPE_ID = 'CCLD'
|
337
|
BEGIN --CCLD
|
338
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ASS_USE', @p_USER_MASTER_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_TRANFER_ACCTNO, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y',
|
339
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_USER_MASTER_ID,--N'NHAP MOI TSCD/CCLD'
|
340
|
@l_ET_ID OUT
|
341
|
|
342
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
343
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
344
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_USER_MASTER_ID,@l_C_BRANCH_CODE ,@l_WAIT_AMORT_NEW,'VND', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO);
|
345
|
|
346
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
347
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
348
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_C_BRANCH_CODE , @l_ASSET_GL, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO);
|
349
|
|
350
|
---------------------------
|
351
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ASS_USE', @p_USER_MASTER_ID, @l_DO_BRANCH_ID, @l_TRANFER_ACCTNO, @l_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_ID, @l_BUY_PRICE, 'Y',
|
352
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_USER_MASTER_ID,--N'NHAP MOI TSCD/CCLD'
|
353
|
@l_ET_ID OUT
|
354
|
|
355
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
356
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
357
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_USER_MASTER_ID,@l_D_BRANCH_CODE ,@l_ASSET_GL,'VND', 'D', @l_BUY_PRICE, 1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO);
|
358
|
|
359
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
360
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO)
|
361
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_D_BRANCH_CODE , @l_WAIT_AMORT_NEW, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO);
|
362
|
|
363
|
--------------------------------------
|
364
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ASS_USE', @p_USER_MASTER_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_WAIT_AMORT, @l_BRANCH_ID, @l_BUY_PRICE, 'Y',
|
365
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_USER_MASTER_ID,--N'NHAP MOI TSCD/CCLD'
|
366
|
@l_ET_ID OUT
|
367
|
--Đồng thời kết chuyển tài khoản CCLĐ đang dùng sang tài khoản chờ phân bổ:
|
368
|
|
369
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
370
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO,TRN_IS_SUM)
|
371
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_D_BRANCH_CODE , @l_WAIT_AMORT, 'VND', 'D', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO,0);
|
372
|
|
373
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
374
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO,TRN_IS_SUM)
|
375
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_D_BRANCH_CODE , @l_ASSET_GL, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO,1);
|
376
|
|
377
|
END
|
378
|
END
|
379
|
ELSE IF @l_TYPE_ID = 'CCLD'
|
380
|
BEGIN
|
381
|
|
382
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ASS_USE', @p_USER_MASTER_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_WAIT_AMORT, @l_BRANCH_ID, @l_BUY_PRICE, 'Y',
|
383
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_USER_MASTER_ID,--N'NHAP MOI TSCD/CCLD'
|
384
|
@l_ET_ID OUT
|
385
|
--Đồng thời kết chuyển tài khoản CCLĐ đang dùng sang tài khoản chờ phân bổ:
|
386
|
|
387
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
388
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO,TRN_IS_SUM)
|
389
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_D_BRANCH_CODE , @l_WAIT_AMORT, 'VND', 'D', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO,0);
|
390
|
|
391
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
392
|
INSERT INTO ASS_ENTRIES_POST_SYNC (ETP_ID, ET_ID, TRN_ID, AC_BRANCH, AC_NO, AC_CCY, DRCR_IND, FCY_AMOUNT, EXCH_RATE, LCY_AMOUNT, RELATED_REFERENCE, TRN_DT, USER_ID, AUTH_ID, DEPT_CD, DESC_TRANS,TRN_NO,TRN_IS_SUM)
|
393
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_USER_MASTER_ID ,@l_D_BRANCH_CODE , @l_ASSET_GL, 'VND', 'C', @l_BUY_PRICE,1, @l_BUY_PRICE, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, @l_DEP_CODE, @l_CORE_NOTE,@l_TRN_NO,1);
|
394
|
|
395
|
END
|
396
|
--END
|
397
|
|
398
|
--TINH TI LE KHAU HAO
|
399
|
IF @l_AMORT_MONTH_ASS_USE IS NOT NULL AND @l_AMORT_MONTH_ASS_USE <> 0
|
400
|
SET @l_AMORT_RATE = ROUND((100*1.0/@l_AMORT_MONTH_ASS_USE)*12, 2)
|
401
|
|
402
|
--Update tai san da xuat su dung
|
403
|
UPDATE ASS_MASTER
|
404
|
SET
|
405
|
AMORT_MONTH = @l_AMORT_MONTH_ASS_USE,
|
406
|
AMORT_START_DATE = @l_AMORT_START_DATE,
|
407
|
AMORT_END_DATE = @l_AMORT_END_DATE,
|
408
|
FIRST_AMORT_AMT = @l_FIRST_AMORT_AMT,
|
409
|
MONTHLY_AMORT_AMT = @l_MONTHLY_AMT,
|
410
|
AMORTIZED_AMT = ISNULL(AMORTIZED_AMT,0),
|
411
|
AMORTIZED_MONTH = 0,
|
412
|
AMORT_STATUS = @l_AMORT_STATUS,--'CKH', --Update trang thai cho khau hao
|
413
|
ENTRY_BOOKED = 'Y',
|
414
|
AMORT_RATE = @l_AMORT_RATE,
|
415
|
USE_DATE_KT = convert(datetime, @sToday, 103) ,
|
416
|
BRANCH_ID = @l_BRANCH_ID,
|
417
|
DEPT_ID = @l_DEPT_ID,
|
418
|
EMP_ID = @l_EMP_ID,
|
419
|
DIVISION_ID = @l_DIVISION_ID
|
420
|
WHERE ASSET_ID = @l_ASSET_ID
|
421
|
IF @@Error <> 0 GOTO ABORT
|
422
|
|
423
|
|
424
|
IF @@Error <> 0 GOTO ABORT
|
425
|
|
426
|
/***THIEUVQ - 6/11/2018 CAP NHAT LAI DON VI KHI XUAT SU DUNG NEU TS LA XE***/
|
427
|
UPDATE CAR_MASTER SET BRANCH_ID = @l_BRANCH_ID WHERE ASSET_ID = @l_ASSET_ID
|
428
|
|
429
|
/***********PHAN BO HOI SO CHIU CHI PHI -- BEGIN 201218**************/
|
430
|
SET @l_DEP_CODE = (SELECT A.DEP_CODE FROM CM_DEPARTMENT A WHERE A.DEP_ID = @l_DEPT_ID)
|
431
|
IF @l_DEP_CODE IS NOT NULL AND @l_DEP_CODE <> ''
|
432
|
BEGIN
|
433
|
IF @l_BRANCH_ID <> @l_HO_BRN_ID AND LEFT(@l_DEP_CODE,3) = '069' ------CN NHAP NHUNG HOI SO CHIU CHI PHI
|
434
|
BEGIN
|
435
|
--LAY PHONG BAN CUA HOI SO TUONG UNG MA PHONG BAN CN
|
436
|
SET @l_DEPT_ID = (SELECT DEP_ID FROM CM_DEPARTMENT A WHERE A.DEP_CODE = @l_DEP_CODE AND BRANCH_ID = @l_HO_BRN_ID)
|
437
|
IF @l_DEPT_ID IS NOT NULL AND @l_DEPT_ID <> ''
|
438
|
BEGIN
|
439
|
-----THEM VAO BANG ASS_COST_ALLOCATION
|
440
|
|
441
|
EXEC SYS_CodeMasters_Gen 'ASS_COST_ALLOCATION', @l_COST_MASTER_ID out
|
442
|
INSERT INTO ASS_COST_ALLOCATION (COS_ID,ASSET_ID,NOTE,TRN_DATE,[RECORD_STATUS],[AUTH_STATUS],[MAKER_ID],[CREATE_DT],EDITOR_ID, EDITOR_DT,[CHECKER_ID],[APPROVE_DT],BRANCH_CREATE,XML_TEMP,SECURE_01,SERCURE_01)
|
443
|
VALUES(@l_COST_MASTER_ID,@l_ASSET_ID,'AUTO',@CUR_DATE,'1' ,'A',@l_MAKER_ID ,
|
444
|
@CUR_DATE ,NULL, NULL,@p_CHECKER_ID,
|
445
|
@CUR_DATE,@l_HO_BRN_ID,NULL,NULL,NULL)
|
446
|
|
447
|
-----THEM BANG CHI TIET ASS_COST_ALLOC_DT 100% SO TIEN PHAN BO THANG
|
448
|
EXEC SYS_CodeMasters_Gen 'ASS_COST_ALLOC_DT', @l_COSTDT_ID out
|
449
|
|
450
|
INSERT INTO ASS_COST_ALLOC_DT
|
451
|
VALUES(@l_COSTDT_ID,@l_COST_MASTER_ID,@l_HO_BRN_ID,@l_DEPT_ID,@l_MONTHLY_AMT,'100',@l_AMORT_MONTH_ASS_USE,@CUR_DATE, @l_AMORT_END_DATE,0,0,@l_EXP_ACCTNO,'','1' ,'A' ,@l_MAKER_ID ,
|
452
|
@CUR_DATE ,NULL, NULL,@p_CHECKER_ID,@CUR_DATE)
|
453
|
END
|
454
|
END
|
455
|
END
|
456
|
/**************************************************** END 201218************/
|
457
|
|
458
|
DECLARE @l_AMORT_RUN_DATE DATETIME = (SELECT TOP 1 TTS.SENT_DATE FROM THREAD_TIME_SEND TTS WHERE TTS.TIME_VALUE = 'KH')
|
459
|
DECLARE @DATE_EXEC DATETIME=CONVERT(DATETIME, @p_APPROVE_DT, 103)
|
460
|
IF( DATEDIFF(MONTH, @l_AMORT_START_DATE, @l_AMORT_RUN_DATE)>0)
|
461
|
BEGIN
|
462
|
EXEC ASS_AMORT_BackDate @p_ASSET_ID = @l_ASSET_ID
|
463
|
, @p_MAKER_ID = @l_MAKER_ID
|
464
|
,@p_CHECKER_ID = @p_CHECKER_ID
|
465
|
,@p_APPROVE_DT = @DATE_EXEC
|
466
|
,@p_TRN_ID = @p_USER_MASTER_ID
|
467
|
,@P_TRN_REF_NO = @l_TRN_NO
|
468
|
,@p_TRN_TYPE = 'ASS_USE'
|
469
|
END
|
470
|
|
471
|
--PHUCVH 27/02/23 UPDATE BUY_PRICE VÀ REMAIN_VALUE CỦA TÀI SẢN TẠI THỜI ĐIỂM XUẤT
|
472
|
SELECT @l_BUY_PRICE_UPD = A.BUY_PRICE, @l_REMAIN_VALUE_UPD = ISNULL((A.AMORT_AMT - A.AMORTIZED_AMT), ISNULL(A.AMORT_AMT,0))
|
473
|
FROM ASS_MASTER A
|
474
|
WHERE A.ASSET_ID = @ASSET_ID
|
475
|
|
476
|
UPDATE ASS_USE_MULTI_DT SET BUY_PRICE = @l_BUY_PRICE, REMAIN_VALUE = @l_REMAIN_VALUE_UPD
|
477
|
WHERE USE_MULTI_ID = @USE_MULTI_ID AND USER_MASTER_ID = @p_USER_MASTER_ID AND ASSET_ID = @ASSET_ID
|
478
|
|
479
|
|
480
|
|
481
|
FETCH NEXT FROM XmlData INTO @USE_MULTI_ID,@ASSET_ID
|
482
|
END
|
483
|
|
484
|
CLOSE XmlData
|
485
|
DEALLOCATE XmlData
|
486
|
-- HUYHT 06/05/2022 THAY ĐỔI TRẠNG THÁI UPDATE CŨ THÀNH UPDATE_HC
|
487
|
UPDATE dbo.PL_PROCESS SET PROCESS_ID = 'UPDATE_KT' WHERE REQ_ID = @p_USER_MASTER_ID AND PROCESS_ID = 'UPDATE'
|
488
|
-- GIANT 21/09/2021
|
489
|
INSERT INTO dbo.PL_PROCESS
|
490
|
(
|
491
|
REQ_ID,
|
492
|
PROCESS_ID,
|
493
|
CHECKER_ID,
|
494
|
APPROVE_DT,
|
495
|
PROCESS_DESC,NOTES
|
496
|
)
|
497
|
VALUES
|
498
|
( @p_USER_MASTER_ID, -- REQ_ID - varchar(15)
|
499
|
'APPROVE', -- PROCESS_ID - varchar(10)
|
500
|
@p_CHECKER_ID, -- CHECKER_ID - varchar(15)
|
501
|
GETDATE(), -- APPROVE_DT - datetime
|
502
|
N'Kiểm soát viên phê duyệt ' ,
|
503
|
N'Kiểm soát viên phê duyệt hoàn tất' -- PROCESS_DESC - nvarchar(1000)
|
504
|
)
|
505
|
|
506
|
--PHUCVH 14/11/22 UPDATE TÀI SẢN ĐÃ XONG GIAO DỊCH
|
507
|
UPDATE ASS_MASTER SET CURRENT_TRANS = NULL, CURRENT_TRANS_TYPE = NULL
|
508
|
WHERE ASSET_ID IN (SELECT B.ASSET_ID FROM ASS_USE_MULTI_DT B WHERE B.USER_MASTER_ID = @p_USER_MASTER_ID)
|
509
|
|
510
|
COMMIT TRANSACTION
|
511
|
SELECT '0' as Result, '' ErrorDesc
|
512
|
RETURN '0'
|
513
|
|
514
|
END TRY
|
515
|
BEGIN CATCH
|
516
|
ROLLBACK TRANSACTION
|
517
|
CLOSE XmlData
|
518
|
DEALLOCATE XmlData
|
519
|
SELECT '-1' as Result, (convert(varchar(100),ERROR_NUMBER()) + ' - ' + ERROR_MESSAGE()) ErrorDesc
|
520
|
RETURN '-1'
|
521
|
END CATCH
|
522
|
|
523
|
ABORT:
|
524
|
BEGIN
|
525
|
ROLLBACK TRANSACTION
|
526
|
CLOSE XmlData
|
527
|
DEALLOCATE XmlData
|
528
|
SELECT '-1' as Result, (convert(varchar(100),ERROR_NUMBER()) + ' - ' + ERROR_MESSAGE() +' - '+ @ERROR) ErrorDesc
|
529
|
RETURN '-1'
|
530
|
End
|
531
|
|
532
|
ABORT2:
|
533
|
BEGIN
|
534
|
ROLLBACK TRANSACTION
|
535
|
CLOSE MYCURSOR
|
536
|
DEALLOCATE MYCURSOR
|
537
|
SELECT '-1' as Result, (convert(varchar(100),ERROR_NUMBER()) + ' - ' + ERROR_MESSAGE() +' - '+ @ERROR) ErrorDesc
|
538
|
RETURN '-1'
|
539
|
End
|