1
|
ALTER PROCEDURE dbo.ASS_ADDNEW_KT_BVB_Appr
|
2
|
@p_ADDNEW_ID VARCHAR(15) = NULL,
|
3
|
@p_CHECKER_ID varchar(100) = NULL,
|
4
|
@p_APPROVE_DT VARCHAR(20) = NULL
|
5
|
AS
|
6
|
DECLARE @l_SUP_ID varchar(15)
|
7
|
DECLARE @l_BUY_DATE datetime = NULL
|
8
|
DECLARE @l_TYPE_ID varchar(15) = NULL
|
9
|
DECLARE @l_GROUP_ID varchar(15) = NULL
|
10
|
DECLARE @l_ASSET_NAME nvarchar(1000) = NULL
|
11
|
DECLARE @l_ASSET_SERIAL_NO nvarchar(max) = NULL
|
12
|
DECLARE @l_ASSET_DESC nvarchar(max) = NULL
|
13
|
DECLARE @l_BRANCH_ID varchar(15) = NULL
|
14
|
DECLARE @l_DEPT_ID varchar(15) = NULL
|
15
|
DECLARE @l_EMP_ID varchar(15) = NULL
|
16
|
DECLARE @l_DIVISION_ID varchar(15) = NULL
|
17
|
DECLARE @l_BUY_PRICE decimal(18) = NULL
|
18
|
DECLARE @l_AMORT_AMT decimal(18) = NULL
|
19
|
DECLARE @l_AMORT_MONTH decimal(18,2) = NULL
|
20
|
DECLARE @l_AMORT_RATE decimal(18,2) = NULL
|
21
|
DECLARE @l_IS_MULTIPLE varchar(1) = NULL
|
22
|
DECLARE @l_QTY int = NULL
|
23
|
DECLARE @l_PO_ID varchar(15) = NULL
|
24
|
DECLARE @l_PD_ID varchar(15) = NULL
|
25
|
DECLARE @l_REF_ASSET_ID varchar(15) = NULL
|
26
|
DECLARE @l_REF_AMORTIZED_AMT decimal(18) = NULL
|
27
|
DECLARE @l_WARRANTY_MONTHS int = NULL
|
28
|
DECLARE @l_NOTES nvarchar(1000) = NULL
|
29
|
DECLARE @l_CORE_NOTE nvarchar(500) = NULL
|
30
|
declare @l_ENTRY_BOOKED varchar(1) = null
|
31
|
DECLARE @l_MAKER_ID varchar(15)
|
32
|
DECLARE @l_AUTH_STATUS_KT varchar(1)
|
33
|
declare @l_DO_BRANCH_ID varchar(15)
|
34
|
DECLARE @l_CONSTRUCT_ID varchar(15) = NULL
|
35
|
DECLARE @l_USE_DATE_KT DATETIME = NULL
|
36
|
DECLARE @l_AMORTIZED_AMT DECIMAL = 0
|
37
|
DECLARE @l_AMORTIZED_MONTH DECIMAL = 0
|
38
|
DECLARE @l_AMORT_STATUS nvarchar(20)
|
39
|
DECLARE @l_AMORT_START_DATE datetime, @l_AMORT_END_DATE datetime
|
40
|
DECLARE @l_FIRST_AMORT_AMT numeric(18,0)
|
41
|
DECLARE @l_MONTHLY_AMT numeric(18,0)
|
42
|
|
43
|
DECLARE @l_HO_BRN_ID varchar(15)
|
44
|
DECLARE @l_WAH_ID varchar(15)
|
45
|
DECLARE @sToday varchar(10) = convert(varchar(10), getdate(), 103)
|
46
|
DECLARE @l_USE_DATE varchar(15)
|
47
|
DECLARE @l_AMORTDT_ID VARCHAR(15) = NULL
|
48
|
DECLARE @l_ASS_TYPE varchar(1) = '1'
|
49
|
declare @l_TRN_REF_NO varchar(20)
|
50
|
DECLARE @l_ET_ID varchar(15)
|
51
|
DECLARE @l_VALUE_ID varchar(15)
|
52
|
DECLARE @l_ASSET_ID varchar(15)
|
53
|
DECLARE @l_ASSET_CODE nvarchar(100)
|
54
|
DECLARE @l_WAHDT_ID varchar(15)
|
55
|
DECLARE @l_LOCHIST_ID varchar(15)
|
56
|
|
57
|
DECLARE @PRICE_NONE_VAT DECIMAL(18,0)
|
58
|
DECLARE @PRICE_VAT DECIMAL(18,0)
|
59
|
|
60
|
DECLARE @l_SUPPEND_GL varchar(50)
|
61
|
DECLARE @l_ASSET_GL varchar(50)
|
62
|
declare @l_ASSET_VALUE decimal(18,0)
|
63
|
DECLARE @l_EXP_ACCTNO varchar(50)--TK CHI PHI
|
64
|
DECLARE @l_AMORT_ACCTNO varchar(50)--TK CHO PHAN BO
|
65
|
DECLARE @l_PAY_HS_ACCTNO VARCHAR(50)
|
66
|
DECLARE @_BUY_TS_ACCTNO VARCHAR(50)
|
67
|
DECLARE @l_WAIT_AMORT VARCHAR(50)
|
68
|
DECLARE @l_TRANFER_ACCTNO VARCHAR(50)
|
69
|
|
70
|
|
71
|
DECLARE @l_DR_BRANCH VARCHAR(15) -- DV GHI NO
|
72
|
DECLARE @ERRORSYS NVARCHAR(15) = ''
|
73
|
DECLARE @ACCOUNT_GL VARCHAR(50), @ACCOUNT_VAT VARCHAR(50)
|
74
|
DECLARE @i INT, @l_USE_DATE_CUR DATETIME = NULL
|
75
|
DECLARE @l_CURR_AMORT_AMT DECIMAL(18,0) = 0
|
76
|
DECLARE @sExecDT DATETIME
|
77
|
DECLARE @l_AMORT_TERM VARCHAR(500), @l_AMORT_DESC VARCHAR(500)
|
78
|
DECLARE @l_OLD_QT INT, @l_CUR_QT INT -- 26/12/2014 THIEUVQ
|
79
|
DECLARE @l_IS_AMORT_WR VARCHAR(1) = '1' --THIEUVQ 27/07/2015 THEM DIEU KIEN KIEM TRA KHI NAO GHI NHAN KHAU HAO
|
80
|
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)
|
81
|
DECLARE @l_VAT DECIMAL(18,0), @ERROR NVARCHAR(500) = ''
|
82
|
|
83
|
|
84
|
DECLARE @l_COST_MASTER_ID VARCHAR(15)
|
85
|
DECLARE @l_COSTDT_ID VARCHAR(15)
|
86
|
|
87
|
DECLARE @CUR_DATE DATETIME = GETDATE()
|
88
|
-- khiemchg bo sung thong tin pyc
|
89
|
DECLARE @REQ_ID VARCHAR(15)
|
90
|
DECLARE @REQ_CODE VARCHAR(50)
|
91
|
DECLARE @ASS_CONTRACT_CODE VARCHAR(50)
|
92
|
DECLARE @PL_CODE VARCHAR(50)
|
93
|
|
94
|
|
95
|
--check ngày khấu hao null
|
96
|
IF (EXISTS(SELECT 1 FROM ASS_ADDNEW WHERE ADDNEW_ID =@p_ADDNEW_ID AND BRANCH_ID IS NOT NULL AND AMORT_START_DATE IS NULL))
|
97
|
BEGIN
|
98
|
SELECT '-1' AS Result, '' ADDNEW_ID, N'Thông tin ngày bắt đầu phân bổ không hợp lệ' ErrorDesc
|
99
|
RETURN '-1'
|
100
|
END
|
101
|
|
102
|
|
103
|
--lay thong tin giao dich
|
104
|
SELECT @l_BUY_DATE = BUY_DATE, @l_TYPE_ID = A.[TYPE_ID], @l_GROUP_ID = A.GROUP_ID, @l_ASSET_NAME = ASSET_NAME,
|
105
|
@l_ASSET_SERIAL_NO = ASSET_SERIAL_NO, @l_ASSET_DESC = ASSET_DESC, @l_CONSTRUCT_ID = CONSTRUCT_ID,
|
106
|
@l_BRANCH_ID = BRANCH_ID, @l_DEPT_ID = DEPT_ID, @l_EMP_ID = EMP_ID, @l_DIVISION_ID = DIVISION_ID,
|
107
|
@l_BUY_PRICE = BUY_PRICE, @l_AMORT_AMT = AMORT_AMT, @l_AMORT_START_DATE = AMORT_START_DATE,
|
108
|
@l_AMORT_MONTH = A.AMORT_MONTH,
|
109
|
--@l_AMORT_MONTH = CASE WHEN G.AMORT_MONTH<>0 THEN G.AMORT_MONTH ELSE A.AMORT_MONTH END,
|
110
|
@l_AMORT_RATE = A.AMORT_RATE, @l_CORE_NOTE = A.CORE_NOTE,
|
111
|
@l_IS_MULTIPLE = IS_MULTIPLE, @l_QTY = QTY, @l_PO_ID = PO_ID,@l_PD_ID=PD_ID, @l_REF_ASSET_ID = REF_ASSET_ID,
|
112
|
@l_REF_AMORTIZED_AMT = REF_AMORTIZED_AMT, @l_WARRANTY_MONTHS = WARRANTY_MONTHS, @l_NOTES = A.NOTES, @l_ENTRY_BOOKED = ENTRY_BOOKED,
|
113
|
@l_MAKER_ID = A.MAKER_ID_KT, @l_AUTH_STATUS_KT = A.AUTH_STATUS_KT, @ACCOUNT_GL = A.ACCOUNT_GL, @PRICE_VAT = A.PRICE_VAT,@l_BRANCH_CREATE= A.BRANCH_CREATE, @l_VAT = A.VAT
|
114
|
,@REQ_CODE = A.REQ_CODE, @REQ_ID = A.REQ_ID, @ASS_CONTRACT_CODE = A.CONTRACT_ID, @PL_CODE = A.PL_CODE
|
115
|
|
116
|
FROM ASS_ADDNEW A
|
117
|
INNER JOIN ASS_GROUP G on G.GROUP_ID = A.GROUP_ID
|
118
|
WHERE ADDNEW_ID = @p_ADDNEW_ID
|
119
|
|
120
|
|
121
|
IF @@Error <> 0 GOTO ABORT
|
122
|
|
123
|
------LUCTV: 21-12-2018KIEM TRA NEU TINH TRANG DANG LA 'R' THI KHONG CHO PHEP DUYET-----
|
124
|
IF(EXISTS(SELECT * FROM ASS_ADDNEW WHERE AUTH_STATUS_KT ='R' AND ADDNEW_ID =@p_ADDNEW_ID))
|
125
|
BEGIN
|
126
|
--ROLLBACK TRANSACTION
|
127
|
SELECT '-1' as Result, '' ADDNEW_ID, N'Thông tin nhập mới 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
|
128
|
RETURN '-1'
|
129
|
END
|
130
|
IF(EXISTS(SELECT * FROM ASS_ADDNEW WHERE AUTH_STATUS_KT ='A' AND ADDNEW_ID =@p_ADDNEW_ID))
|
131
|
BEGIN
|
132
|
--ROLLBACK TRANSACTION
|
133
|
SELECT '-1' as Result, '' ADDNEW_ID, N'Phiếu nhập mới đã được duyệt.' ErrorDesc
|
134
|
RETURN '-1'
|
135
|
END
|
136
|
------LUCTV: 21-12-2021 KIEM TRA NEU GDV CHUA CAP NHAT PHIEU THI KHONG CHO PHEP DUYET-----
|
137
|
IF((SELECT MAKER_ID_KT FROM ASS_ADDNEW WHERE ADDNEW_ID =@p_ADDNEW_ID) IS NULL)
|
138
|
BEGIN
|
139
|
--ROLLBACK TRANSACTION
|
140
|
SELECT '-1' as Result, '' ADDNEW_ID, N'Thông tin nhập mới 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
|
141
|
RETURN '-1'
|
142
|
END
|
143
|
|
144
|
/*******DIEN GIAI PHAN BO CHI PHI ***********/
|
145
|
SET @l_AMORT_DESC = 'PHAN BO CHI PHI CCLD KY ' + convert(varchar(10),month(getdate())) + ' ' + convert(varchar(10),year(getdate()))
|
146
|
|
147
|
/********** chekc vadilation ************/
|
148
|
IF (@l_AUTH_STATUS_KT = 'A')
|
149
|
SET @ERRORSYS = 'ASS-99998'
|
150
|
|
151
|
/*********** Kiem tra gia tri khau hao voi gia tri 30Tr **************/
|
152
|
SELECT @l_ASSET_VALUE = CONVERT(decimal(18,0), ParaValue) FROM SYS_PARAMETERS WHERE ParaKey = 'ASSET_VALUE'
|
153
|
IF (@l_TYPE_ID = 'CCLD' AND @l_AMORT_AMT > @l_ASSET_VALUE)
|
154
|
SET @ERRORSYS = 'ASS-00011'
|
155
|
|
156
|
|
157
|
--IF @l_AMORT_MONTH < 1 AND @l_AMORT_MONTH IS NOT NULL AND @l_AMORT_MONTH <> ''
|
158
|
--BEGIN
|
159
|
-- SET @ERRORSYS = 'ASS-00020'
|
160
|
--END
|
161
|
--IF (@l_ASS_TYPE = 'TSCD' AND @l_AMORT_AMT < @l_ASSET_VALUE)
|
162
|
-- SET @ERRORSYS = 'ASS-00012'
|
163
|
|
164
|
/************ Xuat tai san thi phai hach toan tang tai sai ****************/
|
165
|
--IF (@l_ENTRY_BOOKED = 'N' AND (@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <>''))
|
166
|
-- SET @ERRORSYS = 'ASS-00013'
|
167
|
|
168
|
/*************** Doi voi CCLD phai khau hao het trong nam tai chinh ***********/
|
169
|
|
170
|
--Tinh ngay ket thuc khau hao
|
171
|
SET @l_AMORT_END_DATE = DATEADD(MONTH, @l_AMORT_MONTH, @l_AMORT_START_DATE) - 1
|
172
|
|
173
|
IF @ERRORSYS <> ''
|
174
|
BEGIN
|
175
|
SELECT ErrorCode Result, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
|
176
|
RETURN '0'
|
177
|
END
|
178
|
|
179
|
--Lay thong tin nha cung cap
|
180
|
SELECT @l_SUP_ID = SUP_ID FROM TR_PO_MASTER A WHERE A.PO_ID = @l_PO_ID
|
181
|
|
182
|
--BRN_ID HOI SO
|
183
|
SELECT @l_HO_BRN_ID = BRANCH_ID FROM CM_BRANCH A WHERE A.BRANCH_TYPE = 'HS'
|
184
|
|
185
|
--Lay thong tin kho mac dinh
|
186
|
--SELECT @l_WAH_ID = P.ParaValue FROM SYS_PARAMETERS P WHERE P.ParaKey='ASSET_WAREHOUSE'
|
187
|
SET @l_WAH_ID = @l_BRANCH_CREATE
|
188
|
|
189
|
--Lay suppend GL - THIEUVQ 26092016 - GHI NHAN THEO TAI KHOAN NHAP TU PHAN MEM
|
190
|
--SET @l_SUPPEND_GL = UPPER(@ACCOUNT_GL) + 'XXXX'
|
191
|
--SELECT @l_SUPPEND_GL = A.ParaValue FROM SYS_PARAMETERS A WHERE A.ParaKey='ASSET_SUPPEND_GL'
|
192
|
|
193
|
--SELECT * FROM SYS_PARAMETERS A WHERE A.ParaKey='ASSET_SUPPEND_GL'
|
194
|
----THIEUVQ - 30/05/2014 DOI VOI CCLD THI GHI NHAN TAI DON VI
|
195
|
--SET @l_SUPPEND_GL = SUBSTRING(@l_SUPPEND_GL,1,LEN(@l_SUPPEND_GL) - 4) + 'XXXX'
|
196
|
|
197
|
--TAI KHOAN HACH TOAN VAT
|
198
|
SET @ACCOUNT_VAT = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='ACC_VAT')
|
199
|
|
200
|
--- TAI KHOAN PHAI TRA HS
|
201
|
|
202
|
--NẾU XSD THÌ TĂNG TÀI SẢN
|
203
|
|
204
|
|
205
|
IF(@l_TYPE_ID='TSCD')
|
206
|
BEGIN
|
207
|
IF(@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <> '')
|
208
|
BEGIN
|
209
|
SET @l_ENTRY_BOOKED = 'Y'
|
210
|
END
|
211
|
ELSE IF(@l_BRANCH_ID IS NULL OR @l_BRANCH_ID = '')
|
212
|
BEGIN
|
213
|
SET @l_ENTRY_BOOKED = 'N'
|
214
|
END
|
215
|
SET @l_BUY_PRICE = @l_BUY_PRICE + @PRICE_VAT
|
216
|
SET @l_AMORT_AMT = @l_BUY_PRICE
|
217
|
END
|
218
|
SET @l_TRANFER_ACCTNO =(SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='TRANSFER')
|
219
|
SET @l_PAY_HS_ACCTNO = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='PAY_HS')
|
220
|
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)))
|
221
|
SET @l_WAIT_AMORT = (SELECT epa.ACC_NO FROM ENTRIES_POST_ACCNO epa WHERE epa.ACC_TYPE='AMORT_CCLD')
|
222
|
--ASSET_GL
|
223
|
SELECT @l_ASSET_GL = ASSET_ACCTNO,
|
224
|
@l_EXP_ACCTNO = EXP_ACCTNO,
|
225
|
@l_AMORT_ACCTNO = AMORT_ACCTNO
|
226
|
FROM ASS_GROUP A
|
227
|
WHERE A.GROUP_ID = @l_GROUP_ID
|
228
|
|
229
|
--Lay branch_id cua user duyet
|
230
|
select @l_DO_BRANCH_ID = a.TLSUBBRID from TL_USER a where a.TLNANME = @p_CHECKER_ID
|
231
|
|
232
|
--Trang thai khau hao
|
233
|
IF (@l_BRANCH_ID IS NULL OR @l_BRANCH_ID = '') --Chua xuat su dung
|
234
|
BEGIN
|
235
|
SET @l_AMORT_STATUS = 'VNM'
|
236
|
SET @l_AMORT_START_DATE = NULL
|
237
|
SET @l_AMORT_END_DATE = NULL
|
238
|
SET @l_MONTHLY_AMT = NULL
|
239
|
SET @l_FIRST_AMORT_AMT = NULL
|
240
|
SET @l_USE_DATE = NULL
|
241
|
END
|
242
|
ELSE
|
243
|
IF @l_AMORT_MONTH = 0 OR @l_AMORT_START_DATE IS NULL OR @l_AMORT_START_DATE = ''
|
244
|
BEGIN
|
245
|
SET @l_AMORT_STATUS = 'KKH'
|
246
|
|
247
|
SET @l_AMORT_START_DATE = NULL
|
248
|
SET @l_AMORT_END_DATE = NULL
|
249
|
SET @l_MONTHLY_AMT = 0
|
250
|
SET @l_FIRST_AMORT_AMT = 0
|
251
|
SET @l_USE_DATE = @sToday
|
252
|
SET @l_USE_DATE_KT = CONVERT(DATETIME, @sToday, 103)
|
253
|
END
|
254
|
ELSE
|
255
|
BEGIN
|
256
|
SET @l_AMORT_STATUS = 'CKH'
|
257
|
|
258
|
SET @l_USE_DATE = @sToday
|
259
|
SET @l_USE_DATE_KT = CONVERT(DATETIME, @sToday, 103)
|
260
|
--Ngay bat dau khau hao mac dinh la ngay hien tai
|
261
|
IF(@l_AMORT_START_DATE IS NULL) ---THIEUVQ MOI THEM
|
262
|
BEGIN
|
263
|
SET @l_AMORT_START_DATE = GETDATE()
|
264
|
END
|
265
|
|
266
|
--Tinh so tien khau hao thang dau tien va so tien khau hao hang thang
|
267
|
SET @l_MONTHLY_AMT = ROUND(@l_AMORT_AMT / @l_AMORT_MONTH, 0)
|
268
|
--SET @l_FIRST_AMORT_AMT = @l_MONTHLY_AMT
|
269
|
|
270
|
-- IF(@l_TYPE_ID='TSCD')
|
271
|
--BEGIN
|
272
|
DECLARE @AMORT_ON_DAY DECIMAL(18,0)
|
273
|
SET @AMORT_ON_DAY = ROUND(@l_MONTHLY_AMT/dbo.[FN_GetDaysInMonth](@l_AMORT_START_DATE),0)
|
274
|
SET @l_FIRST_AMORT_AMT = ROUND(@AMORT_ON_DAY * (DATEDIFF(day,@l_AMORT_START_DATE, dbo.FN_GetLastDayOfMonth(@l_AMORT_START_DATE)) + 1), 0)
|
275
|
--END
|
276
|
IF(DAY(@l_AMORT_START_DATE)=1)
|
277
|
SET @l_FIRST_AMORT_AMT=@l_MONTHLY_AMT
|
278
|
-- ELSE
|
279
|
-- SET @l_FIRST_AMORT_AMT = @l_MONTHLY_AMT
|
280
|
|
281
|
END
|
282
|
|
283
|
DECLARE @ASSID_TEMP TABLE([ID] [int] IDENTITY(1,1) NOT NULL, ASSET_ID VARCHAR(15))
|
284
|
--INSERT INTO @ASSID_TEMP SELECT A FROM ASS_MASTER AA WHERE AA.ADD = @p_ADDNEW_ID
|
285
|
INSERT INTO @ASSID_TEMP SELECT AT.ASSET_ID FROM ASS_TRANSACTIONS AT WHERE AT.TRN_ID = @p_ADDNEW_ID AND AT.TRN_TYPE ='ADD_NEW'
|
286
|
|
287
|
BEGIN TRANSACTION
|
288
|
|
289
|
--UPDATE GIAO DICH ADDNEW
|
290
|
--IF(@l_IS_MULTIPLE = '1')
|
291
|
BEGIN--Phân lại seri nếu thêm vào lúc kế toán
|
292
|
DECLARE @l_LSTSERI TABLE (
|
293
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
294
|
[VALUE] [NVARCHAR](MAX) NULL)
|
295
|
DECLARE @l_SERI VARCHAR(MAX) = NULL
|
296
|
INSERT INTO @l_LSTSERI SELECT VALUE FROM WSISPLIT(@l_ASSET_SERIAL_NO,',') --Phân lại seri nếu thêm vào lúc kế toán
|
297
|
END
|
298
|
|
299
|
|
300
|
|
301
|
UPDATE ASS_ADDNEW
|
302
|
SET AUTH_STATUS_KT = 'A',
|
303
|
CHECKER_ID_KT = @p_CHECKER_ID,
|
304
|
APPROVE_DT_KT = CONVERT(DATETIME, @p_APPROVE_DT, 103) ,
|
305
|
|
306
|
POSTED_STATUS = 'Y'
|
307
|
WHERE ADDNEW_ID = @p_ADDNEW_ID
|
308
|
IF @@Error <> 0 GOTO ABORT
|
309
|
|
310
|
|
311
|
|
312
|
|
313
|
DECLARE @l_TRN_NO VARCHAR(15)
|
314
|
EXEC ENTRIES_POST_GEN_NO @p_BRANCH_ID = @l_BRANCH_CREATE
|
315
|
,@p_TRN_DATE = @p_APPROVE_DT
|
316
|
,@p_KeyGen = @l_TRN_NO OUT
|
317
|
--IF (@l_IS_MULTIPLE = '0') --nhap tai san don le
|
318
|
DECLARE @int INT = 1
|
319
|
WHILE (@int <= (SELECT COUNT(*) FROM @ASSID_TEMP))
|
320
|
BEGIN
|
321
|
SET @l_ASSET_ID = (SELECT ASSET_ID FROM @ASSID_TEMP WHERE ID = @int)
|
322
|
|
323
|
SET @l_SERI = (SELECT VALUE FROM @l_LSTSERI WHERE ID = @int)
|
324
|
|
325
|
--Phat sinh ma tai san
|
326
|
EXEC ASS_CODE_Gen_VB @l_ASSET_CODE OUT
|
327
|
IF @l_ASSET_CODE = '' OR @l_ASSET_CODE IS NULL GOTO ABORT
|
328
|
|
329
|
--Insert bang ASS_MASTER
|
330
|
UPDATE ASS_MASTER SET
|
331
|
[TYPE_ID] = @l_TYPE_ID,
|
332
|
[GROUP_ID] = @l_GROUP_ID,
|
333
|
[ASSET_CODE] = @l_ASSET_CODE,
|
334
|
[ASSET_NAME] = @l_ASSET_NAME,
|
335
|
[ASSET_SERIAL_NO] = @l_SERI,
|
336
|
[ASSET_DESC] = @l_ASSET_DESC,
|
337
|
[SUP_ID] = @l_SUP_ID,
|
338
|
[BUY_PRICE] = @l_BUY_PRICE,
|
339
|
[AMORT_AMT] = @l_AMORT_AMT,
|
340
|
[ASS_TYPE] = @l_ASS_TYPE,
|
341
|
-- [BRANCH_ID] = @l_BRANCH_ID,
|
342
|
-- [DEPT_ID] = @l_DEPT_ID,
|
343
|
-- [EMP_ID] = @l_EMP_ID,
|
344
|
-- [DIVISION_ID] = @l_DIVISION_ID,
|
345
|
[BUY_DATE] = CONVERT(DATETIME, @l_BUY_DATE, 103),
|
346
|
[USE_DATE] = CONVERT(DATETIME, @l_USE_DATE, 103),
|
347
|
[SPECIAL_ASS] = '0',
|
348
|
[AMORT_MONTH] = @l_AMORT_MONTH,
|
349
|
[AMORT_RATE] = @l_AMORT_RATE,
|
350
|
[AMORT_START_DATE] = @l_AMORT_START_DATE,
|
351
|
[AMORT_END_DATE] = @l_AMORT_END_DATE,
|
352
|
[FIRST_AMORT_AMT] = @l_FIRST_AMORT_AMT,
|
353
|
[MONTHLY_AMORT_AMT] = @l_MONTHLY_AMT,
|
354
|
[AMORTIZED_MONTH] = 0,
|
355
|
[AMORTIZED_AMT] = 0,
|
356
|
[PO_ID] = @l_PO_ID,
|
357
|
[PD_ID] = @l_PD_ID,
|
358
|
[WAREHOUSE_ID] = NULL,
|
359
|
[LOCATION] = NULL,
|
360
|
[REF_ASSET_ID] = @l_REF_ASSET_ID,
|
361
|
[REF_AMORTIZED_AMT] = @l_REF_AMORTIZED_AMT,
|
362
|
[WARRANTY_MONTHS] = @l_WARRANTY_MONTHS,
|
363
|
[NOTES] = @l_NOTES,
|
364
|
[AMORT_STATUS] = @l_AMORT_STATUS,
|
365
|
[ASS_STATUS] = '1',
|
366
|
[ASS_STATUS_DESC] = N'',
|
367
|
[ENTRY_BOOKED] = @l_ENTRY_BOOKED,
|
368
|
[RECORD_STATUS] = '1',
|
369
|
[AUTH_STATUS] = 'A',
|
370
|
[MAKER_ID] = @l_MAKER_ID,
|
371
|
[CREATE_DT] = CONVERT(DATETIME, @sToday, 103),
|
372
|
[CHECKER_ID] = @p_CHECKER_ID,
|
373
|
[APPROVE_DT] = CONVERT(DATETIME, @p_APPROVE_DT, 103),
|
374
|
[CONSTRUCT_ID] = @l_CONSTRUCT_ID,
|
375
|
[USE_STATUS] = 'BT',
|
376
|
[BRANCH_CREATE] = @l_BRANCH_CREATE,
|
377
|
[ACCOUNT_GL] = @ACCOUNT_GL,
|
378
|
VAT = @l_VAT,
|
379
|
PRICE_VAT = @PRICE_VAT,
|
380
|
[BUY_DATE_KT] = CONVERT(DATETIME, @sToday, 103),
|
381
|
[USE_DATE_KT] = @l_USE_DATE_KT,
|
382
|
ASS_CODE_TMP = @l_ASSET_CODE,
|
383
|
ASS_CONTRACT_CODE = @ASS_CONTRACT_CODE,
|
384
|
PL = @PL_CODE
|
385
|
WHERE ASSET_ID = @l_ASSET_ID
|
386
|
|
387
|
SET @l_ASSET_CODE= (SELECT am.ASSET_CODE FROM ASS_MASTER am WHERE am.ASSET_ID=@l_ASSET_ID)
|
388
|
IF @@Error <> 0 GOTO ABORT
|
389
|
|
390
|
|
391
|
DECLARE @l_ETP_ID VARCHAR(20),@l_D_BRANCH_CODE VARCHAR(25) , @l_C_BRANCH_CODE VARCHAR(25),
|
392
|
@l_DEP_CODE VARCHAR(20)
|
393
|
|
394
|
|
395
|
|
396
|
SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_CREATE)
|
397
|
SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_CREATE)
|
398
|
--IF (@l_ENTRY_BOOKED = 'Y') --Neu nhap TS va hach toan tang tai san
|
399
|
IF (@l_ENTRY_BOOKED = 'Y' ) --Neu nhap TS va hach toan tang tai san thieuvq 15/04/2014
|
400
|
BEGIN
|
401
|
--insert dbo.ASS_VALUES
|
402
|
EXEC SYS_CodeMasters_Gen 'ASS_VALUES', @l_VALUE_ID out
|
403
|
IF @l_VALUE_ID='' OR @l_VALUE_ID IS NULL GOTO ABORT
|
404
|
|
405
|
INSERT INTO ASS_VALUES
|
406
|
(
|
407
|
VALUE_ID, ASSET_ID, BRANCH_ID, TRN_DT, CRDR, ASSET_AMT, [DESCRIPTION], TRN_ID, TRN_TYPE,
|
408
|
RECORD_STATUS, AUTH_STATUS, MAKER_ID, CREATE_DT, CHECKER_ID, APPROVE_DT, AMORT_AMT
|
409
|
)
|
410
|
VALUES
|
411
|
(
|
412
|
@l_VALUE_ID, @l_ASSET_ID, @l_BRANCH_CREATE, CONVERT(datetime, @sToday, 103), 'C', @l_BUY_PRICE, N'NHAP MOI TSCD/CCLD', @p_ADDNEW_ID, 'ASS_ADDNEW',
|
413
|
'1','A',@l_MAKER_ID, CONVERT(datetime, @sToday, 103), @p_CHECKER_ID, CONVERT(datetime, @sToday, 103), @l_AMORT_AMT
|
414
|
)
|
415
|
IF @@Error <> 0 GOTO ABORT
|
416
|
|
417
|
|
418
|
|
419
|
|
420
|
IF(@l_TYPE_ID='TSCD')
|
421
|
BEGIN
|
422
|
|
423
|
IF(@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <>'')
|
424
|
BEGIN
|
425
|
SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID)
|
426
|
SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID)
|
427
|
SET @l_DEP_CODE = ( SELECT cd.DEP_CODE FROM CM_DEPARTMENT cd WHERE cd.DEP_ID=@l_DEPT_ID)
|
428
|
END
|
429
|
|
430
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_PAY_HS_ACCTNO, @l_BRANCH_CREATE, @l_ASSET_GL, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y',
|
431
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID, @l_ET_ID OUT
|
432
|
|
433
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
434
|
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)
|
435
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_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);
|
436
|
|
437
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
438
|
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)
|
439
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_C_BRANCH_CODE , @l_PAY_HS_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);
|
440
|
|
441
|
END
|
442
|
ELSE IF (@l_TYPE_ID='CCLD')
|
443
|
BEGIN
|
444
|
|
445
|
IF(@l_BRANCH_ID IS NOT NULL OR @l_BRANCH_ID <>'')
|
446
|
BEGIN
|
447
|
SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID)
|
448
|
SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID)
|
449
|
SET @l_DEP_CODE = ( SELECT cd.DEP_CODE FROM CM_DEPARTMENT cd WHERE cd.DEP_ID=@l_DEPT_ID)
|
450
|
END
|
451
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_PAY_HS_ACCTNO, @l_BRANCH_CREATE, @l_ASSET_GL, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y',
|
452
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID, @l_ET_ID OUT
|
453
|
--- Hạch toán nhập CCLĐ:
|
454
|
|
455
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
456
|
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)
|
457
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_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);
|
458
|
|
459
|
|
460
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
461
|
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)
|
462
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_C_BRANCH_CODE , @l_PAY_HS_ACCTNO, 'VND', 'C', @l_BUY_PRICE + @PRICE_VAT,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);
|
463
|
|
464
|
IF(@PRICE_VAT >0)
|
465
|
BEGIN
|
466
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID OUT
|
467
|
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)
|
468
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_D_BRANCH_CODE ,@ACCOUNT_VAT,'VND', 'D', @PRICE_VAT, 1, @PRICE_VAT, @l_ASSET_CODE,CONVERT(DATETIME, @p_APPROVE_DT, 103), @l_MAKER_ID, @p_CHECKER_ID, '', @l_CORE_NOTE,@l_TRN_NO);
|
469
|
END
|
470
|
|
471
|
-- EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_WAIT_AMORT, @l_BRANCH_ID, @l_BUY_PRICE, 'Y',
|
472
|
-- @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD'
|
473
|
-- @l_ET_ID OUT
|
474
|
-- --Đồng thời kết chuyển tài khoản CCLĐ đang dùng sang tài khoản chờ phân bổ:
|
475
|
-- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
476
|
--
|
477
|
-- 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)
|
478
|
-- VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_ASSET_GL, 'LCY', '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);
|
479
|
-- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
480
|
--
|
481
|
-- 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)
|
482
|
-- VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_WAIT_AMORT, 'LCY', '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);
|
483
|
|
484
|
|
485
|
|
486
|
END
|
487
|
|
488
|
|
489
|
|
490
|
END
|
491
|
ELSE IF @l_TYPE_ID = 'TSCD'
|
492
|
BEGIN
|
493
|
--Insert vao bang dbo.ASS_ENTRIES_POST
|
494
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_PAY_HS_ACCTNO, @l_BRANCH_CREATE, @_BUY_TS_ACCTNO, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y',
|
495
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD'
|
496
|
@l_ET_ID OUT
|
497
|
|
498
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
499
|
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)
|
500
|
VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_D_BRANCH_CODE ,@_BUY_TS_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);
|
501
|
|
502
|
|
503
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
504
|
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)
|
505
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_C_BRANCH_CODE , @l_PAY_HS_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);
|
506
|
|
507
|
|
508
|
END
|
509
|
|
510
|
|
511
|
--Insert nhap kho
|
512
|
EXEC SYS_CodeMasters_Gen 'ASS_WAREHOUSE_DT', @l_WAHDT_ID out
|
513
|
IF @l_WAHDT_ID='' OR @l_WAHDT_ID IS NULL GOTO ABORT
|
514
|
|
515
|
INSERT INTO ASS_WAREHOUSE_DT(WAHDT_ID, WAH_ID, ASSET_ID, IN_DATE, OUT_DATE, STATUS)
|
516
|
VALUES(@l_WAHDT_ID, @l_WAH_ID, @l_ASSET_ID, GETDATE(), NULL, 'I')
|
517
|
IF @@Error <> 0 GOTO ABORT
|
518
|
|
519
|
IF @l_BRANCH_ID IS NOT NULL AND @l_BRANCH_ID <> ''
|
520
|
BEGIN
|
521
|
PRINT 'A'
|
522
|
UPDATE ASS_WAREHOUSE_DT
|
523
|
SET OUT_DATE = GETDATE(),
|
524
|
STATUS = 'O'
|
525
|
WHERE WAHDT_ID = @l_WAHDT_ID
|
526
|
IF @@Error <> 0 GOTO ABORT
|
527
|
|
528
|
|
529
|
IF @l_BRANCH_CREATE <> @l_BRANCH_ID
|
530
|
BEGIN
|
531
|
|
532
|
|
533
|
SET @l_C_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_CREATE)
|
534
|
SET @l_D_BRANCH_CODE = (SELECT cb.BRANCH_CODE FROM CM_BRANCH cb WHERE cb.BRANCH_ID=@l_BRANCH_ID)
|
535
|
SET @l_DEP_CODE = ( SELECT cd.DEP_CODE FROM CM_DEPARTMENT cd WHERE cd.DEP_ID=@l_DEPT_ID)
|
536
|
|
537
|
IF @l_TYPE_ID = 'TSCD'
|
538
|
BEGIN
|
539
|
SELECT @BRN_TYPE_TRN = BRANCH_TYPE,@TCCT_TRN_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_CREATE
|
540
|
SELECT @BRN_TYPE_REC = BRANCH_TYPE, @TCCT_REC_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_ID
|
541
|
|
542
|
/*****THIEUVQ 211118 - CHAU XAC NHAN KHONG HACH TOAN QUA TK TRUNG GIAN NUA*******/
|
543
|
----NEU CN XUAT CHO PGD THI KHONG HACH TOAN THONG QUA TK TRUNG GIAN TCCT
|
544
|
--IF @BRN_TYPE_TRN = 'CN' AND @BRN_TYPE_REC = 'PGD'
|
545
|
--BEGIN
|
546
|
-- EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_USE', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_TRANFER_ACCTNO, @l_BRANCH_CREATE, @l_BUY_PRICE, 'Y',
|
547
|
-- @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD'
|
548
|
-- @l_ET_ID OUT
|
549
|
--
|
550
|
-- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
551
|
--
|
552
|
-- 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)
|
553
|
-- VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_C_BRANCH_CODE , @l_ASSET_GL, 'LCY', '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);
|
554
|
--
|
555
|
-- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
556
|
--
|
557
|
-- 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)
|
558
|
-- VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_C_BRANCH_CODE ,@l_TRANFER_ACCTNO,'LCY', '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);
|
559
|
--
|
560
|
-- EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_USE', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_TRANFER_ACCTNO, @l_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_ID, @l_BUY_PRICE, 'Y',
|
561
|
-- @sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD'
|
562
|
-- @l_ET_ID OUT
|
563
|
--
|
564
|
-- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
565
|
--
|
566
|
-- 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)
|
567
|
-- VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_ID ,@l_D_BRANCH_CODE , @l_TRANFER_ACCTNO, 'LCY', '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);
|
568
|
--
|
569
|
-- EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
570
|
--
|
571
|
-- 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)
|
572
|
-- VALUES (@l_ETP_ID, @l_ET_ID, @p_ADDNEW_ID,@l_D_BRANCH_CODE ,@l_ASSET_GL,'LCY', '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);
|
573
|
--
|
574
|
|
575
|
|
576
|
|
577
|
|
578
|
|
579
|
END
|
580
|
ELSE ---CCLD
|
581
|
BEGIN
|
582
|
SELECT @BRN_TYPE_TRN = BRANCH_TYPE,@TCCT_TRN_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_CREATE
|
583
|
SELECT @BRN_TYPE_REC = BRANCH_TYPE, @TCCT_REC_ACCTNO = DAO_CODE FROM CM_BRANCH WHERE BRANCH_ID = @l_BRANCH_ID
|
584
|
|
585
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_WAIT_AMORT, @l_BRANCH_ID, @l_BUY_PRICE, 'Y',
|
586
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD'
|
587
|
@l_ET_ID OUT
|
588
|
--Đồng thời kết chuyển tài khoản CCLĐ đang dùng sang tài khoản chờ phân bổ:
|
589
|
|
590
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
591
|
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)
|
592
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_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,1);
|
593
|
|
594
|
|
595
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
596
|
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_IS_SUM,TRN_NO)
|
597
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_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,1,@l_TRN_NO);
|
598
|
|
599
|
END
|
600
|
END
|
601
|
ELSE IF (@l_TYPE_ID = 'CCLD')
|
602
|
BEGIN
|
603
|
EXEC [dbo].[ASS_ENTRIES_POST_Insert] @l_TYPE_ID, @l_ASSET_ID, 'ADD_NEW', @p_ADDNEW_ID, @l_DO_BRANCH_ID, @l_ASSET_GL, @l_BRANCH_CREATE, @l_WAIT_AMORT, @l_BRANCH_ID, @l_BUY_PRICE, 'Y',
|
604
|
@sToday, @l_CORE_NOTE, @l_MAKER_ID, @p_CHECKER_ID, @p_ADDNEW_ID,--N'NHAP MOI TSCD/CCLD'
|
605
|
@l_ET_ID OUT
|
606
|
--Đồng thời kết chuyển tài khoản CCLĐ đang dùng sang tài khoản chờ phân bổ:
|
607
|
|
608
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
609
|
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)
|
610
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_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,1);
|
611
|
|
612
|
EXEC SYS_CodeMasters_Gen 'ASS_ENTRIES_POST_SYNC', @l_ETP_ID out
|
613
|
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_IS_SUM,TRN_NO)
|
614
|
VALUES (@l_ETP_ID, @l_ET_ID,@p_ADDNEW_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,1,@l_TRN_NO);
|
615
|
|
616
|
|
617
|
END
|
618
|
|
619
|
|
620
|
---Phong added 17/6/2018: xu ly khao hao ngay qua khu :: ends
|
621
|
/***********PHAN BO HOI SO CHIU CHI PHI -- BEGIN 201218**************/
|
622
|
-- SET @l_DEP_CODE = (SELECT A.DEP_CODE FROM CM_DEPARTMENT A WHERE A.DEP_ID = @l_DEPT_ID)
|
623
|
-- IF @l_DEP_CODE IS NOT NULL AND @l_DEP_CODE <> ''
|
624
|
-- BEGIN
|
625
|
-- IF @l_BRANCH_ID <> @l_HO_BRN_ID AND LEFT(@l_DEP_CODE,3) = '069' ------CN NHAP NHUNG HOI SO CHIU CHI PHI
|
626
|
-- BEGIN
|
627
|
-- --LAY PHONG BAN CUA HOI SO TUONG UNG MA PHONG BAN CN
|
628
|
-- 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)
|
629
|
-- IF @l_DEPT_ID IS NOT NULL AND @l_DEPT_ID <> ''
|
630
|
-- BEGIN
|
631
|
-- -----THEM VAO BANG ASS_COST_ALLOCATION
|
632
|
--
|
633
|
-- EXEC SYS_CodeMasters_Gen 'ASS_COST_ALLOCATION', @l_COST_MASTER_ID out
|
634
|
-- 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)
|
635
|
-- VALUES(@l_COST_MASTER_ID,@l_ASSET_ID,'AUTO',@CUR_DATE,'1' ,'A',@l_MAKER_ID ,
|
636
|
-- @CUR_DATE ,NULL, NULL,@p_CHECKER_ID,
|
637
|
-- @CUR_DATE,@l_HO_BRN_ID,NULL,NULL,NULL)
|
638
|
--
|
639
|
-- -----THEM BANG CHI TIET ASS_COST_ALLOC_DT 100% SO TIEN PHAN BO THANG
|
640
|
-- EXEC SYS_CodeMasters_Gen 'ASS_COST_ALLOC_DT', @l_COSTDT_ID out
|
641
|
--
|
642
|
-- INSERT INTO ASS_COST_ALLOC_DT
|
643
|
-- VALUES(@l_COSTDT_ID,@l_COST_MASTER_ID,@l_HO_BRN_ID,@l_DEPT_ID,@l_MONTHLY_AMT,'100',@l_AMORT_MONTH,@CUR_DATE, @l_AMORT_END_DATE,0,0,@l_EXP_ACCTNO,'','1' ,'A' ,@l_MAKER_ID ,
|
644
|
-- @CUR_DATE ,NULL, NULL,@p_CHECKER_ID,@CUR_DATE)
|
645
|
-- END
|
646
|
-- END
|
647
|
-- END
|
648
|
-- /**************************************************** END 201218************/
|
649
|
DECLARE @l_AMORT_RUN_DATE DATETIME = (SELECT TOP 1 TTS.SENT_DATE FROM THREAD_TIME_SEND TTS WHERE TTS.TIME_VALUE = 'KH')
|
650
|
DECLARE @DATE_EXEC DATETIME=CONVERT(DATETIME, @p_APPROVE_DT, 103)
|
651
|
IF( DATEDIFF(MONTH, @l_AMORT_START_DATE, @l_AMORT_RUN_DATE)>0)
|
652
|
BEGIN
|
653
|
EXEC ASS_AMORT_BackDate @p_ASSET_ID = @l_ASSET_ID
|
654
|
,@p_MAKER_ID = @l_MAKER_ID
|
655
|
,@p_CHECKER_ID = @p_CHECKER_ID
|
656
|
,@p_APPROVE_DT = @DATE_EXEC
|
657
|
,@p_TRN_ID = @p_ADDNEW_ID
|
658
|
,@P_TRN_REF_NO = @l_TRN_NO
|
659
|
,@p_TRN_TYPE = 'ADD_NEW'
|
660
|
END
|
661
|
|
662
|
|
663
|
END
|
664
|
--Luctv:End
|
665
|
|
666
|
--CAP NHAT LOCATION_HIST - THIEUVQ 11112015
|
667
|
UPDATE ASS_LOCATION_HIST SET BRANCH_ID = @l_BRANCH_ID, DEPT_ID = @l_DEPT_ID WHERE ASSET_ID = @l_ASSET_ID
|
668
|
IF @@Error <> 0 GOTO ABORT
|
669
|
--END
|
670
|
SET @int = @int + 1
|
671
|
END
|
672
|
-- KHIEMCHG - Update PYC hoàn tất khi đã đủ số lượng PYC
|
673
|
IF(NOT EXISTS(SELECT TOP 1 A.REQDT_ID
|
674
|
FROM TR_REQUEST_SHOP_DOC_DT A
|
675
|
WHERE A.REQ_DOC_ID = @REQ_ID
|
676
|
AND ( A.QTY_ETM <> A.ALLOCATED OR (A.ALLOCATED IS NULL OR A.ALLOCATED = '' OR A.ALLOCATED = 0))
|
677
|
AND ((A.REQ_DT_TYPE = 'XKSD' AND A.TYPE_XL = 'CPDC')
|
678
|
OR (A.REQ_DT_TYPE = 'XKSD' AND A.TYPE_XL = 'CPTK')
|
679
|
OR (A.REQ_DT_TYPE = 'BUYNEW'))
|
680
|
))
|
681
|
BEGIN
|
682
|
UPDATE TR_REQUEST_SHOP_DOC SET IS_DONE = '1', STATUS = 'DONE' WHERE REQ_ID = @REQ_ID
|
683
|
|
684
|
UPDATE PL_REQUEST_PROCESS SET STATUS = 'P' WHERE PROCESS_ID = 'APPROVE' AND REQ_ID = @REQ_ID
|
685
|
UPDATE PL_REQUEST_PROCESS SET STATUS = 'C', RECEPTION_DT = CONVERT(datetime, GETDATE(), 103), APPROVE_DT = CONVERT(datetime, GETDATE(), 103) WHERE PROCESS_ID = 'DONE' AND REQ_ID = @REQ_ID
|
686
|
|
687
|
END
|
688
|
|
689
|
-- HUYHT 06/05/2022 THAY ĐỔI TRẠNG THÁI UPDATE CŨ THÀNH UPDATE_HC
|
690
|
UPDATE dbo.PL_PROCESS SET PROCESS_ID = 'UPDATE_KT' WHERE REQ_ID = @p_ADDNEW_ID AND PROCESS_ID = 'UPDATE'
|
691
|
-- GIANT Insert to table PL_PROCESS
|
692
|
INSERT INTO dbo.PL_PROCESS
|
693
|
(
|
694
|
REQ_ID,
|
695
|
PROCESS_ID,
|
696
|
CHECKER_ID,
|
697
|
APPROVE_DT,
|
698
|
PROCESS_DESC,
|
699
|
NOTES
|
700
|
)
|
701
|
VALUES
|
702
|
( @p_ADDNEW_ID,
|
703
|
'APPROVE',
|
704
|
@p_CHECKER_ID,
|
705
|
GETDATE(),
|
706
|
N'Kiểm soát viên phê duyệt hoàn tất' ,
|
707
|
N'Kiểm soát viên phê duyệt'
|
708
|
)
|
709
|
|
710
|
|
711
|
|
712
|
COMMIT TRANSACTION
|
713
|
|
714
|
SELECT '0' as Result, @p_ADDNEW_ID ADDNEW_ID, '' ErrorDesc
|
715
|
RETURN '0'
|
716
|
ABORT:
|
717
|
BEGIN
|
718
|
ROLLBACK TRANSACTION
|
719
|
--CLOSE pCur
|
720
|
--DEALLOCATE pCur
|
721
|
SELECT '-1' as Result, '' ADDNEW_ID, @ERROR ErrorDesc
|
722
|
RETURN '-1'
|
723
|
End
|