[Home] [Help]
PACKAGE BODY: APPS.AHL_DI_PRO_TYPE_ASO_PUB
Source
1 PACKAGE BODY AHL_DI_PRO_TYPE_ASO_PUB AS
2 /* $Header: AHLPPTAB.pls 120.0 2005/05/26 00:07:57 appldev noship $ */
3 --
4 G_PKG_NAME VARCHAR2(30) := 'AHL_DI_PRO_TYPE_ASO_PUB';
5 --
6 /*---------------------------------------------------*/
7 /* procedure name: create_doc_type_assoc */
8 /* description : Creates new association record */
9 /* for doc type and sub type code */
10 /* */
11 /*---------------------------------------------------*/
12 --G_DEBUG VARCHAR2(1):=FND_PROFILE.VALUE('AHL_API_FILE_DEBUG_ON');
13 G_DEBUG VARCHAR2(1) := AHL_DEBUG_PUB.is_log_enabled;
14 PROCEDURE CREATE_DOC_TYPE_ASSOC
15 (
16 p_api_version IN NUMBER := 1.0 ,
17 p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
18 p_commit IN VARCHAR2 := FND_API.G_FALSE ,
19 p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
20 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
21 p_x_doc_type_assoc_tbl IN OUT NOCOPY doc_type_assoc_tbl ,
22 p_module_type IN VARCHAR2 ,
23 x_return_status OUT NOCOPY VARCHAR2 ,
24 x_msg_count OUT NOCOPY NUMBER ,
25 x_msg_data OUT NOCOPY VARCHAR2)
26 IS
27 --To retrieve the lookup code
28 CURSOR lookup_code_info(c_lookup_type VARCHAR2,
29 c_lookup_code VARCHAR2)
30 IS
31 SELECT lookup_code
32 FROM FND_LOOKUP_VALUES_VL
33 WHERE lookup_type = c_lookup_type
34 AND lookup_code = c_lookup_code
35 AND sysdate between start_date_active
36 AND nvl(end_date_active,sysdate);
37 --To retrieve the lookup code
38 CURSOR lookup_code_value(c_lookup_type VARCHAR2,
39 c_meaning VARCHAR2)
40 IS
41 SELECT lookup_code
42 FROM FND_LOOKUP_VALUES_VL
43 WHERE lookup_type = c_lookup_type
44 AND meaning = c_meaning
45 AND sysdate between start_date_active
46 AND nvl(end_date_active,sysdate);
47 --
48 l_api_name CONSTANT VARCHAR2(30) := 'CREATE_DOC_TYPE_ASSOC';
49 l_api_version CONSTANT NUMBER := 1.0;
50 l_num_rec NUMBER;
51 l_msg_count NUMBER;
52 l_msg_data VARCHAR2(2000);
53 l_return_status VARCHAR2(1);
54 l_doc_type_code VARCHAR2(30);
55 l_doc_sub_type_code VARCHAR2(30);
56 l_doc_type VARCHAR2(30) := 'AHL_DOC_TYPE';
57 l_sub_type VARCHAR2(30) := 'AHL_DOC_SUB_TYPE';
58 l_doc_type_assoc_tbl AHL_DI_PRO_TYPE_ASO_PVT.doc_type_assoc_tbl;
59 l_init_msg_list VARCHAR2(10) := FND_API.G_TRUE;
60
61
62
63 BEGIN
64 -- Standard Start of API savepoint
65 SAVEPOINT create_doc_type_assoc;
66 -- Check if API is called in debug mode. If yes, enable debug.
67 IF G_DEBUG='Y' THEN
68 AHL_DEBUG_PUB.enable_debug;
69
70 END IF;
71 -- Debug info.
72 IF G_DEBUG='Y' THEN
73 IF G_DEBUG='Y' THEN
74 AHL_DEBUG_PUB.debug( 'enter ahl_di_pro_type_aso_pub.Create Doc Type','+DOCTY+');
75
76 END IF;
77 END IF;
78 -- Standard call to check for call compatibility.
79 IF FND_API.to_boolean(l_init_msg_list)
80 THEN
81 FND_MSG_PUB.initialize;
82 END IF;
83 -- Initialize API return status to success
84 x_return_status := 'S';
85 -- Initialize message list if p_init_msg_list is set to TRUE.
86 IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
87 p_api_version,
88 l_api_name,G_PKG_NAME)
89 THEN
90 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
91 END IF;
92 --Start of API Body
93 IF p_x_doc_type_assoc_tbl.count > 0
94 THEN
95 FOR i IN p_x_doc_type_assoc_tbl.FIRST..p_x_doc_type_assoc_tbl.LAST
96 LOOP
97 -- Module Type is 'JSP' then make it null
98 IF (p_module_type = 'JSP') THEN
99 p_x_doc_type_assoc_tbl(i).doc_sub_type_code := null;
100 END IF;
101
102 -- For Doc Type Code, Description presents
103 IF p_x_doc_type_assoc_tbl(i).doc_type_desc IS NOT NULL
104 THEN
105 OPEN lookup_code_value(l_doc_type,
106 p_x_doc_type_assoc_tbl(i).doc_type_desc);
107 FETCH lookup_code_value INTO l_doc_type_code;
108 IF lookup_code_value%NOTFOUND
109 THEN
110 FND_MESSAGE.SET_NAME('AHL','AHL_DI_DOC_TYPE_CODE_NOT_EXIST');
111 FND_MSG_PUB.ADD;
112 ELSE
113 l_doc_type_assoc_tbl(i).doc_type_code := l_doc_type_code;
114 END IF;
115 CLOSE lookup_code_value;
116 END IF;
117 -- Doc Type Code Presents
118 IF p_x_doc_type_assoc_tbl(i).doc_type_code IS NOT NULL
119 THEN
120 l_doc_type_assoc_tbl(i).doc_type_code := p_x_doc_type_assoc_tbl(i).doc_type_code;
121 --Both missing
122 ELSE
123 FND_MESSAGE.SET_NAME('AHL','AHL_DI_DOC_TYPE_CODE_NULL');
124 FND_MSG_PUB.ADD;
125 END IF;
126
127 --For Sub Type Code
128 IF p_x_doc_type_assoc_tbl(i).doc_sub_type_desc IS NOT NULL
129 THEN
130 OPEN lookup_code_value(l_sub_type,
131 p_x_doc_type_assoc_tbl(i).doc_sub_type_desc);
132 FETCH lookup_code_value INTO l_doc_sub_type_code;
133 IF lookup_code_value%NOTFOUND
134 THEN
135 FND_MESSAGE.SET_NAME('AHL','AHL_DI_DOC_SUB_CODE_NOT_EXIST');
136 FND_MESSAGE.SET_TOKEN('SUBTYPE',p_x_doc_type_assoc_tbl(i).doc_sub_type_desc);
137 FND_MSG_PUB.ADD;
138 ELSE
139 l_doc_type_assoc_tbl(i).doc_sub_type_code := l_doc_sub_type_code;
140 END IF;
141 CLOSE lookup_code_value;
142 --Sub Type Code is available
143 ELSIF p_x_doc_type_assoc_tbl(i).doc_sub_type_code IS NOT NULL
144 THEN
145 l_doc_type_assoc_tbl(i).doc_sub_type_code := p_x_doc_type_assoc_tbl(i).doc_sub_type_code;
146 -- If both missing
147 ELSE
148 FND_MESSAGE.SET_NAME('AHL','AHL_DI_DOC_SUB_TYPE_CODE_NULL');
149 FND_MSG_PUB.ADD;
150 END IF;
151
152 l_doc_type_assoc_tbl(i).document_sub_type_id := p_x_doc_type_assoc_tbl(i).document_sub_type_id;
153 l_doc_type_assoc_tbl(i).attribute_category := p_x_doc_type_assoc_tbl(i).attribute_category;
154 l_doc_type_assoc_tbl(i).attribute1 := p_x_doc_type_assoc_tbl(i).attribute1;
155 l_doc_type_assoc_tbl(i).attribute2 := p_x_doc_type_assoc_tbl(i).attribute2;
156 l_doc_type_assoc_tbl(i).attribute3 := p_x_doc_type_assoc_tbl(i).attribute3;
157 l_doc_type_assoc_tbl(i).attribute4 := p_x_doc_type_assoc_tbl(i).attribute4;
158 l_doc_type_assoc_tbl(i).attribute5 := p_x_doc_type_assoc_tbl(i).attribute5;
159 l_doc_type_assoc_tbl(i).attribute6 := p_x_doc_type_assoc_tbl(i).attribute6;
160 l_doc_type_assoc_tbl(i).attribute7 := p_x_doc_type_assoc_tbl(i).attribute7;
161 l_doc_type_assoc_tbl(i).attribute8 := p_x_doc_type_assoc_tbl(i).attribute8;
162 l_doc_type_assoc_tbl(i).attribute9 := p_x_doc_type_assoc_tbl(i).attribute9;
163 l_doc_type_assoc_tbl(i).attribute10 := p_x_doc_type_assoc_tbl(i).attribute10;
164 l_doc_type_assoc_tbl(i).attribute11 := p_x_doc_type_assoc_tbl(i).attribute11;
165 l_doc_type_assoc_tbl(i).attribute12 := p_x_doc_type_assoc_tbl(i).attribute12;
166 l_doc_type_assoc_tbl(i).attribute13 := p_x_doc_type_assoc_tbl(i).attribute13;
167 l_doc_type_assoc_tbl(i).attribute14 := p_x_doc_type_assoc_tbl(i).attribute14;
168 l_doc_type_assoc_tbl(i).attribute15 := p_x_doc_type_assoc_tbl(i).attribute15;
169 l_doc_type_assoc_tbl(i).delete_flag := p_x_doc_type_assoc_tbl(i).delete_flag;
170 l_doc_type_assoc_tbl(i).object_version_number := p_x_doc_type_assoc_tbl(i).object_version_number;
171 --Standard check for messages
172 l_msg_count := FND_MSG_PUB.count_msg;
173
174 IF l_msg_count > 0 THEN
175 X_msg_count := l_msg_count;
176 IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
177 THEN
178 X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
179 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
180 ELSE
181 X_return_status := FND_API.G_RET_STS_ERROR;
182 RAISE FND_API.G_EXC_ERROR;
183 END IF;
184 END IF;
185 END LOOP;
186 END IF;
187
188
189 /*------------------------------------------------------------------------- */
190 /* procedure name: AHL_DI_PRO_TYPE_ASO_CUHK.Create_Doc_Type_Assoc_PRE */
191 /* AHL_DI_PRO_TYPE_ASO_VUHK.Create_Doc_Type_Assoc_PRE */
192 /* description : Added by Siddhartha to call User Hooks */
193 /* Date : Dec 20 2001 */
194 /*--------------------------------------------------------------------------*/
195
196
197 IF JTF_USR_HKS.Ok_to_Execute( 'AHL_DI_PRO_TYPE_ASO_PUB','CREATE_DOC_TYPE_ASSOC',
198 'B', 'C' ) then
199 IF G_DEBUG='Y' THEN
200 AHL_DEBUG_PUB.debug( 'Start AHL_DI_PRO_TYPE_ASO_CUHK.Create_Doc_Type_Assoc_PRE');
201
202 END IF;
203
204 AHL_DI_PRO_TYPE_ASO_CUHK.Create_Doc_Type_Assoc_PRE
205 (
206 p_x_doc_type_assoc_tbl => l_doc_type_assoc_tbl ,
207 x_return_status => l_return_status,
208 x_msg_count => l_msg_count ,
209 x_msg_data => l_msg_data
210 );
211
212 IF G_DEBUG='Y' THEN
213 AHL_DEBUG_PUB.debug( 'End AHL_DI_PRO_TYPE_ASO_CUHK.Create_Doc_Type_Assoc_PRE');
214
215 END IF;
216
217 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
218 RAISE FND_API.G_EXC_ERROR;
219 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
220 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
221 END IF;
222 END IF;
223
224 IF JTF_USR_HKS.Ok_to_Execute( 'AHL_DI_PRO_TYPE_ASO_PUB','CREATE_DOC_TYPE_ASSOC',
225 'B', 'V' ) then
226 IF G_DEBUG='Y' THEN
227 AHL_DEBUG_PUB.debug( 'Start AHL_DI_PRO_TYPE_ASO_VUHK.Create_Doc_Type_Assoc_PRE');
228
229 END IF;
230
231 AHL_DI_PRO_TYPE_ASO_VUHK.Create_Doc_Type_Assoc_PRE(
232 p_x_doc_type_assoc_tbl => l_doc_type_assoc_tbl,
233 X_RETURN_STATUS => l_return_status ,
234 X_MSG_COUNT => l_msg_count ,
235 X_MSG_DATA => l_msg_data );
236
237 IF G_DEBUG='Y' THEN
238 AHL_DEBUG_PUB.debug( 'End AHL_DI_PRO_TYPE_ASO_VUHK.Create_Doc_Type_Assoc_PRE');
239
240 END IF;
241
242 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
243 RAISE FND_API.G_EXC_ERROR;
244 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
245 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
246 END IF;
247
248 END IF;
249
250
251 /*---------------------------------------------------------*/
252 /* End ; Date : Dec 20 2001 */
253 /*---------------------------------------------------------*/
254
255
256 -- Call the Private API
257 AHL_DI_PRO_TYPE_ASO_PVT.CREATE_DOC_TYPE_ASSOC
258 (
259 p_api_version => 1.0,
260 p_init_msg_list => l_init_msg_list,
261 p_commit => p_commit,
262 p_validate_only => p_validate_only,
263 p_validation_level => p_validation_level,
264 p_x_doc_type_assoc_tbl => l_doc_type_assoc_tbl,
265 x_return_status => l_return_status,
266 x_msg_count => l_msg_count,
267 x_msg_data => l_msg_data
268 );
269
270 -- Standard check for messages assigns out variable
271 l_msg_count := FND_MSG_PUB.count_msg;
272
273 IF l_msg_count > 0 THEN
274 X_msg_count := l_msg_count;
275 IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
276 THEN
277 X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
278 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
279 ELSE
280 X_return_status := FND_API.G_RET_STS_ERROR;
281 RAISE FND_API.G_EXC_ERROR;
282 END IF;
283 ELSE
284 FOR i IN 1..l_doc_type_assoc_tbl.COUNT
285 LOOP
286 p_x_doc_type_assoc_tbl(i).document_sub_type_id := l_doc_type_assoc_tbl(i).document_sub_type_id;
287 END LOOP;
288 END IF;
289
290
291 /*----------------------------------------------------------------------------- */
292 /* procedure name: AHL_DI_PRO_TYPE_ASO_VUHK.Create_Doc_Type_Assoc_POST */
293 /* AHL_DI_PRO_TYPE_ASO_CUHK.Create_Doc_Type_Assoc_POST */
294 /* */
295 /* description : Added by siddhartha to call User Hooks */
296 /* Date : Dec 20 2001 */
297 /*------------------------------------------------------------------------------*/
298
299
300
301 IF JTF_USR_HKS.Ok_to_Execute( 'AHL_DI_PRO_TYPE_ASO_PUB','CREATE_DOC_TYPE_ASSOC',
302 'A', 'V' ) then
303 IF G_DEBUG='Y' THEN
304 AHL_DEBUG_PUB.debug( 'Start AHL_DI_PRO_TYPE_ASO_VUHK.Create_Doc_Type_Assoc_POST');
305
306 END IF;
307
308 AHL_DI_PRO_TYPE_ASO_VUHK.Create_Doc_Type_Assoc_POST(
309 p_doc_type_assoc_tbl => l_doc_type_assoc_tbl,
310 X_RETURN_STATUS => l_return_status ,
311 X_MSG_COUNT => l_msg_count ,
312 X_MSG_DATA => l_msg_data );
313
314 IF G_DEBUG='Y' THEN
318
315 AHL_DEBUG_PUB.debug( 'End AHL_DI_PRO_TYPE_ASO_VUHK.Create_Doc_Type_Assoc_POST');
316
317 END IF;
319 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
320 RAISE FND_API.G_EXC_ERROR;
321 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
322 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
323 END IF;
324
325
326 END IF;
327
328 IF JTF_USR_HKS.Ok_to_Execute( 'AHL_DI_PRO_TYPE_ASO_PUB','CREATE_DOC_TYPE_ASSOC',
329 'A', 'C' ) then
330 IF G_DEBUG='Y' THEN
331 AHL_DEBUG_PUB.debug( 'Start AHL_DI_PRO_TYPE_ASO_CUHK.Create_Doc_Type_Assoc_POST');
332
333 END IF;
334
335 AHL_DI_PRO_TYPE_ASO_CUHK.Create_Doc_Type_Assoc_POST(
336
337 p_doc_type_assoc_tbl => l_doc_type_assoc_tbl,
338 X_RETURN_STATUS => l_return_status ,
339 X_MSG_COUNT => l_msg_count ,
340 X_MSG_DATA => l_msg_data );
341
342 IF G_DEBUG='Y' THEN
343 AHL_DEBUG_PUB.debug( 'End AHL_DI_PRO_TYPE_ASO_CUHK.Create_Doc_Type_Assoc_POST');
344
345 END IF;
346
347 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
348 RAISE FND_API.G_EXC_ERROR;
349 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
350 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
351 END IF;
352
353 END IF;
354
355 /*---------------------------------------------------------*/
356 /* End ; Date : Dec 20 2001 */
357 /*---------------------------------------------------------*/
358
359
360 --Standard check for commit
361 IF FND_API.TO_BOOLEAN(p_commit) THEN
362 COMMIT;
363 END IF;
364 -- Debug info
365 IF G_DEBUG='Y' THEN
366 AHL_DEBUG_PUB.debug( 'End of public api Create Doc Type','+DOCTY+');
367
368 END IF;
369 -- Check if API is called in debug mode. If yes, disable debug.
370 IF G_DEBUG='Y' THEN
371 AHL_DEBUG_PUB.disable_debug;
372
373 END IF;
374
375 EXCEPTION
376 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
377 ROLLBACK TO create_doc_type_assoc;
378 X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
379 FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
380 p_count => x_msg_count,
381 p_data => x_msg_data);
382 IF G_DEBUG='Y' THEN
383 AHL_DEBUG_PUB.log_app_messages (x_msg_count, x_msg_data, 'ERROR' );
384 AHL_DEBUG_PUB.debug( 'ahl_di_pro_type_aso_pub.Create Doc Type','+DOCTY+');
385
386
387 -- Check if API is called in debug mode. If yes, disable debug.
388 AHL_DEBUG_PUB.disable_debug;
389
390 END IF;
391
392 WHEN FND_API.G_EXC_ERROR THEN
393 ROLLBACK TO create_doc_type_assoc;
394 X_return_status := FND_API.G_RET_STS_ERROR;
395 FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
396 p_count => x_msg_count,
397 p_data => X_msg_data);
398 -- Debug info.
399 IF G_DEBUG='Y' THEN
400 AHL_DEBUG_PUB.log_app_messages (x_msg_count, x_msg_data, 'UNEXPECTED ERROR' );
401 AHL_DEBUG_PUB.debug( 'ahl_di_pro_type_aso_pub.Create Doc Type','+DOCTY+');
402
403 -- Check if API is called in debug mode. If yes, disable debug.
404 AHL_DEBUG_PUB.disable_debug;
405
406 END IF;
407
408 WHEN OTHERS THEN
409 ROLLBACK TO create_doc_type_assoc;
410 X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
411 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
412 THEN
413 fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_PRO_TYPE_ASO_PUB',
414 p_procedure_name => 'CREATE_DOC_TYPE_ASSOC',
415 p_error_text => SUBSTR(SQLERRM,1,240));
416 END IF;
417 FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
418 p_count => x_msg_count,
419 p_data => X_msg_data);
420
421 -- Debug info.
422 IF G_DEBUG='Y' THEN
423 AHL_DEBUG_PUB.log_app_messages (x_msg_count, x_msg_data, 'SQL ERROR' );
424 AHL_DEBUG_PUB.debug( 'ahl_di_pro_type_aso_pub.Create Doc Type','+DOCTY+');
425
426
427 -- Check if API is called in debug mode. If yes, disable debug.
428 AHL_DEBUG_PUB.disable_debug;
429
430 END IF;
431
432 END CREATE_DOC_TYPE_ASSOC;
433
434 /*---------------------------------------------------*/
435 /* procedure name: modify_doc_type_assoc */
436 /* description : Updates the existing association */
437 /* record, and removes as well */
438 /* */
439 /*---------------------------------------------------*/
440 PROCEDURE MODIFY_DOC_TYPE_ASSOC
441 (
442 p_api_version IN NUMBER := 1.0 ,
443 p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
444 p_commit IN VARCHAR2 := FND_API.G_FALSE ,
445 p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
446 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
450 x_msg_count OUT NOCOPY NUMBER ,
447 p_x_doc_type_assoc_tbl IN OUT NOCOPY doc_type_assoc_tbl ,
448 p_module_type IN VARCHAR2 ,
449 x_return_status OUT NOCOPY VARCHAR2 ,
451 x_msg_data OUT NOCOPY VARCHAR2
452 )
453 IS
454 CURSOR lookup_code_info(c_lookup_type VARCHAR2,
455 c_lookup_code VARCHAR2)
456 IS
457 SELECT lookup_code
458 FROM FND_LOOKUP_VALUES_VL
459 WHERE lookup_type = c_lookup_type
460 AND lookup_code = c_lookup_code
461 AND sysdate between start_date_active
462 AND nvl(end_date_active,sysdate);
463 -- To retrieve lookup code
464 CURSOR lookup_code_value(c_lookup_type VARCHAR2,
465 c_meaning VARCHAR2)
466 IS
467 SELECT lookup_code
468 FROM FND_LOOKUP_VALUES_VL
469 WHERE lookup_type = c_lookup_type
470 AND meaning = c_meaning
471 AND sysdate between start_date_active
472 AND nvl(end_date_active,sysdate);
473
474 l_api_name CONSTANT VARCHAR2(30) := 'MODIFY_DOC_TYPE_ASSOC';
475 l_api_version CONSTANT NUMBER := 1.0;
476 l_num_rec NUMBER;
477 l_msg_count NUMBER;
478 l_msg_data VARCHAR2(2000);
479 l_return_status VARCHAR2(1);
480 l_doc_type_code VARCHAR2(30);
481 l_doc_sub_type_code VARCHAR2(30);
482 l_doc_type VARCHAR2(30) := 'AHL_DOC_TYPE';
483 l_sub_type VARCHAR2(30) := 'AHL_DOC_SUB_TYPE';
484 l_doc_type_assoc_tbl AHL_DI_PRO_TYPE_ASO_PVT.doc_type_assoc_tbl;
485 l_init_msg_list VARCHAR2(10) := FND_API.G_TRUE;
486
487
488
489 BEGIN
490 -- Standard Start of API savepoint
491 SAVEPOINT modify_doc_type_assoc;
492 -- Check if API is called in debug mode. If yes, enable debug.
493 IF G_DEBUG='Y' THEN
494 AHL_DEBUG_PUB.enable_debug;
495
496 END IF;
497 -- Debug info.
498 IF G_DEBUG='Y' THEN
499 IF G_DEBUG='Y' THEN
500 AHL_DEBUG_PUB.debug( 'enter ahl_di_pro_type_aso_pub.Modify Doc Type','+DOCTY+');
501
502 END IF;
503 END IF;
504 -- Standard call to check for call compatibility.
505 IF FND_API.to_boolean(l_init_msg_list)
506 THEN
507 FND_MSG_PUB.initialize;
508 END IF;
509 -- Initialize API return status to success
510 x_return_status := 'S';
511 -- Initialize message list if p_init_msg_list is set to TRUE.
512 IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
513 p_api_version,
514 l_api_name,G_PKG_NAME)
515 THEN
516 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
517 END IF;
518 --Start of API Body
519 IF p_x_doc_type_assoc_tbl.count > 0
520 THEN
521 FOR i IN p_x_doc_type_assoc_tbl.FIRST..p_x_doc_type_assoc_tbl.LAST
522 LOOP
523 -- If module type is 'JSP' then make it null
524 IF (p_module_type = 'JSP') THEN
525 p_x_doc_type_assoc_tbl(i).doc_type_desc := null;
526 p_x_doc_type_assoc_tbl(i).doc_sub_type_code := null;
527 END IF;
528 -- For Doc Type Code
529 IF p_x_doc_type_assoc_tbl(i).doc_type_code IS NOT NULL
530 THEN
531 OPEN lookup_code_info(l_doc_type,
532 p_x_doc_type_assoc_tbl(i).doc_type_code);
533 FETCH lookup_code_info INTO l_doc_type_code;
534 IF lookup_code_info%NOTFOUND
535 THEN
536 FND_MESSAGE.SET_NAME('AHL','AHL_DI_DOC_TYPE_CODE_NOT_EXIST');
537 FND_MSG_PUB.ADD;
538 ELSE
539 l_doc_type_assoc_tbl(i).doc_type_code := l_doc_type_code;
540 END IF;
541 CLOSE lookup_code_info;
542 -- Code is missing
543 ELSE
544 l_doc_type_assoc_tbl(i).doc_type_code := p_x_doc_type_assoc_tbl(i).doc_type_code;
545 END IF;
546
547 --For Doc Sub Type
548 IF p_x_doc_type_assoc_tbl(i).doc_sub_type_desc IS NOT NULL
549 THEN
550 OPEN lookup_code_value(l_sub_type,
551 p_x_doc_type_assoc_tbl(i).doc_sub_type_desc);
552 FETCH lookup_code_value INTO l_doc_sub_type_code;
553 IF lookup_code_value%NOTFOUND
554 THEN
555 FND_MESSAGE.SET_NAME('AHL','AHL_DI_DOC_SUB_CODE_NOT_EXIST');
556 FND_MESSAGE.SET_TOKEN('SUBTYPE',p_x_doc_type_assoc_tbl(i).doc_sub_type_desc);
557 FND_MSG_PUB.ADD;
558 ELSE
559 l_doc_type_assoc_tbl(i).doc_sub_type_code := l_doc_sub_type_code;
560 END IF;
561 CLOSE lookup_code_value;
562 -- If Sub type desc missing
563 ELSIF p_x_doc_type_assoc_tbl(i).doc_sub_type_code IS NOT NULL
564 THEN
565 l_doc_type_assoc_tbl(i).doc_sub_type_code := p_x_doc_type_assoc_tbl(i).doc_sub_type_code;
566 ELSE
567 FND_MESSAGE.SET_NAME('AHL','AHL_DI_DOC_SUB_TYPE_CODE_NULL');
568 FND_MSG_PUB.ADD;
569 END IF;
570 --
571 l_doc_type_assoc_tbl(i).document_sub_type_id := p_x_doc_type_assoc_tbl(i).document_sub_type_id;
575 l_doc_type_assoc_tbl(i).attribute3 := p_x_doc_type_assoc_tbl(i).attribute3;
572 l_doc_type_assoc_tbl(i).attribute_category := p_x_doc_type_assoc_tbl(i).attribute_category;
573 l_doc_type_assoc_tbl(i).attribute1 := p_x_doc_type_assoc_tbl(i).attribute1;
574 l_doc_type_assoc_tbl(i).attribute2 := p_x_doc_type_assoc_tbl(i).attribute2;
576 l_doc_type_assoc_tbl(i).attribute4 := p_x_doc_type_assoc_tbl(i).attribute4;
577 l_doc_type_assoc_tbl(i).attribute5 := p_x_doc_type_assoc_tbl(i).attribute5;
578 l_doc_type_assoc_tbl(i).attribute6 := p_x_doc_type_assoc_tbl(i).attribute6;
579 l_doc_type_assoc_tbl(i).attribute7 := p_x_doc_type_assoc_tbl(i).attribute7;
580 l_doc_type_assoc_tbl(i).attribute8 := p_x_doc_type_assoc_tbl(i).attribute8;
581 l_doc_type_assoc_tbl(i).attribute9 := p_x_doc_type_assoc_tbl(i).attribute9;
582 l_doc_type_assoc_tbl(i).attribute10 := p_x_doc_type_assoc_tbl(i).attribute10;
583 l_doc_type_assoc_tbl(i).attribute11 := p_x_doc_type_assoc_tbl(i).attribute11;
584 l_doc_type_assoc_tbl(i).attribute12 := p_x_doc_type_assoc_tbl(i).attribute12;
585 l_doc_type_assoc_tbl(i).attribute13 := p_x_doc_type_assoc_tbl(i).attribute13;
586 l_doc_type_assoc_tbl(i).attribute14 := p_x_doc_type_assoc_tbl(i).attribute14;
587 l_doc_type_assoc_tbl(i).attribute15 := p_x_doc_type_assoc_tbl(i).attribute15;
588 l_doc_type_assoc_tbl(i).delete_flag := p_x_doc_type_assoc_tbl(i).delete_flag;
589 l_doc_type_assoc_tbl(i).object_version_number := p_x_doc_type_assoc_tbl(i).object_version_number;
590 --Standard check for messages
591 l_msg_count := FND_MSG_PUB.count_msg;
592
593 IF l_msg_count > 0 THEN
594 X_msg_count := l_msg_count;
595 IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
596 THEN
597 X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
598 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
599 ELSE
600 X_return_status := FND_API.G_RET_STS_ERROR;
601 RAISE FND_API.G_EXC_ERROR;
602 END IF;
603 END IF;
604 END LOOP;
605 END IF;
606
607
608
609 /*------------------------------------------------------------------------*/
610 /* procedure name: AHL_DI_PRO_TYPE_ASO_CUHK.MODIFY_DOC_TYPE_ASSOC_PRE */
611 /* AHL_DI_PRO_TYPE_ASO_VUHK.MODIFY_DOC_TYPE_ASSOC_PRE */
612 /* description : Added by siddhartha to call User Hooks */
613 /* Date : Dec 20 2001 */
614 /*------------------------------------------------------------------------*/
615
616
617 IF JTF_USR_HKS.Ok_to_Execute( 'AHL_DI_PRO_TYPE_ASO_PUB','MODIFY_DOC_TYPE_ASSOC',
618 'B', 'C' ) then
619 IF G_DEBUG='Y' THEN
620 AHL_DEBUG_PUB.debug( 'Start AHL_DI_PRO_TYPE_ASO_CUHK.MODIFY_DOC_TYPE_ASSOC_PRE');
621
622 END IF;
623
624
625 AHL_DI_PRO_TYPE_ASO_CUHK.MODIFY_DOC_TYPE_ASSOC_PRE(
626 p_x_doc_type_assoc_tbl => l_doc_type_assoc_tbl ,
627 X_RETURN_STATUS => l_return_status ,
628 X_MSG_COUNT => l_msg_count ,
629 X_MSG_DATA => l_msg_data );
630
631 IF G_DEBUG='Y' THEN
632 AHL_DEBUG_PUB.debug( 'End AHL_DI_PRO_TYPE_ASO_CUHK.MODIFY_DOC_TYPE_ASSOC_PRE');
633
634 END IF;
635
636 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
637 RAISE FND_API.G_EXC_ERROR;
638 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
639 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
640 END IF;
641
642
643
644 END IF;
645
646 IF JTF_USR_HKS.Ok_to_Execute( 'AHL_DI_PRO_TYPE_ASO_PUB','MODIFY_DOC_TYPE_ASSOC',
647 'B', 'V' ) then
648 IF G_DEBUG='Y' THEN
649 AHL_DEBUG_PUB.debug( 'Start AHL_DI_PRO_TYPE_ASO_VUHK.MODIFY_DOC_TYPE_ASSOC_PRE');
650
651 END IF;
652
653 AHL_DI_PRO_TYPE_ASO_VUHK.MODIFY_DOC_TYPE_ASSOC_PRE(
654 p_x_doc_type_assoc_tbl => l_doc_type_assoc_tbl ,
655 X_RETURN_STATUS => l_return_status ,
656 X_MSG_COUNT => l_msg_count ,
657 X_MSG_DATA => l_msg_data );
658
659 IF G_DEBUG='Y' THEN
660 AHL_DEBUG_PUB.debug( 'End AHL_DI_PRO_TYPE_ASO_VUHK.MODIFY_DOC_TYPE_ASSOC_PRE');
661
662 END IF;
663
664 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
665 RAISE FND_API.G_EXC_ERROR;
666 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
667 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
668 END IF;
669 END IF;
670
671 /*---------------------------------------------------------*/
672 /* End ; Date : Dec 10 2001 */
673 /*---------------------------------------------------------*/
674
675
676
677 -- Call the Private API
678 AHL_DI_PRO_TYPE_ASO_PVT.MODIFY_DOC_TYPE_ASSOC
679 (
680 p_api_version => 1.0,
681 p_init_msg_list => l_init_msg_list,
682 p_commit => p_commit,
683 p_validate_only => p_validate_only,
684 p_validation_level => p_validation_level,
685 p_x_doc_type_assoc_tbl => l_doc_type_assoc_tbl,
686 x_return_status => l_return_status,
687 x_msg_count => l_msg_count,
691 l_msg_count := FND_MSG_PUB.count_msg;
688 x_msg_data => l_msg_data
689 );
690
692
693 IF l_msg_count > 0 THEN
694 X_msg_count := l_msg_count;
695 IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
696 THEN
697 X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
698 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
699 ELSE
700 X_return_status := FND_API.G_RET_STS_ERROR;
701 RAISE FND_API.G_EXC_ERROR;
702 END IF;
703 END IF;
704
705
706 /*------------------------------------------------------------------------*/
707 /* procedure name: AHL_DI_PRO_TYPE_ASO_VUHK.MODIFY_DOC_TYPE_ASSOC_POST */
708 /* AHL_DI_PRO_TYPE_ASO_CUHK.MODIFY_DOC_TYPE_ASSOC_POST */
709 /* description : Added by siddhartha to call User Hooks */
710 /* Date : Dec 20 2001 */
711 /*------------------------------------------------------------------------*/
712
713
714 IF JTF_USR_HKS.Ok_to_Execute( 'AHL_DI_PRO_TYPE_ASO_PUB','MODIFY_DOC_TYPE_ASSOC',
715 'A', 'V' ) then
716 IF G_DEBUG='Y' THEN
717 AHL_DEBUG_PUB.debug( 'Start AHL_DI_PRO_TYPE_ASO_VUHK.MODIFY_DOC_TYPE_ASSOC_POST');
718
719 END IF;
720
721 AHL_DI_PRO_TYPE_ASO_VUHK.MODIFY_DOC_TYPE_ASSOC_POST(
722
723 p_doc_type_assoc_tbl => l_doc_type_assoc_tbl ,
724 X_RETURN_STATUS => l_return_status ,
725 X_MSG_COUNT => l_msg_count ,
726 X_MSG_DATA => l_msg_data );
727
728 IF G_DEBUG='Y' THEN
729 AHL_DEBUG_PUB.debug( 'End AHL_DI_PRO_TYPE_ASO_VUHK.MODIFY_DOC_TYPE_ASSOC_POST');
730
731 END IF;
732
733 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
734 RAISE FND_API.G_EXC_ERROR;
735 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
736 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
737 END IF;
738
739 END IF;
740
741 IF JTF_USR_HKS.Ok_to_Execute( 'AHL_DI_PRO_TYPE_ASO_PUB','MODIFY_DOC_TYPE_ASSOC',
742 'A', 'C' ) then
743 IF G_DEBUG='Y' THEN
744 AHL_DEBUG_PUB.debug( 'Start AHL_DI_PRO_TYPE_ASO_CUHK.MODIFY_DOC_TYPE_ASSOC_POST');
745
746 END IF;
747
748 AHL_DI_PRO_TYPE_ASO_CUHK.MODIFY_DOC_TYPE_ASSOC_POST(
749 p_doc_type_assoc_tbl => l_doc_type_assoc_tbl ,
750 X_RETURN_STATUS => l_return_status ,
751 X_MSG_COUNT => l_msg_count ,
752 X_MSG_DATA => l_msg_data );
753
754 IF G_DEBUG='Y' THEN
755 AHL_DEBUG_PUB.debug( 'End AHL_DI_PRO_TYPE_ASO_CUHK.MODIFY_DOC_TYPE_ASSOC_POST');
756
757 END IF;
758
759 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
760 RAISE FND_API.G_EXC_ERROR;
761 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
762 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
763 END IF;
764
765
766 END IF;
767
768
769 /*---------------------------------------------------------*/
770 /* End ; Date : Dec 20 2001 */
771 /*---------------------------------------------------------*/
772
773
774
775
776 --Standard check for commit
777 IF FND_API.TO_BOOLEAN(p_commit) THEN
778 COMMIT;
779 END IF;
780 -- Debug info
781 IF G_DEBUG='Y' THEN
782 AHL_DEBUG_PUB.debug( 'End of public api Modify Doc Type','+DOCTY+');
783
784 END IF;
785 -- Check if API is called in debug mode. If yes, disable debug.
786 IF G_DEBUG='Y' THEN
787 AHL_DEBUG_PUB.disable_debug;
788
789 END IF;
790
791 EXCEPTION
792 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
793 ROLLBACK TO modify_doc_type_assoc;
794 X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
795 FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
796 p_count => x_msg_count,
797 p_data => x_msg_data);
798 IF G_DEBUG='Y' THEN
799 AHL_DEBUG_PUB.log_app_messages (x_msg_count, x_msg_data, 'ERROR' );
800 AHL_DEBUG_PUB.debug( 'ahl_di_pro_type_aso_pub.Modify Doc Type','+DOCTY+');
801
802
803 -- Check if API is called in debug mode. If yes, disable debug.
804 AHL_DEBUG_PUB.disable_debug;
805
806 END IF;
807
808 WHEN FND_API.G_EXC_ERROR THEN
809 ROLLBACK TO modify_doc_type_assoc;
810 X_return_status := FND_API.G_RET_STS_ERROR;
811 FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
812 p_count => x_msg_count,
813 p_data => X_msg_data);
814 -- Debug info.
815 IF G_DEBUG='Y' THEN
816 AHL_DEBUG_PUB.log_app_messages (x_msg_count, x_msg_data, 'UNEXPECTED ERROR' );
817 AHL_DEBUG_PUB.debug( 'ahl_di_pro_type_aso_pub.Modify Doc Type','+DOCTY+');
818
819
820 -- Check if API is called in debug mode. If yes, disable debug.
821 AHL_DEBUG_PUB.disable_debug;
822
823 END IF;
824
825 WHEN OTHERS THEN
826 ROLLBACK TO modify_doc_type_assoc;
827 X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
831 p_procedure_name => 'MODIFY_DOC_TYPE_ASSOC',
828 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
829 THEN
830 fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_PRO_TYPE_ASO_PUB',
832 p_error_text => SUBSTR(SQLERRM,1,240));
833 END IF;
834 FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
835 p_count => x_msg_count,
836 p_data => X_msg_data);
837
838 -- Debug info.
839 IF G_DEBUG='Y' THEN
840 AHL_DEBUG_PUB.log_app_messages (x_msg_count, x_msg_data, 'SQL ERROR' );
841 AHL_DEBUG_PUB.debug( 'ahl_di_pro_type_aso_pub.Modify Doc Type','+DOCTY+');
842
843
844 -- Check if API is called in debug mode. If yes, disable debug.
845 AHL_DEBUG_PUB.disable_debug;
846
847 END IF;
848
849 END MODIFY_DOC_TYPE_ASSOC;
850
851 END AHL_DI_PRO_TYPE_ASO_PUB;
852