Project

General

Profile

ADDNEW KT UPD.txt

Luc Tran Van, 04/06/2023 09:44 AM

 
1
ALTER PROCEDURE dbo.ASS_ADDNEW_KT_BVB_Upd
2
	@p_ADDNEW_ID		varchar(15)  = NULL,	
3
	@p_AMORT_START_DATE	varchar(30)	= NULL,------------THEM NGAY BD KHAU HAO	
4
	@p_AMORT_END_DATE	varchar(30)	= NULL,------------THEM NGAY BD KHAU HAO	
5
	@p_AMORT_MONTH		DECIMAL(18,2) = NULL,
6
	@p_AMORT_RATE		decimal(18,2)  = NULL,	
7
	@p_CORE_NOTE		nvarchar(500) = NULL,
8
	@p_ENTRY_BOOKED		varchar(1)	= NULL, --Them de kiem tra co hach toan tai san khi nhap ts khong (Y/N)?			
9
	@p_MAKER_ID			varchar(15)  = NULL,
10
	@p_MAKER_ID_KT			varchar(15)  = NULL,
11
	@p_CREATE_DT		VARCHAR(30) = NULL,
12
	@p_CHECKER_ID		varchar(15)  = NULL,
13
	@p_APPROVE_DT		VARCHAR(30) = NULL,	
14
	@p_POSTED_STATUS	VARCHAR(1) = NULL,
15
	@p_BRANCH_CREATE	VARCHAR(15) = NULL,
16
	--
17
	@p_BUY_DATE			VARCHAR(30) = NULL,
18
	@p_TYPE_ID			varchar(15)  = NULL,
19
	@p_GROUP_ID			varchar(15)  = NULL,
20
	@p_ASSET_NAME		nvarchar(1000)  = NULL,
21
	@p_ASSET_SERIAL_NO	nvarchar(MAX)  = NULL,
22
	@p_ASSET_DESC		nvarchar(max) = NULL,
23
	@p_BRANCH_ID		varchar(15)  = NULL,
24
	@p_DEPT_ID			varchar(15)  = NULL,---------Them ma phong ban
25
	@p_EMP_ID			varchar(15)  = NULL,-----------Them Nguoi su dung
26
	@p_DIVISION_ID		varchar(15)  = NULL,----------Them co so	
27
	@p_BUY_PRICE		decimal(18)  = NULL,		
28
	@p_IS_MULTIPLE		varchar(1)  = NULL,
29
	@p_QTY				int = NULL,
30
	@p_PO_ID			varchar(15)  = NULL,
31
	@p_PD_ID			varchar(15)  = NULL, --Them de luu chi tiet PO
32
	@p_REF_ASSET_ID		varchar(15)  = NULL,
33
	@p_REF_AMORTIZED_AMT	decimal(18)  = NULL,
34
	@p_WARRANTY_MONTHS	int = NULL,
35
	@p_NOTES			nvarchar(1000)  = NULL,		
36
	@p_ADDNEW_DT		XML = NULL,
37
	@p_RECORD_STATUS	varchar(1)  = NULL,
38
	@p_AUTH_STATUS		varchar(1)  = NULL,	
39
	@p_CONSTRUCT_ID		VARCHAR(15) = NULL,
40
	@p_ACCOUNT_GL VARCHAR(50),
41
	@VAT DECIMAL(18,2),
42
	@PRICE_VAT DECIMAL(18,2),
43
	--/************ LUCTV ***************/
44
	@p_ASS_PO_ID VARCHAR(15)= NULL,
45
	--@l_ADDNEW_ID VARCHAR(15) = NULL,
46
	@p_PO_CODE VARCHAR(500) = NULL,
47
	@p_PR_CODE VARCHAR(500) = NULL,
48
	@p_INVOICE_NO VARCHAR(500) = NULL,
49
	@p_INVOICE_DT VARCHAR(20) = NULL
50
     ,@p_WIN          VARCHAR(1) NULL
51
     ,@p_OFFICE          VARCHAR(1) NULL
52
AS
53
--IF(@p_PR_CODE IS NULL OR @p_PR_CODE ='')
54
--BEGIN
55
--		SELECT '-1' Result, ''  ADDNEW_ID, N'Số PR không được để trống' ErrorDesc
56
--		RETURN '-1'
57
--END
58
IF(@p_INVOICE_NO IS NULL OR @p_INVOICE_NO ='')
59
BEGIN
60
		SELECT '-1' Result, @p_ADDNEW_ID  ADDNEW_ID, N'Số hóa đơn không được để trống' ErrorDesc
61
		RETURN '-1'
62
END
63
IF(@p_INVOICE_DT IS NULL OR @p_INVOICE_DT ='')
64
BEGIN
65
		SELECT '-1' Result, @p_ADDNEW_ID  ADDNEW_ID, N'Ngày hóa đơn không được để trống' ErrorDesc
66
		RETURN '-1'
67
END	
68
-- GIANT 04/11/2021 @p_TYPE_ID
69
--IF((@p_BUY_PRICE IS NULL OR @p_BUY_PRICE ='') AND @p_BUY_PRICE >= 30000000 AND @p_TYPE_ID = 'TSCD')
70
--BEGIN
71
--		SELECT '-1' Result, ''  ADDNEW_ID, N'Giá trị tài sản phải lớn hơn hoặc bằng 30,000,000 khi thuộc nhóm Tài sản cố định' ErrorDesc
72
--		RETURN '-1'
73
--END		
74
--IF((@p_BUY_PRICE IS NULL OR @p_BUY_PRICE ='') AND @p_BUY_PRICE < 30000000 AND @p_TYPE_ID = 'CCLD')
75
--BEGIN
76
--		SELECT '-1' Result, ''  ADDNEW_ID, N'Giá trị tài sản phải bé hơn 30,000,000 khi thuộc nhóm Công cụ lao động' ErrorDesc
77
--		RETURN '-1'
78
--END		
79

    
80
--IF((@p_AMORT_MONTH IS NULL OR @p_AMORT_MONTH ='') AND EXISTS(SELECT * FROM ASS_GROUP WHERE GROUP_ID = @p_GROUP_ID AND @p_AMORT_MONTH >= AMORT_MONTH_MIN AND @p_AMORT_MONTH <= AMORT_MONTH_MAX))
81
--BEGIN
82
--		SELECT '-1' Result, ''  ADDNEW_ID, N'Số tháng khấu hao phải nằm trong (' + (SELECT AMORT_MONTH_MIN FROM ASS_GROUP WHERE GROUP_ID = @p_GROUP_ID) + ' - ' + (SELECT AMORT_MONTH_MAX FROM ASS_GROUP WHERE GROUP_ID = @p_GROUP_ID) + ')' ErrorDesc
83
--		RETURN '-1'
84
--END		
85

    
86

    
87

    
88

    
89

    
90
--IF CONVERT(DATE, @p_AMORT_START_DATE, 103) < CONVERT(DATE,@p_CREATE_DT, 103)
91
--BEGIN
92
--	SELECT '-1' as Result, '' ADDNEW_ID, N'Ngày bắt đầu phân bổ không được nhỏ hơn ngày hiện tại' ErrorDesc
93
--	RETURN '-1'
94
--END
95
--HCQT KHONG XUAT THI KT KHONG DUOC XUAT - thieuvq bo dieu kien nay 051719 - KT duoc phep khi hc khong xuat
96
--DECLARE @_PRE_BRANCH_ID VARCHAR(15) = (SELECT BRANCH_ID FROM ASS_ADDNEW WHERE ADDNEW_ID = @p_ADDNEW_ID)
97
--IF ((@_PRE_BRANCH_ID IS NULL OR @_PRE_BRANCH_ID = '') AND (@p_BRANCH_ID <> ''))
98
--BEGIN
99
--	SELECT '-1' as Result, '' ADDNEW_ID, N'Bạn không được xuất sử dụng khi HCQT chưa xuất' ErrorDesc
100
--	RETURN '-1'
101
--END
102

    
103
DECLARE @l_C_TYPE_ID VARCHAR(50) = (SELECT AA.TYPE_ID FROM ASS_ADDNEW AA WHERE AA.ADDNEW_ID = @p_ADDNEW_ID)
104
DECLARE @l_C_GR_ID VARCHAR(50) = (SELECT AA.GROUP_ID FROM ASS_ADDNEW AA WHERE AA.ADDNEW_ID = @p_ADDNEW_ID)
105
DECLARE @l_C_GROUP_CODE VARCHAR(50) = (SELECT AG.GROUP_CODE FROM ASS_GROUP AG WHERE AG.GROUP_ID = @l_C_GR_ID)
106
DECLARE @l_NEW_GROUP_ID VARCHAR(50) = (SELECT AG.GROUP_ID FROM ASS_GROUP AG WHERE AG.GROUP_CODE = @l_C_GROUP_CODE AND AG.TYPE_ID = @p_TYPE_ID)
107
IF(@l_C_TYPE_ID <> @p_TYPE_ID)
108
BEGIN
109
	IF(NOT EXISTS(SELECT AG.GROUP_ID FROM ASS_GROUP AG WHERE AG.GROUP_CODE = @l_C_GROUP_CODE AND AG.TYPE_ID = @p_TYPE_ID))
110
    BEGIN
111
    		SELECT '-1' as Result, @p_ADDNEW_ID ADDNEW_ID, N'Loại tài sản hiện tại không có trong Nhóm tài sản' + @p_TYPE_ID ErrorDesc
112
        	RETURN '-1'
113
    END
114
    ELSE UPDATE ASS_ADDNEW SET GROUP_ID = @l_NEW_GROUP_ID WHERE ADDNEW_ID = @p_ADDNEW_ID
115
END
116

    
117
BEGIN TRANSACTION
118

    
119
----BO 2 KY TU DAC BIET & VA < TRONG DIEN GIAI HACH TOAN - THIEUVQ 020719 - BEGIN
120
SET @p_CORE_NOTE = REPLACE(@p_CORE_NOTE,'&', 'VA')
121
SET @p_CORE_NOTE = REPLACE(@p_CORE_NOTE,'<', ' ')
122
--------------END---------------
123

    
124
------nhap moi la luon ghi tang tai san Chaunth 031218 - BEGIN -----
125
IF @p_BRANCH_ID <>'' OR @p_BRANCH_ID IS NOT NULL SET @p_ENTRY_BOOKED = 'Y'
126
--END----------
127
	UPDATE ASS_ADDNEW
128
	SET 		
129
		[AMORT_START_DATE]	= (CASE WHEN @p_AMORT_START_DATE IS NULL OR @p_AMORT_START_DATE = '' THEN NULL ELSE CONVERT(DATETIME, @p_AMORT_START_DATE, 103) END),-----------Them	
130
		[AMORT_END_DATE]	= (CASE WHEN @p_AMORT_END_DATE IS NULL OR @p_AMORT_END_DATE = '' THEN NULL ELSE CONVERT(DATETIME, @p_AMORT_END_DATE, 103) END),-----------Them				
131
		[AMORT_MONTH]		= @p_AMORT_MONTH,
132
		[AMORT_RATE]		= @p_AMORT_RATE,		
133
		[CORE_NOTE]			= @p_CORE_NOTE,
134
		[ENTRY_BOOKED]		= @p_ENTRY_BOOKED, -- THEM KHI NHAP MOI CO TANG TAI SAN KHONG		
135
		[MAKER_ID_KT]		= @p_MAKER_ID_KT,
136
		[CREATE_DT_KT]			= GETDATE(),
137
		--[CHECKER_ID_KT]		= @p_CHECKER_ID,
138
		--[APPROVE_DT_KT]		=CASE WHEN @p_APPROVE_DT = '' OR @p_APPROVE_DT IS NULL THEN NULL ELSE CONVERT(DATETIME, @p_APPROVE_DT, 103) END,		
139
		[POSTED_STATUS]		= @p_POSTED_STATUS,-- THEM 14/04/2014
140
		[BRANCH_CREATE]		= @p_BRANCH_CREATE,-- THEM 14/04/2014
141
		--
142
		BUY_DATE = CONVERT(DATETIME,@p_BUY_DATE, 103),
143
		[TYPE_ID] = @p_TYPE_ID,
144
		GROUP_ID = @l_NEW_GROUP_ID,
145
		ASSET_NAME = @p_ASSET_NAME,
146
		ASSET_SERIAL_NO = @p_ASSET_SERIAL_NO,
147
		ASSET_DESC = @p_ASSET_DESC,
148
		BRANCH_ID = @p_BRANCH_ID,
149
		DEPT_ID = @p_DEPT_ID,
150
		EMP_ID = @p_EMP_ID,
151
		DIVISION_ID = @p_DIVISION_ID,
152
		BUY_PRICE = @p_BUY_PRICE,
153
		AMORT_AMT = @p_BUY_PRICE,
154
		IS_MULTIPLE = @p_IS_MULTIPLE,
155
		QTY = @p_QTY,
156
		PO_ID = @p_PO_ID,
157
		PD_ID = @p_PD_ID,
158
		REF_ASSET_ID = @p_REF_ASSET_ID,
159
		REF_AMORTIZED_AMT = @p_REF_AMORTIZED_AMT,
160
		WARRANTY_MONTHS = @p_WARRANTY_MONTHS,
161
		NOTES = @p_NOTES,		
162
		RECORD_STATUS = @p_RECORD_STATUS,
163
		--AUTH_STATUS = @p_AUTH_STATUS,
164
		CONSTRUCT_ID = @p_CONSTRUCT_ID,
165
		--
166
		[ACCOUNT_GL] = @p_ACCOUNT_GL,
167
		[VAT] = @VAT,
168
		[PRICE_VAT] = @PRICE_VAT,
169
		---khiemchg BO SUNG CAP NHAT AUTH_STATUS =E cho gửi phê duyệt
170
		AUTH_STATUS_KT='E',
171
        PR_CODE = @p_PR_CODE
172
      ,WIN_CRACK = @p_WIN
173
      ,OFFICE_CRACK = @p_OFFICE
174
	WHERE ADDNEW_ID = @p_ADDNEW_ID
175
	IF @@Error <> 0 GOTO ABORT
176
	UPDATE ASS_PO
177
	SET PO_CODE=@p_PO_CODE,
178
	    INVOICE_DATE = CONVERT(DATETIME,@p_INVOICE_DT,103),
179
		INVOICE_NO =@p_INVOICE_NO,
180
		ADDNEW_ID =@p_ADDNEW_ID
181
		WHERE ASSPO_ID = @p_ASS_PO_ID
182
	IF @@Error <> 0 GOTO ABORT
183
	
184
	-- HUYHT 06/05/2022: XÓA CÁC PROCESS UPDATE CŨ
185
	DELETE dbo.PL_PROCESS WHERE REQ_ID = @p_ADDNEW_ID AND PROCESS_ID = 'UPDATE'
186
		-- GIANT Insert to table PL_PROCESS
187
	INSERT INTO dbo.PL_PROCESS
188
					(
189
					    REQ_ID,
190
					    PROCESS_ID,
191
					    CHECKER_ID,
192
					    APPROVE_DT,
193
					    PROCESS_DESC,
194
					    NOTES
195
					)
196
					VALUES
197
					(   @p_ADDNEW_ID,       
198
						'UPDATE',
199
					    @p_MAKER_ID_KT,        
200
					    GETDATE(), 
201
					    N'Giao dịch viên cập nhật hạch toán thành công' ,      
202
					    N'Giao dịch viên cập nhật hạch toán'       
203
					 )
204

    
205
COMMIT TRANSACTION
206
SELECT '0' as Result, @p_ADDNEW_ID  ADDNEW_ID, '' ErrorDesc
207
RETURN '0'
208
ABORT:
209
BEGIN
210
		ROLLBACK TRANSACTION
211
		SELECT '-1' as Result, @p_ADDNEW_ID ADDNEW_ID, '' ErrorDesc
212
		RETURN '-1'
213
End