2791:
2792: EXCEPTION
2793: WHEN OTHERS THEN
2794: ROLLBACK TO Do_On_Role_Assigned;
2795: FND_MESSAGE.SET_NAME( 'AMW', 'GENERIC_MESSAGE' );
2796: FND_MESSAGE.SET_TOKEN( 'GENERIC_TEXT' ,SQLERRM );
2797: FND_MSG_PUB.ADD;
2798:
2799: WF_CORE.CONTEXT('AMW_VIOLATION_PVT','Do_On_Role_Assigned error', p_event.getEventName(), p_subscription_guid);
2792: EXCEPTION
2793: WHEN OTHERS THEN
2794: ROLLBACK TO Do_On_Role_Assigned;
2795: FND_MESSAGE.SET_NAME( 'AMW', 'GENERIC_MESSAGE' );
2796: FND_MESSAGE.SET_TOKEN( 'GENERIC_TEXT' ,SQLERRM );
2797: FND_MSG_PUB.ADD;
2798:
2799: WF_CORE.CONTEXT('AMW_VIOLATION_PVT','Do_On_Role_Assigned error', p_event.getEventName(), p_subscription_guid);
2800: WF_EVENT.setErrorInfo(p_event,'ERROR');
3322:
3323: IF l_to_role_name IS NULL THEN
3324:
3325: x_return_status := FND_API.G_RET_STS_ERROR;
3326: FND_MESSAGE.set_name('AMW','AMW_APPR_INVALID_ROLE');
3327: FND_MSG_PUB.ADD;
3328: fnd_file.put_line(fnd_file.LOG, 'to_role is null');
3329: ELSE
3330:
3332: p_user_id;
3333: FETCH c_user_dynamic_sql INTO l_user_name;
3334: CLOSE c_user_dynamic_sql;
3335:
3336: FND_MESSAGE.set_name('AMW', 'AMW_VIOLAT_CONFIRM_NOTIF_SUBJ');
3337: FND_MESSAGE.set_token('CONSTRAINT_NAME', l_constraint_name, TRUE);
3338: FND_MESSAGE.set_token('USER_NAME', l_user_name, TRUE);
3339: FND_MSG_PUB.add;
3340: l_subject := fnd_msg_pub.get(p_msg_index => fnd_msg_pub.G_LAST,
3333: FETCH c_user_dynamic_sql INTO l_user_name;
3334: CLOSE c_user_dynamic_sql;
3335:
3336: FND_MESSAGE.set_name('AMW', 'AMW_VIOLAT_CONFIRM_NOTIF_SUBJ');
3337: FND_MESSAGE.set_token('CONSTRAINT_NAME', l_constraint_name, TRUE);
3338: FND_MESSAGE.set_token('USER_NAME', l_user_name, TRUE);
3339: FND_MSG_PUB.add;
3340: l_subject := fnd_msg_pub.get(p_msg_index => fnd_msg_pub.G_LAST,
3341: p_encoded => fnd_api.g_false);
3334: CLOSE c_user_dynamic_sql;
3335:
3336: FND_MESSAGE.set_name('AMW', 'AMW_VIOLAT_CONFIRM_NOTIF_SUBJ');
3337: FND_MESSAGE.set_token('CONSTRAINT_NAME', l_constraint_name, TRUE);
3338: FND_MESSAGE.set_token('USER_NAME', l_user_name, TRUE);
3339: FND_MSG_PUB.add;
3340: l_subject := fnd_msg_pub.get(p_msg_index => fnd_msg_pub.G_LAST,
3341: p_encoded => fnd_api.g_false);
3342:
3629: END IF;
3630: has_violation := has_violation||l_violat_existing_menu;
3631: END IF;
3632:
3633: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3634: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3635: fnd_message.set_token('CONST_DETAILS', has_violation);
3636: return fnd_message.get;
3637: END IF;
3630: has_violation := has_violation||l_violat_existing_menu;
3631: END IF;
3632:
3633: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3634: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3635: fnd_message.set_token('CONST_DETAILS', has_violation);
3636: return fnd_message.get;
3637: END IF;
3638:
3631: END IF;
3632:
3633: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3634: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3635: fnd_message.set_token('CONST_DETAILS', has_violation);
3636: return fnd_message.get;
3637: END IF;
3638:
3639: ELSIF 'ME' = l_all_valid_constraints.type_code THEN
3632:
3633: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3634: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3635: fnd_message.set_token('CONST_DETAILS', has_violation);
3636: return fnd_message.get;
3637: END IF;
3638:
3639: ELSIF 'ME' = l_all_valid_constraints.type_code THEN
3640: -- find the number of distinct constraint entries this user can access
3689: END IF;
3690: has_violation := has_violation||l_violat_existing_menu;
3691: END IF;
3692:
3693: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3694: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3695: fnd_message.set_token('CONST_DETAILS', has_violation);
3696: return fnd_message.get;
3697: END IF;
3690: has_violation := has_violation||l_violat_existing_menu;
3691: END IF;
3692:
3693: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3694: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3695: fnd_message.set_token('CONST_DETAILS', has_violation);
3696: return fnd_message.get;
3697: END IF;
3698:
3691: END IF;
3692:
3693: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3694: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3695: fnd_message.set_token('CONST_DETAILS', has_violation);
3696: return fnd_message.get;
3697: END IF;
3698:
3699: ELSIF 'SET' = l_all_valid_constraints.type_code THEN
3692:
3693: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3694: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3695: fnd_message.set_token('CONST_DETAILS', has_violation);
3696: return fnd_message.get;
3697: END IF;
3698:
3699: ELSIF 'SET' = l_all_valid_constraints.type_code THEN
3700: -- find the number of distinct constraint entries this user can access
3749: END IF;
3750: has_violation := has_violation||l_violat_existing_menu;
3751: END IF;
3752:
3753: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3754: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3755: fnd_message.set_token('CONST_DETAILS', has_violation);
3756: return fnd_message.get;
3757: END IF;
3750: has_violation := has_violation||l_violat_existing_menu;
3751: END IF;
3752:
3753: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3754: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3755: fnd_message.set_token('CONST_DETAILS', has_violation);
3756: return fnd_message.get;
3757: END IF;
3758: ELSE
3751: END IF;
3752:
3753: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3754: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3755: fnd_message.set_token('CONST_DETAILS', has_violation);
3756: return fnd_message.get;
3757: END IF;
3758: ELSE
3759: -- other constraint types
3752:
3753: fnd_message.set_name('AMW', 'AMW_SOD_VIOLATION');
3754: fnd_message.set_token('CONSTRAINT', l_all_valid_constraints.constraint_name);
3755: fnd_message.set_token('CONST_DETAILS', has_violation);
3756: return fnd_message.get;
3757: END IF;
3758: ELSE
3759: -- other constraint types
3760: NULL;
3926: -- If this constraint has been violated, return an appropriate message.
3927: -----------------------------------------------------------------------
3928: if m_failed = TRUE then
3929:
3930: FND_MESSAGE.SET_NAME('AMW', 'AMW_SOD_VIOLATION');
3931: FND_MESSAGE.SET_TOKEN('CONSTRAINT', constraint.CONSTRAINT_NAME);
3932: FND_MESSAGE.SET_TOKEN('CONST_DETAILS', m_constraint_details);
3933: m_return_text := FND_MESSAGE.GET;
3934:
3927: -----------------------------------------------------------------------
3928: if m_failed = TRUE then
3929:
3930: FND_MESSAGE.SET_NAME('AMW', 'AMW_SOD_VIOLATION');
3931: FND_MESSAGE.SET_TOKEN('CONSTRAINT', constraint.CONSTRAINT_NAME);
3932: FND_MESSAGE.SET_TOKEN('CONST_DETAILS', m_constraint_details);
3933: m_return_text := FND_MESSAGE.GET;
3934:
3935: return m_return_text;
3928: if m_failed = TRUE then
3929:
3930: FND_MESSAGE.SET_NAME('AMW', 'AMW_SOD_VIOLATION');
3931: FND_MESSAGE.SET_TOKEN('CONSTRAINT', constraint.CONSTRAINT_NAME);
3932: FND_MESSAGE.SET_TOKEN('CONST_DETAILS', m_constraint_details);
3933: m_return_text := FND_MESSAGE.GET;
3934:
3935: return m_return_text;
3936:
3929:
3930: FND_MESSAGE.SET_NAME('AMW', 'AMW_SOD_VIOLATION');
3931: FND_MESSAGE.SET_TOKEN('CONSTRAINT', constraint.CONSTRAINT_NAME);
3932: FND_MESSAGE.SET_TOKEN('CONST_DETAILS', m_constraint_details);
3933: m_return_text := FND_MESSAGE.GET;
3934:
3935: return m_return_text;
3936:
3937: end if;
4117: -- If this constraint has been violated, return an appropriate message.
4118: -----------------------------------------------------------------------
4119: if m_failed = TRUE then
4120:
4121: FND_MESSAGE.SET_NAME('AMW', 'AMW_SOD_VIOLATION');
4122: FND_MESSAGE.SET_TOKEN('CONSTRAINT', constraint.CONSTRAINT_NAME);
4123: FND_MESSAGE.SET_TOKEN('CONST_DETAILS', m_constraint_details);
4124: m_return_text := FND_MESSAGE.GET;
4125:
4118: -----------------------------------------------------------------------
4119: if m_failed = TRUE then
4120:
4121: FND_MESSAGE.SET_NAME('AMW', 'AMW_SOD_VIOLATION');
4122: FND_MESSAGE.SET_TOKEN('CONSTRAINT', constraint.CONSTRAINT_NAME);
4123: FND_MESSAGE.SET_TOKEN('CONST_DETAILS', m_constraint_details);
4124: m_return_text := FND_MESSAGE.GET;
4125:
4126: return m_return_text;
4119: if m_failed = TRUE then
4120:
4121: FND_MESSAGE.SET_NAME('AMW', 'AMW_SOD_VIOLATION');
4122: FND_MESSAGE.SET_TOKEN('CONSTRAINT', constraint.CONSTRAINT_NAME);
4123: FND_MESSAGE.SET_TOKEN('CONST_DETAILS', m_constraint_details);
4124: m_return_text := FND_MESSAGE.GET;
4125:
4126: return m_return_text;
4127:
4120:
4121: FND_MESSAGE.SET_NAME('AMW', 'AMW_SOD_VIOLATION');
4122: FND_MESSAGE.SET_TOKEN('CONSTRAINT', constraint.CONSTRAINT_NAME);
4123: FND_MESSAGE.SET_TOKEN('CONST_DETAILS', m_constraint_details);
4124: m_return_text := FND_MESSAGE.GET;
4125:
4126: return m_return_text;
4127:
4128: end if;