63:
64: BEGIN
65:
66: -- Initialize API return status to success
67: x_return_status := FND_API.G_RET_STS_SUCCESS;
68: x_loading_status := p_loading_status;
69:
70: FOR l_rec IN l_cur LOOP
71: debugmsg('insert into cn_srp_plan_assigns...');
81: p_role_plan_id => l_rec.role_plan_id,
82: x_srp_plan_assign_id => l_srp_plan_assign_id,
83: x_loading_status => l_loading_status);
84:
85: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
86: x_return_status := l_return_status;
87: x_loading_status := l_loading_status;
88: EXIT;
89: END IF;
117:
118: BEGIN
119:
120: -- Initialize API return status to success
121: x_return_status := FND_API.G_RET_STS_SUCCESS;
122: x_loading_status := p_loading_status;
123:
124: FOR l_rec IN l_cur LOOP
125: debugmsg('insert into cn_srp_pmt_plans...');
135: p_role_pmt_plan_id => l_rec.role_pmt_plan_id,
136: x_srp_pmt_plan_id => l_srp_pmt_plan_id,
137: x_loading_status => l_loading_status);
138:
139: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
140: x_return_status := l_return_status;
141: x_loading_status := l_loading_status;
142: EXIT;
143: END IF;
171:
172: BEGIN
173:
174: -- Initialize API return status to success
175: x_return_status := FND_API.G_RET_STS_SUCCESS;
176: x_loading_status := p_loading_status;
177:
178: FOR l_rec IN l_cur LOOP
179: debugmsg('insert into cn_srp_pay_groups...');
190: p_role_pay_group_id => l_rec.role_pay_group_id,
191: x_srp_pay_group_id => l_srp_pay_group_id,
192: x_loading_status => l_loading_status);
193:
194: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
195: x_return_status := l_return_status;
196: x_loading_status := l_loading_status;
197: EXIT;
198: END IF;
236: l_org_id NUMBER;
237:
238: BEGIN
239: -- Initialize API return status to success
240: x_return_status := FND_API.G_RET_STS_SUCCESS;
241: x_loading_status := p_loading_status;
242:
243: -- get org id
244: l_org_id := mo_global.get_current_org_id;
289: x_last_updated_by => fnd_global.user_id);
290: END LOOP;
291: EXCEPTION
292: WHEN OTHERS THEN
293: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
294: x_loading_status := 'UNEXPECTED_ERR';
295: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
296: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name );
297: END IF;
297: END IF;
298: FND_MSG_PUB.Count_And_Get
299: (p_count => x_msg_count ,
300: p_data => x_msg_data ,
301: p_encoded => FND_API.G_FALSE);
302: END ins_srp_intel_prd;
303:
304: -- ==========================================================================
305: -- Procedure: srp_plan_assignment_for_update
327: l_loading_status VARCHAR2(2000);
328:
329: BEGIN
330: -- Initialize API return status to success
331: x_return_status := FND_API.G_RET_STS_SUCCESS;
332: x_loading_status := p_loading_status;
333:
334: IF (p_date_update_only = FND_API.G_TRUE) THEN
335: FOR l_rec IN l_cur LOOP
330: -- Initialize API return status to success
331: x_return_status := FND_API.G_RET_STS_SUCCESS;
332: x_loading_status := p_loading_status;
333:
334: IF (p_date_update_only = FND_API.G_TRUE) THEN
335: FOR l_rec IN l_cur LOOP
336: debugmsg('update cn_srp_plan_assigns.......');
337: debugmsg('p_srp_role_id = ' || p_srp_role_id);
338: debugmsg('l_rec.role_plan_id = ' || l_rec.role_plan_id);
345: p_srp_role_id => p_srp_role_id,
346: p_role_plan_id => l_rec.role_plan_id,
347: x_loading_status => l_loading_status);
348:
349: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
350: x_return_status := l_return_status;
351: x_loading_status := l_loading_status;
352: EXIT;
353: END IF;
364: p_srp_role_id => p_srp_role_id,
365: p_role_plan_id => l_rec.role_plan_id,
366: x_loading_status => l_loading_status);
367:
368: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
369: x_return_status := l_return_status;
370: x_loading_status := l_loading_status;
371: EXIT;
372: END IF;
380: p_role_plan_id => l_rec.role_plan_id,
381: x_srp_plan_assign_id => l_srp_plan_assign_id,
382: x_loading_status => l_loading_status);
383:
384: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
385: x_return_status := l_return_status;
386: x_loading_status := l_loading_status;
387: EXIT;
388: END IF;
420:
421: BEGIN
422:
423: -- Initialize API return status to success
424: x_return_status := FND_API.G_RET_STS_SUCCESS;
425: x_loading_status := p_loading_status;
426:
427: FOR l_rec IN l_cur LOOP
428:
443: debugmsg('l_msg_data = ' || l_msg_data);
444: debugmsg('l_msg_count = ' || l_msg_count);
445: debugmsg('l_loading_status = ' || l_loading_status);
446:
447: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
448: x_return_status := l_return_status;
449: x_loading_status := l_loading_status;
450: EXIT;
451: END IF;
479: l_loading_status VARCHAR2(2000);
480:
481: BEGIN
482: -- Initialize API return status to success
483: x_return_status := FND_API.G_RET_STS_SUCCESS;
484: x_loading_status := p_loading_status;
485:
486: FOR l_rec IN l_cur LOOP
487:
499: p_role_pay_group_id => l_rec.role_pay_group_id,
500: x_srp_pay_group_id => l_srp_pay_group_id,
501: x_loading_status => l_loading_status);
502:
503: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
504: x_return_status := l_return_status;
505: x_loading_status := l_loading_status;
506: EXIT;
507: END IF;
533: l_loading_status VARCHAR2(2000);
534:
535: BEGIN
536: -- Initialize API return status to success
537: x_return_status := FND_API.G_RET_STS_SUCCESS;
538: x_loading_status := p_loading_status;
539:
540: FOR l_rec IN l_cur LOOP
541: cn_srp_plan_assigns_pvt.delete_srp_plan_assigns
539:
540: FOR l_rec IN l_cur LOOP
541: cn_srp_plan_assigns_pvt.delete_srp_plan_assigns
542: (p_api_version => 1.0,
543: p_init_msg_list => fnd_api.g_false,
544: p_commit => fnd_api.g_false,
545: p_validation_level => fnd_api.g_valid_level_full,
546: x_return_status => l_return_status,
547: x_msg_count => l_msg_count,
540: FOR l_rec IN l_cur LOOP
541: cn_srp_plan_assigns_pvt.delete_srp_plan_assigns
542: (p_api_version => 1.0,
543: p_init_msg_list => fnd_api.g_false,
544: p_commit => fnd_api.g_false,
545: p_validation_level => fnd_api.g_valid_level_full,
546: x_return_status => l_return_status,
547: x_msg_count => l_msg_count,
548: x_msg_data => l_msg_data,
541: cn_srp_plan_assigns_pvt.delete_srp_plan_assigns
542: (p_api_version => 1.0,
543: p_init_msg_list => fnd_api.g_false,
544: p_commit => fnd_api.g_false,
545: p_validation_level => fnd_api.g_valid_level_full,
546: x_return_status => l_return_status,
547: x_msg_count => l_msg_count,
548: x_msg_data => l_msg_data,
549: p_srp_role_id => p_srp_role_id,
549: p_srp_role_id => p_srp_role_id,
550: p_role_plan_id => l_rec.role_plan_id,
551: x_loading_status => l_loading_status);
552:
553: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
554: x_return_status := l_return_status;
555: x_loading_status := l_loading_status;
556: EXIT;
557: END IF;
582: l_loading_status VARCHAR2(2000);
583:
584: BEGIN
585: -- Initialize API return status to success
586: x_return_status := FND_API.G_RET_STS_SUCCESS;
587: x_loading_status := p_loading_status;
588:
589: FOR l_rec IN l_cur LOOP
590: cn_srp_pmt_plans_pvt.delete_mass_asgn_srp_pmt_plan
588:
589: FOR l_rec IN l_cur LOOP
590: cn_srp_pmt_plans_pvt.delete_mass_asgn_srp_pmt_plan
591: (p_api_version => 1.0,
592: p_init_msg_list => fnd_api.g_false,
593: p_commit => fnd_api.g_false,
594: p_validation_level => fnd_api.g_valid_level_full,
595: x_return_status => l_return_status,
596: x_msg_count => l_msg_count,
589: FOR l_rec IN l_cur LOOP
590: cn_srp_pmt_plans_pvt.delete_mass_asgn_srp_pmt_plan
591: (p_api_version => 1.0,
592: p_init_msg_list => fnd_api.g_false,
593: p_commit => fnd_api.g_false,
594: p_validation_level => fnd_api.g_valid_level_full,
595: x_return_status => l_return_status,
596: x_msg_count => l_msg_count,
597: x_msg_data => l_msg_data,
590: cn_srp_pmt_plans_pvt.delete_mass_asgn_srp_pmt_plan
591: (p_api_version => 1.0,
592: p_init_msg_list => fnd_api.g_false,
593: p_commit => fnd_api.g_false,
594: p_validation_level => fnd_api.g_valid_level_full,
595: x_return_status => l_return_status,
596: x_msg_count => l_msg_count,
597: x_msg_data => l_msg_data,
598: p_srp_role_id => p_srp_role_id,
598: p_srp_role_id => p_srp_role_id,
599: p_role_pmt_plan_id => l_rec.role_pmt_plan_id,
600: x_loading_status => l_loading_status);
601:
602: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
603: x_return_status := l_return_status;
604: x_loading_status := l_loading_status;
605: EXIT;
606: END IF;
682:
683: IF l_srp_start_period_id <= l_pay_run_period_id THEN
684: -- Modified by chanthon for bug 5525795 - User friendly error message requested
685: -- before throwing the vertical hook error.
686: x_return_status := FND_API.G_RET_STS_ERROR;
687: -- RAISE FND_API.G_EXC_ERROR;
688: END IF;
689: END IF; -- l_count_pay check
690: END IF; -- l_count check
683: IF l_srp_start_period_id <= l_pay_run_period_id THEN
684: -- Modified by chanthon for bug 5525795 - User friendly error message requested
685: -- before throwing the vertical hook error.
686: x_return_status := FND_API.G_RET_STS_ERROR;
687: -- RAISE FND_API.G_EXC_ERROR;
688: END IF;
689: END IF; -- l_count_pay check
690: END IF; -- l_count check
691: END LOOP;
716: l_loading_status VARCHAR2(2000);
717:
718: BEGIN
719: -- Initialize API return status to success
720: x_return_status := FND_API.G_RET_STS_SUCCESS;
721: x_loading_status := p_loading_status;
722: -- Removing this validation for bug 5557049
723: /* --Prevent delete if wrksheet exist - vensrini
724: val_srp_pg_asgn_for_del(p_srp_role_id => p_srp_role_id,
726: --Prevent delete if wrksheet exist - vensrini
727:
728: -- Added by chanthon for bug 5525795 - User friendly error message requested
729: -- before throwing the vertical hook error.
730: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
731: IF fnd_msg_pub.check_msg_level (fnd_msg_pub.g_msg_lvl_error)
732: THEN
733: fnd_message.set_name ('CN', 'CN_SRP_PG_WS');
734: FND_MSG_PUB.add;
739: -- End: Removed this validation for bug 5557049
740: FOR l_rec IN l_cur LOOP
741: cn_srp_paygroup_pvt.delete_mass_asgn_srp_pay
742: (p_api_version => 1.0,
743: p_init_msg_list => fnd_api.g_false,
744: p_commit => fnd_api.g_false,
745: p_validation_level => fnd_api.g_valid_level_full,
746: x_return_status => l_return_status,
747: x_msg_count => l_msg_count,
740: FOR l_rec IN l_cur LOOP
741: cn_srp_paygroup_pvt.delete_mass_asgn_srp_pay
742: (p_api_version => 1.0,
743: p_init_msg_list => fnd_api.g_false,
744: p_commit => fnd_api.g_false,
745: p_validation_level => fnd_api.g_valid_level_full,
746: x_return_status => l_return_status,
747: x_msg_count => l_msg_count,
748: x_msg_data => l_msg_data,
741: cn_srp_paygroup_pvt.delete_mass_asgn_srp_pay
742: (p_api_version => 1.0,
743: p_init_msg_list => fnd_api.g_false,
744: p_commit => fnd_api.g_false,
745: p_validation_level => fnd_api.g_valid_level_full,
746: x_return_status => l_return_status,
747: x_msg_count => l_msg_count,
748: x_msg_data => l_msg_data,
749: p_srp_role_id => p_srp_role_id,
749: p_srp_role_id => p_srp_role_id,
750: p_role_pay_group_id => l_rec.role_pay_group_id,
751: x_loading_status => l_loading_status);
752:
753: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
754: x_return_status := l_return_status;
755: x_loading_status := l_loading_status;
756: EXIT;
757: END IF;
867: l_srp.end_date := p_end_date;
868:
869: cn_rollup_pvt.get_ancestor_salesrep
870: (p_api_version => 1.0,
871: p_init_msg_list => FND_API.G_false,
872: p_commit => FND_API.G_false,
873: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
874: x_return_status => l_return_status,
875: x_msg_count => l_msg_count,
868:
869: cn_rollup_pvt.get_ancestor_salesrep
870: (p_api_version => 1.0,
871: p_init_msg_list => FND_API.G_false,
872: p_commit => FND_API.G_false,
873: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
874: x_return_status => l_return_status,
875: x_msg_count => l_msg_count,
876: x_msg_data => l_msg_data,
869: cn_rollup_pvt.get_ancestor_salesrep
870: (p_api_version => 1.0,
871: p_init_msg_list => FND_API.G_false,
872: p_commit => FND_API.G_false,
873: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
874: x_return_status => l_return_status,
875: x_msg_count => l_msg_count,
876: x_msg_data => l_msg_data,
877: p_srp => l_srp,
1071: where resource_id = P_ROLE_RESOURCE_ID;
1072:
1073: BEGIN
1074: -- Initialize API return status to success
1075: p_return_code := fnd_api.g_ret_sts_success;
1076:
1077: -- get usage for the role (can't fail)
1078: select role_type_code into l_usage
1079: from jtf_rs_roles_b
1097: FND_MESSAGE.SET_NAME('CN', 'CN_RES_MUST_BE_SRP');
1098: -- A sales compensation role cannot be assigned to a resource
1099: -- that is not a salesperson.
1100: FND_MSG_PUB.ADD;
1101: RAISE FND_API.G_EXC_ERROR;
1102: end if;
1103:
1104: IF p_role_resource_type = 'RS_INDIVIDUAL' THEN
1105: -- looks like spelling error but this is correct...
1122: if l_count <> 0 then
1123: FND_MESSAGE.SET_NAME('CN', 'CN_SRP_CANNOT_HAVE_ANAL_ROLE');
1124: -- A salesperson cannot be assigned a payment analyst role.
1125: FND_MSG_PUB.ADD;
1126: RAISE FND_API.G_EXC_ERROR;
1127: end if;
1128: end if; -- l_usage = 'SALES_COMP_PAYMENT_ANALIST'
1129:
1130: IF l_usage = 'SALES_COMP' THEN
1146: if l_count <> 0 then
1147: FND_MESSAGE.SET_NAME('CN', 'CN_SRP_CANNOT_HAVE_ANAL_ROLE');
1148: -- A salesperson cannot be assigned a payment analyst role.
1149: FND_MSG_PUB.ADD;
1150: RAISE FND_API.G_EXC_ERROR;
1151: end if;
1152:
1153: -- check PAYEE role
1154: IF p_role_id = G_PAYEE_ROLE then
1166: FND_MESSAGE.SET_NAME('CN', 'CN_PAYEE_CANNOT_HAVE_SC_ROLE');
1167: -- A salesperson cannot be assigned both the Payee role
1168: -- and another sales compensation role.
1169: FND_MSG_PUB.ADD;
1170: RAISE FND_API.G_EXC_ERROR;
1171: end if;
1172: ELSE -- p_role_id <> G_PAYEE_ROLE
1173: -- NON-payee cannot have payee role
1174: select count(1) into l_count
1182: FND_MESSAGE.SET_NAME('CN', 'CN_PAYEE_CANNOT_HAVE_SC_ROLE');
1183: -- A salesperson cannot be assigned both the Payee role
1184: -- and another sales compensation role.
1185: FND_MSG_PUB.ADD;
1186: RAISE FND_API.G_EXC_ERROR;
1187: end if; -- l_count <> 0
1188: end if; -- payee role ck
1189: end if; -- l_usage = 'SALES_COMP' ok
1190: END IF; -- if salesrep_id is not null
1314: x_return_status => P_RETURN_CODE,
1315: p_loading_status => x_loading_status,
1316: x_loading_status => x_loading_status);
1317:
1318: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1319: RAISE FND_API.G_EXC_ERROR;
1320: END IF;
1321:
1322: srp_pmt_plan_asgn_for_insert
1315: p_loading_status => x_loading_status,
1316: x_loading_status => x_loading_status);
1317:
1318: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1319: RAISE FND_API.G_EXC_ERROR;
1320: END IF;
1321:
1322: srp_pmt_plan_asgn_for_insert
1323: (p_role_id => P_ROLE_ID,
1325: x_return_status => P_RETURN_CODE,
1326: p_loading_status => x_loading_status,
1327: x_loading_status => x_loading_status);
1328:
1329: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1330: RAISE FND_API.G_EXC_ERROR;
1331: END IF;
1332:
1333: -- clku 3718575
1326: p_loading_status => x_loading_status,
1327: x_loading_status => x_loading_status);
1328:
1329: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1330: RAISE FND_API.G_EXC_ERROR;
1331: END IF;
1332:
1333: -- clku 3718575
1334: open resource_category_info;
1344: x_return_status => P_RETURN_CODE,
1345: p_loading_status => x_loading_status,
1346: x_loading_status => x_loading_status);
1347:
1348: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1349: RAISE FND_API.G_EXC_ERROR;
1350: END IF;
1351:
1352: END IF; -- clku, not TBH
1345: p_loading_status => x_loading_status,
1346: x_loading_status => x_loading_status);
1347:
1348: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1349: RAISE FND_API.G_EXC_ERROR;
1350: END IF;
1351:
1352: END IF; -- clku, not TBH
1353: END IF; -- clku not null
1362: x_return_status => P_RETURN_CODE,
1363: p_loading_status => x_loading_status,
1364: x_loading_status => x_loading_status);
1365:
1366: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1367: RAISE FND_API.G_EXC_ERROR;
1368: END IF;
1369: END IF; -- RS_INDIVIDUAL
1370: END LOOP; -- orgs loop
1363: p_loading_status => x_loading_status,
1364: x_loading_status => x_loading_status);
1365:
1366: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1367: RAISE FND_API.G_EXC_ERROR;
1368: END IF;
1369: END IF; -- RS_INDIVIDUAL
1370: END LOOP; -- orgs loop
1371:
1373: restore_context(l_orig_acc_mode, l_orig_org_id);
1374: -- end of API body
1375:
1376: EXCEPTION
1377: WHEN FND_API.G_EXC_ERROR THEN
1378: P_RETURN_CODE := FND_API.G_RET_STS_ERROR ;
1379: restore_context(l_orig_acc_mode, l_orig_org_id);
1380: FND_MSG_PUB.Count_And_Get
1381: (p_count => p_count ,
1374: -- end of API body
1375:
1376: EXCEPTION
1377: WHEN FND_API.G_EXC_ERROR THEN
1378: P_RETURN_CODE := FND_API.G_RET_STS_ERROR ;
1379: restore_context(l_orig_acc_mode, l_orig_org_id);
1380: FND_MSG_PUB.Count_And_Get
1381: (p_count => p_count ,
1382: p_data => p_data ,
1379: restore_context(l_orig_acc_mode, l_orig_org_id);
1380: FND_MSG_PUB.Count_And_Get
1381: (p_count => p_count ,
1382: p_data => p_data ,
1383: p_encoded => FND_API.G_FALSE );
1384: WHEN OTHERS THEN
1385: p_return_code := fnd_api.g_ret_sts_unexp_error;
1386: restore_context(l_orig_acc_mode, l_orig_org_id);
1387: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1381: (p_count => p_count ,
1382: p_data => p_data ,
1383: p_encoded => FND_API.G_FALSE );
1384: WHEN OTHERS THEN
1385: p_return_code := fnd_api.g_ret_sts_unexp_error;
1386: restore_context(l_orig_acc_mode, l_orig_org_id);
1387: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1388: THEN
1389: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name );
1390: END IF;
1391: FND_MSG_PUB.count_and_get
1392: (p_count => p_count ,
1393: p_data => p_data ,
1394: p_encoded => FND_API.g_false);
1395: END create_res_role_relate_post;
1396:
1397: PROCEDURE update_res_role_relate_post
1398: (P_ROLE_RELATE_ID IN JTF_RS_ROLE_RELATIONS.ROLE_RELATE_ID%TYPE,
1396:
1397: PROCEDURE update_res_role_relate_post
1398: (P_ROLE_RELATE_ID IN JTF_RS_ROLE_RELATIONS.ROLE_RELATE_ID%TYPE,
1399: P_START_DATE_ACTIVE IN JTF_RS_ROLE_RELATIONS.START_DATE_ACTIVE%TYPE
1400: DEFAULT FND_API.G_MISS_DATE,
1401: P_END_DATE_ACTIVE IN JTF_RS_ROLE_RELATIONS.END_DATE_ACTIVE%TYPE
1402: DEFAULT FND_API.G_MISS_DATE,
1403: P_OBJECT_VERSION_NUM IN JTF_RS_ROLE_RELATIONS.OBJECT_VERSION_NUMBER%TYPE,
1404: P_DATA OUT NOCOPY VARCHAR2,
1398: (P_ROLE_RELATE_ID IN JTF_RS_ROLE_RELATIONS.ROLE_RELATE_ID%TYPE,
1399: P_START_DATE_ACTIVE IN JTF_RS_ROLE_RELATIONS.START_DATE_ACTIVE%TYPE
1400: DEFAULT FND_API.G_MISS_DATE,
1401: P_END_DATE_ACTIVE IN JTF_RS_ROLE_RELATIONS.END_DATE_ACTIVE%TYPE
1402: DEFAULT FND_API.G_MISS_DATE,
1403: P_OBJECT_VERSION_NUM IN JTF_RS_ROLE_RELATIONS.OBJECT_VERSION_NUMBER%TYPE,
1404: P_DATA OUT NOCOPY VARCHAR2,
1405: P_COUNT OUT NOCOPY NUMBER,
1406: P_RETURN_CODE OUT NOCOPY VARCHAR2) IS
1486: and rr.role_relate_id = P_ROLE_RELATE_ID;
1487:
1488: BEGIN
1489: debugmsg('Inside vertical hook update_role_relate_post');
1490: p_return_code := fnd_api.g_ret_sts_success;
1491:
1492: -- get usage for the role (can't fail)
1493: select rr.role_resource_type, r.role_type_code, r.role_id, rr.role_resource_id
1494: INTO l_role_resource_type, l_usage, l_role_id, l_role_resource_id
1528: if l_count <> 0 then
1529: FND_MESSAGE.SET_NAME('CN', 'CN_SRP_CANNOT_HAVE_ANAL_ROLE');
1530: -- A salesperson cannot be assigned a payment analyst role.
1531: FND_MSG_PUB.ADD;
1532: RAISE FND_API.G_EXC_ERROR;
1533: end if;
1534: ELSIF l_usage = 'SALES_COMP_PAYMENT_ANALIST' THEN
1535: -- Pmt Analyst role assignment may NOT everlap with Sales Comp role assignment
1536: SELECT COUNT(1) INTO l_count
1558: if l_count <> 0 then
1559: FND_MESSAGE.SET_NAME('CN', 'CN_SRP_CANNOT_HAVE_ANAL_ROLE');
1560: -- A salesperson cannot be assigned a payment analyst role.
1561: FND_MSG_PUB.ADD;
1562: RAISE FND_API.G_EXC_ERROR;
1563: end if;
1564: END IF; -- l_usage = 'SALES_COMP_PAYMENT_ANALIST'
1565: END IF; -- RS_INDIVIDUAL
1566: -- End Bug 4083951
1580: -- associated with the salesreps assigned to the given resource
1581: srp_plan_assignment_for_update
1582: (p_role_id => l_role_id,
1583: p_srp_role_id => P_ROLE_RELATE_ID,
1584: p_date_update_only => fnd_api.g_true,
1585: x_return_status => P_RETURN_CODE,
1586: p_loading_status => x_loading_status,
1587: x_loading_status => x_loading_status);
1588:
1585: x_return_status => P_RETURN_CODE,
1586: p_loading_status => x_loading_status,
1587: x_loading_status => x_loading_status);
1588:
1589: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1590: RAISE FND_API.G_EXC_ERROR;
1591: END IF;
1592:
1593: srp_pmt_plan_asgn_for_update
1586: p_loading_status => x_loading_status,
1587: x_loading_status => x_loading_status);
1588:
1589: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1590: RAISE FND_API.G_EXC_ERROR;
1591: END IF;
1592:
1593: srp_pmt_plan_asgn_for_update
1594: (p_role_id => l_role_id,
1592:
1593: srp_pmt_plan_asgn_for_update
1594: (p_role_id => l_role_id,
1595: p_srp_role_id => P_ROLE_RELATE_ID,
1596: p_date_update_only => fnd_api.g_true,
1597: x_return_status => P_RETURN_CODE,
1598: p_loading_status => x_loading_status,
1599: x_loading_status => x_loading_status);
1600:
1597: x_return_status => P_RETURN_CODE,
1598: p_loading_status => x_loading_status,
1599: x_loading_status => x_loading_status);
1600:
1601: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1602: RAISE FND_API.G_EXC_ERROR;
1603: END IF;
1604:
1605: -- clku 3718575
1598: p_loading_status => x_loading_status,
1599: x_loading_status => x_loading_status);
1600:
1601: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1602: RAISE FND_API.G_EXC_ERROR;
1603: END IF;
1604:
1605: -- clku 3718575
1606: open resource_category_info;
1612:
1613: srp_pay_group_asgn_for_update
1614: (p_role_id => l_role_id,
1615: p_srp_role_id => P_ROLE_RELATE_ID,
1616: p_date_update_only => fnd_api.g_true,
1617: x_return_status => P_RETURN_CODE,
1618: p_loading_status => x_loading_status,
1619: x_loading_status => x_loading_status);
1620:
1620:
1621: END IF; -- clku, not TBH
1622: END IF; -- clku not null
1623:
1624: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1625: RAISE FND_API.G_EXC_ERROR;
1626: END IF;
1627:
1628: -- Insert into cn_srp_intel_periods for intelligent calculation
1621: END IF; -- clku, not TBH
1622: END IF; -- clku not null
1623:
1624: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1625: RAISE FND_API.G_EXC_ERROR;
1626: END IF;
1627:
1628: -- Insert into cn_srp_intel_periods for intelligent calculation
1629: ins_srp_intel_prd
1635: x_return_status => P_RETURN_CODE,
1636: p_loading_status => x_loading_status,
1637: x_loading_status => x_loading_status);
1638:
1639: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1640: RAISE FND_API.G_EXC_ERROR;
1641: END IF;
1642:
1643: END IF; -- RS_INDIVIDUAL
1636: p_loading_status => x_loading_status,
1637: x_loading_status => x_loading_status);
1638:
1639: IF (P_RETURN_CODE <> FND_API.G_RET_STS_SUCCESS ) THEN
1640: RAISE FND_API.G_EXC_ERROR;
1641: END IF;
1642:
1643: END IF; -- RS_INDIVIDUAL
1644:
1760: -- restore context
1761: restore_context(l_orig_acc_mode, l_orig_org_id);
1762:
1763: EXCEPTION
1764: WHEN FND_API.G_EXC_ERROR THEN
1765: P_RETURN_CODE := FND_API.G_RET_STS_ERROR ;
1766: restore_context(l_orig_acc_mode, l_orig_org_id);
1767: FND_MSG_PUB.Count_And_Get
1768: (p_count => p_count ,
1761: restore_context(l_orig_acc_mode, l_orig_org_id);
1762:
1763: EXCEPTION
1764: WHEN FND_API.G_EXC_ERROR THEN
1765: P_RETURN_CODE := FND_API.G_RET_STS_ERROR ;
1766: restore_context(l_orig_acc_mode, l_orig_org_id);
1767: FND_MSG_PUB.Count_And_Get
1768: (p_count => p_count ,
1769: p_data => p_data ,
1766: restore_context(l_orig_acc_mode, l_orig_org_id);
1767: FND_MSG_PUB.Count_And_Get
1768: (p_count => p_count ,
1769: p_data => p_data ,
1770: p_encoded => FND_API.G_FALSE );
1771: WHEN OTHERS THEN
1772: p_return_code := fnd_api.g_ret_sts_unexp_error;
1773: restore_context(l_orig_acc_mode, l_orig_org_id);
1774: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1768: (p_count => p_count ,
1769: p_data => p_data ,
1770: p_encoded => FND_API.G_FALSE );
1771: WHEN OTHERS THEN
1772: p_return_code := fnd_api.g_ret_sts_unexp_error;
1773: restore_context(l_orig_acc_mode, l_orig_org_id);
1774: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1775: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name );
1776: END IF;
1776: END IF;
1777: FND_MSG_PUB.count_and_get
1778: (p_count => p_count ,
1779: p_data => p_data ,
1780: p_encoded => FND_API.g_false);
1781: END update_res_role_relate_post;
1782:
1783: PROCEDURE delete_res_role_relate_pre
1784: (P_ROLE_RELATE_ID IN JTF_RS_ROLE_RELATIONS.ROLE_RELATE_ID%TYPE,
1924: where re.resource_id = rr.role_resource_id
1925: and rr.role_relate_id = P_ROLE_RELATE_ID;
1926:
1927: BEGIN
1928: p_return_code := fnd_api.g_ret_sts_success;
1929:
1930: -- get usage for the role (can't fail)
1931: select rr.role_resource_type, r.role_type_code, r.role_id,
1932: rr.role_resource_id, start_date_active, end_date_active
1962:
1963: if l_count <> 0 then
1964: FND_MESSAGE.SET_NAME('CN', 'CN_PA_ASGN_DATE');
1965: FND_MSG_PUB.ADD;
1966: RAISE FND_API.G_EXC_ERROR;
1967: end if;
1968: end if;
1969:
1970: -- update the sales comp tables
1988:
1989: END IF; -- clku, not TBH
1990: END IF; -- clku not null
1991:
1992: IF (p_return_code <> fnd_api.g_ret_sts_success) THEN
1993: RAISE FND_API.G_EXC_ERROR;
1994: END IF;
1995:
1996: srp_plan_assignment_for_delete
1989: END IF; -- clku, not TBH
1990: END IF; -- clku not null
1991:
1992: IF (p_return_code <> fnd_api.g_ret_sts_success) THEN
1993: RAISE FND_API.G_EXC_ERROR;
1994: END IF;
1995:
1996: srp_plan_assignment_for_delete
1997: (p_role_id => l_role_id,
1999: x_return_status => P_RETURN_CODE,
2000: p_loading_status => x_loading_status,
2001: x_loading_status => x_loading_status);
2002:
2003: IF (p_return_code <> fnd_api.g_ret_sts_success) THEN
2004: RAISE FND_API.G_EXC_ERROR;
2005: END IF;
2006:
2007: srp_pmt_plan_asgn_for_delete
2000: p_loading_status => x_loading_status,
2001: x_loading_status => x_loading_status);
2002:
2003: IF (p_return_code <> fnd_api.g_ret_sts_success) THEN
2004: RAISE FND_API.G_EXC_ERROR;
2005: END IF;
2006:
2007: srp_pmt_plan_asgn_for_delete
2008: (p_role_id => l_role_id,
2010: x_return_status => P_RETURN_CODE,
2011: p_loading_status => x_loading_status,
2012: x_loading_status => x_loading_status);
2013:
2014: IF (p_return_code <> fnd_api.g_ret_sts_success) THEN
2015: RAISE FND_API.G_EXC_ERROR;
2016: END IF;
2017: END IF; -- RS_INDIVIDUAL
2018:
2011: p_loading_status => x_loading_status,
2012: x_loading_status => x_loading_status);
2013:
2014: IF (p_return_code <> fnd_api.g_ret_sts_success) THEN
2015: RAISE FND_API.G_EXC_ERROR;
2016: END IF;
2017: END IF; -- RS_INDIVIDUAL
2018:
2019: -- handle mark events
2120: -- restore context
2121: restore_context(l_orig_acc_mode, l_orig_org_id);
2122:
2123: EXCEPTION
2124: WHEN FND_API.G_EXC_ERROR THEN
2125: P_RETURN_CODE := FND_API.G_RET_STS_ERROR ;
2126: restore_context(l_orig_acc_mode, l_orig_org_id);
2127: FND_MSG_PUB.Count_And_Get
2128: (p_count => p_count ,
2121: restore_context(l_orig_acc_mode, l_orig_org_id);
2122:
2123: EXCEPTION
2124: WHEN FND_API.G_EXC_ERROR THEN
2125: P_RETURN_CODE := FND_API.G_RET_STS_ERROR ;
2126: restore_context(l_orig_acc_mode, l_orig_org_id);
2127: FND_MSG_PUB.Count_And_Get
2128: (p_count => p_count ,
2129: p_data => p_data ,
2126: restore_context(l_orig_acc_mode, l_orig_org_id);
2127: FND_MSG_PUB.Count_And_Get
2128: (p_count => p_count ,
2129: p_data => p_data ,
2130: p_encoded => FND_API.G_FALSE );
2131: WHEN OTHERS THEN
2132: p_return_code := fnd_api.g_ret_sts_unexp_error;
2133: restore_context(l_orig_acc_mode, l_orig_org_id);
2134: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2128: (p_count => p_count ,
2129: p_data => p_data ,
2130: p_encoded => FND_API.G_FALSE );
2131: WHEN OTHERS THEN
2132: p_return_code := fnd_api.g_ret_sts_unexp_error;
2133: restore_context(l_orig_acc_mode, l_orig_org_id);
2134: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2135: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name );
2136: END IF;
2136: END IF;
2137: FND_MSG_PUB.count_and_get
2138: (p_count => p_count ,
2139: p_data => p_data ,
2140: p_encoded => FND_API.g_false);
2141: END;
2142:
2143: PROCEDURE update_res_role_relate_pre
2144: (P_ROLE_RELATE_ID IN JTF_RS_ROLE_RELATIONS.ROLE_RELATE_ID%TYPE,
2142:
2143: PROCEDURE update_res_role_relate_pre
2144: (P_ROLE_RELATE_ID IN JTF_RS_ROLE_RELATIONS.ROLE_RELATE_ID%TYPE,
2145: P_START_DATE_ACTIVE IN JTF_RS_ROLE_RELATIONS.START_DATE_ACTIVE%TYPE
2146: DEFAULT FND_API.G_MISS_DATE,
2147: P_END_DATE_ACTIVE IN JTF_RS_ROLE_RELATIONS.END_DATE_ACTIVE%TYPE
2148: DEFAULT FND_API.G_MISS_DATE,
2149: P_OBJECT_VERSION_NUM IN JTF_RS_ROLE_RELATIONS.OBJECT_VERSION_NUMBER%TYPE,
2150: P_DATA OUT NOCOPY VARCHAR2,
2144: (P_ROLE_RELATE_ID IN JTF_RS_ROLE_RELATIONS.ROLE_RELATE_ID%TYPE,
2145: P_START_DATE_ACTIVE IN JTF_RS_ROLE_RELATIONS.START_DATE_ACTIVE%TYPE
2146: DEFAULT FND_API.G_MISS_DATE,
2147: P_END_DATE_ACTIVE IN JTF_RS_ROLE_RELATIONS.END_DATE_ACTIVE%TYPE
2148: DEFAULT FND_API.G_MISS_DATE,
2149: P_OBJECT_VERSION_NUM IN JTF_RS_ROLE_RELATIONS.OBJECT_VERSION_NUMBER%TYPE,
2150: P_DATA OUT NOCOPY VARCHAR2,
2151: P_COUNT OUT NOCOPY NUMBER,
2152: P_RETURN_CODE OUT NOCOPY VARCHAR2) IS
2267: WHERE srp_role_id = p_role_relate_id;
2268:
2269: BEGIN
2270: debugmsg('Inside vertical hook update_role_relate_pre');
2271: p_return_code := fnd_api.g_ret_sts_success;
2272:
2273: -- get usage for the role (can't fail)
2274: select rr.role_resource_type, r.role_type_code, r.role_id, rr.role_resource_id
2275: INTO l_role_resource_type, l_usage, l_role_id, l_role_resource_id
2330: THEN
2331: fnd_message.set_name('CN', 'CN_PA_ASGN_DATE');
2332: fnd_msg_pub.add;
2333: END IF;
2334: RAISE FND_API.G_EXC_ERROR;
2335: END IF;
2336: END LOOP;
2337: END IF; --if l_date_range_action_tbl(i).action_flag = 'D'
2338: END LOOP; -- FOR i IN 1..l_date_range_action_tbl.COUNT LOOP
2402: ELSIF (g_manager_flag = 'N') THEN
2403: l_event_name := 'CHANGE_CP_MGR_DATE';
2404: END IF;
2405: --code added for bug 6914823
2406: if (p_start_date_active = fnd_api.g_miss_date)
2407: OR
2408: (p_start_date_active > p_end_date_active)
2409: OR
2410: (p_start_date_active is NULL)
2511:
2512: -- restore context
2513: restore_context(l_orig_acc_mode, l_orig_org_id);
2514: EXCEPTION
2515: WHEN FND_API.G_EXC_ERROR THEN
2516: P_RETURN_CODE := FND_API.G_RET_STS_ERROR ;
2517: restore_context(l_orig_acc_mode, l_orig_org_id);
2518: FND_MSG_PUB.Count_And_Get
2519: (p_count => p_count ,
2512: -- restore context
2513: restore_context(l_orig_acc_mode, l_orig_org_id);
2514: EXCEPTION
2515: WHEN FND_API.G_EXC_ERROR THEN
2516: P_RETURN_CODE := FND_API.G_RET_STS_ERROR ;
2517: restore_context(l_orig_acc_mode, l_orig_org_id);
2518: FND_MSG_PUB.Count_And_Get
2519: (p_count => p_count ,
2520: p_data => p_data ,
2517: restore_context(l_orig_acc_mode, l_orig_org_id);
2518: FND_MSG_PUB.Count_And_Get
2519: (p_count => p_count ,
2520: p_data => p_data ,
2521: p_encoded => FND_API.G_FALSE );
2522: WHEN OTHERS THEN
2523: p_return_code := fnd_api.g_ret_sts_unexp_error;
2524: restore_context(l_orig_acc_mode, l_orig_org_id);
2525: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2519: (p_count => p_count ,
2520: p_data => p_data ,
2521: p_encoded => FND_API.G_FALSE );
2522: WHEN OTHERS THEN
2523: p_return_code := fnd_api.g_ret_sts_unexp_error;
2524: restore_context(l_orig_acc_mode, l_orig_org_id);
2525: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2526: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME ,l_api_name );
2527: END IF;
2527: END IF;
2528: FND_MSG_PUB.count_and_get
2529: (p_count => p_count ,
2530: p_data => p_data ,
2531: p_encoded => FND_API.g_false);
2532: END update_res_role_relate_pre;
2533:
2534: -- ===================================================================
2535: -- these are the procedures that aren't used in the body, but since ==
2548: P_DATA OUT NOCOPY VARCHAR2,
2549: P_COUNT OUT NOCOPY NUMBER,
2550: P_RETURN_CODE OUT NOCOPY VARCHAR2) IS
2551: BEGIN
2552: p_return_code := fnd_api.g_ret_sts_success ;
2553: END create_res_role_relate_pre;
2554:
2555: PROCEDURE delete_res_role_relate_post
2556: (P_ROLE_RELATE_ID IN JTF_RS_ROLE_RELATIONS.ROLE_RELATE_ID%TYPE,
2558: P_DATA OUT NOCOPY VARCHAR2,
2559: P_COUNT OUT NOCOPY NUMBER,
2560: P_RETURN_CODE OUT NOCOPY VARCHAR2) IS
2561: BEGIN
2562: p_return_code := fnd_api.g_ret_sts_success;
2563: END delete_res_role_relate_post;
2564:
2565: FUNCTION Ok_To_Generate_Msg
2566: (P_DATA OUT NOCOPY VARCHAR2,
2567: P_COUNT OUT NOCOPY NUMBER,
2568: P_RETURN_CODE OUT NOCOPY VARCHAR2)
2569: RETURN BOOLEAN IS
2570: BEGIN
2571: p_return_code := fnd_api.g_ret_sts_success;
2572: return false;
2573: END Ok_To_Generate_Msg;
2574:
2575: END jtf_rs_role_relate_vuhk;