Project

General

Profile

TR_REQUEST_DOC_DVMS_Upd.txt

Luc Tran Van, 12/01/2022 02:54 PM

 
1

    
2
ALTER   PROCEDURE [dbo].[TR_REQUEST_DOC_DVMS_Upd]
3
@p_REQ_ID varchar(15),
4
@p_REQ_CODE	nvarchar(100)  = NULL,
5
@p_REQ_NAME	nvarchar(200)  = NULL,
6
@p_REQ_DT	nvarchar(30) = NULL,
7
@p_REQ_TYPE	int = NULL,
8
@p_REQ_CONTENT NVARCHAR(1000)=NULL,
9
@p_REQ_REASON NVARCHAR(500)=NULL,
10
@p_PL_REQ_ID VARCHAR(15),
11
@p_TOTAL_AMT	decimal(18, 2) = NULL,
12
@p_NOTES	nvarchar(1000)  = NULL,
13
@p_RECORD_STATUS	varchar(1)  = NULL,
14
@p_MAKER_ID	varchar(12)  = NULL,
15
@p_CREATE_DT	nvarchar(30) = NULL,
16
@p_AUTH_STATUS	varchar(50)  = NULL,
17
@p_CHECKER_ID	varchar(12)  = NULL,
18
@p_APPROVE_DT	nvarchar(30) = NULL,
19
@p_BRANCH_DO VARCHAR(15)=NULL,
20
@p_BRANCH_CREATE VARCHAR(15)=NULL,
21
@p_USER_REQUEST VARCHAR(15)=NULL,
22
@p_ListGood XML,
23
@p_ListCostCenter XML,
24
@p_ListTrREQFile XML,
25
@p_IS_KT bit = null
26
AS
27
DECLARE @TEMP TABLE
28
			(
29
				[KEY] varchar(15),
30
				[REF_ID] varchar(15),
31
				[TYPE] varchar(50)
32
				)
33
	--IF EXISTS(SELECT * FROM TR_REQUEST_DOC WHERE [REQ_CODE] = @p_REQ_CODE AND REQ_ID <> @p_REQ_ID)
34
	--BEGIN
35
	--	SELECT ErrorCode Result, '' REQ_ID, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = 'REQ-00001'
36
	--	RETURN '0'
37
	--END
38
	DECLARE @sErrorCode VARCHAR(20)
39
	
40
  BEGIN TRANSACTION
41

    
42
		UPDATE dbo.TR_REQUEST_DOC
43
		SET BRANCH_DO=@p_BRANCH_DO,
44
		-----------------BAODNQ 26/05/2022: Chỉnh sửa update USER_DVMS---------
45
		USER_DVMS=@p_MAKER_ID,
46
		--------------------END BAODNQ--------------------
47
		IS_KT = @p_IS_KT
48
		WHERE REQ_ID=@p_REQ_ID
49
		-- UPDATE TOTAL_AMT MASTER
50
		UPDATE dbo.TR_REQUEST_DOC
51
		SET TOTAL_AMT=(SELECT SUM(ISNULL(TOTAL_AMT,0)) FROM TR_REQUEST_DOC_DT WHERE REQ_DOC_ID =@p_REQ_ID) WHERE REQ_ID =@p_REQ_ID
52
		IF @@Error <> 0 GOTO ABORT
53
		IF @@Error <> 0 GOTO ABORT
54

    
55

    
56
		--DELETE FROM dbo.TR_REQUEST_DOC_DT WHERE REQ_DOC_ID=@p_REQ_ID
57
		DELETE FROM dbo.TR_REQUEST_COSTCENTER WHERE REQ_ID=@p_REQ_ID
58
		--Insert into TABLE PL_REQUEST_DOC_DT
59

    
60
		------------BAODNQ 25/10/2022--------------
61
		DECLARE @p_ROW_COUNT INT = 0
62

    
63
		Declare @hdoc INT
64
		Exec sp_xml_preparedocument @hdoc Output,@p_ListGood
65
		DECLARE ListGoods  CURSOR FOR
66
		SELECT *
67
		FROM OPENXML(@hDoc,'/Root/ListGood',2)
68
		WITH 
69
		(
70
			REQDT_ID 	varchar(15)  ,
71
			PL_REQDT_ID	varchar(15)  ,
72
			GOODS_ID	varchar(15)  ,
73
			[DESCRIPTION] nvarchar(500),
74
			QUANTITY	decimal(18, 0)  ,
75
			PRICE	decimal(18, 2)  ,
76
			TOTAL_AMT	decimal(18, 2),	
77
			NOTES	nvarchar(1000),
78
			REQ_DT varchar(30),
79
			AMORT_MONTH DECIMAL(18,2),
80
			TRAN_TYPE_ID varchar(15),
81
			SUP_ID varchar(15),
82
			BID_ID VARCHAR(20),
83
			SUP_NAME NVARCHAR(2000),
84
			OFFERING_VALUE decimal(18, 2),
85
			NOTE_DVMS NVARCHAR(500),
86
			PO_ID VARCHAR(15),
87
			PO_AMT DECIMAL(18,2),
88
			TOTAL_AMT_ETM DECIMAL(18,2),
89
			CURRENCY VARCHAR(15),
90
			EXCHANGE_RATE DECIMAL(18,2),
91
			TAXES DECIMAL(18,2),
92
			-------------BAODNQ 21/4/2022 Thêm biến XML----
93
			DES_GOOD NVARCHAR(500),
94
			UNIT_NAME NVARCHAR(100),
95
			HANGHOA_ID VARCHAR(15),
96
			--------------BAODNQ 23/8/2022 : Thêm chọn hợp đồng nếu chọn HTMS : mua sắm trực tiếp(HĐNT)
97
			CONTRACT_ID VARCHAR(15)
98
		)
99
		OPEN ListGoods
100

    
101
		Declare 
102
		@REQDT_ID 	varchar(15)  ,
103
		@PL_REQDT_ID	varchar(15),
104
		@SUP_ID	varchar(15),
105
		@GOODS_ID	varchar(15),
106
		@DESCRIPTION nvarchar(500),
107
		@QUANTITY	decimal(18, 0),
108
		@PRICE	decimal(18, 2),
109
		@TOTAL_AMT	decimal(18, 2),		
110
		@NOTES	nvarchar(1000),
111
		@TRAN_TYPE_ID varchar(15),
112
		@AMORT_MONTH DECIMAL(18,2),
113
		@REQ_DT varchar(30),
114
		@BID_ID VARCHAR(20),
115
		@SUP_NAME NVARCHAR(2000),
116
		@l_SUP_ID VARCHAR(15),
117
		@OFFERING_VALUE DECIMAL(18,2),
118
		@NOTE_DVMS NVARCHAR(500),
119
		@PO_ID VARCHAR(15),
120
		@PO_AMT DECIMAL(18,2),
121
		@TOTAL_AMT_ETM DECIMAL(18,2),
122
		@CURRENCY VARCHAR(15),
123
		@EXCHANGE_RATE DECIMAL(18,2),
124
		@TAXES DECIMAL(18,2),
125
		-------------BAODNQ 21/4/2022 Thêm biến XML----
126
		@DES_GOOD NVARCHAR(500),
127
		@UNIT_NAME NVARCHAR(100),
128
		@HANGHOA_ID VARCHAR(15),
129
		@CONTRACT_ID VARCHAR(15)
130
		
131

    
132
		FETCH NEXT FROM ListGoods INTO 
133
			@REQDT_ID, 
134
			@PL_REQDT_ID,
135
			@GOODS_ID,
136
			@DESCRIPTION,
137
			@QUANTITY,
138
			@PRICE,
139
			@TOTAL_AMT,
140
			@NOTES,
141
			@REQ_DT,
142
			@AMORT_MONTH, 
143
			@TRAN_TYPE_ID, 
144
			@SUP_ID,
145
			@BID_ID,
146
			@SUP_NAME,
147
			@OFFERING_VALUE,
148
			@NOTE_DVMS,
149
			@PO_ID,
150
			@PO_AMT,
151
			@TOTAL_AMT_ETM,
152
			@CURRENCY,
153
			@EXCHANGE_RATE ,
154
			@TAXES,
155
			@DES_GOOD,
156
			@UNIT_NAME,
157
			@HANGHOA_ID,
158
			@CONTRACT_ID
159

    
160
		WHILE @@FETCH_STATUS = 0	
161
		BEGIN
162
			SET @p_ROW_COUNT = @p_ROW_COUNT + 1
163

    
164
			----------------BAODNQ 1/12/2022 : HOT FIX : Không cho phép tự nhập tên NCC vào ô NCC--------
165
			-------------------Bắt buộc phải chọn NCC từ popup--------------------
166
			IF(@SUP_NAME IS NOT NULL AND @SUP_NAME <> '' AND (@SUP_ID IS NULL OR @SUP_ID = ''))
167
			BEGIN
168
				CLOSE ListGoods
169
				DEALLOCATE ListGoods
170
				ROLLBACK TRANSACTION
171
				SELECT '-1' AS RESULT, ''  REQ_ID, 
172
					N'Lưới chi tiết mua sắm thực tế, dòng: ' + CONVERT(VARCHAR, @p_ROW_COUNT)
173
					+ N'. Không được phép nhập thẳng tên nhà cung cấp vào ô nhà cung cấp, bắt buộc phải chọn nhà cung cấp trong hệ thống từ popup' ErrorDesc
174
				RETURN '-1'
175
			END
176
			------------------ENDBAODNQ-----------------
177

    
178
			-------BAODNQ 25/10/2022 : NẾU CHỌN HÌNH THỨC MUA SẮM KHÁC XUẤT KHO, KHÔNG THỰC HIỆN MUA SẮM----
179
			------------THÌ NHÀ CUNG CẤP BẮT BUỘC CHỌN-----------------
180
			IF(@TRAN_TYPE_ID NOT IN ('TRN0000000006', 'TRN0000000007') AND (@SUP_NAME IS NULL OR @SUP_NAME = ''))
181
			BEGIN
182
				CLOSE ListGoods
183
				DEALLOCATE ListGoods
184
				ROLLBACK TRANSACTION
185
				SELECT '-1' AS RESULT, ''  REQ_ID, 
186
					N'Lưới chi tiết mua sắm thực tế, dòng: ' + CONVERT(VARCHAR, @p_ROW_COUNT)
187
					+ N'. Bắt buộc chọn nhà cung cấp nếu hình thức mua sắm không thuộc (Xuất kho, Không thực hiện mua sắm)' ErrorDesc
188
				RETURN '-1'
189
			END
190
			--------------ENDBAODNQ--------------------
191

    
192
			-------------BAODNQ 1/12/2022 : Nếu hình thức mua sắm là không thực hiện mua sắm thì ko lưu lại NCC--------
193
			IF(@TRAN_TYPE_ID  = 'TRN0000000007')
194
			BEGIN
195
				SET @SUP_NAME = NULL
196
				SET @SUP_ID = ''
197
			END
198
			------------ENDBAODNQ-----------------
199
			ELSE
200
			BEGIN
201
				--LUCTV 21052020 KIEM TRA NEU CHUA TON TAI NHA CUNG CAP THI THEM MOI NHA CUNG CAP
202
				IF((@SUP_NAME IS NOT NULL AND @SUP_NAME <> '') AND NOT EXISTS(SELECT * FROM CM_SUPPLIER WHERE SUP_NAME =@SUP_NAME AND SUP_NAME IS NOT NULL AND SUP_NAME <>''))
203
				BEGIN
204
				EXEC SYS_CodeMasters_Gen 'CM_SUPPLIER', @l_SUP_ID out
205
					IF @l_SUP_ID='' OR @l_SUP_ID IS NULL GOTO ABORT
206
					INSERT INTO CM_SUPPLIER([DISCIPLINES],[SUP_ID],[SUP_CODE],[SUP_NAME],[SUP_TYPE_ID],[REGION_ID],[ADDR],[EMAIL],[TAX_NO],[TEL],[CONTACT_PERSON],[NOTES],[RECORD_STATUS],[MAKER_ID],[CREATE_DT],[AUTH_STATUS],[CHECKER_ID],[APPROVE_DT],ACC_NUM)
207
					VALUES('', @l_SUP_ID ,@l_SUP_ID ,@SUP_NAME ,NULL ,NULL ,'' ,'' ,'' ,'' ,'' ,'' ,'1' ,@p_MAKER_ID ,CONVERT(DATETIME, @p_CREATE_DT, 103) ,'U' ,NULL,NULL,NULL)
208
				END
209
				----
210
				--IF(@SUP_ID IS NULL OR @SUP_ID='')
211
				IF(EXISTS(SELECT * FROM CM_SUPPLIER WHERE SUP_NAME =@SUP_NAME AND SUP_NAME IS NOT NULL AND SUP_NAME <>''))
212
					SET @SUP_ID =(SELECT TOP 1 SUP_ID FROM dbo.CM_SUPPLIER WHERE SUP_NAME=@SUP_NAME)
213

    
214
				IF(EXISTS(SELECT * FROM CM_SUPPLIER WHERE SUP_NAME =@SUP_NAME AND SUP_NAME IS NOT NULL AND SUP_NAME <>'' AND SUP_ID =@SUP_ID))
215
					SET @SUP_ID =(SELECT TOP 1 SUP_ID FROM dbo.CM_SUPPLIER WHERE SUP_ID=@SUP_ID AND SUP_NAME = @SUP_NAME)
216

    
217

    
218
				IF(@SUP_NAME IS NULL AND @SUP_NAME = '')
219
					SET @SUP_ID = NULL
220
			END
221
			
222
			-----------BAODNQ 1/12/2022 : TẠM THỜI HOT FIX TỔNG SỐ TIỀN TÍNH THEO ĐƠN GIÁ---------------
223
			IF(@CURRENCY != 'VND')
224
			BEGIN
225
				SET @TOTAL_AMT = ((@PRICE * @QUANTITY) + @TAXES) * @EXCHANGE_RATE
226
			END
227
			ELSE
228
			BEGIN
229
				SET @TOTAL_AMT = @PRICE * @QUANTITY * 1
230
			END
231
			------------ENDBAODNQ-----------------
232

    
233
			UPDATE dbo.TR_REQUEST_DOC_DT SET 
234
				CURRENCY =@CURRENCY, 
235
				EXCHANGE_RATE =@EXCHANGE_RATE,
236
				TAXES =@TAXES, 
237
				PRICE=@PRICE,
238
				--TOTAL_AMT=ROUND(((QUANTITY * @PRICE + @TAXES) * @EXCHANGE_RATE),0),
239
				TOTAL_AMT = @TOTAL_AMT,
240
				TRAN_TYPE_ID=@TRAN_TYPE_ID,
241
				SUP_ID=@SUP_ID,
242
				BID_ID=@BID_ID,
243
				OFFERING_VALUE =@OFFERING_VALUE,
244
				NOTE_DVMS =@NOTE_DVMS,
245
				PO_ID = @PO_ID,
246
				PO_AMT = @PO_AMT, 
247
				TOTAL_AMT_ETM = @TOTAL_AMT_ETM, 
248
				----------BADNQ 21/4/2022: Đổi tên biến cập nhật-------
249
				DESCRIPTION = @DES_GOOD,
250
				UNIT_NAME = @UNIT_NAME,
251
				QUANTITY = @QUANTITY,
252
				REQ_DT = CONVERT(DATETIME, @REQ_DT, 103),
253
				HANGHOA_ID = @HANGHOA_ID,
254
				CONTRACT_ID = @CONTRACT_ID
255

    
256
			WHERE REQDT_ID=@REQDT_ID
257
			UPDATE dbo.BID_MASTER SET REQUEST_ID=@p_REQ_ID WHERE BID_ID=@BID_ID
258
			
259
			IF @@ERROR <> 0 GOTO ABORT1
260
		-- next Group_Id
261
			FETCH NEXT FROM ListGoods INTO 
262
				@REQDT_ID, 
263
				@PL_REQDT_ID,
264
				@GOODS_ID,
265
				@DESCRIPTION,
266
				@QUANTITY,
267
				@PRICE,
268
				@TOTAL_AMT,
269
			@NOTES,
270
			@REQ_DT,
271
			@AMORT_MONTH, 
272
			@TRAN_TYPE_ID, 
273
			@SUP_ID,
274
			@BID_ID,
275
			@SUP_NAME,
276
			@OFFERING_VALUE,
277
			@NOTE_DVMS,
278
			@PO_ID,
279
			@PO_AMT,
280
			@TOTAL_AMT_ETM,
281
			@CURRENCY,
282
			@EXCHANGE_RATE ,
283
			@TAXES, 
284
			@DES_GOOD,
285
			@UNIT_NAME,
286
			@HANGHOA_ID,
287
			@CONTRACT_ID
288
		END
289
		CLOSE ListGoods
290
		DEALLOCATE ListGoods
291
		IF @@Error <> 0 GOTO ABORT
292

    
293
		UPDATE dbo.TR_REQUEST_DOC SET TOTAL_AMT=(SELECT SUM(TOTAL_AMT) FROM dbo.TR_REQUEST_DOC_DT WHERE REQ_DOC_ID=@p_REQ_ID) WHERE REQ_ID=@p_REQ_ID 
294

    
295
		--Insert into TABLE PL_REQUEST_DOC_DT
296
		Exec sp_xml_preparedocument @hdoc Output,@p_ListCostCenter
297
		DECLARE ListCostCenters  CURSOR FOR
298
		SELECT *
299
		FROM OPENXML(@hDoc,'/Root/ListCostCenter',2)
300
		WITH 
301
		(
302
			COST_ID	varchar(15),	
303
			NOTES	nvarchar(1000),
304
			AUTH_STATUS varchar(15),
305
			MAKER_ID varchar(15),
306
			CREATE_DT varchar(30),
307
			CHECKER_ID varchar(15),
308
			APPROVE_DT varchar(30)
309
		)
310

    
311
		OPEN ListCostCenters
312
		Declare 
313
		@COST_ID	varchar(15),
314
		@AUTH_STATUS varchar(15),
315
		@MAKER_ID varchar(15),
316
		@CREATE_DT varchar(30),
317
		@CHECKER_ID varchar(15),
318
		@APPROVE_DT varchar(30)
319

    
320
		FETCH NEXT FROM ListCostCenters INTO @COST_ID, @NOTES,@AUTH_STATUS,@MAKER_ID,@CREATE_DT,@CHECKER_ID,@APPROVE_DT
321
		WHILE @@FETCH_STATUS = 0	
322
		BEGIN
323
			
324
			DECLARE @l_REQ_COST_ID VARCHAR(15)
325
			EXEC SYS_CodeMasters_Gen 'TR_REQUEST_COSTCENTER', @l_REQ_COST_ID out
326
			IF @l_REQ_COST_ID='' OR @l_REQ_COST_ID IS NULL GOTO ABORT
327
	
328
			INSERT INTO dbo.TR_REQUEST_COSTCENTER
329
			(
330
			    REQ_COST_ID,
331
			    COST_ID,
332
			    REQ_ID,
333
			    NOTES,
334
			    AUTH_STATUS,
335
			    MAKER_ID,
336
			    CREATE_DT,
337
			    CHECKER_ID,
338
			    APPROVE_DT
339
			)
340
			VALUES
341
			(   @l_REQ_COST_ID,        -- REQ_COST_ID - varchar(15)
342
			    @COST_ID,        -- COST_ID - varchar(15)
343
			    @p_REQ_ID,        -- REQ_ID - varchar(15)
344
			    @NOTES,       -- NOTES - nvarchar(500)
345
			    @AUTH_STATUS,        -- AUTH_STATUS - varchar(1)
346
			    @MAKER_ID,        -- MAKER_ID - varchar(15)
347
			     convert(datetime,@CREATE_DT,103), -- CREATE_DT - datetime
348
			    @CHECKER_ID,        -- CHECKER_ID - varchar(15)
349
			    convert(datetime,@APPROVE_DT,103)-- APPROVE_DT - datetime
350
			 )
351
			
352
			IF @@ERROR <> 0 GOTO ABORT1
353
		-- next Group_Id
354
			FETCH NEXT FROM ListCostCenters INTO @COST_ID, @NOTES,@AUTH_STATUS,@MAKER_ID,@CREATE_DT,@CHECKER_ID,@APPROVE_DT
355
		END
356
		CLOSE ListCostCenters
357
		DEALLOCATE ListCostCenters
358

    
359
		UPDATE dbo.TR_REQUEST_DOC SET TOTAL_AMT= (SELECT SUM(TOTAL_AMT) FROM dbo.TR_REQUEST_DOC_DT WHERE REQ_DOC_ID=@p_REQ_ID) WHERE REQ_ID=@p_REQ_ID
360

    
361
		
362
		--Insert into TABLE TR_REQUEST_DOC_FILE
363

    
364
		if(@p_ListTrREQFile is not null and cast(@p_ListTrREQFile as nvarchar(max)) != '')
365
		begin
366
			--Insert into TABLE TR_REQUEST_DOC_FILE
367

    
368
		DECLARE @tableTrREQFile TABLE(
369
			TR_REQUEST_DOC_FILE_ID	varchar(20)  ,
370
			IS_VIEW	bit,
371
			REQ_ID varchar(20),
372
			NOTES  nvarchar(200)
373
		)
374

    
375

    
376
		Declare @fdoc INT
377
		Exec sp_xml_preparedocument @fdoc Output,@p_ListTrREQFile
378

    
379
		INSERT INTO @tableTrREQFile
380
		SELECT *
381
		FROM OPENXML(@fDoc,'/Root/ListTrREQ',2)
382
		WITH 
383
		(
384
			TR_REQUEST_DOC_FILE_ID	varchar(20)  ,
385
			IS_VIEW	bit,
386
			REQ_ID varchar(20),
387
			NOTES  nvarchar(200)
388
		)
389

    
390
		delete TR_REQUEST_DOC_FILE where TR_REQUEST_DOC_FILE_ID not in (select TR_REQUEST_DOC_FILE_ID from @tableTrREQFile) and REQ_ID = @p_REQ_ID
391
		DECLARE ListTrREQFile  CURSOR FOR
392
		SELECT * FROM @tableTrREQFile
393
		OPEN ListTrREQFile
394

    
395
		Declare 
396
		@TR_REQUEST_DOC_FILE_ID	varchar(20)  ,
397
		@IS_VIEW	bit,
398
		@REQ_ID varchar(20),
399
		@_NOTES nvarchar(200)
400

    
401
		FETCH NEXT FROM ListTrREQFile INTO @TR_REQUEST_DOC_FILE_ID,@IS_VIEW,@REQ_ID,@_NOTES
402
		WHILE @@FETCH_STATUS = 0	
403
		BEGIN
404
			DECLARE @l_REQFile_ID VARCHAR(15)
405
			EXEC SYS_CodeMasters_Gen 'TR_REQUEST_DOC_FILE', @l_REQFile_ID out
406
			--select @l_REQFile_ID
407
			--select * from TR_REQUEST_DOC_FILE where [TR_REQUEST_DOC_FILE_ID]= 'TRDF00000000523'
408
			IF @l_REQFile_ID='' OR @l_REQFile_ID IS NULL GOTO ABORT
409
			---------------------BAODNQ 23/5/2022: Chỉnh sửa đính kèm file------------
410
			DECLARE @p_REF_ID VARCHAR(15)
411
			--INSERT INTO @TEMP([REF_ID],[TYPE]) VALUES (@l_REQFile_ID, 'TR_REQUEST_DOC_FILE')
412
			IF(select count(*) from TR_REQUEST_DOC_FILE where TR_REQUEST_DOC_FILE_ID = @TR_REQUEST_DOC_FILE_ID ) > 0
413
			begin
414
				update TR_REQUEST_DOC_FILE set IS_VIEW=isnull(@IS_VIEW,0),REQ_ID = @p_REQ_ID,NOTES=@_NOTES where TR_REQUEST_DOC_FILE_ID = @TR_REQUEST_DOC_FILE_ID 
415
				SET @p_REF_ID = @TR_REQUEST_DOC_FILE_ID
416
			end
417
			else
418
			begin
419
				INSERT INTO dbo.TR_REQUEST_DOC_FILE
420
				(
421
					 [TR_REQUEST_DOC_FILE_ID]
422
					,[IS_VIEW]
423
					,[REQ_ID]
424
					,[NOTES]
425
				)	
426
				VALUES
427
				(   
428
					@l_REQFile_ID
429
					,isnull(@IS_VIEW,0)
430
					,@p_REQ_ID,
431
					@_NOTES
432
				)
433

    
434
				SET @p_REF_ID = @l_REQFile_ID
435
			end
436

    
437
			INSERT INTO @TEMP([REF_ID],[TYPE]) VALUES (@p_REF_ID, 'TR_REQUEST_DOC_FILE')
438

    
439
			FETCH NEXT FROM ListTrREQFile INTO @TR_REQUEST_DOC_FILE_ID,@IS_VIEW,@REQ_ID,@_NOTES
440
		END
441
		CLOSE ListTrREQFile
442
		DEALLOCATE ListTrREQFile
443

    
444
		end
445
		
446
		if(select count(*) from @TEMP) = 0
447
		begin
448
			INSERT INTO @TEMP([REF_ID],[TYPE]) VALUES (@l_REQFile_ID, 'TR_REQUEST_DOC_FILE')
449
		end
450
COMMIT TRANSACTION
451

    
452
SELECT '0' as Result, @p_REQ_ID  REQ_ID,[REF_ID], [TYPE] , @p_REQ_CODE AS ErrorDesc from @TEMP
453
RETURN '0'
454
ABORT:
455
BEGIN
456
		ROLLBACK TRANSACTION
457
		SELECT '-1' AS RESULT
458
		RETURN '-1'
459
End
460
ABORT1:
461
BEGIN
462
		CLOSE ListGoods
463
		DEALLOCATE ListGoods
464
		CLOSE ListCostCenters
465
		DEALLOCATE ListCostCenters
466
		ROLLBACK TRANSACTION
467
		SELECT '-1' AS RESULT
468
		RETURN '-1'
469
End