72: PROCEDURE LOCK_ACCESS_HOURS
73: ( p_access_hour_id in number,
74: p_API_VERSION NUMBER,
75: p_init_msg_list varchar2 default NULL,
76: -- p_commit in varchar2 default fnd_api.g_false,
77: p_object_version_number in number,
78: x_return_status OUT NOCOPY VARCHAR2,
79: x_msg_data OUT NOCOPY VARCHAR2,
80: x_msg_count OUT NOCOPY NUMBER)
94:
95: BEGIN
96:
97: SAVEPOINT lock_access_hours_pub;
98: x_return_status := fnd_api.g_ret_sts_success;
99:
100: IF NOT fnd_api.compatible_api_call (
101: l_api_version,
102: p_api_version,
96:
97: SAVEPOINT lock_access_hours_pub;
98: x_return_status := fnd_api.g_ret_sts_success;
99:
100: IF NOT fnd_api.compatible_api_call (
101: l_api_version,
102: p_api_version,
103: l_api_name_full,
104: g_pkg_name
103: l_api_name_full,
104: g_pkg_name
105: )
106: then
107: raise fnd_Api.g_exc_unexpected_error;
108: end if;
109:
110: IF fnd_api.to_boolean( nvl(p_init_msg_list,fnd_api.g_false)) then
111: fnd_msg_pub.initialize;
106: then
107: raise fnd_Api.g_exc_unexpected_error;
108: end if;
109:
110: IF fnd_api.to_boolean( nvl(p_init_msg_list,fnd_api.g_false)) then
111: fnd_msg_pub.initialize;
112: end if;
113:
114:
115:
116: If p_ACCESS_HOUR_ID is NULL then
117: fnd_message.set_name ('CSF','CSF_ACCESS_INVALID_PARAMETER');--message required
118: fnd_msg_pub.add;
119: raise fnd_api.g_exc_error;
120: end if;
121:
122: CSF_ACCESS_HOURS_PVT.LOCK_ACCESS_HOURS(
123:
129: x_msg_count => l_cnt,
130: x_msg_data => l_msg
131: );
132:
133: If l_return_status = fnd_api.g_ret_sts_error then
134: raise fnd_api.g_exc_error;
135: end if;
136:
137: If l_return_status = fnd_api.g_ret_sts_unexp_error then
130: x_msg_data => l_msg
131: );
132:
133: If l_return_status = fnd_api.g_ret_sts_error then
134: raise fnd_api.g_exc_error;
135: end if;
136:
137: If l_return_status = fnd_api.g_ret_sts_unexp_error then
138: raise fnd_Api.g_exc_unexpected_error;
133: If l_return_status = fnd_api.g_ret_sts_error then
134: raise fnd_api.g_exc_error;
135: end if;
136:
137: If l_return_status = fnd_api.g_ret_sts_unexp_error then
138: raise fnd_Api.g_exc_unexpected_error;
139: end if;
140:
141: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
134: raise fnd_api.g_exc_error;
135: end if;
136:
137: If l_return_status = fnd_api.g_ret_sts_unexp_error then
138: raise fnd_Api.g_exc_unexpected_error;
139: end if;
140:
141: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
142:
141: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
142:
143: EXCEPTION
144:
145: WHEN fnd_api.g_exc_error then
146: ROLLBACK TO lock_access_hours_pub;
147: x_return_status :=fnd_api.g_ret_sts_error;
148: /*x_msg_count := l_msg_count;
149: x_msg_data := l_msg_data;*/
143: EXCEPTION
144:
145: WHEN fnd_api.g_exc_error then
146: ROLLBACK TO lock_access_hours_pub;
147: x_return_status :=fnd_api.g_ret_sts_error;
148: /*x_msg_count := l_msg_count;
149: x_msg_data := l_msg_data;*/
150: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
151:
148: /*x_msg_count := l_msg_count;
149: x_msg_data := l_msg_data;*/
150: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
151:
152: WHEN fnd_api.g_exc_unexpected_error then
153: ROLLBACK TO lock_access_hours_pub;
154: x_return_status := fnd_api.g_ret_sts_unexp_error;
155: /*x_msg_count := l_msg_count;
156: x_msg_data := l_msg_data;*/
150: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
151:
152: WHEN fnd_api.g_exc_unexpected_error then
153: ROLLBACK TO lock_access_hours_pub;
154: x_return_status := fnd_api.g_ret_sts_unexp_error;
155: /*x_msg_count := l_msg_count;
156: x_msg_data := l_msg_data;*/
157: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
158:
157: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
158:
159: WHEN OTHERS then
160: ROLLBACK TO lock_access_hours_pub;
161: x_return_status := fnd_api.g_ret_sts_unexp_error;
162: /*x_msg_count := l_msg_count;
163: x_msg_data := l_msg_data;*/
164: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
165:
360:
361: IF l_task_status ='W' or l_task_status='X' or (l_task_status='A' and p_calling_routine='DELETE_ROW') then
362: fnd_message.set_name('CSF','CSF_ACCESS_INVALID_STATUS');-- require message
363: fnd_msg_pub.add;
364: raise fnd_api.g_exc_error;
365: end if;
366:
367: IF l_task_status ='A' and p_CALLING_ROUTINE='INSERT_ROW' then
368: IF p_MONDAY_FIRST_START is not NULL
398: OR nvl(p_AFTER_HOURS_FLAG,'N') ='Y'
399: then
400: fnd_message.set_name('CSF','CSF_ACCESS_INVALID_INSERT');---require message
401: fnd_msg_pub.add;
402: raise fnd_api.g_exc_error;
403: end if;
404: end if;
405:
406: -- in case of UPDATE_ROW function
452:
453: if nvl(p_ACCESS_HOUR_REQD,'N') ='Y' and nvl(p_AFTER_HOURS_FLAG,'N') ='Y' then
454: fnd_message.set_name('CSF','CSF_ACCESS_BOTH_FLAGS_INV');-- require message
455: fnd_msg_pub.add;
456: raise fnd_api.g_exc_error;
457: end if;
458:
459:
460:
477:
478: then
479: fnd_message.set_name('CSF','CSF_INV_START_END_NOT_NULL');
480: fnd_msg_pub.add;
481: raise fnd_api.g_exc_error;
482: end if;
483:
484: -- when access_hours flag is set atleast one slot should be entered
485:
493: and p_SUNDAY_FIRST_START is null
494: then
495: fnd_message.set_name('CSF','CSF_ENTER_ATLEAST_ONE_SLOT');-- require message here
496: fnd_msg_pub.add;
497: raise fnd_api.g_exc_error;
498: end if;
499:
500: -- start to be enetered first and then the end
501:
516:
517: then
518: fnd_message.set_name('CSF','CSF_ACCESS_START_FIRST');-- need new messgae for this
519: fnd_msg_pub.add;
520: raise fnd_api.g_exc_error;
521: end if;
522: -- second slots for a day to be entered only after end times are entered
523:
524: IF( (p_MONDAY_FIRST_START is null and p_MONDAY_FIRST_END is null)
538:
539: then
540: fnd_message.set_name('CSF','CSF_SECOND_SLOT_FIRST_SLOT');-- need new messgae for this
541: fnd_msg_pub.add;
542: raise fnd_api.g_exc_error;
543: end if;
544:
545: --- start time should be less than the end time for each slot
546:
561:
562: then
563: fnd_message.set_name('CSF','CSF_INV_START_END');
564: fnd_msg_pub.add;
565: raise fnd_api.g_exc_error;
566: end if;
567:
568: -- start time of the second slot should be greater than the end time of the first slot for a day
569: IF (p_MONDAY_FIRST_END > p_MONDAY_SECOND_START )
576:
577: then
578: fnd_message.set_name('CSF','CSF_INV_SLOTS');
579: fnd_msg_pub.add;
580: raise fnd_api.g_exc_error;
581: end if;
582:
583: /*-- both flags should not be set to Y together
584:
584:
585: if nvl(p_ACCESS_HOUR_REQD,'N') ='Y' and nvl(p_AFTER_HOURS_FLAG,'N') ='Y' then
586: fnd_message.set_name('CSF','CSF_INV_SLOTS');-- require message
587: fnd_msg_pub.add;
588: raise fnd_api.g_exc_error;
589: end if;
590:
591: -- when access_hours flag is set atleast one slot should be entered
592:
600: and p_SUNDAY_FIRST_START is null
601: then
602: fnd_message.set_name('CSF','CSF_INV_START_END_NOT_NULL');-- require message here
603: fnd_msg_pub.add;
604: raise fnd_api.g_exc_error;
605: end if;*/
606:
607: end if;
608:
606:
607: end if;
608:
609: EXCEPTION
610: WHEN fnd_api.g_exc_error then
611: x_return_status := fnd_api.g_ret_sts_error;
612: --fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
613:
614: WHEN fnd_api.g_exc_unexpected_error then
607: end if;
608:
609: EXCEPTION
610: WHEN fnd_api.g_exc_error then
611: x_return_status := fnd_api.g_ret_sts_error;
612: --fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
613:
614: WHEN fnd_api.g_exc_unexpected_error then
615: x_return_status :=fnd_api.g_ret_sts_unexp_error;
610: WHEN fnd_api.g_exc_error then
611: x_return_status := fnd_api.g_ret_sts_error;
612: --fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
613:
614: WHEN fnd_api.g_exc_unexpected_error then
615: x_return_status :=fnd_api.g_ret_sts_unexp_error;
616: --fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
617:
618: WHEN others then
611: x_return_status := fnd_api.g_ret_sts_error;
612: --fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
613:
614: WHEN fnd_api.g_exc_unexpected_error then
615: x_return_status :=fnd_api.g_ret_sts_unexp_error;
616: --fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
617:
618: WHEN others then
619: x_return_status :=fnd_api.g_ret_sts_unexp_error;
615: x_return_status :=fnd_api.g_ret_sts_unexp_error;
616: --fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
617:
618: WHEN others then
619: x_return_status :=fnd_api.g_ret_sts_unexp_error;
620: --fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
621:
622:
623: END CHECK_PARAMETERS;
663: p_CREATION_DATE DATE ,
664: p_LAST_UPDATED_BY NUMBER ,
665: p_LAST_UPDATE_DATE DATE,
666: p_LAST_UPDATE_LOGIN NUMBER ,
667: -- p_commit in varchar2 default fnd_api.g_false,
668: x_return_status OUT NOCOPY VARCHAR2,
669: x_msg_data OUT NOCOPY VARCHAR2,
670: x_msg_count OUT NOCOPY NUMBER
671:
687: CURSOR C_EXISTS(p_task_id number) is select 'Y' from csf_access_hours_vl where task_id=p_task_id;
688:
689: BEGIN
690: SAVEPOINT create_access_hours_pub;
691: x_return_status := fnd_api.g_ret_sts_success;
692:
693: IF NOT fnd_api.compatible_api_call (
694: l_api_version,
695: p_api_version,
689: BEGIN
690: SAVEPOINT create_access_hours_pub;
691: x_return_status := fnd_api.g_ret_sts_success;
692:
693: IF NOT fnd_api.compatible_api_call (
694: l_api_version,
695: p_api_version,
696: l_api_name_full,
697: g_pkg_name
696: l_api_name_full,
697: g_pkg_name
698: )
699: then
700: raise fnd_Api.g_exc_unexpected_error;
701: end if;
702:
703: IF fnd_api.to_boolean( nvl(p_init_msg_list,fnd_Api.g_false)) then
704: fnd_msg_pub.initialize;
699: then
700: raise fnd_Api.g_exc_unexpected_error;
701: end if;
702:
703: IF fnd_api.to_boolean( nvl(p_init_msg_list,fnd_Api.g_false)) then
704: fnd_msg_pub.initialize;
705: end if;
706:
707: If p_task_id is NULL then
706:
707: If p_task_id is NULL then
708: fnd_message.set_name ('CSF','CSF_ACCESS_INVALID_PARAMETER');--message required
709: fnd_msg_pub.add;
710: raise fnd_api.g_exc_error;
711: end if;
712:
713: open c_exists(p_task_id);
714: fetch c_exists into l_temp;
717: else
718: close c_exists;
719: fnd_message.set_name('CSF','CSF_ACCESS_ROW_EXISTS');
720: fnd_msg_pub.add;
721: raise fnd_api.g_exc_error;
722: end if;
723:
724: check_parameters
725: (
761: x_msg_data => l_msg_data
762:
763: );
764:
765: If l_return_status = fnd_api.g_ret_sts_error then
766: raise fnd_api.g_exc_error;
767: end if;
768:
769: If l_return_status = fnd_api.g_ret_sts_unexp_error then
762:
763: );
764:
765: If l_return_status = fnd_api.g_ret_sts_error then
766: raise fnd_api.g_exc_error;
767: end if;
768:
769: If l_return_status = fnd_api.g_ret_sts_unexp_error then
770: raise fnd_Api.g_exc_unexpected_error;
765: If l_return_status = fnd_api.g_ret_sts_error then
766: raise fnd_api.g_exc_error;
767: end if;
768:
769: If l_return_status = fnd_api.g_ret_sts_unexp_error then
770: raise fnd_Api.g_exc_unexpected_error;
771: end if;
772:
773: CSF_ACCESS_HOURS_PVT.CREATE_ACCESS_HOURS
766: raise fnd_api.g_exc_error;
767: end if;
768:
769: If l_return_status = fnd_api.g_ret_sts_unexp_error then
770: raise fnd_Api.g_exc_unexpected_error;
771: end if;
772:
773: CSF_ACCESS_HOURS_PVT.CREATE_ACCESS_HOURS
774: (
807: p_SUNDAY_SECOND_START =>p_SUNDAY_SECOND_START ,
808: p_SUNDAY_SECOND_END =>p_SUNDAY_SECOND_END ,
809: p_DESCRIPTION => p_DESCRIPTION,
810: px_object_version_number => px_object_version_number,
811: p_commit =>fnd_api.g_true,--p_commit
812: x_return_status => l_return_status,
813: x_msg_count => l_msg_count,
814: x_msg_data => l_msg_data
815:
815:
816: );
817:
818:
819: If l_return_status = fnd_api.g_ret_sts_error then
820: raise fnd_api.g_exc_error;
821: end if;
822:
823: If l_return_status = fnd_api.g_ret_sts_unexp_error then
816: );
817:
818:
819: If l_return_status = fnd_api.g_ret_sts_error then
820: raise fnd_api.g_exc_error;
821: end if;
822:
823: If l_return_status = fnd_api.g_ret_sts_unexp_error then
824: raise fnd_Api.g_exc_unexpected_error;
819: If l_return_status = fnd_api.g_ret_sts_error then
820: raise fnd_api.g_exc_error;
821: end if;
822:
823: If l_return_status = fnd_api.g_ret_sts_unexp_error then
824: raise fnd_Api.g_exc_unexpected_error;
825: end if;
826:
827: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
820: raise fnd_api.g_exc_error;
821: end if;
822:
823: If l_return_status = fnd_api.g_ret_sts_unexp_error then
824: raise fnd_Api.g_exc_unexpected_error;
825: end if;
826:
827: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
828:
826:
827: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
828:
829: EXCEPTION
830: WHEN fnd_api.g_exc_error then
831: ROLLBACK TO create_access_hours_pub;
832: x_return_status := fnd_api.g_ret_sts_error;
833: /*x_msg_count := l_msg_count;
834: x_msg_data := l_msg_data;*/
828:
829: EXCEPTION
830: WHEN fnd_api.g_exc_error then
831: ROLLBACK TO create_access_hours_pub;
832: x_return_status := fnd_api.g_ret_sts_error;
833: /*x_msg_count := l_msg_count;
834: x_msg_data := l_msg_data;*/
835: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
836:
833: /*x_msg_count := l_msg_count;
834: x_msg_data := l_msg_data;*/
835: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
836:
837: WHEN fnd_api.g_exc_unexpected_error then
838: ROLLBACK TO create_access_hours_pub;
839: x_return_status :=fnd_api.g_ret_sts_unexp_error ;
840: /*x_msg_count := l_msg_count;
841: x_msg_data := l_msg_data;*/
835: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
836:
837: WHEN fnd_api.g_exc_unexpected_error then
838: ROLLBACK TO create_access_hours_pub;
839: x_return_status :=fnd_api.g_ret_sts_unexp_error ;
840: /*x_msg_count := l_msg_count;
841: x_msg_data := l_msg_data;*/
842: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
843:
842: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
843:
844: WHEN OTHERS then
845: ROLLBACK TO create_task_assignment_pub;
846: x_return_status := fnd_api.g_ret_sts_unexp_error;
847: /*x_msg_count := l_msg_count;
848: x_msg_data := l_msg_data;*/
849: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
850:
990: CURSOR C_EXISTS(p_task_id number) is select 'Y' from csf_access_hours_vl where task_id=p_task_id;
991:
992: BEGIN
993: SAVEPOINT update_access_hours_pub;
994: x_return_status := fnd_api.g_ret_sts_success;
995:
996: IF NOT fnd_api.compatible_api_call (
997: l_api_version,
998: p_api_version,
992: BEGIN
993: SAVEPOINT update_access_hours_pub;
994: x_return_status := fnd_api.g_ret_sts_success;
995:
996: IF NOT fnd_api.compatible_api_call (
997: l_api_version,
998: p_api_version,
999: l_api_name_full,
1000: g_pkg_name
999: l_api_name_full,
1000: g_pkg_name
1001: )
1002: then
1003: raise fnd_Api.g_exc_unexpected_error;
1004: end if;
1005:
1006: IF fnd_api.to_boolean(nvl(p_init_msg_list,fnd_Api.g_false)) then
1007: fnd_msg_pub.initialize;
1002: then
1003: raise fnd_Api.g_exc_unexpected_error;
1004: end if;
1005:
1006: IF fnd_api.to_boolean(nvl(p_init_msg_list,fnd_Api.g_false)) then
1007: fnd_msg_pub.initialize;
1008: end if;
1009:
1010:
1010:
1011: If p_task_id is NULL or p_ACCESS_HOUR_ID is NULL then
1012: fnd_message.set_name ('CSF','CSF_ACCESS_INVALID_PARAMETER');--message required
1013: fnd_msg_pub.add;
1014: raise fnd_api.g_exc_error;
1015: end if;
1016:
1017: open c_exists(p_task_id);
1018: fetch c_exists into l_temp;
1019: if c_exists%notfound then
1020: close c_exists;
1021: fnd_message.set_name('CSF','CSF_ACCESS_NO_ROW_EXISTS');
1022: fnd_msg_pub.add;
1023: raise fnd_api.g_exc_error;
1024: else
1025: close c_exists;
1026: end if;
1027:
1067: OR (l_AFTER_HOURS_FLAG ='N' and p_AFTER_HOURS_FLAG='Y'))
1068: then
1069: fnd_message.set_name ('CSF','CSF_INV_FLAG_CHANGE');--message required
1070: fnd_msg_pub.add;
1071: raise fnd_api.g_exc_error;
1072: end if;
1073:
1074: IF p_MONDAY_FIRST_START is not null
1075: OR p_MONDAY_FIRST_END is not null
1101: OR p_SUNDAY_SECOND_END is not null then
1102:
1103: fnd_message.set_name ('CSF','CSF_INV_DATE_CHANGE');--message required
1104: fnd_msg_pub.add;
1105: raise fnd_api.g_exc_error;
1106: end if;
1107: end if;
1108:
1109: --- now copy all existing values and the new values to the local variable b4 calling the update_row procedure of csf_access_hours_pvt
1299: x_msg_data => l_msg_data
1300:
1301: );
1302:
1303: If l_return_status = fnd_api.g_ret_sts_error then
1304: raise fnd_api.g_exc_error;
1305: end if;
1306:
1307: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1300:
1301: );
1302:
1303: If l_return_status = fnd_api.g_ret_sts_error then
1304: raise fnd_api.g_exc_error;
1305: end if;
1306:
1307: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1308: raise fnd_Api.g_exc_unexpected_error;
1303: If l_return_status = fnd_api.g_ret_sts_error then
1304: raise fnd_api.g_exc_error;
1305: end if;
1306:
1307: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1308: raise fnd_Api.g_exc_unexpected_error;
1309: end if;
1310:
1311:
1304: raise fnd_api.g_exc_error;
1305: end if;
1306:
1307: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1308: raise fnd_Api.g_exc_unexpected_error;
1309: end if;
1310:
1311:
1312: CSF_ACCESS_HOURS_PVT.UPDATE_ACCESS_HOURS(
1345: p_SUNDAY_SECOND_START =>l_SUNDAY_SECOND_START ,
1346: p_SUNDAY_SECOND_END =>l_SUNDAY_SECOND_END ,
1347: p_DESCRIPTION => l_DESCRIPTION,
1348: px_object_version_number => px_object_version_number,
1349: p_commit => nvl(p_commit,fnd_Api.g_false),
1350: x_return_status => l_return_status,
1351: x_msg_count => l_msg_count,
1352: x_msg_data => l_msg_data
1353:
1352: x_msg_data => l_msg_data
1353:
1354: );
1355:
1356: If l_return_status = fnd_api.g_ret_sts_error then
1357: raise fnd_api.g_exc_error;
1358: end if;
1359:
1360: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1353:
1354: );
1355:
1356: If l_return_status = fnd_api.g_ret_sts_error then
1357: raise fnd_api.g_exc_error;
1358: end if;
1359:
1360: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1361: raise fnd_api.g_exc_unexpected_error;
1356: If l_return_status = fnd_api.g_ret_sts_error then
1357: raise fnd_api.g_exc_error;
1358: end if;
1359:
1360: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1361: raise fnd_api.g_exc_unexpected_error;
1362: end if;
1363:
1364: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1357: raise fnd_api.g_exc_error;
1358: end if;
1359:
1360: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1361: raise fnd_api.g_exc_unexpected_error;
1362: end if;
1363:
1364: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1365:
1364: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1365:
1366:
1367: EXCEPTION
1368: WHEN fnd_api.g_exc_error then
1369: ROLLBACK TO update_access_hours_pub;
1370: x_return_status := fnd_api.g_ret_sts_error;
1371: /*x_msg_count := l_msg_count;
1372: x_msg_data := l_msg_data;*/
1366:
1367: EXCEPTION
1368: WHEN fnd_api.g_exc_error then
1369: ROLLBACK TO update_access_hours_pub;
1370: x_return_status := fnd_api.g_ret_sts_error;
1371: /*x_msg_count := l_msg_count;
1372: x_msg_data := l_msg_data;*/
1373: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1374:
1371: /*x_msg_count := l_msg_count;
1372: x_msg_data := l_msg_data;*/
1373: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1374:
1375: WHEN fnd_api.g_exc_unexpected_error then
1376: ROLLBACK TO update_access_hours_pub;
1377: x_return_status := fnd_api.g_ret_sts_unexp_error;
1378: /*x_msg_count := l_msg_count;
1379: x_msg_data := l_msg_data;*/
1373: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1374:
1375: WHEN fnd_api.g_exc_unexpected_error then
1376: ROLLBACK TO update_access_hours_pub;
1377: x_return_status := fnd_api.g_ret_sts_unexp_error;
1378: /*x_msg_count := l_msg_count;
1379: x_msg_data := l_msg_data;*/
1380: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1381:
1380: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1381:
1382: WHEN OTHERS then
1383: ROLLBACK TO update_access_hours_pub;
1384: x_return_status := fnd_api.g_ret_sts_unexp_error;
1385: /*x_msg_count := l_msg_count;
1386: x_msg_data := l_msg_data;*/
1387: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1388:
1393: p_TASK_ID NUMBER,
1394: p_ACCESS_HOUR_ID NUMBER,
1395: p_API_VERSION NUMBER,
1396: p_init_msg_list varchar2 default null,
1397: -- p_commit in varchar2 default fnd_api.g_false,
1398: x_return_status OUT NOCOPY VARCHAR2,
1399: x_msg_data OUT NOCOPY VARCHAR2,
1400: x_msg_count OUT NOCOPY NUMBER)
1401: IS
1413: CURSOR C_EXISTS(p_task_id number) is select 'Y' from csf_access_hours_vl where task_id=p_task_id;
1414:
1415: BEGIN
1416: SAVEPOINT delete_access_hours_pub;
1417: x_return_status := fnd_api.g_ret_sts_success;
1418:
1419: IF NOT fnd_api.compatible_api_call (
1420: l_api_version,
1421: p_api_version,
1415: BEGIN
1416: SAVEPOINT delete_access_hours_pub;
1417: x_return_status := fnd_api.g_ret_sts_success;
1418:
1419: IF NOT fnd_api.compatible_api_call (
1420: l_api_version,
1421: p_api_version,
1422: l_api_name_full,
1423: g_pkg_name
1422: l_api_name_full,
1423: g_pkg_name
1424: )
1425: then
1426: raise fnd_Api.g_exc_unexpected_error;
1427: end if;
1428:
1429: IF fnd_api.to_boolean( nvl(p_init_msg_list,fnd_Api.g_false)) then
1430: fnd_msg_pub.initialize;
1425: then
1426: raise fnd_Api.g_exc_unexpected_error;
1427: end if;
1428:
1429: IF fnd_api.to_boolean( nvl(p_init_msg_list,fnd_Api.g_false)) then
1430: fnd_msg_pub.initialize;
1431: end if;
1432:
1433: If p_task_id is NULL or p_ACCESS_HOUR_ID is NULL then
1432:
1433: If p_task_id is NULL or p_ACCESS_HOUR_ID is NULL then
1434: fnd_message.set_name ('CSF','CSF_ACCESS_INVALID_PARAMETER');--message required
1435: fnd_msg_pub.add;
1436: raise fnd_api.g_exc_error;
1437: end if;
1438:
1439: open c_exists(p_task_id);
1440: fetch c_exists into l_temp;
1441: if c_exists%notfound then
1442: close c_exists;
1443: fnd_message.set_name('CSF','CSF_ACCESS_NO_ROW_EXISTS');
1444: fnd_msg_pub.add;
1445: raise fnd_api.g_exc_error;
1446: else
1447: close c_exists;
1448: end if;
1449:
1456: x_msg_data => l_msg_data
1457:
1458: );
1459:
1460: If l_return_status = fnd_api.g_ret_sts_error then
1461: raise fnd_api.g_exc_error;
1462: end if;
1463:
1464: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1457:
1458: );
1459:
1460: If l_return_status = fnd_api.g_ret_sts_error then
1461: raise fnd_api.g_exc_error;
1462: end if;
1463:
1464: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1465: raise fnd_Api.g_exc_unexpected_error;
1460: If l_return_status = fnd_api.g_ret_sts_error then
1461: raise fnd_api.g_exc_error;
1462: end if;
1463:
1464: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1465: raise fnd_Api.g_exc_unexpected_error;
1466: end if;
1467:
1468:
1461: raise fnd_api.g_exc_error;
1462: end if;
1463:
1464: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1465: raise fnd_Api.g_exc_unexpected_error;
1466: end if;
1467:
1468:
1469: CSF_ACCESS_HOURS_PVT.DELETE_ACCESS_HOURS(
1469: CSF_ACCESS_HOURS_PVT.DELETE_ACCESS_HOURS(
1470: p_API_VERSION => 1.0,
1471: p_INIT_MSG_LIST => 'F',
1472: p_ACCESS_HOUR_ID =>p_ACCESS_HOUR_ID,
1473: p_commit =>fnd_api.g_true, --p_commit,--fnd_api.g_true,
1474: x_return_status => l_return_status,
1475: x_msg_count => l_msg_count,
1476: x_msg_data => l_msg_data
1477: );
1486: /* If (SQL%NOTFOUND) then
1487: RAISE NO_DATA_FOUND;
1488: end if;*/
1489:
1490: If l_return_status = fnd_api.g_ret_sts_error then
1491: raise fnd_api.g_exc_error;
1492: end if;
1493:
1494: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1487: RAISE NO_DATA_FOUND;
1488: end if;*/
1489:
1490: If l_return_status = fnd_api.g_ret_sts_error then
1491: raise fnd_api.g_exc_error;
1492: end if;
1493:
1494: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1495: raise fnd_Api.g_exc_unexpected_error;
1490: If l_return_status = fnd_api.g_ret_sts_error then
1491: raise fnd_api.g_exc_error;
1492: end if;
1493:
1494: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1495: raise fnd_Api.g_exc_unexpected_error;
1496: end if;
1497:
1498: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1491: raise fnd_api.g_exc_error;
1492: end if;
1493:
1494: If l_return_status = fnd_api.g_ret_sts_unexp_error then
1495: raise fnd_Api.g_exc_unexpected_error;
1496: end if;
1497:
1498: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1499:
1497:
1498: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1499:
1500: EXCEPTION
1501: WHEN fnd_api.g_exc_error then
1502: ROLLBACK TO delete_access_hours_pub;
1503: x_return_status := fnd_api.g_ret_sts_error;
1504: /*x_msg_count := l_msg_count;
1505: x_msg_data := l_msg_data;*/
1499:
1500: EXCEPTION
1501: WHEN fnd_api.g_exc_error then
1502: ROLLBACK TO delete_access_hours_pub;
1503: x_return_status := fnd_api.g_ret_sts_error;
1504: /*x_msg_count := l_msg_count;
1505: x_msg_data := l_msg_data;*/
1506: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1507:
1504: /*x_msg_count := l_msg_count;
1505: x_msg_data := l_msg_data;*/
1506: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1507:
1508: WHEN fnd_api.g_exc_unexpected_error then
1509: ROLLBACK TO delete_access_hours_pub;
1510: x_return_status := fnd_api.g_ret_sts_unexp_error;
1511: /*x_msg_count := l_msg_count;
1512: x_msg_data := l_msg_data;*/
1506: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1507:
1508: WHEN fnd_api.g_exc_unexpected_error then
1509: ROLLBACK TO delete_access_hours_pub;
1510: x_return_status := fnd_api.g_ret_sts_unexp_error;
1511: /*x_msg_count := l_msg_count;
1512: x_msg_data := l_msg_data;*/
1513: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1514:
1513: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1514:
1515: WHEN OTHERS then
1516: ROLLBACK TO delete_access_hours_pub;
1517: x_return_status := fnd_api.g_ret_sts_unexp_error;
1518: /*x_msg_count := l_msg_count;
1519: x_msg_data := l_msg_data;*/
1520: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1521:
1558:
1559: BEGIN
1560:
1561: SAVEPOINT update_access_hours_pub2;
1562: x_return_status := fnd_api.g_ret_sts_success;
1563:
1564: IF NOT fnd_api.compatible_api_call (
1565: l_api_version,
1566: p_api_version,
1560:
1561: SAVEPOINT update_access_hours_pub2;
1562: x_return_status := fnd_api.g_ret_sts_success;
1563:
1564: IF NOT fnd_api.compatible_api_call (
1565: l_api_version,
1566: p_api_version,
1567: l_api_name_full,
1568: g_pkg_name
1567: l_api_name_full,
1568: g_pkg_name
1569: )
1570: then
1571: raise fnd_Api.g_exc_unexpected_error;
1572: end if;
1573: IF fnd_api.to_boolean(nvl(p_init_msg_list,fnd_api.g_false)) then
1574: fnd_msg_pub.initialize;
1575: end if;
1569: )
1570: then
1571: raise fnd_Api.g_exc_unexpected_error;
1572: end if;
1573: IF fnd_api.to_boolean(nvl(p_init_msg_list,fnd_api.g_false)) then
1574: fnd_msg_pub.initialize;
1575: end if;
1576:
1577:
1577:
1578: If p_task_id is NULL then
1579: fnd_message.set_name ('CSF','CSF_ACCESS_INVALID_PARAMETER');--message required
1580: fnd_msg_pub.add;
1581: raise fnd_api.g_exc_error;
1582: end if;
1583:
1584:
1585:
1588: if c_existing_values%notfound then
1589: close c_existing_values;
1590: fnd_message.set_name('CSF','CSF_ACCESS_NO_ROW_EXISTS');
1591: fnd_msg_pub.add;
1592: raise fnd_api.g_exc_error;
1593: end if;
1594: close c_existing_values;
1595:
1596: l_object_version_number := l_rec.object_version_number;
1598: UPDATE_ACCESS_HOURS(
1599: p_ACCESS_HOUR_ID => l_rec.access_hour_id,
1600: p_TASK_ID =>P_TASK_ID,
1601: p_API_VERSION =>l_api_version,
1602: p_init_msg_list =>nvl(p_init_msg_list,fnd_api.g_false),
1603: p_commit => nvl(p_commit,fnd_api.g_false),
1604: p_ACCESS_HOUR_REQD=>p_Access_hour_reqd ,
1605: p_AFTER_HOURS_FLAG=> l_rec.after_hours_flag,
1606: p_MONDAY_FIRST_START =>NULL,
1599: p_ACCESS_HOUR_ID => l_rec.access_hour_id,
1600: p_TASK_ID =>P_TASK_ID,
1601: p_API_VERSION =>l_api_version,
1602: p_init_msg_list =>nvl(p_init_msg_list,fnd_api.g_false),
1603: p_commit => nvl(p_commit,fnd_api.g_false),
1604: p_ACCESS_HOUR_REQD=>p_Access_hour_reqd ,
1605: p_AFTER_HOURS_FLAG=> l_rec.after_hours_flag,
1606: p_MONDAY_FIRST_START =>NULL,
1607: p_MONDAY_FIRST_END =>NULL,
1639: );
1640: x_object_version_number := l_object_version_number;
1641:
1642: EXCEPTION
1643: WHEN fnd_api.g_exc_error then
1644: ROLLBACK TO update_access_hours_pub2;
1645: x_return_status := fnd_api.g_ret_sts_error;
1646: /*x_msg_count := l_msg_count;
1647: x_msg_data := l_msg_data;*/
1641:
1642: EXCEPTION
1643: WHEN fnd_api.g_exc_error then
1644: ROLLBACK TO update_access_hours_pub2;
1645: x_return_status := fnd_api.g_ret_sts_error;
1646: /*x_msg_count := l_msg_count;
1647: x_msg_data := l_msg_data;*/
1648: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1649:
1646: /*x_msg_count := l_msg_count;
1647: x_msg_data := l_msg_data;*/
1648: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1649:
1650: WHEN fnd_api.g_exc_unexpected_error then
1651: ROLLBACK TO update_access_hours_pub2;
1652: x_return_status := fnd_api.g_ret_sts_unexp_error;
1653: /*x_msg_count := l_msg_count;
1654: x_msg_data := l_msg_data;*/
1648: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1649:
1650: WHEN fnd_api.g_exc_unexpected_error then
1651: ROLLBACK TO update_access_hours_pub2;
1652: x_return_status := fnd_api.g_ret_sts_unexp_error;
1653: /*x_msg_count := l_msg_count;
1654: x_msg_data := l_msg_data;*/
1655: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1656:
1655: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1656:
1657: WHEN OTHERS then
1658: ROLLBACK TO update_access_hours_pub2;
1659: x_return_status := fnd_api.g_ret_sts_unexp_error;
1660: /*x_msg_count := l_msg_count;
1661: x_msg_data := l_msg_data;*/
1662: fnd_msg_pub.count_and_get(p_count => x_msg_count,p_data => x_msg_data);
1663: