1: PACKAGE BODY jtf_rs_team_usages_pvt AS
2: /* $Header: jtfrsvjb.pls 120.0 2005/05/11 08:23:04 appldev ship $ */
3:
4: /*****************************************************************************************
5: This private package body defines the procedures for managing resource team usages,
13:
14:
15: /* Package variables. */
16:
17: G_PKG_NAME VARCHAR2(30) := 'JTF_RS_TEAM_USAGES_PVT';
18:
19:
20: /* Procedure to create the resource team usage
21: based on input values passed by calling routines. */
23: PROCEDURE create_team_usage
24: (P_API_VERSION IN NUMBER,
25: P_INIT_MSG_LIST IN VARCHAR2,
26: P_COMMIT IN VARCHAR2,
27: P_TEAM_ID IN JTF_RS_TEAM_USAGES.TEAM_ID%TYPE,
28: P_USAGE IN JTF_RS_TEAM_USAGES.USAGE%TYPE,
29: P_ATTRIBUTE1 IN JTF_RS_TEAM_MEMBERS.ATTRIBUTE1%TYPE,
30: P_ATTRIBUTE2 IN JTF_RS_TEAM_MEMBERS.ATTRIBUTE2%TYPE,
31: P_ATTRIBUTE3 IN JTF_RS_TEAM_MEMBERS.ATTRIBUTE3%TYPE,
24: (P_API_VERSION IN NUMBER,
25: P_INIT_MSG_LIST IN VARCHAR2,
26: P_COMMIT IN VARCHAR2,
27: P_TEAM_ID IN JTF_RS_TEAM_USAGES.TEAM_ID%TYPE,
28: P_USAGE IN JTF_RS_TEAM_USAGES.USAGE%TYPE,
29: P_ATTRIBUTE1 IN JTF_RS_TEAM_MEMBERS.ATTRIBUTE1%TYPE,
30: P_ATTRIBUTE2 IN JTF_RS_TEAM_MEMBERS.ATTRIBUTE2%TYPE,
31: P_ATTRIBUTE3 IN JTF_RS_TEAM_MEMBERS.ATTRIBUTE3%TYPE,
32: P_ATTRIBUTE4 IN JTF_RS_TEAM_MEMBERS.ATTRIBUTE4%TYPE,
44: P_ATTRIBUTE_CATEGORY IN JTF_RS_TEAM_MEMBERS.ATTRIBUTE_CATEGORY%TYPE,
45: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
46: X_MSG_COUNT OUT NOCOPY NUMBER,
47: X_MSG_DATA OUT NOCOPY VARCHAR2,
48: X_TEAM_USAGE_ID OUT NOCOPY JTF_RS_TEAM_USAGES.TEAM_USAGE_ID%TYPE
49: ) IS
50:
51: l_api_version CONSTANT NUMBER := 1.0;
52: l_api_name CONSTANT VARCHAR2(30) := 'CREATE_TEAM_USAGE';
49: ) IS
50:
51: l_api_version CONSTANT NUMBER := 1.0;
52: l_api_name CONSTANT VARCHAR2(30) := 'CREATE_TEAM_USAGE';
53: l_team_id jtf_rs_team_usages.team_id%TYPE := p_team_id;
54: l_usage jtf_rs_team_usages.usage%TYPE := upper(p_usage);
55:
56: l_rowid ROWID;
57: l_team_usage_id jtf_rs_team_usages.team_usage_id%TYPE;
50:
51: l_api_version CONSTANT NUMBER := 1.0;
52: l_api_name CONSTANT VARCHAR2(30) := 'CREATE_TEAM_USAGE';
53: l_team_id jtf_rs_team_usages.team_id%TYPE := p_team_id;
54: l_usage jtf_rs_team_usages.usage%TYPE := upper(p_usage);
55:
56: l_rowid ROWID;
57: l_team_usage_id jtf_rs_team_usages.team_usage_id%TYPE;
58: l_check_char VARCHAR2(1);
53: l_team_id jtf_rs_team_usages.team_id%TYPE := p_team_id;
54: l_usage jtf_rs_team_usages.usage%TYPE := upper(p_usage);
55:
56: l_rowid ROWID;
57: l_team_usage_id jtf_rs_team_usages.team_usage_id%TYPE;
58: l_check_char VARCHAR2(1);
59: l_check_count NUMBER;
60: l_bind_data_id NUMBER;
61:
68: FROM jtf_rs_teams_vl G1,
69: jtf_rs_teams_vl G2,
70: jtf_rs_team_members GM1,
71: jtf_rs_team_members GM2,
72: jtf_rs_team_usages GU2,
73: jtf_rs_role_relations RR1,
74: jtf_rs_role_relations RR2
75: WHERE G1.team_id = GM1.team_id
76: AND G2.team_id = GM2.team_id
96: AND G1.team_id <> G2.team_id
97: AND G1.team_id = l_team_id;
98:
99:
100: CURSOR c_jtf_rs_team_usages( l_rowid IN ROWID ) IS
101: SELECT 'Y'
102: FROM jtf_rs_team_usages
103: WHERE ROWID = l_rowid;
104:
98:
99:
100: CURSOR c_jtf_rs_team_usages( l_rowid IN ROWID ) IS
101: SELECT 'Y'
102: FROM jtf_rs_team_usages
103: WHERE ROWID = l_rowid;
104:
105:
106: BEGIN
131:
132: /* Pre Call to the Customer Type User Hook */
133:
134: IF jtf_resource_utl.ok_to_execute(
135: 'JTF_RS_TEAM_USAGES_PVT',
136: 'CREATE_TEAM_USAGE',
137: 'B',
138: 'C')
139: THEN
138: 'C')
139: THEN
140:
141: IF jtf_usr_hks.ok_to_execute(
142: 'JTF_RS_TEAM_USAGES_PVT',
143: 'CREATE_TEAM_USAGE',
144: 'B',
145: 'C')
146: THEN
167: END IF;
168:
169: /* Pre Call to the Vertical Type User Hook */
170: IF jtf_resource_utl.ok_to_execute(
171: 'JTF_RS_TEAM_USAGES_PVT',
172: 'CREATE_TEAM_USAGE',
173: 'B',
174: 'V')
175: THEN
174: 'V')
175: THEN
176:
177: IF jtf_usr_hks.ok_to_execute(
178: 'JTF_RS_TEAM_USAGES_PVT',
179: 'CREATE_TEAM_USAGE',
180: 'B',
181: 'V')
182: THEN
203: END IF;
204:
205: /* Pre Call to the Internal Type User Hook */
206: IF jtf_resource_utl.ok_to_execute(
207: 'JTF_RS_TEAM_USAGES_PVT',
208: 'CREATE_TEAM_USAGE',
209: 'B',
210: 'I')
211: THEN
209: 'B',
210: 'I')
211: THEN
212: IF jtf_usr_hks.ok_to_execute(
213: 'JTF_RS_TEAM_USAGES_PVT',
214: 'CREATE_TEAM_USAGE',
215: 'B',
216: 'I')
217: THEN
241: l_check_count := 0;
242:
243: SELECT count(*)
244: INTO l_check_count
245: FROM jtf_rs_team_usages
246: WHERE team_id = l_team_id
247: AND usage = l_usage;
248:
249: IF l_check_count > 0 THEN
303:
304:
305: /* Get the next value of the Team_usage_id from the sequence. */
306:
307: SELECT jtf_rs_team_usages_s.nextval
308: INTO l_team_usage_id
309: FROM dual;
310:
311:
310:
311:
312: /* Insert the row into the table by calling the table handler. */
313:
314: jtf_rs_team_usages_pkg.insert_row(
315: x_rowid => l_rowid,
316: x_team_usage_id => l_team_usage_id,
317: x_team_id => l_team_id,
318: x_usage => l_usage,
341:
342:
343: -- dbms_output.put_line('Inserted Row');
344:
345: OPEN c_jtf_rs_team_usages(l_rowid);
346:
347: FETCH c_jtf_rs_team_usages INTO l_check_char;
348:
349:
343: -- dbms_output.put_line('Inserted Row');
344:
345: OPEN c_jtf_rs_team_usages(l_rowid);
346:
347: FETCH c_jtf_rs_team_usages INTO l_check_char;
348:
349:
350: IF c_jtf_rs_team_usages%NOTFOUND THEN
351:
346:
347: FETCH c_jtf_rs_team_usages INTO l_check_char;
348:
349:
350: IF c_jtf_rs_team_usages%NOTFOUND THEN
351:
352: -- dbms_output.put_line('Error in Table Handler');
353:
354: x_return_status := fnd_api.g_ret_sts_unexp_error;
355:
356: fnd_message.set_name('JTF', 'JTF_RS_TABLE_HANDLER_ERROR');
357: fnd_msg_pub.add;
358:
359: IF c_jtf_rs_team_usages%ISOPEN THEN
360:
361: CLOSE c_jtf_rs_team_usages;
362:
363: END IF;
357: fnd_msg_pub.add;
358:
359: IF c_jtf_rs_team_usages%ISOPEN THEN
360:
361: CLOSE c_jtf_rs_team_usages;
362:
363: END IF;
364:
365: RAISE fnd_api.g_exc_unexpected_error;
374:
375:
376: /* Close the cursors */
377:
378: IF c_jtf_rs_team_usages%ISOPEN THEN
379:
380: CLOSE c_jtf_rs_team_usages;
381:
382: END IF;
376: /* Close the cursors */
377:
378: IF c_jtf_rs_team_usages%ISOPEN THEN
379:
380: CLOSE c_jtf_rs_team_usages;
381:
382: END IF;
383:
384:
386: /* Make the post processing call to the user hooks */
387:
388: /* Post Call to the Customer Type User Hook */
389: IF jtf_resource_utl.ok_to_execute(
390: 'JTF_RS_TEAM_USAGES_PVT',
391: 'CREATE_TEAM_USAGE',
392: 'A',
393: 'C')
394: THEN
393: 'C')
394: THEN
395:
396: IF jtf_usr_hks.ok_to_execute(
397: 'JTF_RS_TEAM_USAGES_PVT',
398: 'CREATE_TEAM_USAGE',
399: 'A',
400: 'C')
401: THEN
423: END IF;
424:
425: /* Post Call to the Vertical Type User Hook */
426: IF jtf_resource_utl.ok_to_execute(
427: 'JTF_RS_TEAM_USAGES_PVT',
428: 'CREATE_TEAM_USAGE',
429: 'A',
430: 'V')
431: THEN
429: 'A',
430: 'V')
431: THEN
432: IF jtf_usr_hks.ok_to_execute(
433: 'JTF_RS_TEAM_USAGES_PVT',
434: 'CREATE_TEAM_USAGE',
435: 'A',
436: 'V')
437: THEN
459: END IF;
460:
461: /* Post Call to the Internal Type User Hook */
462: IF jtf_resource_utl.ok_to_execute(
463: 'JTF_RS_TEAM_USAGES_PVT',
464: 'CREATE_TEAM_USAGE',
465: 'A',
466: 'I')
467: THEN
465: 'A',
466: 'I')
467: THEN
468: IF jtf_usr_hks.ok_to_execute(
469: 'JTF_RS_TEAM_USAGES_PVT',
470: 'CREATE_TEAM_USAGE',
471: 'A',
472: 'I')
473: THEN
495:
496: /* Standard call for Message Generation */
497:
498: IF jtf_resource_utl.ok_to_execute(
499: 'JTF_RS_TEAM_USAGES_PVT',
500: 'CREATE_TEAM_USAGE',
501: 'M',
502: 'M')
503: THEN
501: 'M',
502: 'M')
503: THEN
504: IF jtf_usr_hks.ok_to_execute(
505: 'JTF_RS_TEAM_USAGES_PVT',
506: 'CREATE_TEAM_USAGE',
507: 'M',
508: 'M')
509: THEN
603: PROCEDURE delete_team_usage
604: (P_API_VERSION IN NUMBER,
605: P_INIT_MSG_LIST IN VARCHAR2,
606: P_COMMIT IN VARCHAR2,
607: P_TEAM_ID IN JTF_RS_TEAM_USAGES.TEAM_ID%TYPE,
608: P_USAGE IN JTF_RS_TEAM_USAGES.USAGE%TYPE,
609: P_OBJECT_VERSION_NUM IN JTF_RS_TEAM_USAGES.OBJECT_VERSION_NUMBER%TYPE,
610: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
611: X_MSG_COUNT OUT NOCOPY NUMBER,
604: (P_API_VERSION IN NUMBER,
605: P_INIT_MSG_LIST IN VARCHAR2,
606: P_COMMIT IN VARCHAR2,
607: P_TEAM_ID IN JTF_RS_TEAM_USAGES.TEAM_ID%TYPE,
608: P_USAGE IN JTF_RS_TEAM_USAGES.USAGE%TYPE,
609: P_OBJECT_VERSION_NUM IN JTF_RS_TEAM_USAGES.OBJECT_VERSION_NUMBER%TYPE,
610: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
611: X_MSG_COUNT OUT NOCOPY NUMBER,
612: X_MSG_DATA OUT NOCOPY VARCHAR2
605: P_INIT_MSG_LIST IN VARCHAR2,
606: P_COMMIT IN VARCHAR2,
607: P_TEAM_ID IN JTF_RS_TEAM_USAGES.TEAM_ID%TYPE,
608: P_USAGE IN JTF_RS_TEAM_USAGES.USAGE%TYPE,
609: P_OBJECT_VERSION_NUM IN JTF_RS_TEAM_USAGES.OBJECT_VERSION_NUMBER%TYPE,
610: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
611: X_MSG_COUNT OUT NOCOPY NUMBER,
612: X_MSG_DATA OUT NOCOPY VARCHAR2
613: ) IS
613: ) IS
614:
615: l_api_version CONSTANT NUMBER := 1.0;
616: l_api_name CONSTANT VARCHAR2(30) := 'DELETE_TEAM_USAGE';
617: l_team_id jtf_rs_team_usages.team_id%TYPE := p_team_id;
618: l_usage jtf_rs_team_usages.usage%TYPE := upper(p_usage);
619:
620: l_check_char VARCHAR2(1);
621: l_team_usage_id jtf_rs_team_usages.team_usage_id%TYPE;
614:
615: l_api_version CONSTANT NUMBER := 1.0;
616: l_api_name CONSTANT VARCHAR2(30) := 'DELETE_TEAM_USAGE';
617: l_team_id jtf_rs_team_usages.team_id%TYPE := p_team_id;
618: l_usage jtf_rs_team_usages.usage%TYPE := upper(p_usage);
619:
620: l_check_char VARCHAR2(1);
621: l_team_usage_id jtf_rs_team_usages.team_usage_id%TYPE;
622: l_bind_data_id NUMBER;
617: l_team_id jtf_rs_team_usages.team_id%TYPE := p_team_id;
618: l_usage jtf_rs_team_usages.usage%TYPE := upper(p_usage);
619:
620: l_check_char VARCHAR2(1);
621: l_team_usage_id jtf_rs_team_usages.team_usage_id%TYPE;
622: l_bind_data_id NUMBER;
623:
624:
625: CURSOR c_team_usage_id(
626: l_team_id IN NUMBER,
627: l_usage IN VARCHAR2 )
628: IS
629: SELECT team_usage_id
630: FROM jtf_rs_team_usages
631: WHERE team_id = l_team_id
632: AND usage = l_usage;
633:
634:
659: /* Make the pre processing call to the user hooks */
660:
661: /* Pre Call to the Customer Type User Hook */
662: IF jtf_resource_utl.ok_to_execute(
663: 'JTF_RS_TEAM_USAGES_PVT',
664: 'DELETE_TEAM_USAGE',
665: 'B',
666: 'C')
667: THEN
665: 'B',
666: 'C')
667: THEN
668: IF jtf_usr_hks.ok_to_execute(
669: 'JTF_RS_TEAM_USAGES_PVT',
670: 'DELETE_TEAM_USAGE',
671: 'B',
672: 'C')
673: THEN
695:
696:
697: /* Pre Call to the Vertical Type User Hook */
698: IF jtf_resource_utl.ok_to_execute(
699: 'JTF_RS_TEAM_USAGES_PVT',
700: 'DELETE_TEAM_USAGE',
701: 'B',
702: 'V')
703: THEN
701: 'B',
702: 'V')
703: THEN
704: IF jtf_usr_hks.ok_to_execute(
705: 'JTF_RS_TEAM_USAGES_PVT',
706: 'DELETE_TEAM_USAGE',
707: 'B',
708: 'V')
709: THEN
731:
732:
733: /* Pre Call to the Internal Type User Hook */
734: IF jtf_resource_utl.ok_to_execute(
735: 'JTF_RS_TEAM_USAGES_PVT',
736: 'DELETE_TEAM_USAGE',
737: 'B',
738: 'I')
739: THEN
737: 'B',
738: 'I')
739: THEN
740: IF jtf_usr_hks.ok_to_execute(
741: 'JTF_RS_TEAM_USAGES_PVT',
742: 'DELETE_TEAM_USAGE',
743: 'B',
744: 'I')
745: THEN
807: is still valid. */
808:
809: BEGIN
810:
811: jtf_rs_team_usages_pkg.lock_row(
812: x_team_usage_id => l_team_usage_id,
813: x_object_version_number => p_object_version_num
814: );
815:
835: BEGIN
836:
837: /* Delete the row into the table by calling the table handler. */
838:
839: jtf_rs_team_usages_pkg.delete_row(
840: x_team_usage_id => l_team_usage_id
841: );
842:
843: EXCEPTION
859: /* Make the post processing call to the user hooks */
860:
861: /* Post Call to the Customer Type User Hook */
862: IF jtf_resource_utl.ok_to_execute(
863: 'JTF_RS_TEAM_USAGES_PVT',
864: 'DELETE_TEAM_USAGE',
865: 'A',
866: 'C')
867: THEN
866: 'C')
867: THEN
868:
869: IF jtf_usr_hks.ok_to_execute(
870: 'JTF_RS_TEAM_USAGES_PVT',
871: 'DELETE_TEAM_USAGE',
872: 'A',
873: 'C')
874: THEN
896:
897:
898: /* Post Call to the Vertical Type User Hook */
899: IF jtf_resource_utl.ok_to_execute(
900: 'JTF_RS_TEAM_USAGES_PVT',
901: 'DELETE_TEAM_USAGE',
902: 'A',
903: 'V')
904: THEN
902: 'A',
903: 'V')
904: THEN
905: IF jtf_usr_hks.ok_to_execute(
906: 'JTF_RS_TEAM_USAGES_PVT',
907: 'DELETE_TEAM_USAGE',
908: 'A',
909: 'V')
910: THEN
932:
933:
934: /* Post Call to the Internal Type User Hook */
935: IF jtf_resource_utl.ok_to_execute(
936: 'JTF_RS_TEAM_USAGES_PVT',
937: 'DELETE_TEAM_USAGE',
938: 'A',
939: 'I')
940: THEN
938: 'A',
939: 'I')
940: THEN
941: IF jtf_usr_hks.ok_to_execute(
942: 'JTF_RS_TEAM_USAGES_PVT',
943: 'DELETE_TEAM_USAGE',
944: 'A',
945: 'I')
946: THEN
967:
968: /* Standard call for Message Generation */
969:
970: IF jtf_resource_utl.ok_to_execute(
971: 'JTF_RS_TEAM_USAGES_PVT',
972: 'DELETE_TEAM_USAGE',
973: 'M',
974: 'M')
975: THEN
973: 'M',
974: 'M')
975: THEN
976: IF jtf_usr_hks.ok_to_execute(
977: 'JTF_RS_TEAM_USAGES_PVT',
978: 'DELETE_TEAM_USAGE',
979: 'M',
980: 'M')
981: THEN
1066:
1067: END delete_team_usage;
1068:
1069:
1070: END jtf_rs_team_usages_pvt;