The following lines contain the word 'select', 'insert', 'update' or 'delete':
* Contents: INSERT_ACTIVITY *
* UPDATE_ACTIVITY *
* DELETE_ACTIVITY *
* *
* Use This is the public layer of the GMD Activity API *
* *
* *
* History *
* Written by Sandra Dulyk, OPM Development *
* 25-NOV-2002 Thomas Daniel Bug# 2679110 *
* Rewrote the procedures to handle the *
* errors properly and also to handle *
* further validations *
* 20-FEB-2004 Bug 3222090, NSRIVAST *
* Removed call to FND_PROFILE.VALUE('AFLOG_ENABLED') *
**************************************************************************
*/
--Bug 3222090, NSRIVAST 20-FEB-2004, BEGIN
--Forward declaration.
FUNCTION set_debug_flag RETURN VARCHAR2;
insert_activity
Description
This particular procedure is used to insert an activity
Parameters
================================================ */
PROCEDURE insert_activity (
p_api_version IN NUMBER
, p_init_msg_list IN BOOLEAN
, p_commit IN BOOLEAN
, p_activity_tbl IN gmd_activities_pub.gmd_activities_tbl_type
, x_message_count OUT NOCOPY NUMBER
, x_message_list OUT NOCOPY VARCHAR2
, x_return_status OUT NOCOPY VARCHAR2) IS
l_retn_status VARCHAR2(1);
SAVEPOINT insert_activity;
,'insert_activity'
,'gmd_activities_pub') THEN
RAISE invalid_version;
GMD_ACTIVITIES_PVT.insert_activity(p_activity_tbl => p_activity_tbl,
x_message_count => x_message_count,
x_message_list => x_message_list,
x_return_status => l_retn_status);
ROLLBACK TO SAVEPOINT insert_activity;
ROLLBACK TO SAVEPOINT insert_activity;
ROLLBACK TO SAVEPOINT insert_activity;
END Insert_Activity;
update_activity
Description
This particular procedure is used to update an activity
Parameters
================================================ */
PROCEDURE update_activity (
p_api_version IN NUMBER
,p_init_msg_list IN BOOLEAN
,p_commit IN BOOLEAN
,p_activity IN gmd_activities.activity%TYPE
,p_update_table IN gmd_activities_pub.update_tbl_type
,x_message_count OUT NOCOPY NUMBER
,x_message_list OUT NOCOPY VARCHAR2
,x_return_status OUT NOCOPY VARCHAR2 ) IS
l_retn_status VARCHAR2(1);
SELECT 1
FROM gmd_activities_b
WHERE activity = v_activity;
SAVEPOINT update_activity;
,'update_activity'
,'gmd_activities_pub') THEN
RAISE invalid_version;
gmd_debug.put_line('Start of update_activity PUB');
/* Loop thru cols to be updated - verify col and value are present */
FOR i in 1 .. p_update_table.count LOOP
/* Col_to_update and value must be passed, otherwise give error */
IF p_update_table(i).p_col_to_update IS NULL THEN
FND_MESSAGE.SET_NAME ('GMI', 'GMI_MISSING');
FND_MESSAGE.SET_TOKEN ('MISSING', 'COL_TO_UPDATE');
ELSIF p_update_table(i).p_value IS NULL THEN
FND_MESSAGE.SET_NAME ('GMI', 'GMI_MISSING');
ELSIF UPPER(p_update_table(i).p_col_to_update) = 'DELETE_MARK' THEN
GMDRTVAL_PUB.check_delete_mark ( Pdelete_mark => p_update_table(i).p_value,
x_return_status => l_retn_status);
FND_MESSAGE.SET_NAME('GMA', 'SY_BADDELETEMARK');
ELSIF UPPER(p_update_table(i).p_col_to_update) = 'ACTIVITY_DESC' THEN
IF p_update_table(i).p_value IS NULL THEN
FND_MESSAGE.SET_NAME ('GMI', 'GMI_MISSING');
ELSIF UPPER(p_update_table(i).p_col_to_update) = 'COST_ANALYSIS_CODE' THEN
IF p_update_table(i).p_value IS NULL THEN
FND_MESSAGE.SET_NAME ('GMI', 'GMI_MISSING');
IF GMDOPVAL_PUB.check_cost_analysis (pcost_analysis_code => p_update_table(i).p_value) <> 0 THEN
FND_MESSAGE.SET_NAME('GMD', 'GMD_INVALID_COST_ANLYS_CODE');
GMD_ACTIVITIES_PVT.update_activity(p_activity => p_activity
, p_update_table => p_update_table
, x_message_count => x_message_count
, x_message_list => x_message_list
, x_return_status => l_retn_status);
ROLLBACK to SAVEPOINT update_activity;
ROLLBACK to SAVEPOINT update_activity;
ROLLBACK to SAVEPOINT update_activity;
END update_activity;
delete_activity
Description
This particular procedure is used to set delete_mark = 1 for an activity
Parameters
================================================ */
PROCEDURE delete_activity (
p_api_version IN NUMBER
,p_init_msg_list IN BOOLEAN
,p_commit IN BOOLEAN
,p_activity IN gmd_activities.activity%TYPE
,x_message_count OUT NOCOPY NUMBER
,x_message_list OUT NOCOPY VARCHAR2
,x_return_status OUT NOCOPY VARCHAR2 ) IS
v_update_table gmd_activities_pub.update_tbl_type;
SAVEPOINT delete_activity;
v_update_table(1).p_col_to_update := 'DELETE_MARK';
v_update_table(1).p_value := '1';
update_activity(p_api_version => p_api_version
,p_init_msg_list => p_init_msg_list
,p_activity => p_activity
,p_update_table => v_update_table
, x_message_count => x_message_count
, x_message_list => x_message_list
, x_return_status => l_retn_status);
ROLLBACK to SAVEPOINT delete_activity;
ROLLBACK to SAVEPOINT delete_activity;
END delete_activity;