60:
61: SAVEPOINT getRouteClassifications;
62:
63: -- Standard call to check for call compatibility.
64: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
65: p_api_version_number,
66: l_api_name,
67: G_PKG_NAME)
68: THEN
65: p_api_version_number,
66: l_api_name,
67: G_PKG_NAME)
68: THEN
69: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
70:
71: END IF;
72:
73:
72:
73:
74: --Initialize the message list if p_init_msg_list is set to TRUE
75:
76: If FND_API.to_Boolean(p_init_msg_list) THEN
77: FND_MSG_PUB.initialize;
78: END IF;
79:
80: --Initialize API status return
77: FND_MSG_PUB.initialize;
78: END IF;
79:
80: --Initialize API status return
81: x_return_status := FND_API.G_RET_STS_SUCCESS;
82:
83: routeClassifications(1) := 'Gold';
84:
85: routeClassifications(2):= 'Silver';
90:
91:
92: EXCEPTION
93:
94: WHEN FND_API.G_EXC_ERROR THEN
95: ROLLBACK TO getRouteClassifications;
96: x_return_status := FND_API.G_RET_STS_ERROR ;
97: FND_MSG_PUB.Count_And_Get
98:
92: EXCEPTION
93:
94: WHEN FND_API.G_EXC_ERROR THEN
95: ROLLBACK TO getRouteClassifications;
96: x_return_status := FND_API.G_RET_STS_ERROR ;
97: FND_MSG_PUB.Count_And_Get
98:
99: ( p_count => x_msg_count,p_data => x_msg_data);
100:
97: FND_MSG_PUB.Count_And_Get
98:
99: ( p_count => x_msg_count,p_data => x_msg_data);
100:
101: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
102: ROLLBACK TO getRouteClassifications;
103: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
104:
105:
99: ( p_count => x_msg_count,p_data => x_msg_data);
100:
101: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
102: ROLLBACK TO getRouteClassifications;
103: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
104:
105:
106: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
107:
106: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
107:
108: WHEN OTHERS THEN
109: ROLLBACK TO getRouteClassifications;
110: x_return_status := FND_API.G_RET_STS_ERROR;
111: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
112:
113: FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME , l_api_name);
114: END IF;
154: SAVEPOINT delete_item_batch;
155:
156:
157: -- Standard call to check for call compatibility.
158: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
159:
160: p_api_version_number,
161: l_api_name,
162: G_PKG_NAME)
161: l_api_name,
162: G_PKG_NAME)
163:
164: THEN
165: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
166: END IF;
167:
168: --Initialize the message list if p_init_msg_list is set to TRUE
169:
166: END IF;
167:
168: --Initialize the message list if p_init_msg_list is set to TRUE
169:
170: If FND_API.to_Boolean(p_init_msg_list) THEN
171: FND_MSG_PUB.initialize;
172: END IF;
173:
174: --Initialize API status return
171: FND_MSG_PUB.initialize;
172: END IF;
173:
174: --Initialize API status return
175: x_return_status := FND_API.G_RET_STS_SUCCESS;
176:
177: --Actual API starts here
178:
179: if ( p_class_ids_tbl.count <> 0 ) then
199: -- x_msg_count => l_count,
200: -- x_msg_data => l_data);
201:
202:
203: --if (l_return_status = FND_API.G_RET_STS_ERROR) then
204:
205: -- select name into l_undeleted_class_name_1 from iem_route_classifications where route_classification_id=p_class_ids_tbl(i);
206:
207: -- l_undeleted_class_name := l_undeleted_class_name||l_undeleted_class_name_1||', ';
205: -- select name into l_undeleted_class_name_1 from iem_route_classifications where route_classification_id=p_class_ids_tbl(i);
206:
207: -- l_undeleted_class_name := l_undeleted_class_name||l_undeleted_class_name_1||', ';
208:
209: --elsif (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
210: -- raise IEM_UNEXPT_ERR_DELETE_FOLDER;
211:
212: --else
213: -- then update priority in iem_account_route_class before deleting an account_route
251:
252: --add names of un_deleted classifications into message
253: if l_undeleted_class_name is not null then
254: l_undeleted_class_name := RTRIM(l_undeleted_class_name, ', ');
255: x_return_status := FND_API.G_RET_STS_ERROR;
256: FND_MESSAGE.SET_NAME('IEM', 'IEM_RT_CLASS_FAILED_DEL_CLASS');
257: FND_MESSAGE.SET_TOKEN('CLASSIFICATION', l_undeleted_class_name);
258: FND_MSG_PUB.ADD;
259: end if;
259: end if;
260:
261:
262: --Standard check of p_commit
263: IF FND_API.to_Boolean(p_commit) THEN
264: COMMIT WORK;
265: END IF;
266:
267: FND_MSG_PUB.Count_And_Get
274: EXCEPTION
275:
276: --WHEN IEM_UNEXPT_ERR_DELETE_FOLDER THEN
277: -- ROLLBACK TO delete_item_batch;
278: -- x_return_status := FND_API.G_RET_STS_ERROR;
279: --FND_MESSAGE.SET_NAME('IEM', 'IEM_UNEXPT_ERR_DELETE_FOLDER');
280: --FND_MSG_PUB.ADD;
281: -- FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
282:
280: --FND_MSG_PUB.ADD;
281: -- FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
282:
283:
284: WHEN FND_API.G_EXC_ERROR THEN
285: ROLLBACK TO delete_item_batch;
286: x_return_status := FND_API.G_RET_STS_ERROR ;
287:
288: FND_MSG_PUB.Count_And_Get
282:
283:
284: WHEN FND_API.G_EXC_ERROR THEN
285: ROLLBACK TO delete_item_batch;
286: x_return_status := FND_API.G_RET_STS_ERROR ;
287:
288: FND_MSG_PUB.Count_And_Get
289: ( p_count => x_msg_count,p_data => x_msg_data);
290:
288: FND_MSG_PUB.Count_And_Get
289: ( p_count => x_msg_count,p_data => x_msg_data);
290:
291:
292: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
293:
294: ROLLBACK TO delete_item_batch;
295: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
296: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
291:
292: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
293:
294: ROLLBACK TO delete_item_batch;
295: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
296: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
297:
298: WHEN OTHERS THEN
299: ROLLBACK TO delete_item_batch;
296: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
297:
298: WHEN OTHERS THEN
299: ROLLBACK TO delete_item_batch;
300: x_return_status := FND_API.G_RET_STS_ERROR;
301:
302: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
303: FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME , l_api_name);
304: END IF;
336:
337: l_userid NUMBER:=TO_NUMBER (FND_PROFILE.VALUE('USER_ID')) ;
338: l_login NUMBER:=TO_NUMBER (FND_PROFILE.VALUE('LOGIN_ID')) ;
339:
340: l_return_status VARCHAR2(20) := FND_API.G_RET_STS_SUCCESS;
341: l_msg_count NUMBER := 0;
342:
343: l_msg_data VARCHAR2(2000);
344:
351:
352: SAVEPOINT create_item_wrap;
353:
354: -- Standard call to check for call compatibility.
355: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
356: p_api_version_number,
357: l_api_name,
358:
359:
358:
359:
360: G_PKG_NAME)
361: THEN
362: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
363: END IF;
364:
365: -- Initialize message list if p_init_msg_list is set to TRUE.
366:
363: END IF;
364:
365: -- Initialize message list if p_init_msg_list is set to TRUE.
366:
367: IF FND_API.to_Boolean( p_init_msg_list )
368: THEN
369: FND_MSG_PUB.initialize;
370: END IF;
371:
370: END IF;
371:
372:
373: -- Initialize API return status to SUCCESS
374: x_return_status := FND_API.G_RET_STS_SUCCESS;
375:
376:
377: --API Body
378: --API Body
387: --Now call the create_item() to create the acccount
388: if ( p_class_boolean_type_code = 'DYNAMIC' ) then
389: l_return_type := p_rule_key_typecode_tbl(1);
390: else
391: l_return_type := FND_API.G_MISS_CHAR;
392: end if;
393:
394: --Now call the create_item() to create the acccount
395: iem_route_class_pvt.create_item_class (
406: x_msg_count => l_msg_count,
407:
408: x_msg_data => l_msg_data);
409:
410: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
411: raise IEM_RT_CLASS_NOT_CREATED;
412:
413: end if;
414:
435: x_msg_data => l_msg_data);
436:
437:
438:
439: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
440:
441: raise IEM_RT_CLASS_RULE_NOT_CREATED;
442:
443: end if;
445:
446: EXCEPTION
447: WHEN IEM_RT_CLASS_NOT_CREATED THEN
448: ROLLBACK TO create_item_wrap;
449: x_return_status := FND_API.G_RET_STS_ERROR ;
450: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
451:
452: WHEN IEM_RT_CLASS_RULE_NOT_CREATED THEN
453: ROLLBACK TO create_item_wrap;
452: WHEN IEM_RT_CLASS_RULE_NOT_CREATED THEN
453: ROLLBACK TO create_item_wrap;
454: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLASS_RULE_NOT_CREATED');
455: FND_MSG_PUB.Add;
456: x_return_status := FND_API.G_RET_STS_ERROR ;
457: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
458:
459:
460: WHEN FND_API.G_EXC_ERROR THEN
456: x_return_status := FND_API.G_RET_STS_ERROR ;
457: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
458:
459:
460: WHEN FND_API.G_EXC_ERROR THEN
461: ROLLBACK TO create_item_wrap;
462: x_return_status := FND_API.G_RET_STS_ERROR ;
463: FND_MSG_PUB.Count_And_Get (p_count => x_msg_count,p_data => x_msg_data);
464:
458:
459:
460: WHEN FND_API.G_EXC_ERROR THEN
461: ROLLBACK TO create_item_wrap;
462: x_return_status := FND_API.G_RET_STS_ERROR ;
463: FND_MSG_PUB.Count_And_Get (p_count => x_msg_count,p_data => x_msg_data);
464:
465:
466:
464:
465:
466:
467:
468: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
469: ROLLBACK TO create_item_wrap;
470: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
471: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
472:
466:
467:
468: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
469: ROLLBACK TO create_item_wrap;
470: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
471: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
472:
473: WHEN OTHERS THEN
474: ROLLBACK TO create_item_wrap;
471: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
472:
473: WHEN OTHERS THEN
474: ROLLBACK TO create_item_wrap;
475: x_return_status := FND_API.G_RET_STS_ERROR;
476: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
477: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME , l_api_name);
478: END IF;
479:
501: l_api_version_number NUMBER:=1.0;
502: l_seq_id NUMBER;
503: l_description VARCHAR2(256);
504: l_proc_name VARCHAR2(256);
505: l_return_status VARCHAR2(20) := FND_API.G_RET_STS_SUCCESS;
506: l_msg_count NUMBER := 0;
507: l_msg_data VARCHAR2(2000);
508: l_name_count NUMBER;
509: IEM_RT_CLASS_DUP_NAME EXCEPTION;
515: SAVEPOINT create_item_class_PVT;
516:
517:
518: -- Standard call to check for call compatibility.
519: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
520: p_api_version_number,
521: l_api_name,
522: G_PKG_NAME)
523: THEN
521: l_api_name,
522: G_PKG_NAME)
523: THEN
524:
525: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
526: END IF;
527:
528: -- Initialize message list if p_init_msg_list is set to TRUE.
529:
526: END IF;
527:
528: -- Initialize message list if p_init_msg_list is set to TRUE.
529:
530: IF FND_API.to_Boolean( p_init_msg_list )
531: THEN
532: FND_MSG_PUB.initialize;
533:
534: END IF;
533:
534: END IF;
535:
536: -- Initialize API return status to SUCCESS
537: x_return_status := FND_API.G_RET_STS_SUCCESS;
538:
539:
540: --begins here
541:
546: raise IEM_RT_CLASS_DUP_NAME;
547: end if;
548:
549: if ( p_boolean_type_code = 'DYNAMIC' ) then
550: if p_proc_name is null or p_proc_name = FND_API.G_MISS_CHAR then
551: raise IEM_ADM_NO_PROCEDURE_NAME;
552: else
553: l_proc_name := LTRIM(RTRIM( p_proc_name ) );
554: --validation goes here.
553: l_proc_name := LTRIM(RTRIM( p_proc_name ) );
554: --validation goes here.
555: IEM_ROUTE_RUN_PROC_PVT.validProcedure(
556: p_api_version_number => P_Api_Version_Number,
557: p_init_msg_list => FND_API.G_FALSE,
558: p_commit => P_Commit,
559: p_ProcName => l_proc_name,
560: p_return_type => p_return_type,
561: x_return_status => l_return_status,
561: x_return_status => l_return_status,
562: x_msg_count => l_msg_count,
563: x_msg_data => l_msg_data
564: );
565: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
566: raise l_IEM_INVALID_PROCEDURE;
567: end if;
568: end if;
569: else
569: else
570: l_proc_name := null;
571: end if;
572:
573: if p_description=FND_API.G_MISS_CHAR then
574: l_description := null;
575: else
576: l_description := p_description;
577: end if;
575: else
576: l_description := p_description;
577: end if;
578:
579: IF FND_API.To_Boolean( p_is_sss ) THEN
580: G_CLASS_ID := 0;
581: ELSE
582: --get next sequential number for route_id
583: SELECT IEM_ROUTE_CLASSIFICATIONS_s1.nextval
661:
662:
663: -- Standard Check Of p_commit.
664:
665: IF FND_API.To_Boolean(p_commit) THEN
666: COMMIT WORK;
667: END IF;
668:
669: -- Standard callto get message count and if count is 1, get message info.
675:
676: EXCEPTION
677: WHEN l_IEM_INVALID_PROCEDURE THEN
678: ROLLBACK TO create_item_class_PVT;
679: x_return_status := FND_API.G_RET_STS_ERROR ;
680: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
681:
682: WHEN IEM_RT_CLASS_DUP_NAME THEN
683: ROLLBACK TO create_item_class_PVT;
682: WHEN IEM_RT_CLASS_DUP_NAME THEN
683: ROLLBACK TO create_item_class_PVT;
684: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLASS_DUP_NAME');
685: FND_MSG_PUB.Add;
686: x_return_status := FND_API.G_RET_STS_ERROR ;
687: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
688:
689: WHEN IEM_ADM_NO_PROCEDURE_NAME THEN
690: ROLLBACK TO create_item_routes_PVT;
689: WHEN IEM_ADM_NO_PROCEDURE_NAME THEN
690: ROLLBACK TO create_item_routes_PVT;
691: FND_MESSAGE.SET_NAME('IEM','IEM_ADM_NO_PROCEDURE_NAME');
692: FND_MSG_PUB.Add;
693: x_return_status := FND_API.G_RET_STS_ERROR ;
694: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
695:
696: WHEN FND_API.G_EXC_ERROR THEN
697: ROLLBACK TO create_item_class_PVT;
692: FND_MSG_PUB.Add;
693: x_return_status := FND_API.G_RET_STS_ERROR ;
694: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
695:
696: WHEN FND_API.G_EXC_ERROR THEN
697: ROLLBACK TO create_item_class_PVT;
698: x_return_status := FND_API.G_RET_STS_ERROR ;
699:
700: FND_MSG_PUB.Count_And_Get
694: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
695:
696: WHEN FND_API.G_EXC_ERROR THEN
697: ROLLBACK TO create_item_class_PVT;
698: x_return_status := FND_API.G_RET_STS_ERROR ;
699:
700: FND_MSG_PUB.Count_And_Get
701:
702:
703: ( p_count => x_msg_count,
704: p_data => x_msg_data
705: );
706:
707: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
708: ROLLBACK TO create_item_class_PVT;
709: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
710: FND_MSG_PUB.Count_And_Get
711: ( p_count => x_msg_count,
705: );
706:
707: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
708: ROLLBACK TO create_item_class_PVT;
709: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
710: FND_MSG_PUB.Count_And_Get
711: ( p_count => x_msg_count,
712: p_data => x_msg_data
713: );
716:
717:
718: WHEN OTHERS THEN
719: ROLLBACK TO create_item_class_PVT;
720: x_return_status := FND_API.G_RET_STS_ERROR;
721: IF FND_MSG_PUB.Check_Msg_Level
722: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
723: THEN
724: FND_MSG_PUB.Add_Exc_Msg
762: -- Standard Start of API savepoint
763: SAVEPOINT create_item_class_rules_PVT;
764:
765: -- Standard call to check for call compatibility.
766: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
767: p_api_version_number,
768: l_api_name,
769: G_PKG_NAME)
770:
768: l_api_name,
769: G_PKG_NAME)
770:
771: THEN
772: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
773: END IF;
774:
775: -- Initialize message list if p_init_msg_list is set to TRUE.
776:
773: END IF;
774:
775: -- Initialize message list if p_init_msg_list is set to TRUE.
776:
777: IF FND_API.to_Boolean( p_init_msg_list )
778: THEN
779: FND_MSG_PUB.initialize;
780:
781: END IF;
781: END IF;
782:
783: -- Initialize API return status to SUCCESS
784:
785: x_return_status := FND_API.G_RET_STS_SUCCESS;
786:
787:
788: /*
789: -- translate display date format to canonical date
884: decode(G_LAST_UPDATE_LOGIN,null,-1,G_LAST_UPDATE_LOGIN)
885: );
886:
887: -- Standard Check Of p_commit.
888: IF FND_API.To_Boolean(p_commit) THEN
889: COMMIT WORK;
890: END IF;
891:
892: -- Standard callto get message count and if count is 1, get message info.
898:
899: EXCEPTION
900:
901:
902: WHEN FND_API.G_EXC_ERROR THEN
903: ROLLBACK TO create_item_class_rules_PVT;
904: x_return_status := FND_API.G_RET_STS_ERROR ;
905:
906:
900:
901:
902: WHEN FND_API.G_EXC_ERROR THEN
903: ROLLBACK TO create_item_class_rules_PVT;
904: x_return_status := FND_API.G_RET_STS_ERROR ;
905:
906:
907: FND_MSG_PUB.Count_And_Get
908:
909: ( p_count => x_msg_count,
910: p_data => x_msg_data
911: );
912:
913: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
914: ROLLBACK TO create_item_class_rules_PVT;
915: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
916: FND_MSG_PUB.Count_And_Get
917: ( p_count => x_msg_count,
911: );
912:
913: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
914: ROLLBACK TO create_item_class_rules_PVT;
915: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
916: FND_MSG_PUB.Count_And_Get
917: ( p_count => x_msg_count,
918: p_data => x_msg_data
919: );
922:
923:
924: WHEN OTHERS THEN
925: ROLLBACK TO create_item_class_rules_PVT;
926: x_return_status := FND_API.G_RET_STS_ERROR;
927: IF FND_MSG_PUB.Check_Msg_Level
928: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
929: THEN
930: FND_MSG_PUB.Add_Exc_Msg
968:
969:
970: l_api_name VARCHAR2(255):='update_item_wrap';
971: l_api_version_number NUMBER:=1.0;
972: l_return_status VARCHAR2(20) := FND_API.G_RET_STS_SUCCESS;
973: l_msg_count NUMBER := 0;
974: l_msg_data VARCHAR2(2000);
975: l_proc_name VARCHAR2(256);
976: l_return_type VARCHAR2(30);
988: SAVEPOINT update_item_wrap;
989:
990:
991: -- Standard call to check for call compatibility.
992: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
993: p_api_version_number,
994:
995:
996: l_api_name,
995:
996: l_api_name,
997: G_PKG_NAME)
998: THEN
999: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1000: END IF;
1001:
1002: -- Initialize message list if p_init_msg_list is set to TRUE.
1003: IF FND_API.to_Boolean( p_init_msg_list )
999: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1000: END IF;
1001:
1002: -- Initialize message list if p_init_msg_list is set to TRUE.
1003: IF FND_API.to_Boolean( p_init_msg_list )
1004:
1005: THEN
1006: FND_MSG_PUB.initialize;
1007: END IF;
1008:
1009:
1010: -- Initialize API return status to SUCCESS
1011:
1012: x_return_status := FND_API.G_RET_STS_SUCCESS;
1013:
1014: --API Body
1015:
1016: --check if the route_id exist before update
1026: l_proc_name := LTRIM(RTRIM( p_procedure_name ) );
1027: l_return_type := p_update_rule_keys_tbl(1);
1028: --validation goes here
1029: else
1030: l_proc_name := FND_API.G_MISS_CHAR;
1031: l_return_type := FND_API.G_MISS_CHAR;
1032: end if;
1033:
1034: --update iem_routes table
1027: l_return_type := p_update_rule_keys_tbl(1);
1028: --validation goes here
1029: else
1030: l_proc_name := FND_API.G_MISS_CHAR;
1031: l_return_type := FND_API.G_MISS_CHAR;
1032: end if;
1033:
1034: --update iem_routes table
1035: iem_route_class_pvt.update_item_class(
1033:
1034: --update iem_routes table
1035: iem_route_class_pvt.update_item_class(
1036: p_api_version_number => l_api_version_number,
1037: p_init_msg_list => FND_API.G_FALSE,
1038: p_commit => FND_API.G_FALSE,
1039: p_class_id => p_class_id,
1040: p_description =>p_description,
1041: p_ruling_chain =>p_ruling_chain,
1034: --update iem_routes table
1035: iem_route_class_pvt.update_item_class(
1036: p_api_version_number => l_api_version_number,
1037: p_init_msg_list => FND_API.G_FALSE,
1038: p_commit => FND_API.G_FALSE,
1039: p_class_id => p_class_id,
1040: p_description =>p_description,
1041: p_ruling_chain =>p_ruling_chain,
1042: p_proc_name => l_proc_name,
1044: x_return_status => l_return_status,
1045: x_msg_count => l_msg_count,
1046: x_msg_data => l_msg_data);
1047:
1048: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
1049: raise IEM_NO_RT_CLASS_UPDATE;
1050: end if;
1051:
1052:
1056: if ( p_update_rule_ids_tbl.count <>0 ) then
1057:
1058: FOR i IN p_update_rule_ids_tbl.FIRST..p_update_rule_ids_tbl.LAST loop
1059: iem_route_class_pvt.update_item_rule(p_api_version_number => l_api_version_number,
1060: p_init_msg_list => FND_API.G_FALSE,
1061: p_commit => FND_API.G_FALSE,
1062:
1063:
1064: p_route_class_rule_id => p_update_rule_ids_tbl(i),
1057:
1058: FOR i IN p_update_rule_ids_tbl.FIRST..p_update_rule_ids_tbl.LAST loop
1059: iem_route_class_pvt.update_item_rule(p_api_version_number => l_api_version_number,
1060: p_init_msg_list => FND_API.G_FALSE,
1061: p_commit => FND_API.G_FALSE,
1062:
1063:
1064: p_route_class_rule_id => p_update_rule_ids_tbl(i),
1065: p_key_type_code =>p_update_rule_keys_tbl(i),
1071: x_return_status => l_return_status,
1072: x_msg_count => l_msg_count,
1073: x_msg_data => l_msg_data);
1074:
1075: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
1076: raise IEM_NO_RULE_UPDATE;
1077: end if;
1078:
1079:
1115: x_return_status =>l_return_status,
1116: x_msg_count => l_msg_count,
1117: x_msg_data => l_msg_data);
1118:
1119: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
1120: raise IEM_RT_CLS_RULE_NOT_CREATED;
1121: end if;
1122: END LOOP;
1123: end if;
1132: raise IEM_RT_CLS_NO_RULE;
1133: end if;
1134:
1135: -- Standard Check Of p_commit.
1136: IF FND_API.To_Boolean(p_commit) THEN
1137: COMMIT WORK;
1138: END IF;
1139:
1140:
1144:
1145:
1146: FND_MESSAGE.SET_NAME('IEM','IEM_NO_RT_CLASS_UPDATE');
1147: FND_MSG_PUB.Add;
1148: x_return_status := FND_API.G_RET_STS_ERROR ;
1149: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1150:
1151: WHEN IEM_NO_RULE_UPDATE THEN
1152: ROLLBACK TO update_item_wrap;
1152: ROLLBACK TO update_item_wrap;
1153:
1154: FND_MESSAGE.SET_NAME('IEM','IEM_NO_RULE_UPDATE');
1155: FND_MSG_PUB.Add;
1156: x_return_status := FND_API.G_RET_STS_ERROR ;
1157: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1158:
1159:
1160: WHEN IEM_RULE_NOT_DELETED THEN
1161:
1162: ROLLBACK TO update_item_wrap;
1163: FND_MESSAGE.SET_NAME('IEM','IEM_RULE_NOT_DELETED');
1164: FND_MSG_PUB.Add;
1165: x_return_status := FND_API.G_RET_STS_ERROR ;
1166: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1167:
1168:
1169: WHEN IEM_RT_CLS_RULE_NOT_CREATED THEN
1169: WHEN IEM_RT_CLS_RULE_NOT_CREATED THEN
1170: ROLLBACK TO update_item_wrap;
1171: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLS_RULE_NOT_CREATED');
1172: FND_MSG_PUB.Add;
1173: x_return_status := FND_API.G_RET_STS_ERROR ;
1174:
1175: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1176:
1177:
1179: ROLLBACK TO update_item_wrap;
1180: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLS_NO_RULE');
1181:
1182: FND_MSG_PUB.Add;
1183: x_return_status := FND_API.G_RET_STS_ERROR ;
1184: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1185:
1186: WHEN FND_API.G_EXC_ERROR THEN
1187: ROLLBACK TO update_item_wrap;
1182: FND_MSG_PUB.Add;
1183: x_return_status := FND_API.G_RET_STS_ERROR ;
1184: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1185:
1186: WHEN FND_API.G_EXC_ERROR THEN
1187: ROLLBACK TO update_item_wrap;
1188: x_return_status := FND_API.G_RET_STS_ERROR ;
1189:
1190: FND_MSG_PUB.Count_And_Get (p_count => x_msg_count,p_data => x_msg_data);
1184: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1185:
1186: WHEN FND_API.G_EXC_ERROR THEN
1187: ROLLBACK TO update_item_wrap;
1188: x_return_status := FND_API.G_RET_STS_ERROR ;
1189:
1190: FND_MSG_PUB.Count_And_Get (p_count => x_msg_count,p_data => x_msg_data);
1191:
1192: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1188: x_return_status := FND_API.G_RET_STS_ERROR ;
1189:
1190: FND_MSG_PUB.Count_And_Get (p_count => x_msg_count,p_data => x_msg_data);
1191:
1192: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1193:
1194: ROLLBACK TO update_item_wrap;
1195:
1196: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1192: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1193:
1194: ROLLBACK TO update_item_wrap;
1195:
1196: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1197: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1198:
1199: WHEN OTHERS THEN
1200: ROLLBACK TO update_item_wrap;
1197: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1198:
1199: WHEN OTHERS THEN
1200: ROLLBACK TO update_item_wrap;
1201: x_return_status := FND_API.G_RET_STS_ERROR;
1202: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1203: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME , l_api_name);
1204:
1205: END IF;
1224: x_msg_data OUT NOCOPY VARCHAR2
1225: ) is
1226: l_api_name VARCHAR2(255):='update_item_class';
1227: l_api_version_number NUMBER:=1.0;
1228: l_return_status VARCHAR2(20) := FND_API.G_RET_STS_SUCCESS;
1229: l_msg_count NUMBER := 0;
1230: l_msg_data VARCHAR2(2000);
1231: l_proc_name VARCHAR2(256);
1232: l_name_count NUMBER;
1241:
1242: SAVEPOINT update_item_class;
1243:
1244: -- Standard call to check for call compatibility.
1245: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
1246:
1247: p_api_version_number,
1248: l_api_name,
1249: G_PKG_NAME)
1247: p_api_version_number,
1248: l_api_name,
1249: G_PKG_NAME)
1250: THEN
1251: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1252: END IF;
1253:
1254:
1255:
1253:
1254:
1255:
1256: -- Initialize message list if p_init_msg_list is set to TRUE.
1257: IF FND_API.to_Boolean( p_init_msg_list )
1258: THEN
1259: FND_MSG_PUB.initialize;
1260: END IF;
1261:
1260: END IF;
1261:
1262:
1263: -- Initialize API return status to SUCCESS
1264: x_return_status := FND_API.G_RET_STS_SUCCESS;
1265:
1266: --check duplicate value for attribute Name
1267: /* select count(*) into l_name_count from iem_route_classifications where UPPER(name) = UPPER(p_name) and route_classification_id <> p_class_id;
1268:
1273: end if;
1274: */
1275:
1276: if p_ruling_chain = 'DYNAMIC' then
1277: if ( p_proc_name = FND_API.G_MISS_CHAR ) then
1278: raise IEM_ADMIN_ROUTE_NO_PROC;
1279: elsif ( p_proc_name is null ) then
1280: raise IEM_ADMIN_ROUTE_NO_PROC;
1281: -- l_proc_name := FND_API.G_MISS_CHAR;
1277: if ( p_proc_name = FND_API.G_MISS_CHAR ) then
1278: raise IEM_ADMIN_ROUTE_NO_PROC;
1279: elsif ( p_proc_name is null ) then
1280: raise IEM_ADMIN_ROUTE_NO_PROC;
1281: -- l_proc_name := FND_API.G_MISS_CHAR;
1282: else
1283: l_proc_name := LTRIM(RTRIM(p_proc_name));
1284: if ( l_proc_name = '') then
1285: raise IEM_ADMIN_ROUTE_NO_PROC;
1286: else
1287: --validation goes here.
1288: IEM_ROUTE_RUN_PROC_PVT.validProcedure(
1289: p_api_version_number => P_Api_Version_Number,
1290: p_init_msg_list => FND_API.G_FALSE,
1291: p_commit => P_Commit,
1292: p_ProcName => l_proc_name,
1293: p_return_type => p_return_type,
1294: x_return_status => l_return_status,
1294: x_return_status => l_return_status,
1295: x_msg_count => l_msg_count,
1296: x_msg_data => l_msg_data
1297: );
1298: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
1299: raise l_IEM_INVALID_PROCEDURE;
1300: end if;
1301: end if;
1302: end if;
1302: end if;
1303:
1304: end if;
1305:
1306: if ( p_description = FND_API.G_MISS_CHAR ) then
1307: l_description := null;
1308: --elsif ( p_description is null )then
1309: -- l_description := FND_API.G_MISS_CHAR;
1310: else
1305:
1306: if ( p_description = FND_API.G_MISS_CHAR ) then
1307: l_description := null;
1308: --elsif ( p_description is null )then
1309: -- l_description := FND_API.G_MISS_CHAR;
1310: else
1311: l_description := ltrim(rtrim(p_description));
1312: end if;
1313:
1310: else
1311: l_description := ltrim(rtrim(p_description));
1312: end if;
1313:
1314: if ( p_ruling_chain = FND_API.G_MISS_CHAR ) then
1315: l_ruling_chain := null;
1316: --elsif ( p_ruling_chain is null )then
1317: -- l_ruling_chain := FND_API.G_MISS_CHAR;
1318: else
1313:
1314: if ( p_ruling_chain = FND_API.G_MISS_CHAR ) then
1315: l_ruling_chain := null;
1316: --elsif ( p_ruling_chain is null )then
1317: -- l_ruling_chain := FND_API.G_MISS_CHAR;
1318: else
1319: l_ruling_chain := ltrim(rtrim(p_ruling_chain));
1320: end if;
1321:
1320: end if;
1321:
1322: update IEM_ROUTE_CLASSIFICATIONS
1323: set
1324: description=decode(l_description,FND_API.G_MISS_CHAR,description,l_description),
1325: boolean_type_code=decode(l_ruling_chain,FND_API.G_MISS_CHAR,boolean_type_code,l_ruling_chain),
1326: procedure_name=decode(l_proc_name,FND_API.G_MISS_CHAR,procedure_name,l_proc_name),
1327: LAST_UPDATED_BY = decode(G_created_updated_by,null,-1,G_created_updated_by),
1328: LAST_UPDATE_DATE = sysdate,
1321:
1322: update IEM_ROUTE_CLASSIFICATIONS
1323: set
1324: description=decode(l_description,FND_API.G_MISS_CHAR,description,l_description),
1325: boolean_type_code=decode(l_ruling_chain,FND_API.G_MISS_CHAR,boolean_type_code,l_ruling_chain),
1326: procedure_name=decode(l_proc_name,FND_API.G_MISS_CHAR,procedure_name,l_proc_name),
1327: LAST_UPDATED_BY = decode(G_created_updated_by,null,-1,G_created_updated_by),
1328: LAST_UPDATE_DATE = sysdate,
1329: LAST_UPDATE_LOGIN = decode(G_LAST_UPDATE_LOGIN,null,-1,G_LAST_UPDATE_LOGIN)
1322: update IEM_ROUTE_CLASSIFICATIONS
1323: set
1324: description=decode(l_description,FND_API.G_MISS_CHAR,description,l_description),
1325: boolean_type_code=decode(l_ruling_chain,FND_API.G_MISS_CHAR,boolean_type_code,l_ruling_chain),
1326: procedure_name=decode(l_proc_name,FND_API.G_MISS_CHAR,procedure_name,l_proc_name),
1327: LAST_UPDATED_BY = decode(G_created_updated_by,null,-1,G_created_updated_by),
1328: LAST_UPDATE_DATE = sysdate,
1329: LAST_UPDATE_LOGIN = decode(G_LAST_UPDATE_LOGIN,null,-1,G_LAST_UPDATE_LOGIN)
1330: where route_classification_id=p_class_id;
1329: LAST_UPDATE_LOGIN = decode(G_LAST_UPDATE_LOGIN,null,-1,G_LAST_UPDATE_LOGIN)
1330: where route_classification_id=p_class_id;
1331:
1332: -- Standard Check Of p_commit.
1333: IF FND_API.To_Boolean(p_commit) THEN
1334: COMMIT WORK;
1335: END IF;
1336:
1337: -- Standard callto get message count and if count is 1, get message info.
1344: );
1345: EXCEPTION
1346: WHEN l_IEM_INVALID_PROCEDURE THEN
1347: ROLLBACK TO update_item_class;
1348: x_return_status := FND_API.G_RET_STS_ERROR ;
1349: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1350:
1351: WHEN IEM_ADMIN_ROUTE_NO_PROC THEN
1352: ROLLBACK TO update_item_class;
1351: WHEN IEM_ADMIN_ROUTE_NO_PROC THEN
1352: ROLLBACK TO update_item_class;
1353: FND_MESSAGE.SET_NAME('IEM','IEM_ADMIN_ROUTE_NO_PROC');
1354: FND_MSG_PUB.Add;
1355: x_return_status := FND_API.G_RET_STS_ERROR ;
1356: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1357:
1358: WHEN IEM_RT_CLASS_DUP_NAME THEN
1359: ROLLBACK TO update_item_class;
1358: WHEN IEM_RT_CLASS_DUP_NAME THEN
1359: ROLLBACK TO update_item_class;
1360: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLASS_DUP_NAME');
1361: FND_MSG_PUB.Add;
1362: x_return_status := FND_API.G_RET_STS_ERROR ;
1363: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1364:
1365:
1366:
1363: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1364:
1365:
1366:
1367: WHEN FND_API.G_EXC_ERROR THEN
1368: ROLLBACK TO update_item_class;
1369:
1370: x_return_status := FND_API.G_RET_STS_ERROR ;
1371: FND_MSG_PUB.Count_And_Get
1366:
1367: WHEN FND_API.G_EXC_ERROR THEN
1368: ROLLBACK TO update_item_class;
1369:
1370: x_return_status := FND_API.G_RET_STS_ERROR ;
1371: FND_MSG_PUB.Count_And_Get
1372: ( p_count => x_msg_count,
1373: p_data => x_msg_data
1374: );
1372: ( p_count => x_msg_count,
1373: p_data => x_msg_data
1374: );
1375:
1376: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1377: ROLLBACK TO update_item_class;
1378: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1379: FND_MSG_PUB.Count_And_Get
1380:
1374: );
1375:
1376: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1377: ROLLBACK TO update_item_class;
1378: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1379: FND_MSG_PUB.Count_And_Get
1380:
1381: ( p_count => x_msg_count,
1382:
1385: );
1386:
1387: WHEN OTHERS THEN
1388: ROLLBACK TO update_item_class;
1389: x_return_status := FND_API.G_RET_STS_ERROR;
1390: IF FND_MSG_PUB.Check_Msg_Level
1391: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1392: THEN
1393: FND_MSG_PUB.Add_Exc_Msg
1432: -- Standard Start of API savepoint
1433:
1434: SAVEPOINT update_item_rule;
1435: -- Standard call to check for call compatibility.
1436: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
1437: p_api_version_number,
1438: l_api_name,
1439: G_PKG_NAME)
1440: THEN
1438: l_api_name,
1439: G_PKG_NAME)
1440: THEN
1441:
1442: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1443: END IF;
1444:
1445:
1446: -- Initialize message list if p_init_msg_list is set to TRUE.
1444:
1445:
1446: -- Initialize message list if p_init_msg_list is set to TRUE.
1447:
1448: IF FND_API.to_Boolean( p_init_msg_list )
1449: THEN
1450: FND_MSG_PUB.initialize;
1451: END IF;
1452: -- Initialize API return status to SUCCESS
1449: THEN
1450: FND_MSG_PUB.initialize;
1451: END IF;
1452: -- Initialize API return status to SUCCESS
1453: x_return_status := FND_API.G_RET_STS_SUCCESS;
1454:
1455: -- check if the route_id exist in iem_routes
1456:
1457: select count(*) into l_rule from iem_route_class_rules
1477: l_value := p_value;
1478: end if;
1479: */
1480:
1481: if ( p_key_type_code = FND_API.G_MISS_CHAR ) then
1482: raise IEM_RULE_KEY_OP_VAL_NULL;
1483:
1484: elsif ( p_operator_type_code = FND_API.G_MISS_CHAR ) then
1485: raise IEM_RULE_KEY_OP_VAL_NULL;
1480:
1481: if ( p_key_type_code = FND_API.G_MISS_CHAR ) then
1482: raise IEM_RULE_KEY_OP_VAL_NULL;
1483:
1484: elsif ( p_operator_type_code = FND_API.G_MISS_CHAR ) then
1485: raise IEM_RULE_KEY_OP_VAL_NULL;
1486:
1487: elsif ( p_value = FND_API.G_MISS_CHAR ) then
1488: raise IEM_RULE_KEY_OP_VAL_NULL;
1483:
1484: elsif ( p_operator_type_code = FND_API.G_MISS_CHAR ) then
1485: raise IEM_RULE_KEY_OP_VAL_NULL;
1486:
1487: elsif ( p_value = FND_API.G_MISS_CHAR ) then
1488: raise IEM_RULE_KEY_OP_VAL_NULL;
1489: end if;
1490:
1491: update IEM_ROUTE_CLASS_RULES
1501: where route_class_rule_id=p_route_class_rule_id;
1502:
1503:
1504: -- Standard Check Of p_commit.
1505: IF FND_API.To_Boolean(p_commit) THEN
1506: COMMIT WORK;
1507:
1508: END IF;
1509:
1517: WHEN IEM_RULE_KEY_OP_VAL_NULL THEN
1518: ROLLBACK TO update_item_rule;
1519: FND_MESSAGE.SET_NAME('IEM','IEM_RULE_KEY_OP_VAL_NULL');
1520: FND_MSG_PUB.Add;
1521: x_return_status := FND_API.G_RET_STS_ERROR ;
1522: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1523:
1524: WHEN IEM_NO_RULE_UPDATE THEN
1525: ROLLBACK TO update_item_rule;
1524: WHEN IEM_NO_RULE_UPDATE THEN
1525: ROLLBACK TO update_item_rule;
1526: FND_MESSAGE.SET_NAME('IEM','IEM_NO_RULE_UPDATE');
1527: FND_MSG_PUB.Add;
1528: x_return_status := FND_API.G_RET_STS_ERROR ;
1529: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1530: /*
1531: WHEN IEM_INVALID_DATE_FORMAT THEN
1532: ROLLBACK TO update_item_rule;
1531: WHEN IEM_INVALID_DATE_FORMAT THEN
1532: ROLLBACK TO update_item_rule;
1533: FND_MESSAGE.SET_NAME('IEM','IEM_INVALID_DATE_FORMAT');
1534: FND_MSG_PUB.Add;
1535: x_return_status := FND_API.G_RET_STS_ERROR ;
1536:
1537: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1538: */
1539: WHEN FND_API.G_EXC_ERROR THEN
1535: x_return_status := FND_API.G_RET_STS_ERROR ;
1536:
1537: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1538: */
1539: WHEN FND_API.G_EXC_ERROR THEN
1540: ROLLBACK TO update_item_rule;
1541: x_return_status := FND_API.G_RET_STS_ERROR ;
1542:
1543:
1537: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1538: */
1539: WHEN FND_API.G_EXC_ERROR THEN
1540: ROLLBACK TO update_item_rule;
1541: x_return_status := FND_API.G_RET_STS_ERROR ;
1542:
1543:
1544: FND_MSG_PUB.Count_And_Get
1545: ( p_count => x_msg_count,
1544: FND_MSG_PUB.Count_And_Get
1545: ( p_count => x_msg_count,
1546: p_data => x_msg_data
1547: );
1548: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1549: ROLLBACK TO update_item_rule;
1550: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1551: FND_MSG_PUB.Count_And_Get
1552:
1546: p_data => x_msg_data
1547: );
1548: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1549: ROLLBACK TO update_item_rule;
1550: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1551: FND_MSG_PUB.Count_And_Get
1552:
1553: ( p_count => x_msg_count,
1554: p_data => x_msg_data
1556:
1557: WHEN OTHERS THEN
1558:
1559: ROLLBACK TO update_item_rule;
1560: x_return_status := FND_API.G_RET_STS_ERROR;
1561: IF FND_MSG_PUB.Check_Msg_Level
1562: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1563: THEN
1564: FND_MSG_PUB.Add_Exc_Msg
1600: l_class number;
1601:
1602: l_account number;
1603:
1604: l_return_status VARCHAR2(20) := FND_API.G_RET_STS_SUCCESS;
1605: l_msg_count NUMBER := 0;
1606: l_msg_data VARCHAR2(2000);
1607: l_class_name VARCHAR(30);
1608: l_class_name1 VARCHAR(31);
1618: -- Standard Start of API savepoint
1619: SAVEPOINT create_wrap_acct_rt_class_PVT;
1620:
1621: -- Standard call to check for call compatibility.
1622: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
1623: p_api_version_number,
1624:
1625: l_api_name,
1626: G_PKG_NAME)
1624:
1625: l_api_name,
1626: G_PKG_NAME)
1627: THEN
1628: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1629: END IF;
1630:
1631:
1632: -- Initialize message list if p_init_msg_list is set to TRUE.
1629: END IF;
1630:
1631:
1632: -- Initialize message list if p_init_msg_list is set to TRUE.
1633: IF FND_API.to_Boolean( p_init_msg_list )
1634: THEN
1635: FND_MSG_PUB.initialize;
1636:
1637: END IF;
1637: END IF;
1638:
1639:
1640: -- Initialize API return status to SUCCESS
1641: x_return_status := FND_API.G_RET_STS_SUCCESS;
1642:
1643:
1644: -- check if the route_id exist in iem_routes
1645: select count(*) into l_class from iem_route_classifications
1667:
1668: p_api_version_number =>p_api_version_number,
1669: p_init_msg_list => p_init_msg_list,
1670:
1671: p_commit => FND_API.G_FALSE,
1672: p_class_id =>p_class_id,
1673: p_email_account_id =>p_email_account_id,
1674: p_enabled_flag => p_enabled_flag,
1675: p_priority => p_priority,
1679: x_msg_count => l_msg_count,
1680:
1681: x_msg_data => l_msg_data);
1682:
1683: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
1684: raise IEM_RT_ClASS_ACCT_NOT_UPDATED;
1685: end if;
1686:
1687: select name into l_class_name from iem_route_classifications where route_classification_id = p_class_id;
1696:
1697: -- ***** Remove for 11i compliance *****
1698: --iem_route_class_pvt.create_folder(p_api_version_number =>p_api_version_number,
1699: -- p_init_msg_list => p_init_msg_list,
1700: -- p_commit => FND_API.G_FALSE,
1701: -- p_email_account_id =>p_email_account_id,
1702: -- p_classification_name => l_class_name1,
1703: -- x_return_status =>l_return_status,
1704: -- x_msg_count => l_msg_count,
1702: -- p_classification_name => l_class_name1,
1703: -- x_return_status =>l_return_status,
1704: -- x_msg_count => l_msg_count,
1705: -- x_msg_data => l_msg_data);
1706: -- if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
1707:
1708: -- raise IEM_RT_ClASS_FAIL_CREAT_FOLDER;
1709:
1710: -- end if;
1710: -- end if;
1711:
1712: --dbms_output.put_line('after insert : ');
1713: -- Standard Check Of p_commit.
1714: IF FND_API.To_Boolean(p_commit) THEN
1715: COMMIT WORK;
1716: END IF;
1717: -- Standard callto get message count and if count is 1, get message info.
1718: FND_MSG_PUB.Count_And_Get
1727: WHEN IEM_RT_ClASS_FAIL_CREAT_FOLDER THEN
1728: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1729: --FND_MESSAGE.SET_NAME('IEM','IEM_RT_ClASS_FAIL_CREAT_FOLDER');
1730: --FND_MSG_PUB.Add;
1731: x_return_status := FND_API.G_RET_STS_ERROR ;
1732: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1733:
1734: WHEN IEM_RT_CLASS_NO_DATA THEN
1735: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1736: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLASS_NO_DATA');
1737:
1738:
1739: FND_MSG_PUB.Add;
1740: x_return_status := FND_API.G_RET_STS_ERROR ;
1741: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1742:
1743: WHEN IEM_ADMIN_ACCOUNT_NOT_EXIST THEN
1744: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1744: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1745: FND_MESSAGE.SET_NAME('IEM','IEM_ADMIN_ACCOUNT_NOT_EXIST');
1746: FND_MSG_PUB.Add;
1747:
1748: x_return_status := FND_API.G_RET_STS_ERROR ;
1749: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1750:
1751:
1752: WHEN IEM_RT_ClASS_ACCT_NOT_UPDATED THEN
1753:
1754: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1755: FND_MESSAGE.SET_NAME('IEM','IEM_RT_ClASS_ACCT_NOT_UPDATED');
1756: FND_MSG_PUB.Add;
1757: x_return_status := FND_API.G_RET_STS_ERROR ;
1758: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1759:
1760: WHEN FND_API.G_EXC_ERROR THEN
1761: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1756: FND_MSG_PUB.Add;
1757: x_return_status := FND_API.G_RET_STS_ERROR ;
1758: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1759:
1760: WHEN FND_API.G_EXC_ERROR THEN
1761: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1762: x_return_status := FND_API.G_RET_STS_ERROR ;
1763:
1764: FND_MSG_PUB.Count_And_Get
1758: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
1759:
1760: WHEN FND_API.G_EXC_ERROR THEN
1761: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1762: x_return_status := FND_API.G_RET_STS_ERROR ;
1763:
1764: FND_MSG_PUB.Count_And_Get
1765:
1766: ( p_count => x_msg_count,
1767: p_data => x_msg_data
1768:
1769: );
1770:
1771: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1772: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1773: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1774: FND_MSG_PUB.Count_And_Get
1775: ( p_count => x_msg_count,
1769: );
1770:
1771: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1772: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1773: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1774: FND_MSG_PUB.Count_And_Get
1775: ( p_count => x_msg_count,
1776: p_data => x_msg_data
1777: );
1780:
1781: WHEN OTHERS THEN
1782: ROLLBACK TO create_wrap_acct_rt_class_PVT;
1783:
1784: x_return_status := FND_API.G_RET_STS_ERROR;
1785: IF FND_MSG_PUB.Check_Msg_Level
1786: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1787: THEN
1788: FND_MSG_PUB.Add_Exc_Msg
1828:
1829:
1830:
1831: -- Standard call to check for call compatibility.
1832: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
1833: p_api_version_number,
1834: l_api_name,
1835:
1836: G_PKG_NAME)
1834: l_api_name,
1835:
1836: G_PKG_NAME)
1837: THEN
1838: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1839: END IF;
1840:
1841: -- Initialize message list if p_init_msg_list is set to TRUE.
1842: IF FND_API.to_Boolean( p_init_msg_list ) THEN
1838: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1839: END IF;
1840:
1841: -- Initialize message list if p_init_msg_list is set to TRUE.
1842: IF FND_API.to_Boolean( p_init_msg_list ) THEN
1843:
1844: FND_MSG_PUB.initialize;
1845:
1846: END IF;
1846: END IF;
1847:
1848: -- Initialize API return status to SUCCESS
1849:
1850: x_return_status := FND_API.G_RET_STS_SUCCESS;
1851:
1852: --actual API begins here
1853: SELECT IEM_ACCOUNT_ROUTE_CLASS_s1.nextval
1854: INTO l_seq_id
1930:
1931:
1932:
1933: -- Standard Check Of p_commit.
1934: IF FND_API.To_Boolean(p_commit) THEN
1935: COMMIT WORK;
1936: END IF;
1937:
1938: -- Standard callto get message count and if count is 1, get message info.
1944:
1945:
1946: EXCEPTION
1947:
1948: WHEN FND_API.G_EXC_ERROR THEN
1949: ROLLBACK TO create_item_acct_class_PVT;
1950: x_return_status := FND_API.G_RET_STS_ERROR ;
1951: FND_MSG_PUB.Count_And_Get
1952: ( p_count => x_msg_count,
1946: EXCEPTION
1947:
1948: WHEN FND_API.G_EXC_ERROR THEN
1949: ROLLBACK TO create_item_acct_class_PVT;
1950: x_return_status := FND_API.G_RET_STS_ERROR ;
1951: FND_MSG_PUB.Count_And_Get
1952: ( p_count => x_msg_count,
1953: p_data => x_msg_data
1954: );
1953: p_data => x_msg_data
1954: );
1955:
1956:
1957: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1958: ROLLBACK TO create_item_acct_class_PVT;
1959:
1960: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1961: FND_MSG_PUB.Count_And_Get
1956:
1957: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1958: ROLLBACK TO create_item_acct_class_PVT;
1959:
1960: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1961: FND_MSG_PUB.Count_And_Get
1962:
1963: ( p_count => x_msg_count,
1964: p_data => x_msg_data
1965: );
1966:
1967: WHEN OTHERS THEN
1968: ROLLBACK TO create_item_acct_class_PVT;
1969: x_return_status := FND_API.G_RET_STS_ERROR;
1970: IF FND_MSG_PUB.Check_Msg_Level
1971: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1972:
1973:
2008: ) is
2009: l_api_name VARCHAR2(255):='update_wrap_account_class';
2010: l_api_version_number NUMBER:=1.0;
2011:
2012: l_return_status VARCHAR2(20) := FND_API.G_RET_STS_SUCCESS;
2013: l_msg_count NUMBER := 0;
2014: l_msg_data VARCHAR2(2000);
2015:
2016: MY_EXCEPTION EXCEPTION;
2021: -- Standard Start of API savepoint
2022: SAVEPOINT update_wrap_acct_class_1_PVT;
2023: -- Standard call to check for call compatibility.
2024:
2025: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
2026: p_api_version_number,
2027: l_api_name,
2028: G_PKG_NAME)
2029: THEN
2026: p_api_version_number,
2027: l_api_name,
2028: G_PKG_NAME)
2029: THEN
2030: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2031: END IF;
2032:
2033:
2034:
2032:
2033:
2034:
2035: -- Initialize message list if p_init_msg_list is set to TRUE.
2036: IF FND_API.to_Boolean( p_init_msg_list )
2037: THEN
2038:
2039: FND_MSG_PUB.initialize;
2040: END IF;
2038:
2039: FND_MSG_PUB.initialize;
2040: END IF;
2041: -- Initialize API return status to SUCCESS
2042: x_return_status := FND_API.G_RET_STS_SUCCESS;
2043:
2044: -- update first
2045: if ( p_class_ids_tbl.count <> 0 ) then
2046: FOR i IN p_class_ids_tbl.FIRST..p_class_ids_tbl.LAST LOOP
2046: FOR i IN p_class_ids_tbl.FIRST..p_class_ids_tbl.LAST LOOP
2047: iem_route_class_pvt.update_account_class (p_api_version_number =>p_api_version_number,
2048: p_init_msg_list => p_init_msg_list,
2049:
2050: p_commit => FND_API.G_TRUE,
2051:
2052: p_class_id => p_class_ids_tbl(i),
2053: p_email_account_id => p_email_account_id,
2054: p_enabled_flag => p_upd_enable_flag_tbl(i),
2057: x_return_status =>l_return_status,
2058: x_msg_count => l_msg_count,
2059:
2060: x_msg_data => l_msg_data);
2061: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
2062: raise IEM_RT_CLASS_ACCT_NOT_UPDATE;
2063:
2064: end if;
2065: END LOOP;
2071: iem_route_class_pvt.delete_acct_class_batch
2072: (p_api_version_number => p_api_version_number,
2073: P_init_msg_list => p_init_msg_list,
2074:
2075: p_commit => FND_API.G_TRUE,
2076: p_class_ids_tbl => p_delete_class_ids_tbl,
2077:
2078: p_account_id => p_email_account_id,
2079: x_return_status => l_return_status,
2078: p_account_id => p_email_account_id,
2079: x_return_status => l_return_status,
2080: x_msg_count => l_msg_count,
2081: x_msg_data => l_msg_data) ;
2082: if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
2083: raise MY_EXCEPTION;
2084: end if;
2085: end if;
2086:
2084: end if;
2085: end if;
2086:
2087: -- Standard Check Of p_commit.
2088: IF FND_API.To_Boolean(p_commit) THEN
2089:
2090: COMMIT WORK;
2091:
2092: END IF;
2097: );
2098:
2099: EXCEPTION
2100: WHEN MY_EXCEPTION THEN
2101: IF FND_API.To_Boolean(p_commit) THEN
2102: COMMIT WORK;
2103: END IF;
2104:
2105: --ROLLBACK TO update_wrap_acct_class_2_PVT;
2104:
2105: --ROLLBACK TO update_wrap_acct_class_2_PVT;
2106: --FND_MESSAGE.SET_NAME('IEM','MY_EXCEPTION');
2107: --FND_MSG_PUB.Add;
2108: x_return_status := FND_API.G_RET_STS_ERROR ;
2109: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2110: WHEN IEM_RT_CLASS_ACCT_NOT_UPDATE THEN
2111: ROLLBACK TO update_wrap_acct_class_1_PVT;
2112: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLASS_ACCT_NOT_UPDATE');
2110: WHEN IEM_RT_CLASS_ACCT_NOT_UPDATE THEN
2111: ROLLBACK TO update_wrap_acct_class_1_PVT;
2112: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLASS_ACCT_NOT_UPDATE');
2113: FND_MSG_PUB.Add;
2114: x_return_status := FND_API.G_RET_STS_ERROR ;
2115: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2116: WHEN IEM_ACCOUNT_CLASS_NOT_DELETED THEN
2117: ROLLBACK TO update_wrap_acct_class_2_PVT;
2118:
2118:
2119:
2120: FND_MESSAGE.SET_NAME('IEM','IEM_ACCOUNT_CLASS_NOT_DELETED');
2121: FND_MSG_PUB.Add;
2122: x_return_status := FND_API.G_RET_STS_ERROR ;
2123: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2124: WHEN FND_API.G_EXC_ERROR THEN
2125: ROLLBACK TO update_wrap_acct_class_1_PVT;
2126: x_return_status := FND_API.G_RET_STS_ERROR ;
2120: FND_MESSAGE.SET_NAME('IEM','IEM_ACCOUNT_CLASS_NOT_DELETED');
2121: FND_MSG_PUB.Add;
2122: x_return_status := FND_API.G_RET_STS_ERROR ;
2123: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2124: WHEN FND_API.G_EXC_ERROR THEN
2125: ROLLBACK TO update_wrap_acct_class_1_PVT;
2126: x_return_status := FND_API.G_RET_STS_ERROR ;
2127:
2128: FND_MSG_PUB.Count_And_Get
2122: x_return_status := FND_API.G_RET_STS_ERROR ;
2123: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2124: WHEN FND_API.G_EXC_ERROR THEN
2125: ROLLBACK TO update_wrap_acct_class_1_PVT;
2126: x_return_status := FND_API.G_RET_STS_ERROR ;
2127:
2128: FND_MSG_PUB.Count_And_Get
2129: ( p_count => x_msg_count,
2130: p_data => x_msg_data
2131: );
2132:
2133:
2134:
2135: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2136: ROLLBACK TO update_wrap_acct_class_1_PVT;
2137: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2138: FND_MSG_PUB.Count_And_Get
2139: ( p_count => x_msg_count,
2133:
2134:
2135: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2136: ROLLBACK TO update_wrap_acct_class_1_PVT;
2137: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2138: FND_MSG_PUB.Count_And_Get
2139: ( p_count => x_msg_count,
2140: p_data => x_msg_data
2141: );
2143:
2144: WHEN OTHERS THEN
2145: ROLLBACK TO update_wrap_acct_class_1_PVT;
2146:
2147: x_return_status := FND_API.G_RET_STS_ERROR;
2148: IF FND_MSG_PUB.Check_Msg_Level
2149:
2150: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2151: THEN
2192: BEGIN
2193: -- Standard Start of API savepoint
2194: SAVEPOINT update_account_class_PVT;
2195: -- Standard call to check for call compatibility.
2196: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
2197:
2198: p_api_version_number,
2199: l_api_name,
2200: G_PKG_NAME)
2198: p_api_version_number,
2199: l_api_name,
2200: G_PKG_NAME)
2201: THEN
2202: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2203: END IF;
2204:
2205:
2206: -- Initialize message list if p_init_msg_list is set to TRUE.
2203: END IF;
2204:
2205:
2206: -- Initialize message list if p_init_msg_list is set to TRUE.
2207: IF FND_API.to_Boolean( p_init_msg_list )
2208: THEN
2209: FND_MSG_PUB.initialize;
2210: END IF;
2211:
2209: FND_MSG_PUB.initialize;
2210: END IF;
2211:
2212: -- Initialize API return status to SUCCESS
2213: x_return_status := FND_API.G_RET_STS_SUCCESS;
2214:
2215: -- Check For Existing IEM Server Group
2216: IF p_class_id <> FND_API.G_MISS_NUM THEN
2217: Select count(*) into l_class_cnt from iem_route_classifications
2212: -- Initialize API return status to SUCCESS
2213: x_return_status := FND_API.G_RET_STS_SUCCESS;
2214:
2215: -- Check For Existing IEM Server Group
2216: IF p_class_id <> FND_API.G_MISS_NUM THEN
2217: Select count(*) into l_class_cnt from iem_route_classifications
2218: where route_classification_id=p_class_id;
2219:
2220: IF l_class_cnt = 0 then
2222: END IF;
2223: END IF;
2224:
2225:
2226: IF p_email_account_id <> FND_API.G_MISS_NUM THEN
2227:
2228: -- removed the where clause "and active_flag='Y'" for bug fix of 4945889
2229:
2230: Select count(*) into l_acct_cnt from iem_mstemail_accounts
2235:
2236: END IF;
2237: END IF;
2238:
2239: if ((p_email_account_id <> FND_API.G_MISS_NUM) and (p_class_id <> FND_API.G_MISS_NUM)) then
2240:
2241: update IEM_ACCOUNT_ROUTE_CLASS
2242: set
2243: enabled_flag=decode(p_enabled_flag,FND_API.G_MISS_CHAR,enabled_flag,p_enabled_flag),
2239: if ((p_email_account_id <> FND_API.G_MISS_NUM) and (p_class_id <> FND_API.G_MISS_NUM)) then
2240:
2241: update IEM_ACCOUNT_ROUTE_CLASS
2242: set
2243: enabled_flag=decode(p_enabled_flag,FND_API.G_MISS_CHAR,enabled_flag,p_enabled_flag),
2244: priority=decode(p_priority,null,priority,p_priority),
2245: LAST_UPDATED_BY = decode(G_created_updated_by,null,-1,G_created_updated_by),
2246: LAST_UPDATE_DATE = sysdate,
2247: LAST_UPDATE_LOGIN = decode(G_LAST_UPDATE_LOGIN,null,-1,G_LAST_UPDATE_LOGIN)
2253:
2254:
2255:
2256: -- Standard Check Of p_commit.
2257: IF FND_API.To_Boolean(p_commit) THEN
2258: COMMIT WORK;
2259: END IF;
2260: -- Standard callto get message count and if count is 1, get message info.
2261: FND_MSG_PUB.Count_And_Get
2270: ROLLBACK TO update_account_class_PVT;
2271:
2272: FND_MESSAGE.SET_NAME('IEM','IEM_RT_CLASS_NO_DATA');
2273: FND_MSG_PUB.Add;
2274: x_return_status := FND_API.G_RET_STS_ERROR ;
2275: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2276: WHEN IEM_ADMIN_ACCOUNT_NOT_EXIST THEN
2277: ROLLBACK TO update_account_class_PVT;
2278: FND_MESSAGE.SET_NAME('IEM','IEM_ADMIN_ACCOUNT_NOT_EXIST');
2277: ROLLBACK TO update_account_class_PVT;
2278: FND_MESSAGE.SET_NAME('IEM','IEM_ADMIN_ACCOUNT_NOT_EXIST');
2279: FND_MSG_PUB.Add;
2280:
2281: x_return_status := FND_API.G_RET_STS_ERROR ;
2282:
2283: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2284:
2285: WHEN FND_API.G_EXC_ERROR THEN
2281: x_return_status := FND_API.G_RET_STS_ERROR ;
2282:
2283: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2284:
2285: WHEN FND_API.G_EXC_ERROR THEN
2286: ROLLBACK TO update_account_class_PVT;
2287: x_return_status := FND_API.G_RET_STS_ERROR ;
2288: FND_MSG_PUB.Count_And_Get
2289: ( p_count => x_msg_count,
2283: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2284:
2285: WHEN FND_API.G_EXC_ERROR THEN
2286: ROLLBACK TO update_account_class_PVT;
2287: x_return_status := FND_API.G_RET_STS_ERROR ;
2288: FND_MSG_PUB.Count_And_Get
2289: ( p_count => x_msg_count,
2290: p_data => x_msg_data
2291: );
2288: FND_MSG_PUB.Count_And_Get
2289: ( p_count => x_msg_count,
2290: p_data => x_msg_data
2291: );
2292: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2293: ROLLBACK TO update_account_class_PVT;
2294: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2295:
2296:
2290: p_data => x_msg_data
2291: );
2292: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2293: ROLLBACK TO update_account_class_PVT;
2294: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2295:
2296:
2297: FND_MSG_PUB.Count_And_Get
2298:
2300: p_data => x_msg_data
2301: );
2302: WHEN OTHERS THEN
2303: ROLLBACK TO update_account_class_PVT;
2304: x_return_status := FND_API.G_RET_STS_ERROR;
2305: IF FND_MSG_PUB.Check_Msg_Level
2306: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2307: THEN
2308: FND_MSG_PUB.Add_Exc_Msg
2351: SAVEPOINT delete_acct_class_batch;
2352:
2353: -- Standard call to check for call compatibility.
2354:
2355: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
2356: p_api_version_number,
2357: l_api_name,
2358:
2359: G_PKG_NAME)
2357: l_api_name,
2358:
2359: G_PKG_NAME)
2360: THEN
2361: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2362: END IF;
2363:
2364: --Initialize the message list if p_init_msg_list is set to TRUE
2365: If FND_API.to_Boolean(p_init_msg_list) THEN
2361: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2362: END IF;
2363:
2364: --Initialize the message list if p_init_msg_list is set to TRUE
2365: If FND_API.to_Boolean(p_init_msg_list) THEN
2366:
2367: FND_MSG_PUB.initialize;
2368:
2369: END IF;
2368:
2369: END IF;
2370:
2371: --Initialize API status return
2372: x_return_status := FND_API.G_RET_STS_SUCCESS;
2373:
2374: --Actual API starts here
2375: if ( p_class_ids_tbl.count <> 0 ) then
2376:
2387: -- ***** Removed for 11i compliance *****
2388: --delete the classification folder in OES first
2389: --iem_route_class_pvt.delete_folder(p_api_version_number =>p_api_version_number,
2390: -- p_init_msg_list => p_init_msg_list,
2391: -- p_commit => FND_API.G_FALSE,
2392: -- p_email_account_id =>p_account_id,
2393: -- p_class_id => p_class_ids_tbl(i),
2394: -- x_return_status =>l_return_status,
2395: -- x_msg_count => x_msg_count,
2394: -- x_return_status =>l_return_status,
2395: -- x_msg_count => x_msg_count,
2396: -- x_msg_data => x_msg_data);
2397:
2398: --if ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
2399: -- raise FND_API.G_EXC_UNEXPECTED_ERROR;
2400: --elsif (l_return_status = FND_API.G_RET_STS_ERROR) then
2401: -- select name into l_undeleted_class_name_1 from iem_route_classifications where route_classification_id=p_class_ids_tbl(i);
2402: -- l_undeleted_class_name := l_undeleted_class_name||l_undeleted_class_name_1||', ';
2395: -- x_msg_count => x_msg_count,
2396: -- x_msg_data => x_msg_data);
2397:
2398: --if ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
2399: -- raise FND_API.G_EXC_UNEXPECTED_ERROR;
2400: --elsif (l_return_status = FND_API.G_RET_STS_ERROR) then
2401: -- select name into l_undeleted_class_name_1 from iem_route_classifications where route_classification_id=p_class_ids_tbl(i);
2402: -- l_undeleted_class_name := l_undeleted_class_name||l_undeleted_class_name_1||', ';
2403: --else
2396: -- x_msg_data => x_msg_data);
2397:
2398: --if ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
2399: -- raise FND_API.G_EXC_UNEXPECTED_ERROR;
2400: --elsif (l_return_status = FND_API.G_RET_STS_ERROR) then
2401: -- select name into l_undeleted_class_name_1 from iem_route_classifications where route_classification_id=p_class_ids_tbl(i);
2402: -- l_undeleted_class_name := l_undeleted_class_name||l_undeleted_class_name_1||', ';
2403: --else
2404:
2425:
2426: --add names of un_deleted classifications into message
2427: if l_undeleted_class_name is not null then
2428: l_undeleted_class_name := RTRIM(l_undeleted_class_name, ', ');
2429: x_return_status := FND_API.G_RET_STS_ERROR;
2430: FND_MESSAGE.SET_NAME('IEM', 'IEM_RT_CLASS_FAILED_DEL_FOLDER');
2431:
2432: FND_MESSAGE.SET_TOKEN('CLASSIFICATION', l_undeleted_class_name);
2433: FND_MSG_PUB.ADD;
2433: FND_MSG_PUB.ADD;
2434: end if;
2435:
2436: --Standard check of p_commit
2437: IF FND_API.to_Boolean(p_commit) THEN
2438: COMMIT WORK;
2439: END IF;
2440:
2441:
2448: EXCEPTION
2449:
2450: WHEN IEM_ACCOUNT_CLASS_NOT_DELETED THEN
2451: ROLLBACK TO delete_acct_class_batch;
2452: x_return_status := FND_API.G_RET_STS_ERROR;
2453: FND_MESSAGE.SET_NAME('IEM', 'IEM_ACCOUNT_CLASS_NOT_DELETED');
2454: FND_MSG_PUB.ADD;
2455: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2456:
2453: FND_MESSAGE.SET_NAME('IEM', 'IEM_ACCOUNT_CLASS_NOT_DELETED');
2454: FND_MSG_PUB.ADD;
2455: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2456:
2457: WHEN FND_API.G_EXC_ERROR THEN
2458:
2459: ROLLBACK TO delete_acct_class_batch;
2460: x_return_status := FND_API.G_RET_STS_ERROR ;
2461: FND_MSG_PUB.Count_And_Get
2456:
2457: WHEN FND_API.G_EXC_ERROR THEN
2458:
2459: ROLLBACK TO delete_acct_class_batch;
2460: x_return_status := FND_API.G_RET_STS_ERROR ;
2461: FND_MSG_PUB.Count_And_Get
2462: ( p_count => x_msg_count,p_data => x_msg_data);
2463:
2464: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2460: x_return_status := FND_API.G_RET_STS_ERROR ;
2461: FND_MSG_PUB.Count_And_Get
2462: ( p_count => x_msg_count,p_data => x_msg_data);
2463:
2464: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2465: ROLLBACK TO delete_acct_class_batch;
2466: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2467: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
2468:
2462: ( p_count => x_msg_count,p_data => x_msg_data);
2463:
2464: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2465: ROLLBACK TO delete_acct_class_batch;
2466: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2467: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
2468:
2469:
2470: WHEN OTHERS THEN
2469:
2470: WHEN OTHERS THEN
2471: ROLLBACK TO delete_acct_class_batch;
2472:
2473: x_return_status := FND_API.G_RET_STS_ERROR;
2474: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2475: FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME , l_api_name);
2476: END IF;
2477:
2506: BEGIN
2507: --Standard Savepoint
2508: SAVEPOINT delete_folder_on_classId;
2509: -- Standard call to check for call compatibility.
2510: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
2511: p_api_version_number,
2512: l_api_name,
2513:
2514:
2513:
2514:
2515: G_PKG_NAME)
2516: THEN
2517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2518: END IF;
2519:
2520: --Initialize the message list if p_init_msg_list is set to TRUE
2521: If FND_API.to_Boolean(p_init_msg_list) THEN
2517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2518: END IF;
2519:
2520: --Initialize the message list if p_init_msg_list is set to TRUE
2521: If FND_API.to_Boolean(p_init_msg_list) THEN
2522:
2523: FND_MSG_PUB.initialize;
2524: END IF;
2525:
2524: END IF;
2525:
2526: --Initialize API status return
2527:
2528: x_return_status := FND_API.G_RET_STS_SUCCESS;
2529:
2530:
2531: --actuall API starts here
2532: FOR acct_id IN acct_id_cursor( p_classification_id ) LOOP
2532: FOR acct_id IN acct_id_cursor( p_classification_id ) LOOP
2533: -- ***** Remove for 11i compliance ***
2534: --iem_route_class_pvt.delete_folder(p_api_version_number =>p_api_version_number,
2535: -- p_init_msg_list => p_init_msg_list,
2536: -- p_commit => FND_API.G_FALSE,
2537: -- p_email_account_id =>acct_id.email_account_id,
2538: -- p_class_id => p_classification_id,
2539: -- x_return_status =>l_return_status,
2540: -- x_msg_count => x_msg_count,
2540: -- x_msg_count => x_msg_count,
2541: -- x_msg_data => x_msg_data);
2542:
2543:
2544: --if (l_return_status = FND_API.G_RET_STS_ERROR) then
2545:
2546: -- RAISE MY_EXCP_MSG_IN_FOLDER;
2547: --elsif (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
2548: -- RAISE IEM_UNEXPT_ERR_DELETE_FOLDER ;
2543:
2544: --if (l_return_status = FND_API.G_RET_STS_ERROR) then
2545:
2546: -- RAISE MY_EXCP_MSG_IN_FOLDER;
2547: --elsif (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
2548: -- RAISE IEM_UNEXPT_ERR_DELETE_FOLDER ;
2549: --end if;
2550: END LOOP;
2551:
2549: --end if;
2550: END LOOP;
2551:
2552: --Standard check of p_commit
2553: IF FND_API.to_Boolean(p_commit) THEN
2554: COMMIT WORK;
2555: END IF;
2556:
2557:
2563:
2564: EXCEPTION
2565: WHEN MY_EXCP_MSG_IN_FOLDER THEN
2566: ROLLBACK TO delete_folder_on_classId;
2567: x_return_status := FND_API.G_RET_STS_ERROR;
2568:
2569: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2570:
2571:
2570:
2571:
2572: WHEN IEM_UNEXPT_ERR_DELETE_FOLDER THEN
2573: ROLLBACK TO delete_folder_on_classId;
2574: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2575:
2576: --FND_MESSAGE.SET_NAME('IEM', 'IEM_UNEXPT_ERR_DELETE_FOLDER');
2577:
2578: --FND_MSG_PUB.ADD;
2577:
2578: --FND_MSG_PUB.ADD;
2579: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2580:
2581: WHEN FND_API.G_EXC_ERROR THEN
2582: ROLLBACK TO delete_folder_on_classId;
2583: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2584: FND_MSG_PUB.Count_And_Get
2585: ( p_count => x_msg_count,p_data => x_msg_data);
2579: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2580:
2581: WHEN FND_API.G_EXC_ERROR THEN
2582: ROLLBACK TO delete_folder_on_classId;
2583: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2584: FND_MSG_PUB.Count_And_Get
2585: ( p_count => x_msg_count,p_data => x_msg_data);
2586:
2587:
2584: FND_MSG_PUB.Count_And_Get
2585: ( p_count => x_msg_count,p_data => x_msg_data);
2586:
2587:
2588: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2589: ROLLBACK TO delete_folder_on_classId;
2590: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2591: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
2592:
2586:
2587:
2588: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2589: ROLLBACK TO delete_folder_on_classId;
2590: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2591: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
2592:
2593:
2594: WHEN OTHERS THEN
2592:
2593:
2594: WHEN OTHERS THEN
2595: ROLLBACK TO delete_folder_on_classId;
2596: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2597: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2598: FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME , l_api_name);
2599: END IF;
2600:
2656:
2657:
2658: -- Standard call to check for call compatibility.
2659:
2660: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
2661: p_api_version_number,
2662: l_api_name,
2663:
2664: G_PKG_NAME)
2662: l_api_name,
2663:
2664: G_PKG_NAME)
2665: THEN
2666: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2667: END IF;
2668:
2669: -- Initialize message list if p_init_msg_list is set to TRUE.
2670: IF FND_API.to_Boolean( p_init_msg_list )
2666: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2667: END IF;
2668:
2669: -- Initialize message list if p_init_msg_list is set to TRUE.
2670: IF FND_API.to_Boolean( p_init_msg_list )
2671: THEN
2672: FND_MSG_PUB.initialize;
2673:
2674:
2675: END IF;
2676:
2677:
2678: -- Initialize API return status to SUCCESS
2679: x_return_status := FND_API.G_RET_STS_SUCCESS;
2680:
2681: --begins here
2682: select DB_SERVER_ID
2683: INTO l_db_server_id
2694: x_return_status => l_stat,
2695: x_msg_count => l_count,
2696: x_msg_data => l_data );
2697:
2698: if (l_stat <> FND_API.G_RET_STS_SUCCESS) then
2699:
2700: RAISE IEM_DB_LINK_NOT_AVAILABLE;
2701: end if;
2702:
2718: l_str := 'begin :l_ret:=im_api.authenticate'||l_im_link||'(:a_user, :a_domain, :a_password); end;';
2719: EXECUTE IMMEDIATE l_str using OUT l_ret,l_email_acct_Rec.email_user, l_email_acct_Rec.domain, l_email_acct_Rec.email_password;
2720:
2721: IF l_ret=0 THEN
2722: x_return_status := FND_API.G_RET_STS_SUCCESS;
2723: ELSE
2724:
2725:
2726: x_return_status := FND_API.G_RET_STS_ERROR;
2722: x_return_status := FND_API.G_RET_STS_SUCCESS;
2723: ELSE
2724:
2725:
2726: x_return_status := FND_API.G_RET_STS_ERROR;
2727: END IF;
2728:
2729: --now create the folder named by classification name
2730: l_folder := p_classification_name;
2732:
2733: l_str := 'begin :l_ret:=im_api.createfolder'||l_im_link||'(:a_folder);end;';
2734: EXECUTE IMMEDIATE l_str using OUT l_ret, l_folder;
2735: IF l_ret=0 THEN
2736: x_return_status := FND_API.G_RET_STS_SUCCESS;
2737: ELSE
2738: x_return_status := FND_API.G_RET_STS_ERROR;
2739: END IF;
2740:
2734: EXECUTE IMMEDIATE l_str using OUT l_ret, l_folder;
2735: IF l_ret=0 THEN
2736: x_return_status := FND_API.G_RET_STS_SUCCESS;
2737: ELSE
2738: x_return_status := FND_API.G_RET_STS_ERROR;
2739: END IF;
2740:
2741:
2742:
2740:
2741:
2742:
2743: --Standard check of p_commit
2744: IF FND_API.to_Boolean(p_commit) THEN
2745: COMMIT WORK;
2746: END IF;
2747: FND_MSG_PUB.Count_And_Get
2748: ( p_count => x_msg_count,
2750: );
2751: EXCEPTION
2752: WHEN IEM_DB_LINK_NOT_AVAILABLE THEN
2753: ROLLBACK TO create_folder_PVT;
2754: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2755:
2756: --FND_MESSAGE.SET_NAME('IEM', 'IEM_DB_LINK_NOT_AVAILABLE');
2757: --FND_MSG_PUB.ADD;
2758: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2758: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2759: WHEN IEM_ADMIN_ACCOUNT_NOT_EXIST THEN
2760: ROLLBACK TO create_folder_PVT;
2761:
2762: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2763: FND_MESSAGE.SET_NAME('IEM', 'IEM_ADMIN_ACCOUNT_NOT_EXIST');
2764:
2765: FND_MSG_PUB.ADD;
2766: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2766: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2767:
2768: WHEN tns_no_listener THEN
2769: ROLLBACK TO create_folder_PVT;
2770: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2771: FND_MESSAGE.SET_NAME('IEM', 'IEM_ADMIN_TNS_NO_LISTENER');
2772: FND_MSG_PUB.ADD;
2773: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2774:
2773: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2774:
2775: WHEN looking_up_object THEN
2776: ROLLBACK TO create_folder_PVT;
2777: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2778: FND_MESSAGE.SET_NAME('IEM', 'IEM_ADMIN_LOOKING_UP_OBJECT');
2779: FND_MSG_PUB.ADD;
2780: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2781:
2779: FND_MSG_PUB.ADD;
2780: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
2781:
2782:
2783: WHEN FND_API.G_EXC_ERROR THEN
2784: ROLLBACK TO create_folder_PVT;
2785: x_return_status := FND_API.G_RET_STS_ERROR ;
2786:
2787: FND_MSG_PUB.Count_And_Get
2781:
2782:
2783: WHEN FND_API.G_EXC_ERROR THEN
2784: ROLLBACK TO create_folder_PVT;
2785: x_return_status := FND_API.G_RET_STS_ERROR ;
2786:
2787: FND_MSG_PUB.Count_And_Get
2788: ( p_count => x_msg_count,
2789: p_data => x_msg_data
2789: p_data => x_msg_data
2790:
2791: );
2792:
2793: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2794:
2795: ROLLBACK TO create_folder_PVT;
2796: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2797: FND_MSG_PUB.Count_And_Get
2792:
2793: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2794:
2795: ROLLBACK TO create_folder_PVT;
2796: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2797: FND_MSG_PUB.Count_And_Get
2798: ( p_count => x_msg_count,
2799: p_data => x_msg_data
2800: );
2801:
2802: WHEN OTHERS THEN
2803: ROLLBACK TO create_folder_PVT;
2804:
2805: x_return_status := FND_API.G_RET_STS_ERROR;
2806: IF FND_MSG_PUB.Check_Msg_Level
2807: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2808: THEN
2809:
2872:
2873:
2874:
2875: -- Standard call to check for call compatibility.
2876: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
2877: p_api_version_number,
2878:
2879: l_api_name,
2880: G_PKG_NAME)
2878:
2879: l_api_name,
2880: G_PKG_NAME)
2881: THEN
2882: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2883: END IF;
2884:
2885: -- Initialize message list if p_init_msg_list is set to TRUE.
2886: IF FND_API.to_Boolean( p_init_msg_list )
2882: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2883: END IF;
2884:
2885: -- Initialize message list if p_init_msg_list is set to TRUE.
2886: IF FND_API.to_Boolean( p_init_msg_list )
2887: THEN
2888:
2889: FND_MSG_PUB.initialize;
2890:
2891: END IF;
2892:
2893:
2894: -- Initialize API return status to SUCCESS
2895: x_return_status := FND_API.G_RET_STS_SUCCESS;
2896:
2897: --begins here
2898: select DB_SERVER_ID
2899: INTO l_db_server_id
2910: x_return_status => l_stat,
2911: x_msg_count => l_count,
2912: x_msg_data => l_data );
2913:
2914: if ( l_stat <> FND_API.G_RET_STS_SUCCESS ) then
2915: raise IEM_ADMIN_DB_CONNECTION_FAILED;
2916: end if;
2917:
2918:
2937:
2938: IF l_ret=0 THEN
2939:
2940:
2941: x_return_status := FND_API.G_RET_STS_SUCCESS;
2942: ELSE
2943: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2944: END IF;
2945:
2939:
2940:
2941: x_return_status := FND_API.G_RET_STS_SUCCESS;
2942: ELSE
2943: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2944: END IF;
2945:
2946: --get folder name
2947: select name into l_folder from iem_route_classifications where route_classification_id = p_class_id;
2967:
2968: EXECUTE IMMEDIATE l_str using OUT l_ret, l_folder;
2969:
2970: IF l_ret=0 THEN
2971: x_return_status := FND_API.G_RET_STS_SUCCESS;
2972: ELSE
2973: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2974: END IF;
2975: ELSE
2969:
2970: IF l_ret=0 THEN
2971: x_return_status := FND_API.G_RET_STS_SUCCESS;
2972: ELSE
2973: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2974: END IF;
2975: ELSE
2976: x_return_status := FND_API.G_RET_STS_SUCCESS;
2977: END IF;
2972: ELSE
2973: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2974: END IF;
2975: ELSE
2976: x_return_status := FND_API.G_RET_STS_SUCCESS;
2977: END IF;
2978: ELSE
2979: x_return_status := FND_API.G_RET_STS_ERROR;
2980: END IF;
2975: ELSE
2976: x_return_status := FND_API.G_RET_STS_SUCCESS;
2977: END IF;
2978: ELSE
2979: x_return_status := FND_API.G_RET_STS_ERROR;
2980: END IF;
2981:
2982: ELSE
2983: x_return_status := FND_API.G_RET_STS_SUCCESS;
2979: x_return_status := FND_API.G_RET_STS_ERROR;
2980: END IF;
2981:
2982: ELSE
2983: x_return_status := FND_API.G_RET_STS_SUCCESS;
2984:
2985: END IF;
2986:
2987: --Standard check of p_commit
2984:
2985: END IF;
2986:
2987: --Standard check of p_commit
2988: IF FND_API.to_Boolean(p_commit) THEN
2989: COMMIT WORK;
2990: END IF;
2991:
2992: FND_MSG_PUB.Count_And_Get
2995: );
2996: EXCEPTION
2997: WHEN IEM_ADMIN_DB_CONNECTION_FAILED THEN
2998: ROLLBACK TO delete_folder_PVT;
2999: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3000: --FND_MESSAGE.SET_NAME('IEM', 'IEM_ADMIN_DB_CONNECT');
3001: --FND_MSG_PUB.ADD;
3002: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3003:
3002: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3003:
3004: WHEN IEM_ACCT_ID_NOT_EXIST THEN
3005: ROLLBACK TO delete_folder_PVT;
3006: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3007: FND_MESSAGE.SET_NAME('IEM', 'IEM_ACCT_ID_NOT_EXIST');
3008: FND_MSG_PUB.ADD;
3009: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3010:
3009: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3010:
3011: WHEN tns_no_listener THEN
3012: ROLLBACK TO delete_folder_PVT;
3013: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3014: FND_MESSAGE.SET_NAME('IEM', 'IEM_ADMIN_TNS_NO_LISTENER');
3015: FND_MSG_PUB.ADD;
3016: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3017:
3015: FND_MSG_PUB.ADD;
3016: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3017:
3018:
3019: WHEN FND_API.G_EXC_ERROR THEN
3020: ROLLBACK TO delete_folder_PVT;
3021: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3022:
3023:
3017:
3018:
3019: WHEN FND_API.G_EXC_ERROR THEN
3020: ROLLBACK TO delete_folder_PVT;
3021: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3022:
3023:
3024: FND_MSG_PUB.Count_And_Get
3025: ( p_count => x_msg_count,
3026: p_data => x_msg_data
3027:
3028: );
3029:
3030: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3031: ROLLBACK TO delete_folder_PVT;
3032: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3033: FND_MSG_PUB.Count_And_Get
3034: ( p_count => x_msg_count,
3028: );
3029:
3030: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3031: ROLLBACK TO delete_folder_PVT;
3032: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3033: FND_MSG_PUB.Count_And_Get
3034: ( p_count => x_msg_count,
3035: p_data => x_msg_data
3036:
3039:
3040: WHEN OTHERS THEN
3041: ROLLBACK TO delete_folder_PVT;
3042:
3043: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3044: IF FND_MSG_PUB.Check_Msg_Level
3045: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
3046: THEN
3047: FND_MSG_PUB.Add_Exc_Msg
3090:
3091: --Standard Savepoint
3092: SAVEPOINT delete_association_on_acctId;
3093: -- Standard call to check for call compatibility.
3094: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
3095:
3096: p_api_version_number,
3097: l_api_name,
3098: G_PKG_NAME)
3096: p_api_version_number,
3097: l_api_name,
3098: G_PKG_NAME)
3099: THEN
3100: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3101: END IF;
3102:
3103: --Initialize the message list if p_init_msg_list is set to TRUE
3104: If FND_API.to_Boolean(p_init_msg_list) THEN
3100: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3101: END IF;
3102:
3103: --Initialize the message list if p_init_msg_list is set to TRUE
3104: If FND_API.to_Boolean(p_init_msg_list) THEN
3105:
3106:
3107: FND_MSG_PUB.initialize;
3108: END IF;
3108: END IF;
3109:
3110:
3111: --Initialize API status return
3112: x_return_status := FND_API.G_RET_STS_SUCCESS;
3113:
3114: --actuall API starts here
3115: --FOR class_id IN class_id_cursor( p_email_account_id ) LOOP
3116:
3121: -- end if;
3122:
3123: --iem_route_class_pvt.delete_folder(p_api_version_number =>p_api_version_number,
3124: -- p_init_msg_list => p_init_msg_list,
3125: -- p_commit => FND_API.G_FALSE,
3126: -- p_email_account_id =>p_email_account_id,
3127: -- p_class_id => class_id.route_classification_id,
3128: -- x_return_status =>l_return_status,
3129: -- x_msg_count => x_msg_count,
3128: -- x_return_status =>l_return_status,
3129: -- x_msg_count => x_msg_count,
3130: -- x_msg_data => x_msg_data);
3131:
3132: --if (l_return_status = FND_API.G_RET_STS_ERROR) then
3133: -- RAISE MY_EXCP_MSG_IN_FOLDER;
3134: --elsif (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
3135: -- RAISE IEM_UNEXPT_ERR_DELETE_FOLDER;
3136: --end if;
3130: -- x_msg_data => x_msg_data);
3131:
3132: --if (l_return_status = FND_API.G_RET_STS_ERROR) then
3133: -- RAISE MY_EXCP_MSG_IN_FOLDER;
3134: --elsif (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
3135: -- RAISE IEM_UNEXPT_ERR_DELETE_FOLDER;
3136: --end if;
3137: --END LOOP;
3138:
3141: delete from iem_account_route_class where email_account_id = p_email_account_id;
3142:
3143:
3144: --Standard check of p_commit
3145: IF FND_API.to_Boolean(p_commit) THEN
3146: COMMIT WORK;
3147: END IF;
3148:
3149: FND_MSG_PUB.Count_And_Get
3155:
3156:
3157: WHEN MY_EXCP_MSG_IN_FOLDER THEN
3158: ROLLBACK TO delete_association_on_acctId;
3159: x_return_status := FND_API.G_RET_STS_ERROR;
3160: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3161:
3162: WHEN IEM_UNEXPT_ERR_DELETE_FOLDER THEN
3163: ROLLBACK TO delete_association_on_acctId;
3160: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3161:
3162: WHEN IEM_UNEXPT_ERR_DELETE_FOLDER THEN
3163: ROLLBACK TO delete_association_on_acctId;
3164: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3165: FND_MESSAGE.SET_NAME('IEM', 'IEM_UNEXPT_ERR_DELETE_FOLDER');
3166: FND_MSG_PUB.ADD;
3167: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3168:
3165: FND_MESSAGE.SET_NAME('IEM', 'IEM_UNEXPT_ERR_DELETE_FOLDER');
3166: FND_MSG_PUB.ADD;
3167: FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
3168:
3169: WHEN FND_API.G_EXC_ERROR THEN
3170:
3171:
3172: ROLLBACK TO delete_association_on_acctId;
3173: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3169: WHEN FND_API.G_EXC_ERROR THEN
3170:
3171:
3172: ROLLBACK TO delete_association_on_acctId;
3173: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3174: FND_MSG_PUB.Count_And_Get
3175: ( p_count => x_msg_count,p_data => x_msg_data);
3176:
3177: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3173: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3174: FND_MSG_PUB.Count_And_Get
3175: ( p_count => x_msg_count,p_data => x_msg_data);
3176:
3177: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3178: ROLLBACK TO delete_association_on_acctId;
3179: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3180: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
3181:
3175: ( p_count => x_msg_count,p_data => x_msg_data);
3176:
3177: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3178: ROLLBACK TO delete_association_on_acctId;
3179: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
3180: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,p_data => x_msg_data);
3181:
3182: WHEN OTHERS THEN
3183: ROLLBACK TO delete_association_on_acctId;
3181:
3182: WHEN OTHERS THEN
3183: ROLLBACK TO delete_association_on_acctId;
3184:
3185: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3186:
3187: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
3188: FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME , l_api_name);
3189: END IF;