Project

General

Profile

TR_REQ_PROCESS_CHILD_App.txt

Truong Nguyen Vu, 01/28/2021 03:35 PM

 
1
ALTER PROCEDURE [dbo].[TR_REQ_PROCESS_CHILD_App]  
2
@p_REQ_ID VARCHAR(20),  
3
@p_PROCESS_ID VARCHAR(20),  
4
@p_TLNAME VARCHAR(20),  
5
@p_MAKER_ID VARCHAR(20),  
6
@p_TYPE_JOB VARCHAR(20),  
7
@p_PROCESS_DES NVARCHAR(500),  
8
@p_REF_ID INT,  
9
@p_XMLDATA XML  
10
AS  
11
BEGIN TRANSACTION  
12
-- LUCTV 20052020 BO SUNG CHECK NEU TRA VE THI KHONG DUYET DUOC  
13
 
14
--IF(NOT EXISTS(SELECT * FROM dbo.PL_REQUEST_PROCESS WHERE REQ_ID=@p_REQ_ID AND STATUS='C' AND PROCESS_ID=@p_PROCESS_ID))  
15
--BEGIN  
16
-- SELECT 1 as Result, '' ErrorDesc  
17
-- RETURN 0  
18
--END 
19
IF(EXISTS(SELECT REQ_ID FROM dbo.TR_REQUEST_DOC  WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID='DMMS'  ))
20
BEGIN
21
	IF(EXISTS(
22
	SELECT PRC.ID FROM dbo.PL_REQUEST_PROCESS PR 
23
	LEFT JOIN dbo.PL_REQUEST_PROCESS_CHILD PRC ON PRC.PROCESS_ID=PR.ID
24
	WHERE PR.PROCESS_ID='DMMS' AND PR.REQ_ID=@p_REQ_ID AND PRC.TYPE_JOB='XL' AND PRC.STATUS_JOB='C'))
25
	BEGIN
26
		ROLLBACK TRANSACTION  
27
		SELECT -1 Result, N'Phiếu yêu cầu mua sắm số: '+(SELECT REQ_CODE FROM TR_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID) +N' chưa được xử lý. Vui lòng đợi nhân viên xử lý phiếu và gửi phê duyệt!' ErrorDesc  
28
		RETURN -1
29
	END
30

    
31
	IF(NOT EXISTS(
32
	SELECT PRC.ID FROM dbo.PL_REQUEST_PROCESS PR 
33
	LEFT JOIN dbo.PL_REQUEST_PROCESS_CHILD PRC ON PRC.PROCESS_ID=PR.ID
34
	WHERE PR.PROCESS_ID='DMMS' AND PR.REQ_ID=@p_REQ_ID AND PRC.TYPE_JOB='XL' ))
35
	BEGIN
36
	    
37
		ROLLBACK TRANSACTION  
38
		SELECT -1 Result, N'Phiếu yêu cầu mua sắm số: '+(SELECT REQ_CODE FROM TR_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID) +N' chưa điều phối xử lý. Vui lòng điều phối nhân viên xử lý phiếu!' ErrorDesc  
39
		RETURN -1 
40
	END
41

    
42
END
43

    
44
 
45
 
46
IF(EXISTS(SELECT * FROM PL_REQUEST_PROCESS_CHILD WHERE REQ_ID =@p_REQ_ID AND STATUS_JOB ='R') OR (EXISTS(SELECT * FROM TR_REQUEST_DOC WHERE REQ_ID =@p_REQ_ID AND AUTH_STATUS ='R'))  
47
OR(EXISTS(SELECT * FROM PL_REQUEST_PROCESS WHERE REQ_ID =@p_REQ_ID AND STATUS ='R')))  
48
BEGIN  
49
ROLLBACK TRANSACTION  
50
SELECT -1 Result, N'Phiếu yêu cầu mua sắm số: '+(SELECT REQ_CODE FROM TR_REQUEST_DOC WHERE REQ_ID=@p_REQ_ID) +N' đang bị từ chối. Vui lòng đợi nhân viên xử lý phiếu và gửi phê duyệt lại!' ErrorDesc  
51
RETURN -1  
52
END  
53
Declare @hdoc INT  
54
EXEC sp_xml_preparedocument @hdoc Output,@p_XMLDATA  
55
DECLARE @lstFILE TABLE(  
56
ATTACH_ID VARCHAR(20),  
57
IS_READ BIT  
58
)  
59
INSERT INTO @lstFILE  
60
SELECT *  
61
FROM OPENXML(@hDoc,'/Root/ATTACH_FILE',2)  
62
WITH  
63
(  
64
ATTACH_ID VARCHAR(20),  
65
IS_READ BIT  
66
)  
67
 
68
IF(EXISTS(SELECT TR_REQUEST_DOC_FILE_ID FROM dbo.TR_REQUEST_DOC_FILE WHERE REQ_ID=@p_REQ_ID AND IS_VIEW=1  
69
AND EXISTS(SELECT ATTACH_ID FROM @lstFILE WHERE [@lstFILE].ATTACH_ID=TR_REQUEST_DOC_FILE.ATTACH_ID AND IS_READ=0)))  
70
BEGIN  
71
ROLLBACK TRANSACTION  
72
SELECT -1 Result, N'File đinh kèm bắt buộc đọc' ErrorDesc  
73
RETURN 0  
74
END  
75
DECLARE @LEVEL INT, @TYPE_JOB_NAME NVARCHAR(100), @FULLNAME NVARCHAR(100)  
76
 
77
UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='P'  
78
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND TLNAME=@p_TLNAME AND TYPE_JOB=@p_TYPE_JOB  
79
 
80
SET @LEVEL=ISNULL((SELECT TOP 1 LEVEL_JOB  
81
FROM dbo.PL_REQUEST_PROCESS_CHILD  
82
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND TLNAME=@p_TLNAME AND TYPE_JOB=@p_TYPE_JOB  
83
ORDER BY LEVEL_JOB DESC),0)  
84
 
85
UPDATE dbo.PL_REQUEST_PROCESS_CHILD SET STATUS_JOB='C'  
86
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND LEVEL_JOB=(@LEVEL-1)  
87
 
88
SET @TYPE_JOB_NAME =(SELECT CONTENT FROM dbo.CM_ALLCODE WHERE CDNAME = 'JOB_TYPE' AND CDTYPE='REQ' AND CDVAL=@p_TYPE_JOB)  
89
SET @FULLNAME =(SELECT TLFullName FROM dbo.TL_USER WHERE TLNANME=@p_TLNAME )  
90
 
91
INSERT INTO dbo.PL_PROCESS  
92
(  
93
REQ_ID,  
94
PROCESS_ID,  
95
CHECKER_ID,  
96
APPROVE_DT,  
97
PROCESS_DESC,NOTES  
98
)  
99
VALUES  
100
( @p_REQ_ID, -- REQ_ID - varchar(15)  
101
@p_PROCESS_ID, -- PROCESS_ID - varchar(10)  
102
@p_MAKER_ID, -- CHECKER_ID - varchar(15)  
103
GETDATE() , -- APPROVE_DT - datetime  
104
@p_PROCESS_DES ,  
105
@TYPE_JOB_NAME+ N' đã phê duyệt' -- PROCESS_DESC - nvarchar(1000)  
106
)  
107
 
108
 
109
IF(NOT EXISTS (SELECT * FROM dbo.PL_REQUEST_PROCESS_CHILD  
110
WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_REF_ID AND STATUS_JOB <> 'P'))  
111
BEGIN  
112
IF(@p_PROCESS_ID='DMMS')  
113
BEGIN  
114
DECLARE @PROCESS_PARENT VARCHAR(20)  
115
SET @PROCESS_PARENT='DMMS'  
116
 
117
UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='P',CHECKER_ID=@p_MAKER_ID,APPROVE_DT=GETDATE(),NOTES=N'Đầu mối mua sắm đã phê duyệt' WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID=@p_PROCESS_ID  
118
 
119
DECLARE @LIMIT_VALUE_KT DECIMAL(18,0),@ROLE_KT VARCHAR(20),@DVDM_KT VARCHAR(20),@NOTES_KT NVARCHAR(200),@TOTAL_AMT_REQ DECIMAL(18,0)  
120
 
121
SET @LIMIT_VALUE_KT = (SELECT LIMIT_VALUE FROM dbo.TL_SYSROLE_LIMIT WHERE LIMIT_TYPE='KT')  
122
SET @ROLE_KT=(SELECT ROLE_ID FROM dbo.TL_SYSROLE_LIMIT WHERE LIMIT_TYPE='KT')  
123
 
124
SET @DVDM_KT=(SELECT DVDM_ID FROM dbo.TL_SYSROLE_LIMIT WHERE LIMIT_TYPE='KT')  
125
 
126
SET @TOTAL_AMT_REQ =(SELECT SUM(TOTAL_AMT) AS TOTAL_AMT FROM dbo.TR_REQUEST_DOC_DT  
127
WHERE REQ_DOC_ID=@p_REQ_ID AND TRAN_TYPE_ID NOT IN (SELECT TRN_TYPE FROM dbo.CM_TRAN_TYPE WHERE NOTES='XK' OR NOTES ='CDT'))  
128
IF(@TOTAL_AMT_REQ > @LIMIT_VALUE_KT AND 1 > 2)  
129
BEGIN  
130
DECLARE @l_REQ_COST_ID VARCHAR(15)  
131
EXEC SYS_CodeMasters_Gen 'TR_REQUEST_COSTCENTER', @l_REQ_COST_ID out  
132
INSERT dbo.TR_REQUEST_COSTCENTER  
133
(  
134
REQ_COST_ID,  
135
COST_ID,  
136
REQ_ID,  
137
NOTES,  
138
AUTH_STATUS,  
139
MAKER_ID,  
140
CREATE_DT,  
141
CHECKER_ID,  
142
APPROVE_DT  
143
)  
144
VALUES  
145
( @l_REQ_COST_ID, -- REQ_COST_ID - varchar(15)  
146
@DVDM_KT, -- COST_ID - varchar(15)  
147
@p_REQ_ID, -- REQ_ID - varchar(15)  
148
N'', -- NOTES - nvarchar(500)  
149
'U', -- AUTH_STATUS - varchar(1)  
150
@p_MAKER_ID, -- MAKER_ID - varchar(15)  
151
GETDATE(), -- CREATE_DT - datetime  
152
'', -- CHECKER_ID - varchar(15)  
153
NULL -- APPROVE_DT - datetime  
154
)  
155
END  
156
IF(EXISTS(SELECT * FROM dbo.TR_REQUEST_COSTCENTER WHERE REQ_ID=@p_REQ_ID))  
157
BEGIN  
158
DECLARE @COST_ID VARCHAR(20)  
159
DECLARE lstCostCenter CURSOR FOR  
160
SELECT COST_ID FROM dbo.TR_REQUEST_COSTCENTER  
161
WHERE REQ_ID=@p_REQ_ID  
162
OPEN lstCostCenter  
163
FETCH NEXT FROM lstCostCenter INTO @COST_ID  
164
WHILE @@FETCH_STATUS = 0  
165
BEGIN  
166
 
167
IF(@COST_ID=@DVDM_KT AND 1> 2)  
168
BEGIN  
169
INSERT INTO dbo.PL_REQUEST_PROCESS  
170
(  
171
REQ_ID,  
172
PROCESS_ID,  
173
STATUS,  
174
ROLE_USER,  
175
BRANCH_ID,  
176
CHECKER_ID,  
177
APPROVE_DT,  
178
PARENT_PROCESS_ID,  
179
IS_LEAF,  
180
COST_ID,  
181
DVDM_ID,  
182
NOTES,  
183
IS_HAS_CHILD  
184
)  
185
VALUES  
186
( @p_REQ_ID, -- REQ_ID - varchar(15)  
187
'DVCM', -- PROCESS_ID - varchar(10)  
188
'U', -- STATUS - varchar(5)  
189
'KSV', -- ROLE_USER - varchar(50)  
190
'', -- BRANCH_ID - varchar(15)  
191
'', -- CHECKER_ID - varchar(15)  
192
NULL, -- APPROVE_DT - datetime  
193
@PROCESS_PARENT, -- PARENT_PROCESS_ID - varchar(10)  
194
'N', -- IS_LEAF - varchar(1)  
195
'', -- COST_ID - varchar(15)  
196
@COST_ID ,  
197
N'Chờ đơn vị chuyên môn xác nhận' ,  
198
1 -- DVDM_ID - varchar(15)  
199
)  
200
END  
201
ELSE  
202
BEGIN  
203
INSERT INTO dbo.PL_REQUEST_PROCESS  
204
(  
205
REQ_ID,  
206
PROCESS_ID,  
207
STATUS,  
208
ROLE_USER,  
209
BRANCH_ID,  
210
CHECKER_ID,  
211
APPROVE_DT,  
212
PARENT_PROCESS_ID,  
213
IS_LEAF,  
214
COST_ID,  
215
DVDM_ID,  
216
NOTES,  
217
IS_HAS_CHILD  
218
)  
219
VALUES  
220
( @p_REQ_ID, -- REQ_ID - varchar(15)  
221
'DVCM', -- PROCESS_ID - varchar(10)  
222
'U', -- STATUS - varchar(5)  
223
'GDDV', -- ROLE_USER - varchar(50)  
224
'', -- BRANCH_ID - varchar(15)  
225
'', -- CHECKER_ID - varchar(15)  
226
NULL, -- APPROVE_DT - datetime  
227
@PROCESS_PARENT, -- PARENT_PROCESS_ID - varchar(10)  
228
'N', -- IS_LEAF - varchar(1)  
229
'', -- COST_ID - varchar(15)  
230
@COST_ID ,  
231
N'Chờ đơn vị chuyên môn xác nhận' ,  
232
1 -- DVDM_ID - varchar(15)  
233
)  
234
END  
235
FETCH NEXT FROM lstCostCenter INTO @COST_ID  
236
END  
237
CLOSE lstCostCenter  
238
DEALLOCATE lstCostCenter  
239
 
240
END  
241
DECLARE @TOTAL_AMT DECIMAL(18,2),@ROLE_PDTH VARCHAR(20) ,@LIMIT_VALUE DECIMAL(18,2) ,@IS_NEXT BIT,@PROCESS_ID VARCHAR(5),@ROLE_ID VARCHAR(20),@DVDM_ID VARCHAR(20),@NOTES NVARCHAR(50),@DVDM_NAME NVARCHAR(200)  
242
 
243
 
244
 
245
 
246
IF(EXISTS(SELECT ID FROM dbo.PL_REQUEST_PROCESS WHERE REQ_ID=@p_REQ_ID AND PROCESS_ID='DVCM'))  
247
SET @PROCESS_PARENT='DVCM'  
248
 
249
SET @IS_NEXT=(SELECT dbo.FN_CHECK_LIMIT_TR_REQ(@p_REQ_ID,'GDDV'))  
250
--SET @IS_NEXT=1  
251
IF(@IS_NEXT =1)  
252
BEGIN  
253
SET @DVDM_ID=(SELECT DVDM_ID FROM dbo.TL_SYSROLE_LIMIT WHERE LIMIT_TYPE='PDPYC')  
254
SET @ROLE_ID=(SELECT ROLE_ID FROM dbo.TL_SYSROLE_LIMIT WHERE LIMIT_TYPE='PDPYC')  
255
SET @NOTES =(SELECT ROLE_DESC FROM dbo.TL_SYSROLE WHERE ROLE_ID=@ROLE_ID)  
256
SET @DVDM_NAME= (SELECT DVDM_NAME FROM dbo.CM_DVDM WHERE DVDM_ID=@DVDM_ID)  
257
SET @NOTES = @NOTES + ' ' + @DVDM_NAME  
258
 
259
INSERT INTO dbo.PL_REQUEST_PROCESS  
260
(  
261
REQ_ID,  
262
PROCESS_ID,  
263
STATUS,  
264
ROLE_USER,  
265
BRANCH_ID,  
266
CHECKER_ID,  
267
APPROVE_DT,  
268
PARENT_PROCESS_ID,  
269
IS_LEAF,  
270
COST_ID,  
271
DVDM_ID,  
272
NOTES,  
273
IS_HAS_CHILD  
274
)  
275
VALUES  
276
( @p_REQ_ID, -- REQ_ID - varchar(15)  
277
'GDK_PYC', -- PROCESS_ID - varchar(10)  
278
'U', -- STATUS - varchar(5)  
279
@ROLE_ID, -- ROLE_USER - varchar(50)  
280
'', -- BRANCH_ID - varchar(15)  
281
'', -- CHECKER_ID - varchar(15)  
282
NULL, -- APPROVE_DT - datetime  
283
@PROCESS_PARENT, -- PARENT_PROCESS_ID - varchar(10)  
284
'', -- IS_LEAF - varchar(1)  
285
'', -- COST_ID - varchar(15)  
286
@DVDM_ID, -- DVDM_ID - varchar(15)  
287
N'Chờ ' +@NOTES+N' phê duyệt', -- NOTES - nvarchar(500)  
288
0 -- IS_HAS_CHILD - bit  
289
)  
290
SET @PROCESS_PARENT= 'GDK_PYC'  
291
 
292
 
293
END  
294
 
295
 
296
 
297
 
298
 
299
INSERT INTO dbo.PL_REQUEST_PROCESS  
300
(  
301
REQ_ID,  
302
PROCESS_ID,  
303
STATUS,  
304
ROLE_USER,  
305
BRANCH_ID,  
306
CHECKER_ID,  
307
APPROVE_DT,  
308
PARENT_PROCESS_ID,  
309
IS_LEAF,  
310
COST_ID,  
311
DVDM_ID,  
312
NOTES,  
313
IS_HAS_CHILD  
314
)  
315
VALUES  
316
( @p_REQ_ID, -- REQ_ID - varchar(15)  
317
'APPROVE', -- PROCESS_ID - varchar(10)  
318
'U', -- STATUS - varchar(5)  
319
'', -- ROLE_USER - varchar(50)  
320
'', -- BRANCH_ID - varchar(15)  
321
'', -- CHECKER_ID - varchar(15)  
322
NULL, -- APPROVE_DT - datetime  
323
@PROCESS_PARENT, -- PARENT_PROCESS_ID - varchar(10)  
324
'N', -- IS_LEAF - varchar(1)  
325
'', -- COST_ID - varchar(15)  
326
'', -- DVDM_ID - varchar(15)  
327
N'Hoàn tất', -- NOTES - nvarchar(500)  
328
NULL -- IS_HAS_CHILD - bit  
329
)  
330
DECLARE @PROCESS_NEXT_ID VARCHAR(10)  
331
SET @PROCESS_NEXT_ID = (SELECT TOP 1 PROCESS_ID FROM dbo.PL_REQUEST_PROCESS WHERE REQ_ID=@p_REQ_ID AND PARENT_PROCESS_ID=@p_PROCESS_ID)  
332
 
333
 
334
 
335
UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='C' WHERE REQ_ID=@p_REQ_ID AND PARENT_PROCESS_ID=@p_PROCESS_ID  
336
UPDATE dbo.TR_REQUEST_DOC SET PROCESS_ID=@PROCESS_NEXT_ID WHERE REQ_ID=@p_REQ_ID  
337
 
338
END  
339
ELSE IF(@p_PROCESS_ID='DVCM')  
340
BEGIN  
341
 
342
DECLARE @DEP_ID VARCHAR(15),@BRANCH_ID VARCHAR(15),@PROCESS_NEXT VARCHAR(10)  
343
 
344
SET @DEP_ID=(SELECT SECUR_CODE FROM dbo.TL_USER WHERE TLNANME=@p_MAKER_ID)  
345
SET @BRANCH_ID=(SELECT TLSUBBRID FROM dbo.TL_USER WHERE TLNANME=@p_MAKER_ID)  
346
SET @ROLE_ID=(SELECT RoleName FROM dbo.TL_USER WHERE TLNANME=@p_MAKER_ID)  
347
-- LUCTV 07082020 KIEM TRA NEU ROLE KHAC ROLE GDDV THI PHAI CHUYEN ROLE THANH GDDV  
348
--IF(@ROLE_ID ='KTT')  
349
--BEGIN  
350
-- SET @ROLE_ID ='GDDV'  
351
--END  
352
SET @PROCESS_NEXT = (SELECT TOP 1 PROCESS_ID FROM dbo.PL_REQUEST_PROCESS WHERE REQ_ID=@p_REQ_ID AND PARENT_PROCESS_ID=@p_PROCESS_ID)  
353
 
354
 
355
UPDATE dbo.TR_REQUEST_COSTCENTER SET AUTH_STATUS='A',APPROVE_DT=GETDATE(),CHECKER_ID=@p_MAKER_ID WHERE REQ_ID=@p_REQ_ID AND COST_ID IN (SELECT PC.DVDM_ID FROM dbo.PL_COSTCENTER PC LEFT JOIN  
356
dbo.PL_COSTCENTER_DT PT ON PT.COST_ID=PC.COST_ID WHERE BRANCH_ID=@BRANCH_ID AND DEP_ID=@DEP_ID)  
357
UPDATE dbo.PL_REQUEST_PROCESS SET STATUS='P',CHECKER_ID=@p_MAKER_ID,  
358
APPROVE_DT=GETDATE() ,NOTES=N'Đơn vị chuyên môn xác nhận'  
359
WHERE REQ_ID=@p_REQ_ID AND( ROLE_USER=@ROLE_ID OR ROLE_USER IN (SELECT ROLE_NEW FROM dbo.TL_SYS_ROLE_MAPPING WHERE ROLE_OLD=@ROLE_ID))AND DVDM_ID IN (SELECT PC.DVDM_ID FROM dbo.PL_COSTCENTER PC LEFT JOIN  
360
dbo.PL_COSTCENTER_DT PT ON PT.COST_ID=PC.COST_ID  
361
WHERE BRANCH_ID=@BRANCH_ID AND DEP_ID=@DEP_ID)  
362
 
363
IF(NOT EXISTS( SELECT * FROM dbo.PL_REQUEST_PROCESS WHERE PROCESS_ID=@p_PROCESS_ID AND REQ_ID=@p_REQ_ID AND STATUS='C'))  
364
BEGIN  
365
 
366
UPDATE dbo.PL_REQUEST_PROCESS SET [STATUS]='C' WHERE PROCESS_ID=@PROCESS_NEXT AND REQ_ID=@p_REQ_ID  
367
UPDATE dbo.TR_REQUEST_DOC SET PROCESS_ID=@PROCESS_NEXT WHERE REQ_ID=@p_REQ_ID  
368
 
369
END  
370
END  
371
 
372
--IF(@PROCESS_NEXT='APPROVE')  
373
IF(EXISTS(SELECT * FROM TR_REQUEST_DOC WHERE PROCESS_ID ='APPROVE' AND REQ_ID =@p_REQ_ID))  
374
BEGIN  
375
DECLARE @TempTB TABLE  
376
(  
377
TOTAL_AMT DECIMAL(18,2),  
378
TRADE_ID VARCHAR(20),  
379
PLAN_ID VARCHAR(20)  
380
)  
381
INSERT INTO @TempTB  
382
SELECT SUM(DT.TOTAL_AMT) TOTAL_AMT,PLDT.TRADE_ID,PLDT.PLAN_ID FROM dbo.TR_REQUEST_DOC_DT DT  
383
LEFT JOIN dbo.PL_REQUEST_DOC_DT PLDT ON DT.PL_REQDT_ID=PLDT.REQDT_ID  
384
WHERE TRAN_TYPE_ID IN (SELECT TRAN_TYPE_ID FROM dbo.CM_TRAN_TYPE WHERE NOTES='XK') AND DT.REQ_DOC_ID=@p_REQ_ID  
385
GROUP BY PLDT.TRADE_ID,PLDT.PLAN_ID  
386
UPDATE dbo.PL_TRADEDETAIL SET AMT_EXE =AMT_EXE + (SELECT TOTAL_AMT FROM @TempTB WHERE [@TempTB].TRADE_ID=PL_TRADEDETAIL.TRADE_ID AND PL_TRADEDETAIL.PLAN_ID=[@TempTB].PLAN_ID) WHERE PL_TRADEDETAIL.TRADE_ID IN (SELECT TRADE_ID FROM @TempTB)  
387
 
388
IF(EXISTS(SELECT * FROM dbo.TR_REQUEST_DOC_DT WHERE REQ_DOC_ID=@p_REQ_ID AND TRAN_TYPE_ID NOT IN (SELECT TRN_TYPE FROM dbo.CM_TRAN_TYPE WHERE NOTES='XK')))  
389
EXEC dbo.TR_REQ_DOC_Ins_To_PO @p_TR_REQ_ID = @p_REQ_ID -- varchar(15)  
390
 
391
END  
392
END  
393
 
394
IF @@Error <> 0 GOTO ABORT  
395
COMMIT TRANSACTION  
396
SELECT 0 as Result, '' ErrorDesc  
397
RETURN 0  
398
ABORT:  
399
BEGIN  
400
ROLLBACK TRANSACTION  
401
SELECT -1 as Result, '' ErrorDesc  
402
RETURN -1  
403
End