/* Formatted on 3/27/2017 2:32:15 PM (QP5 v5.114.809.3010) */
DECLARE
l_return_status VARCHAR (10);
l_msg_count VARCHAR (240);
l_MSG_DATA VARCHAR (240);
l_rowid VARCHAR2 (240);
task_record PA_TASKS%ROWTYPE;
task_struc_record PA_PROJ_ELEMENTS%ROWTYPE;
l_last_updated_by NUMBER := FND_GLOBAL.USER_ID;
l_last_update_date DATE;
l_last_update_login NUMBER := FND_GLOBAL.LOGIN_ID;
pt_task_name PA_TASKS.TASK_NAME%TYPE;
l_task_name PA_PROJ_ELEMENTS.NAME%TYPE;
l_task_name1 PA_PROJ_ELEMENTS.NAME%TYPE;
l_project_id PA_PROJECTS_ALL.PROJECT_ID%TYPE;
l_task_id PA_TASKS.TASK_ID%TYPE;
l_task_manager_person_id PA_TASKS.TASK_MANAGER_PERSON_ID%TYPE;
l_output VARCHAR2 (2000);
l_msg_dummy VARCHAR2 (2000);
n NUMBER := 0;
BEGIN
l_project_id := 590;
l_task_id := 3355;
l_task_manager_person_id := 136263; --Koch, Dibyajyoti
BEGIN
SELECT *
INTO task_record
FROM pa_tasks
WHERE project_id = l_project_id AND task_id = l_task_id;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
BEGIN
SELECT *
INTO task_struc_record
FROM pa_proj_elements
WHERE PROJECT_ID = l_project_id AND PROJ_ELEMENT_ID = l_task_id;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
BEGIN
SELECT ROWID
INTO l_rowid
FROM pa_tasks
WHERE project_id = l_project_id AND task_id = l_task_id;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
BEGIN
SELECT SYSDATE INTO l_last_update_date FROM DUAL;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
BEGIN
SELECT task_name
INTO pt_task_name
FROM pa_tasks
WHERE task_id = l_task_id;
SELECT name
INTO l_task_name
FROM pa_proj_elements
WHERE proj_element_id = l_task_id;
IF pt_task_name = l_task_name
THEN
l_task_name1 := l_task_name;
ELSE
l_task_name1 := pt_task_name;
END IF;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
PA_TASKS_PKG.UPDATE_ROW (
X_ROWID => l_rowid,
X_TASK_ID => task_record.task_id,
X_PROJECT_ID => task_record.project_id,
X_TASK_NUMBER => task_record.task_number,
X_LAST_UPDATE_DATE => l_last_update_date, --Updated Value
X_LAST_UPDATED_BY => l_last_updated_by, --Updated Value
X_LAST_UPDATE_LOGIN => l_last_update_login, --Updated Value
X_Task_Name => task_record.task_name,
X_Long_Task_Name => task_record.long_task_name,
X_TOP_TASK_ID => task_record.top_task_id,
X_WBS_LEVEL => task_record.wbs_level,
X_READY_TO_BILL_FLAG => task_record.ready_to_bill_flag,
X_READY_TO_DISTRIBUTE_FLAG => task_record.ready_to_distribute_flag,
X_PARENT_TASK_ID => task_record.parent_task_id,
X_DESCRIPTION => task_record.description,
X_CARRYING_OUT_ORGANIZATION_ID => task_record.carrying_out_organization_id,
X_SERVICE_TYPE_CODE => task_record.service_type_code,
X_TASK_MANAGER_PERSON_ID => l_task_manager_person_id, --Updated Value
X_CHARGEABLE_FLAG => task_record.chargeable_flag,
X_BILLABLE_FLAG => task_record.billable_flag,
X_LIMIT_TO_TXN_CONTROLS_FLAG => task_record.limit_to_txn_controls_flag,
X_START_DATE => task_record.start_date,
X_COMPLETION_DATE => task_record.completion_date,
X_ADDRESS_ID => task_record.address_id,
X_LABOR_BILL_RATE_ORG_ID => task_record.labor_bill_rate_org_id,
X_LABOR_STD_BILL_RATE_SCHDL => task_record.labor_std_bill_rate_schdl,
X_LABOR_SCHEDULE_FIXED_DATE => task_record.labor_schedule_fixed_date,
X_LABOR_SCHEDULE_DISCOUNT => task_record.labor_schedule_discount,
X_NON_LABOR_BILL_RATE_ORG_ID => task_record.non_labor_bill_rate_org_id,
X_NL_STD_BILL_RATE_SCHDL => task_record.non_labor_std_bill_rate_schdl,
X_NL_SCHEDULE_FIXED_DATE => task_record.non_labor_schedule_fixed_date,
X_NON_LABOR_SCHEDULE_DISCOUNT => task_record.non_labor_schedule_discount,
X_LABOR_COST_MULTIPLIER_NAME => task_record.labor_cost_multiplier_name,
X_ATTRIBUTE_CATEGORY => task_record.attribute_category,
X_ATTRIBUTE1 => task_record.attribute1,
X_ATTRIBUTE2 => task_record.attribute2,
X_ATTRIBUTE3 => task_record.attribute3,
X_ATTRIBUTE4 => task_record.attribute4,
X_ATTRIBUTE5 => task_record.attribute5,
X_ATTRIBUTE6 => task_record.attribute6,
X_ATTRIBUTE7 => task_record.attribute7,
X_ATTRIBUTE8 => task_record.attribute8,
X_ATTRIBUTE9 => task_record.attribute9,
X_ATTRIBUTE10 => task_record.attribute10,
X_COST_IND_RATE_SCH_ID => task_record.cost_ind_rate_sch_id,
X_REV_IND_RATE_SCH_ID => task_record.rev_ind_rate_sch_id,
X_INV_IND_RATE_SCH_ID => task_record.inv_ind_rate_sch_id,
X_COST_IND_SCH_FIXED_DATE => task_record.cost_ind_sch_fixed_date,
X_REV_IND_SCH_FIXED_DATE => task_record.rev_ind_sch_fixed_date,
X_INV_IND_SCH_FIXED_DATE => task_record.inv_ind_sch_fixed_date,
X_LABOR_SCH_TYPE => task_record.labor_sch_type,
X_NON_LABOR_SCH_TYPE => task_record.non_labor_sch_type,
X_ALLOW_CROSS_CHARGE_FLAG => task_record.allow_cross_charge_flag,
X_PROJECT_RATE_DATE => task_record.project_rate_date,
X_PROJECT_RATE_TYPE => task_record.project_rate_type,
X_CC_PROCESS_LABOR_FLAG => task_record.cc_process_labor_flag,
X_LABOR_TP_SCHEDULE_ID => task_record.labor_tp_schedule_id,
X_LABOR_TP_FIXED_DATE => task_record.labor_tp_fixed_date,
X_CC_PROCESS_NL_FLAG => task_record.cc_process_nl_flag,
X_NL_TP_SCHEDULE_ID => task_record.nl_tp_schedule_id,
X_NL_TP_FIXED_DATE => task_record.nl_tp_fixed_date,
X_RECEIVE_PROJECT_INVOICE_FLAG => task_record.receive_project_invoice_flag,
X_WORK_TYPE_ID => task_record.work_type_id,
X_JOB_BILL_RATE_SCHEDULE_ID => task_record.job_bill_rate_schedule_id,
X_emp_bill_rate_schedule_id => task_record.emp_bill_rate_schedule_id,
X_taskfunc_cost_rate_type => task_record.taskfunc_cost_rate_type,
X_taskfunc_cost_rate_date => task_record.taskfunc_cost_rate_date,
X_non_lab_std_bill_rt_sch_id => task_record.non_lab_std_bill_rt_sch_id,
X_labor_disc_reason_code => task_record.labor_disc_reason_code,
X_non_labor_disc_reason_code => task_record.non_labor_disc_reason_code,
x_retirement_cost_flag => task_record.retirement_cost_flag,
x_cint_eligible_flag => task_record.cint_eligible_flag,
X_CINT_STOP_DATE => task_record.cint_stop_date,
X_GEN_ETC_SRC_CODE => task_record.gen_etc_source_code
);
PA_PROJ_TASK_STRUC_PUB.UPDATE_TASK_STRUCTURE2 (
p_calling_module => 'FORMS',
p_task_id => task_record.task_id,
p_task_number => task_record.task_number,
p_task_name => l_task_name1,
P_TASK_DESCRIPTION => TASK_RECORD.DESCRIPTION,
p_task_manager_id => l_task_manager_person_id, --Updated Value
p_carrying_out_organization_id => task_record.carrying_out_organization_id,
p_pm_product_code => task_record.pm_product_code,
p_pm_task_reference => task_record.pm_task_reference,
p_location_id => task_struc_record.location_id,
p_ref_task_id => NULL,
p_project_id => task_struc_record.project_id,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
x_return_status => l_return_status
);
COMMIT;
IF l_return_status <> 'S'
THEN
FOR n IN 1 .. l_msg_count
LOOP
fnd_msg_pub.get (n,
fnd_api.g_false,
l_msg_data,
l_msg_dummy);
l_output := (TO_CHAR (n) || ': ' || l_msg_data);
DBMS_OUTPUT.put_line (
'Error: API Error while updating the Task: ' || l_output
);
COMMIT;
END LOOP;
ELSE
DBMS_OUTPUT.put_line ('Sucessfully Update the task');
COMMIT;
END IF;
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.PUT_LINE ('Other Error in Project: ' || SQLERRM);
END;
DECLARE
l_return_status VARCHAR (10);
l_msg_count VARCHAR (240);
l_MSG_DATA VARCHAR (240);
l_rowid VARCHAR2 (240);
task_record PA_TASKS%ROWTYPE;
task_struc_record PA_PROJ_ELEMENTS%ROWTYPE;
l_last_updated_by NUMBER := FND_GLOBAL.USER_ID;
l_last_update_date DATE;
l_last_update_login NUMBER := FND_GLOBAL.LOGIN_ID;
pt_task_name PA_TASKS.TASK_NAME%TYPE;
l_task_name PA_PROJ_ELEMENTS.NAME%TYPE;
l_task_name1 PA_PROJ_ELEMENTS.NAME%TYPE;
l_project_id PA_PROJECTS_ALL.PROJECT_ID%TYPE;
l_task_id PA_TASKS.TASK_ID%TYPE;
l_task_manager_person_id PA_TASKS.TASK_MANAGER_PERSON_ID%TYPE;
l_output VARCHAR2 (2000);
l_msg_dummy VARCHAR2 (2000);
n NUMBER := 0;
BEGIN
l_project_id := 590;
l_task_id := 3355;
l_task_manager_person_id := 136263; --Koch, Dibyajyoti
BEGIN
SELECT *
INTO task_record
FROM pa_tasks
WHERE project_id = l_project_id AND task_id = l_task_id;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
BEGIN
SELECT *
INTO task_struc_record
FROM pa_proj_elements
WHERE PROJECT_ID = l_project_id AND PROJ_ELEMENT_ID = l_task_id;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
BEGIN
SELECT ROWID
INTO l_rowid
FROM pa_tasks
WHERE project_id = l_project_id AND task_id = l_task_id;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
BEGIN
SELECT SYSDATE INTO l_last_update_date FROM DUAL;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
BEGIN
SELECT task_name
INTO pt_task_name
FROM pa_tasks
WHERE task_id = l_task_id;
SELECT name
INTO l_task_name
FROM pa_proj_elements
WHERE proj_element_id = l_task_id;
IF pt_task_name = l_task_name
THEN
l_task_name1 := l_task_name;
ELSE
l_task_name1 := pt_task_name;
END IF;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
PA_TASKS_PKG.UPDATE_ROW (
X_ROWID => l_rowid,
X_TASK_ID => task_record.task_id,
X_PROJECT_ID => task_record.project_id,
X_TASK_NUMBER => task_record.task_number,
X_LAST_UPDATE_DATE => l_last_update_date, --Updated Value
X_LAST_UPDATED_BY => l_last_updated_by, --Updated Value
X_LAST_UPDATE_LOGIN => l_last_update_login, --Updated Value
X_Task_Name => task_record.task_name,
X_Long_Task_Name => task_record.long_task_name,
X_TOP_TASK_ID => task_record.top_task_id,
X_WBS_LEVEL => task_record.wbs_level,
X_READY_TO_BILL_FLAG => task_record.ready_to_bill_flag,
X_READY_TO_DISTRIBUTE_FLAG => task_record.ready_to_distribute_flag,
X_PARENT_TASK_ID => task_record.parent_task_id,
X_DESCRIPTION => task_record.description,
X_CARRYING_OUT_ORGANIZATION_ID => task_record.carrying_out_organization_id,
X_SERVICE_TYPE_CODE => task_record.service_type_code,
X_TASK_MANAGER_PERSON_ID => l_task_manager_person_id, --Updated Value
X_CHARGEABLE_FLAG => task_record.chargeable_flag,
X_BILLABLE_FLAG => task_record.billable_flag,
X_LIMIT_TO_TXN_CONTROLS_FLAG => task_record.limit_to_txn_controls_flag,
X_START_DATE => task_record.start_date,
X_COMPLETION_DATE => task_record.completion_date,
X_ADDRESS_ID => task_record.address_id,
X_LABOR_BILL_RATE_ORG_ID => task_record.labor_bill_rate_org_id,
X_LABOR_STD_BILL_RATE_SCHDL => task_record.labor_std_bill_rate_schdl,
X_LABOR_SCHEDULE_FIXED_DATE => task_record.labor_schedule_fixed_date,
X_LABOR_SCHEDULE_DISCOUNT => task_record.labor_schedule_discount,
X_NON_LABOR_BILL_RATE_ORG_ID => task_record.non_labor_bill_rate_org_id,
X_NL_STD_BILL_RATE_SCHDL => task_record.non_labor_std_bill_rate_schdl,
X_NL_SCHEDULE_FIXED_DATE => task_record.non_labor_schedule_fixed_date,
X_NON_LABOR_SCHEDULE_DISCOUNT => task_record.non_labor_schedule_discount,
X_LABOR_COST_MULTIPLIER_NAME => task_record.labor_cost_multiplier_name,
X_ATTRIBUTE_CATEGORY => task_record.attribute_category,
X_ATTRIBUTE1 => task_record.attribute1,
X_ATTRIBUTE2 => task_record.attribute2,
X_ATTRIBUTE3 => task_record.attribute3,
X_ATTRIBUTE4 => task_record.attribute4,
X_ATTRIBUTE5 => task_record.attribute5,
X_ATTRIBUTE6 => task_record.attribute6,
X_ATTRIBUTE7 => task_record.attribute7,
X_ATTRIBUTE8 => task_record.attribute8,
X_ATTRIBUTE9 => task_record.attribute9,
X_ATTRIBUTE10 => task_record.attribute10,
X_COST_IND_RATE_SCH_ID => task_record.cost_ind_rate_sch_id,
X_REV_IND_RATE_SCH_ID => task_record.rev_ind_rate_sch_id,
X_INV_IND_RATE_SCH_ID => task_record.inv_ind_rate_sch_id,
X_COST_IND_SCH_FIXED_DATE => task_record.cost_ind_sch_fixed_date,
X_REV_IND_SCH_FIXED_DATE => task_record.rev_ind_sch_fixed_date,
X_INV_IND_SCH_FIXED_DATE => task_record.inv_ind_sch_fixed_date,
X_LABOR_SCH_TYPE => task_record.labor_sch_type,
X_NON_LABOR_SCH_TYPE => task_record.non_labor_sch_type,
X_ALLOW_CROSS_CHARGE_FLAG => task_record.allow_cross_charge_flag,
X_PROJECT_RATE_DATE => task_record.project_rate_date,
X_PROJECT_RATE_TYPE => task_record.project_rate_type,
X_CC_PROCESS_LABOR_FLAG => task_record.cc_process_labor_flag,
X_LABOR_TP_SCHEDULE_ID => task_record.labor_tp_schedule_id,
X_LABOR_TP_FIXED_DATE => task_record.labor_tp_fixed_date,
X_CC_PROCESS_NL_FLAG => task_record.cc_process_nl_flag,
X_NL_TP_SCHEDULE_ID => task_record.nl_tp_schedule_id,
X_NL_TP_FIXED_DATE => task_record.nl_tp_fixed_date,
X_RECEIVE_PROJECT_INVOICE_FLAG => task_record.receive_project_invoice_flag,
X_WORK_TYPE_ID => task_record.work_type_id,
X_JOB_BILL_RATE_SCHEDULE_ID => task_record.job_bill_rate_schedule_id,
X_emp_bill_rate_schedule_id => task_record.emp_bill_rate_schedule_id,
X_taskfunc_cost_rate_type => task_record.taskfunc_cost_rate_type,
X_taskfunc_cost_rate_date => task_record.taskfunc_cost_rate_date,
X_non_lab_std_bill_rt_sch_id => task_record.non_lab_std_bill_rt_sch_id,
X_labor_disc_reason_code => task_record.labor_disc_reason_code,
X_non_labor_disc_reason_code => task_record.non_labor_disc_reason_code,
x_retirement_cost_flag => task_record.retirement_cost_flag,
x_cint_eligible_flag => task_record.cint_eligible_flag,
X_CINT_STOP_DATE => task_record.cint_stop_date,
X_GEN_ETC_SRC_CODE => task_record.gen_etc_source_code
);
PA_PROJ_TASK_STRUC_PUB.UPDATE_TASK_STRUCTURE2 (
p_calling_module => 'FORMS',
p_task_id => task_record.task_id,
p_task_number => task_record.task_number,
p_task_name => l_task_name1,
P_TASK_DESCRIPTION => TASK_RECORD.DESCRIPTION,
p_task_manager_id => l_task_manager_person_id, --Updated Value
p_carrying_out_organization_id => task_record.carrying_out_organization_id,
p_pm_product_code => task_record.pm_product_code,
p_pm_task_reference => task_record.pm_task_reference,
p_location_id => task_struc_record.location_id,
p_ref_task_id => NULL,
p_project_id => task_struc_record.project_id,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
x_return_status => l_return_status
);
COMMIT;
IF l_return_status <> 'S'
THEN
FOR n IN 1 .. l_msg_count
LOOP
fnd_msg_pub.get (n,
fnd_api.g_false,
l_msg_data,
l_msg_dummy);
l_output := (TO_CHAR (n) || ': ' || l_msg_data);
DBMS_OUTPUT.put_line (
'Error: API Error while updating the Task: ' || l_output
);
COMMIT;
END LOOP;
ELSE
DBMS_OUTPUT.put_line ('Sucessfully Update the task');
COMMIT;
END IF;
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.PUT_LINE ('Other Error in Project: ' || SQLERRM);
END;
No comments:
Post a Comment