Grant Accounting Project Funding

Hi,
Can any one provide a sample code for funding a project under an award using API ?
Has anyone used GMS_AWARD_PVT.ADD_FUNDING API?
Does the budgetary controls for the project need to be setup manually or does it have any API?
Thanks

create or replace procedure XX_PA_BUD(errbuf OUT VARCHAR2,
retcode OUT VARCHAR2,
x_project_id NUMBER,
x_budget_version_name VARCHAR2,
x_resource_list_id NUMBER,
x_filename VARCHAR2) as
v_api_version_number NUMBER; --:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM;
v_commit VARCHAR2(1); --:= FND_API.G_FALSE;
v_init_msg_list VARCHAR2(1); --:= FND_API.G_FALSE;
v_pm_product_code pa_budget_versions.pm_product_code%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_pm_finplan_reference pa_budget_versions.pm_budget_reference%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_pm_project_reference VARCHAR2(10); --pa_projects_all. PM_PROJECT_REFERENCE%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_pa_project_id NUMBER; --pa_budget_versions.project_id%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM;
v_fin_plan_type_id NUMBER; --pa_budget_versions.fin_plan_type_id%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM;
v_fin_plan_type_name pa_fin_plan_types_vl.name%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_version_type pa_budget_versions.version_type%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_time_phased_code pa_proj_fp_options.cost_time_phased_code%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_resource_list_name pa_resource_lists.name%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_resource_list_id NUMBER; --pa_budget_versions.resource_list_id%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM;
v_fin_plan_level_code pa_proj_fp_options.cost_fin_plan_level_code%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_PLAN_IN_MULTI_CURR_FLAG pa_proj_fp_options.plan_in_multi_curr_flag%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_budget_version_name pa_budget_versions.version_name%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_description pa_budget_versions.description%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_change_reason_code pa_budget_versions.change_reason_code%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_raw_cost_flag pa_fin_plan_amount_sets.raw_cost_flag%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_burdened_cost_flag pa_fin_plan_amount_sets.burdened_cost_flag%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_revenue_flag pa_fin_plan_amount_sets.revenue_flag%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_cost_qty_flag pa_fin_plan_amount_sets.cost_qty_flag%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_revenue_qty_flag pa_fin_plan_amount_sets.revenue_qty_flag%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_all_qty_flag pa_fin_plan_amount_sets.all_qty_flag%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_create_new_curr_working_flag VARCHAR2(1);
v_replace_current_working_flag VARCHAR2(1); -- := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_using_resource_lists_flag VARCHAR2(1); -- DEFAULT 'N';
v_finplan_trans_tab_in pa_budget_pub.FinPlan_Trans_Tab;
v_finplan_trans_in_rec pa_budget_pub.FinPlan_Trans_Rec;
v_finplan_trans_out pa_budget_pub.FinPlan_Trans_Tab;
v_attribute_category pa_budget_versions.attribute_category%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute1 pa_budget_versions.attribute1%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute2 pa_budget_versions.attribute2%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute3 pa_budget_versions.attribute3%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute4 pa_budget_versions.attribute4%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute5 pa_budget_versions.attribute5%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute6 pa_budget_versions.attribute6%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute7 pa_budget_versions.attribute7%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute8 pa_budget_versions.attribute8%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute9 pa_budget_versions.attribute9%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute10 pa_budget_versions.attribute10%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute11 pa_budget_versions.attribute11%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute12 pa_budget_versions.attribute12%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute13 pa_budget_versions.attribute13%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute14 pa_budget_versions.attribute14%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_attribute15 pa_budget_versions.attribute15%TYPE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR;
v_finplan_version_id NUMBER;
v_return_status VARCHAR2(1);
v_msg_count NUMBER;
v_msg_data VARCHAR2(2000);
v_data VARCHAR2(2000);
v_msg_index_out NUMBER;
API_ERROR EXCEPTION;
v_resp_id NUMBER;
v_user_id NUMBER;
v_resp_appl_id NUMBER;
vout_msg_count NUMBER;
vout_msg_data VARCHAR2(200);
vout_data VARCHAR2(2000);
vout_return_status VARCHAR2(1);
vout_msg_index_out NUMBER;
v_operating_unit NUMBER;
g NUMBER;
a NUMBER;
o NUMBER;
f NUMBER;
i NUMBER;
v_task_id NUMBER;
v_pm_task_ref VARCHAR2(25);
v_resource_alias VARCHAR2(80);
v_curr_code VARCHAR2(10);
v_uom VARCHAR2(10);
v_start_date VARCHAR2(11);
v_end_date VARCHAR2(11);
v_quantity NUMBER;
v_rate NUMBER;
v_burdened_cost NUMBER;
v_resource_list_member_id NUMBER;
v_top_task_name VARCHAR2(240);
v_alias_name VARCHAR2(50);
v_err_list_member_id NUMBER;
v_err_cost NUMBER;
v_err_qty NUMBER;
v_err_rec NUMBER;
v_err_uom VARCHAR2(10);
total_records NUMBER;
cursor v_top_task_cur is
select distinct top_task
from xx_pa_bid_calc
where file_name = x_filename
and top_task = 'Mobilization (Activity)';
cursor v_plan_details_cur(v_top_task varchar2) is
select sum(quantity) quantity,
sum(total_amount) total_amount,
uom,
planning_value,
top_task
from xx_pa_bid_calc
where top_task = v_top_task
and file_name = x_filename
and top_task = 'Mobilization (Activity)'
and substr(upload, 1, 1) = 'Y'
group by uom, planning_value, top_task;
begin
g := 0;
a := 0;
o := 0;
f := 0;
total_records := 0;
v_resp_id := fnd_profile.value('resp_id');
v_user_id := fnd_profile.value('user_id');
fnd_file.put_line(fnd_file.log, 'Testing the global values:');
fnd_file.put_line(fnd_file.log, 'Resp id:' || v_resp_id);
fnd_file.put_line(fnd_file.log, 'User Id:' || v_user_id);
fnd_file.put_line(fnd_file.log, 'Project_Id:' || x_project_id);
-- Setting the global variables
fnd_msg_pub.initialize;
Pa_Interface_Utils_Pub.SET_GLOBAL_INFO(p_api_version_number => 1.0,
p_responsibility_id => v_resp_id,
p_user_id => v_user_id,
p_msg_count => VOUT_MSG_COUNT,
p_msg_data => VOUT_MSG_DATA,
p_return_status => VOUT_RETURN_STATUS);
fnd_file.put_line(fnd_file.log,
'Set Global Info Return Status :' || VOUT_RETURN_STATUS);
fnd_file.put_line(fnd_file.log,
'Set Global Info MSG Count :' || VOUT_MSG_COUNT);
fnd_file.put_line(fnd_file.log,
'Starting the Create draft Plan Process:');
fnd_file.put_line(fnd_file.log,
PA_BUDGET_PUB.INIT_BUDGET;
v_api_version_number := 1;
v_commit := 'F';
v_init_msg_list := 'F';
v_fin_plan_type_name := 'Acquisition Bid';
v_pm_product_code := 'MSPROJECT'; --'GOK';
v_pm_finplan_reference := 10024;
v_pm_project_reference := x_project_id;
v_pa_project_id := x_project_id;
v_fin_plan_type_id := 10024;
v_version_type := 'COST';
v_time_phased_code := 'G';
--v_resource_list_name   :='Planning Resource List 02';
v_resource_list_id := x_resource_list_id;
v_fin_plan_level_code := 'L';
v_PLAN_IN_MULTI_CURR_FLAG := 'N'; --'Y';
v_budget_version_name := x_budget_version_name;
v_description := x_budget_version_name;
v_change_reason_code := NULL;
v_raw_cost_flag := 'Y';
v_burdened_cost_flag := 'Y';
v_revenue_flag := 'Y';
v_cost_qty_flag := 'Y'; --N
v_revenue_qty_flag := 'N'; --'Y';
v_all_qty_flag := 'Y';
v_create_new_curr_working_flag := 'Y';
v_replace_current_working_flag := 'N';
v_using_resource_lists_flag := 'Y';
v_attribute_category := NULL;
v_attribute1 := NULL;
v_attribute2 := NULL;
v_attribute3 := NULL;
v_attribute4 := NULL;
v_attribute5 := NULL;
v_attribute6 := NULL;
v_attribute7 := NULL;
v_attribute8 := NULL;
v_attribute9 := NULL;
v_attribute10 := NULL;
v_attribute11 := NULL;
v_attribute12 := NULL;
v_attribute13 := NULL;
v_attribute14 := NULL;
v_attribute15 := NULL;
v_finplan_trans_tab_in.delete;
--setting the variables for finplan_trans_rec
for v_top_task_rec in v_top_task_cur loop
fnd_file.put_line(fnd_file.output,
rpad('Project', 15, ' ') || ' ' ||
rpad('UOM', 15, ' ') || ' ' ||
rpad('Burd Cost', 25, ' ') || ' ' ||
rpad('Resource', 25, ' ') || ' ' ||
rpad('Task Name', 30, ' '));
fnd_file.put_line(fnd_file.output,
rpad('--------------', 15, ' ') || ' ' ||
rpad('-------------', 15, ' ') || ' ' ||
rpad('--------------------------', 25, ' ') || ' ' ||
rpad('-------------------------', 25, ' ') || ' ' ||
rpad('-------------------------------', 30, ' '));
v_err_qty := 0;
v_err_rec := 0;
v_err_cost := 0;
v_err_list_member_id := NULL;
v_task_id := NULL;
v_top_task_name := NULL;
--Getting the task id
Begin
select task_id
into v_task_id
from pa_tasks
where long_task_name = v_top_task_rec.top_task
and project_id = x_project_id;
exception
when no_data_found then
select task_id
into v_task_id
from pa_tasks
where task_number = 'ERROR'
and project_id = x_project_id;
v_top_task_name := 'ERROR';
when others then
select task_id
into v_task_id
from pa_tasks
where task_number = 'ERROR'
and project_id = x_project_id;
v_top_task_name := 'ERROR';
END;
select min(start_date), max(end_date)
into v_start_date, v_end_date
from xx_pa_bid_calc
where top_task = v_top_task_rec.top_task
and file_name = x_filename;
v_pm_task_ref := v_task_id;
v_top_task_name := v_top_task_rec.top_task;
fnd_file.put_line(fnd_file.output, 'Task Id: ' || v_task_id);
fnd_file.put_line(fnd_file.output, 'Task Name: ' || v_top_task_name);
fnd_file.put_line(fnd_file.output, 'Start Date: ' || v_start_date);
fnd_file.put_line(fnd_file.output, 'End Date: ' || v_end_date);
for v_plan_details_rec in v_plan_details_cur(v_top_task_name) LOOP
total_records := total_records + 1;
v_alias_name := v_plan_details_rec.planning_value;
v_resource_list_member_id := NULL;
v_err_list_member_id := NULL;
-- Getting the Resource Assignment.
Begin
select resource_list_member_id
into v_resource_list_member_id
from pa_resource_list_members
where resource_list_id = v_resource_list_id
and alias = v_plan_details_rec.planning_value
--and object_id = x_project_id
exception
when no_data_found then
select resource_list_member_id
into v_resource_list_member_id
from pa_resource_list_members
where resource_list_id = v_resource_list_id
and alias = 'Financial Elements'
--and object_id = x_project_id
v_alias_name := 'Financial Elements';
when others then
select resource_list_member_id
into v_resource_list_member_id
from pa_resource_list_members
where resource_list_id = v_resource_list_id
and alias = 'Financial Elements'
--and object_id = x_project_id
v_alias_name := 'Financial Elements';
END;
fnd_file.put_line(fnd_file.output,
rpad(x_project_id, 15, ' ') || ' ' ||
rpad(v_plan_details_rec.UOM, 15, ' ') || ' ' ||
rpad(v_plan_details_rec.total_amount, 25, ' ') || ' ' ||
rpad(v_alias_name, 25, ' ') || ' ' ||
rpad(v_plan_details_rec.top_task, 30, ' '));
if v_alias_name != 'Financial Elements' then
f := f + 1;
v_finplan_trans_tab_in(f).pm_product_code := 'MSPROJECT';
v_finplan_trans_tab_in(f).task_id := v_task_id;
v_finplan_trans_tab_in(f).pm_task_reference := v_task_id;
v_finplan_trans_tab_in(f).pm_res_asgmt_reference := NULL;
v_finplan_trans_tab_in(f).resource_alias := v_alias_name;
v_finplan_trans_tab_in(f).currency_code := 'USD';
v_finplan_trans_tab_in(f).unit_of_measure_code := v_plan_details_rec.UOM;
v_finplan_trans_tab_in(f).start_date := to_date('20-NOV-2008',
'DD-MON-YYYY'); --to_date(v_plan_details_rec.start_date,'MM/DD/YY');
v_finplan_trans_tab_in(f).end_date := to_date('30-NOV-2008',
'DD-MON-YYYY'); --to_date(v_plan_details_rec.end_date,'MM/DD/YY');
v_finplan_trans_tab_in(f).quantity := v_plan_details_rec.quantity;
v_finplan_trans_tab_in(f).raw_cost := v_plan_details_rec.total_amount;
v_finplan_trans_tab_in(f).burdened_cost := v_plan_details_rec.total_amount;
---v_finplan_trans_tab_in(f).revenue:=NULL;
v_finplan_trans_tab_in(f).resource_list_member_id := v_resource_list_member_id;
v_finplan_trans_tab_in(f).attribute_category := NULL;
v_finplan_trans_tab_in(f).attribute1 := NULL;
v_finplan_trans_tab_in(f).attribute1 := NULL;
v_finplan_trans_tab_in(f).attribute2 := NULL;
v_finplan_trans_tab_in(f).attribute3 := NULL;
v_finplan_trans_tab_in(f).attribute4 := NULL;
v_finplan_trans_tab_in(f).attribute5 := NULL;
v_finplan_trans_tab_in(f).attribute6 := NULL;
v_finplan_trans_tab_in(f).attribute7 := NULL;
v_finplan_trans_tab_in(f).attribute8 := NULL;
v_finplan_trans_tab_in(f).attribute9 := NULL;
v_finplan_trans_tab_in(f).attribute10 := NULL;
v_finplan_trans_tab_in(f).attribute11 := NULL;
v_finplan_trans_tab_in(f).attribute12 := NULL;
v_finplan_trans_tab_in(f).attribute13 := NULL;
v_finplan_trans_tab_in(f).attribute14 := NULL;
v_finplan_trans_tab_in(f).attribute15 := NULL;
v_finplan_trans_tab_in(f).attribute16 := NULL;
v_finplan_trans_tab_in(f).attribute17 := NULL;
v_finplan_trans_tab_in(f).attribute18 := NULL;
v_finplan_trans_tab_in(f).attribute19 := NULL;
v_finplan_trans_tab_in(f).attribute20 := NULL;
v_finplan_trans_tab_in(f).attribute21 := NULL;
v_finplan_trans_tab_in(f).attribute22 := NULL;
v_finplan_trans_tab_in(f).attribute23 := NULL;
v_finplan_trans_tab_in(f).attribute24 := NULL;
v_finplan_trans_tab_in(f).attribute25 := NULL;
v_finplan_trans_tab_in(f).attribute26 := NULL;
v_finplan_trans_tab_in(f).attribute27 := NULL;
v_finplan_trans_tab_in(f).attribute28 := NULL;
v_finplan_trans_tab_in(f).attribute29 := NULL;
v_finplan_trans_tab_in(f).attribute30 := NULL;
else
v_err_cost := v_err_cost +
v_plan_details_rec.total_amount;
v_err_qty := v_err_qty + v_plan_details_rec.quantity;
v_err_list_member_id := v_resource_list_member_id;
v_err_rec := v_err_rec + 1;
v_alias_name := 'Financial Elements';
v_err_uom := v_plan_details_rec.UOM;
end if;
END LOOP;
if v_err_rec > 0 then
f := f + 1;
select resource_list_member_id
into v_resource_list_member_id
from pa_resource_list_members
where resource_list_id = v_resource_list_id
and alias = 'Financial Elements';
v_finplan_trans_tab_in(f).pm_product_code := 'MSPROJECT';
v_finplan_trans_tab_in(f).task_id := v_task_id;
v_finplan_trans_tab_in(f).pm_task_reference := v_task_id;
v_finplan_trans_tab_in(f).pm_res_asgmt_reference := NULL;
v_finplan_trans_tab_in(f).resource_alias := v_alias_name;
v_finplan_trans_tab_in(f).currency_code := 'USD';
v_finplan_trans_tab_in(f).unit_of_measure_code := v_err_uom;
v_finplan_trans_tab_in(f).start_date := to_date('20-NOV-2008',
'DD-MON-YYYY'); --to_date(v_plan_details_rec.start_date,'MM/DD/YY');
v_finplan_trans_tab_in(f).end_date := to_date('27-NOV-2008',
'DD-MON-YYYY'); --to_date(v_plan_details_rec.end_date,'MM/DD/YY');
v_finplan_trans_tab_in(f).quantity := v_err_qty; --v_plan_details_rec.quantity;
v_finplan_trans_tab_in(f).raw_cost := v_err_cost; --v_plan_details_rec.total_amount;
v_finplan_trans_tab_in(f).burdened_cost := v_err_cost; --v_plan_details_rec.total_amount;
---v_finplan_trans_tab_in(f).revenue:=NULL;
v_finplan_trans_tab_in(f).resource_list_member_id := v_resource_list_member_id;
v_finplan_trans_tab_in(f).attribute_category := NULL;
v_finplan_trans_tab_in(f).attribute1 := NULL;
v_finplan_trans_tab_in(f).attribute1 := NULL;
v_finplan_trans_tab_in(f).attribute2 := NULL;
v_finplan_trans_tab_in(f).attribute3 := NULL;
v_finplan_trans_tab_in(f).attribute4 := NULL;
v_finplan_trans_tab_in(f).attribute5 := NULL;
v_finplan_trans_tab_in(f).attribute6 := NULL;
v_finplan_trans_tab_in(f).attribute7 := NULL;
v_finplan_trans_tab_in(f).attribute8 := NULL;
v_finplan_trans_tab_in(f).attribute9 := NULL;
v_finplan_trans_tab_in(f).attribute10 := NULL;
v_finplan_trans_tab_in(f).attribute11 := NULL;
v_finplan_trans_tab_in(f).attribute12 := NULL;
v_finplan_trans_tab_in(f).attribute13 := NULL;
v_finplan_trans_tab_in(f).attribute14 := NULL;
v_finplan_trans_tab_in(f).attribute15 := NULL;
v_finplan_trans_tab_in(f).attribute16 := NULL;
v_finplan_trans_tab_in(f).attribute17 := NULL;
v_finplan_trans_tab_in(f).attribute18 := NULL;
v_finplan_trans_tab_in(f).attribute19 := NULL;
v_finplan_trans_tab_in(f).attribute20 := NULL;
v_finplan_trans_tab_in(f).attribute21 := NULL;
v_finplan_trans_tab_in(f).attribute22 := NULL;
v_finplan_trans_tab_in(f).attribute23 := NULL;
v_finplan_trans_tab_in(f).attribute24 := NULL;
v_finplan_trans_tab_in(f).attribute25 := NULL;
v_finplan_trans_tab_in(f).attribute26 := NULL;
v_finplan_trans_tab_in(f).attribute27 := NULL;
v_finplan_trans_tab_in(f).attribute28 := NULL;
v_finplan_trans_tab_in(f).attribute29 := NULL;
v_finplan_trans_tab_in(f).attribute30 := NULL;
end if;
END LOOP;
--fnd_file.put_line(fnd_file.log, 'task_id:'||v_finplan_trans_tab_in(1).task_id);
pa_budget_pub.create_draft_finplan(p_api_version_number => 1.0 --v_api_version_number
p_commit => v_commit,
p_init_msg_list => v_init_msg_list,
p_pm_product_code => v_pm_product_code,
p_pm_finplan_reference => v_pm_finplan_reference,
p_pm_project_reference => v_pm_project_reference,
p_pa_project_id => v_pa_project_id,
p_fin_plan_type_id => v_fin_plan_type_id,
p_fin_plan_type_name => v_fin_plan_type_name,
p_version_type => v_version_type,
p_time_phased_code => v_time_phased_code,
p_resource_list_name => v_resource_list_name,
p_resource_list_id => v_resource_list_id,
p_fin_plan_level_code => v_fin_plan_level_code,
p_PLAN_IN_MULTI_CURR_FLAG => v_plan_in_multi_curr_flag,
p_budget_version_name => v_budget_version_name,
p_description => v_description,
p_change_reason_code => v_change_reason_code,
p_raw_cost_flag => v_raw_cost_flag,
p_burdened_cost_flag => v_burdened_cost_flag,
p_revenue_flag => v_revenue_flag,
p_cost_qty_flag => v_cost_qty_flag,
p_revenue_qty_flag => v_revenue_qty_flag,
p_all_qty_flag => v_all_qty_flag,
p_create_new_curr_working_flag => v_create_new_curr_working_flag,
p_replace_current_working_flag => v_replace_current_working_flag,
p_using_resource_lists_flag => v_using_resource_lists_flag,
p_finplan_trans_tab => v_finplan_trans_tab_in,
p_attribute_category => v_attribute_category,
p_attribute1 => v_attribute1,
p_attribute2 => v_attribute2,
p_attribute3 => v_attribute3,
p_attribute4 => v_attribute4,
p_attribute5 => v_attribute5,
p_attribute6 => v_attribute6,
p_attribute7 => v_attribute7,
p_attribute8 => v_attribute8,
p_attribute9 => v_attribute9,
p_attribute10 => v_attribute10,
p_attribute11 => v_attribute11,
p_attribute12 => v_attribute12,
p_attribute13 => v_attribute13,
p_attribute14 => v_attribute14,
p_attribute15 => v_attribute15,
x_finplan_version_id => v_finplan_version_id,
x_return_status => v_return_status,
x_msg_count => v_msg_count,
x_msg_data => v_msg_data);
fnd_file.put_line(fnd_file.log, 'Error Message:' || v_return_status);
fnd_file.put_line(fnd_file.log, 'Message Count:' || v_msg_count);
IF v_return_status = 'S' THEN
commit;
end if;
IF v_return_status != 'S' THEN
RAISE API_ERROR;
END IF;
EXCEPTION
WHEN API_ERROR THEN
FOR a IN 1 .. v_msg_count LOOP
pa_interface_utils_pub.get_messages(p_msg_data => v_msg_data,
p_data => v_data,
p_msg_index => a,
p_msg_count => v_msg_count,
p_msg_index_out => v_msg_index_out);
fnd_file.put_line(fnd_file.log,
'API Error Message DATA:' || ' ' ||
substr(v_data, 1, 500));
fnd_file.put_line(fnd_file.log,
'API Error Message MSG DATA:' || ' ' ||
substr(v_msg_data, 1, 200));
end loop;
WHEN OTHERS THEN
--fnd_msg_pub.initialize;
FOR a IN 1 .. v_msg_count LOOP
pa_interface_utils_pub.get_messages(p_encoded => 'F',
p_msg_data => v_msg_data,
p_data => v_data,
p_msg_count => v_msg_count,
p_msg_index_out => v_msg_index_out);
fnd_file.put_line(fnd_file.log, 'v data:' || substr(v_data, 1, 200));
fnd_file.put_line(fnd_file.log,
'vout msg data:' || substr(v_msg_data, 1, 80));
--o:=o+1;
end loop;
end;

Similar Messages

  • Report on Funding Sources Affiliated with Projects in Grants Accounting

    We are trying to create a report that shows a listing of all of our funding sources and the Projects affiliated with them. A Funding Source can have 0 or more Projects. We are not sure where these links are made
    In the report we would like to see:
    Funding Source ID
    Funding Source Name
    Project ID
    Project Name

    Hi Chris,
    We need help implementing Grants Accounting and Projects Accounting Modules for a university client. Can you help? or refer us to a functional and a technical colleague(s) with good experiences implementing Grants Accounting? Much appreciate your help. Thanks in advance.
    Roger, (646) 736-6083 zx7013 and [email protected]

  • Capital projects and Grants Accounting

    We looking at the feasibility of creating capital projects in Grants Accounting as part of our R12 project. I need to know whether it is possible to combine non-sponsored capital project types with our existing sponsored projects funded by awards. I have read the White Paper "Oracle Project Management Implemented with Oracle Grants Accounting" but the practical implementation is not clear.

    All projects within Grants must be sponsored, even if they have a project type of capital. Due to the overlap in functionality, the use of Projects and Grants in the same OU is not permitted. As detailed in the white paper that you reference, some Projects functionlaity can be leveraged, but in limited capacity. So, you can set up your projects as capital projects in Grants (e.g. with a dummy customer), will this suffice? Is there a specific reason why the projects must be non-sponsored?
    Please mark this comment as useful if it has helped.

  • When to consider Using Oracle Grants Accounting Over Oracle Projects Acct?

    Hello Experts / Dina,
    Could you please help me in understanding the situation where I must use Oracle grants Accounting rather than Oracle Project Accounting?
    I mean what is the driving feature of Oracle Grants Accounting which is missing in Oracle Project Accounting.
    Also if I implement Oracle Grants Accounting then is it possible for me to setup oracle project accounting ( costing / billing ) under same environment ? If Yes it is possible to implement under same Environment then is it possible to setup BOTH under same operating Unit?
    Please help.....
    Thanks
    :-)

    Hi Samba,
    I believe that the document Dean refers to is found in this MOS note:-
    Project Managment & Grants Accounting Are Certified To Work In Same Operating Unit [ID 878214.1]
    To address some other points:-
    1) Grants Accounting (GMS) uses many of the same database objects as Project Accounting (PA). The best way to think of it is as a "customisation" of Project Accounting; albeit one that has been created by Oracle. For example, when a new grant is created (called an Award, stored in GMS_AWARDS_ALL) a supporting record is also automatically created in PA_PROJECTS_ALL
    2) Because of 1), Grants Accounting and Project Accounting cannot be implemented and used independently within the same Operating Unit; Grants is built on Projects. However, some Projects features can still be used directly, such as elements of Project Management as described by the above document
    3) Grants tends to only be used within the higher education, research and public sectors. Organisations within these industries typically have complex project funding structures, and have a requirement for tight budgetary control enforced by the system. Grants provides functionality to cater for both of these requirements, better than Projects does on its own. This does of course come at a price; by implementing Grants there are some Projects features that are not available
    Please mark if useful / answered. Project (EU) Ltd has a wealth of experience implementing Grants and Projects; we are the first partner globally to have been recognised by Oracle as specialist Oracle Projects implementation experts. Please see our blog for more information or get in touch if you need any further assistance.
    Andy
    www.project.eu.com

  • Does Project Manufacturing and Grant Accounting is part of Prj Suite?

    Hi Dina / Experts,
    Can you please explain whether module Project Manufacturing and Grants Accounting is part of Oracle Project Suite?
    Do u have any refer documents for it?
    Thanks
    :-)

    Grants Accounting is technically part of the Projects Suite but Project Manufacturing is not. You will find information on Proj Manufacturing in the Discrete Manufacturing area on the Oracle website.
    We have Datasheets for both products:
    http://www.oracle.com/us/industries/education-and-research/oracle-grants-accounting-ds-072518.pdf
    http://www.oracle.com/us/products/applications/047085.pdf
    Regards,
    Dean

  • GRANTS ACCOUNTING: HUD Program Income

    I am anxious to hear from Grants Accounting module users:
    How do you manage and account for HUD [b]Program Income (PI) in the GA module -- if you receive PI for CDBG and/or HOME funded projects?

    Hi Malhar,
    Thanks for your prompt reply. I understand that the issue can be resolved by assigning document type and execute ASKB. At present document type 'AF' is being used for depreciation posting, can we use the same document type for APC value posting or some other document type should be used.
    I still need some more highlight on the reason for not facing the problem in other company codes.
    Thanks,
    Vipin Patankar

  • Grants vs Projects

    I am currently involved in an r12 reimplementation for a HEI that uses the Oracle Grants module, and we are proposing to move to a totally project centric model for the accounting. However, there appears to be much confusion as to whether Grants and Projects modules are compatible. After reading around, my understanding is that Grants and Projects cannot be used in the same operating unit (as they are essentially different versions of the projects subledger), but that they can co-exist in differing operating units in the same legal entity under the same ledger?
    If anyone could clarify this, that would be great and I would also like to hear if others have experience of implementing both Grants and Projects, in HEI's or elsewhere, or trying to use Grants for all project related expenditure.

    Hey Alejandro -
    Your Portfolio is what people will see when they view your profile and this is the most important part of being on Behance. Yours is found here: http://www.behance.net/AlejandroLorenzo
    Collections are just a way that you can be making sets of work that you admire or want to save in some way. These are just ways to explore Behance, don't think of them as "collections of your work," that's what your Portfolio is. Collections are a way to save work you like from others. But, if you did want to add your own work to a collection, you'd just view your own project and click "add to collection" in the right hand side column.
    Hope this helps clarify!

  • Revenue Hard Limit for Program Projects Funded by a Single Agreement

    Hello All
    We have the following Scenario
    1) Project A and B are Liked to each other using Program functionality or using Project-Sub Project Functionality.
    2) We have one agreement of USD 100,000 funding both projects are funded in the way explained below
    Project      Funding
    Project A     40000
    Project B     60000
    Is there a way that can we can ensure that revenue hard limit is ensured at the Program level instead of the Project level?
    For example
    Given Project B has recognized revenue of 30000 USD can Project A recognize Revenue of 70000 as the total agreement is 100000 USD. Means Project A can consume funds allocated to Project B as these projects are interlinked. So that it is ensure that the total revenue recognized by both these projects is not more than 1,00,000 USD.
    I am aware of manual reallocation Process of Funds, but is there a automatic way thru standard functionality.
    Regards
    DR
    Edited by: 933993 on Jan 13, 2013 8:31 AM

    Hi
    No automatic solution using standard functionality.
    You can set up the agreement with no hard limit, and develop a validation within a billing extension.
    Dina

  • What is Project Funding

    Hi,
    Can anyone help me in understanding the concept of Project Funding??!!]
    1- I guess that we define funding agreements with customers (in case that I am the contractor who execute the project), and expected payments from customers are considered (Funding)?? Is that right, correct me in there is wrong information!!!!
    2- what is the difference between funding in Oracle Project Contracts and and Funding in Oracle Project Management!!!???
    Thank you a lot in Advance,,,
    Tasneem

    Hi Tasneem,
    Pls refr to http://oracleappsilearn.blogspot.com/2009/07/oracle-project-contracts.html for info on Project Contracts.
    Funding in Contracts get transformed to an Agreement in Project, and a group of contarcts can be part of a Project.
    Thanks,
    Kiran

  • Project Funding

    Hi
    when creating an agreement for funding a project, (Project-->Billing-->Agreements), I am unable to find the project I created before in the project number LOV,, when pressing (Funding button), What is the problem?? And what is the proposed solution???
    Thank U
    Tasneem

    Hi
    The system was designed to support very complex funding scenarios, which are typical to government contracting.
    For "normal" companies, you will usually find that the funding party refers to the same party as the contract customer.
    Note the following regarding parties and roles in OKE
    Contract Customer is an entity from Receivables, known there as Account (customer account).
    Bill to - is one of the customer addresses, which is enabled in AR as a bill to address.
    Ship to - is one of the customer addresses, which is enabled in AR as a ship to address.
    Fund by - is an entity from TCA, it is a party of type Organization. For your case, verify the party you are selecting for the Fund By role in OKE, is a party that linked to the contract customer as a customer account.
    in OKE Funding Workbench page, you should enter the Fund by party for the Funding source. Verify you select the value you have entered on the Parties and Roles tab for that contract. You will then go and allocate funds from that funding source. Onthe funding lines region you would be able to select a project, only if the party of the Funding Source in OKE is linked to the project-customer assigned to the project in Oracle Projects.
    Dina

  • Bank Account Project

    Help!!! There are alot of things that we need to do in order to finish our project for tomorrow. We didn't start last minute so dont criticize us. We are not java programmers and we try to comprehend as much as we can but we are stuck. If anyone can help us on our project, it would be greatly appreciated.
    Here is our code, comments are on the top of the code.
    Right now the code works but we need to get the main menu correct. We need to stop looping so that the next menu can come up if selected from the previous menu.
    * Bank_Main_Menu.java
    * Created on April 8, 2004, 8:58 PM
    /* The save routine (a hack)
    * Bank public String toFileString() {
    * return getName() + "|" +
    * getAddress1() + "|" +
    * getAddress2() + "|" +
    /* Menu Structure
    * MAIN MENU
    * Exit (Leave Program)
    * Load from File
    * Load from Database**
    * Save to File // Do not SAVE if nothing has been loaded!!!
    * Save To Database
    * (Go to the Bank Menu) // Make sure you create an EMPTY BANK OBJECT!
    * Bank Menu // All menus should be in a while (true) and exit on 0!!
    * 0) Exit (to Main Menu)
    * Edit Bank Info // bank.edit();
    * View Bank Info // bank.view();
    * Edit Account
    * View Account
    * Delete Account
    * Create Account
    * ACCOUNTS MENUS (Sort of shared except Create!)
    * 0) Exit
    * X) Display Account for EACH item in the bank.vAccounts Vector
    * Given user input idx > 0
    * - Edit : ( (GenericAccount) bank.vAccounts.elementAt( idx-1 ) ).edit();
    * - View : ( (GenericAccount) bank.vAccounts.elementAt( idx-1 ) ).view();
    * - Delete : bank.deleteAccount( idx-1 );
    * Adding A Checking Account:
    * bank.addAccount( new CheckingAccount().edit() ); // edit() must return this;
    * Adding A Saving Account:
    * bank.addAccount( new SavingsAccount().edit() ); // edit() must return this;
    * public void edit() // For the Bank
    * { System.out.println("Thank you for editing the bank info "); }
    import java.sql.*;
    import java.util.Vector;
    import java.io.*;
    * @author cbolanos
    public class Bank_Main_Menu {
    final static int MAX_COL_WIDTH = 40;
    final static String NULL_COL_VALUE = " ";
    final static String driverClass = "sun.jdbc.odbc.JdbcOdbcDriver";
    final static String connectionURL = // Uncommment one below to work for you
    "jdbc:odbc:MS Access Database;DBQ=C:\\Program Files\\Microsoft Office\\Office11\\Samples\\Northwind.mdb";
    //"jdbc:odbc:MS Access Database;DBQ=C:\\Program Files\\Microsoft Office\\Office\\Samples\\Northwind.mdb";
    //"jdbc:odbc:MS Access Database;DBQ=D:\\NorthWind.MDB";
    //"jdbc:odbc:Northwind"; // Comment this out if you use another
    final static String userID = "sa";
    final static String userPassword = "";
    private Connection con = null; // We assume 1 connection/object
    public Bank_Main_Menu() {
    public void openConnection() throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException {
    System.out.print(" Loading JDBC Driver -> " + driverClass + "\n");
    Class.forName(driverClass).newInstance();
    System.out.print(" Connecting to -> " + connectionURL + "\n");
    this.con = DriverManager.getConnection(connectionURL, userID, userPassword);
    System.out.print(" Connected as -> " + userID + "\n\n");
    public void closeConnection() {
    try {
    System.out.print(" Closing Connection...\n");
    con.close();
    catch (SQLException e) {
    e.printStackTrace();
    public ResultSet executeQuery(String sSQL) throws SQLException {
    ResultSet rs = null;
    try {
    Statement statement = con.createStatement();
    rs = statement.executeQuery(sSQL);
    catch (SQLException e){
    System.out.println("SQLException was thrown in executeQuery: " + e.getMessage());
    throw e;
    return rs;
    public static String padString(String str, int size){
    if (str == null) return NULL_COL_VALUE; // Null strings
    StringBuffer result = new StringBuffer(str);
    while (result.length() < size)
    result.append(" ");
    if (result.length() > size)
    result.substring(0,size);
    return result.toString();
    public void displayRows(ResultSet rs, Vector vSizes) throws SQLException {
    try {
    int cnt = rs.getMetaData().getColumnCount();
    while(rs.next()) {
    for (int x=1; x<=cnt; x++){
    int z = ((Integer) vSizes.elementAt(x-1)).intValue();
    System.out.print(padString( rs.getString(x), z) );
    System.out.println();
    catch (SQLException e){
    System.out.println("SQLException was thrown in displayRows: " + e.getMessage());
    throw e;
    public void displayHeaders(ResultSet rs, Vector vSizes) throws SQLException {
    try {
    ResultSetMetaData md = rs.getMetaData();
    for (int x=1; x<=md.getColumnCount(); x++){
    int z = Math.max(MAX_COL_WIDTH, md.getColumnDisplaySize(x));
    vSizes.add( new Integer( z ));
    System.out.print( padString(md.getColumnLabel(x), z) );
    System.out.println();
    catch (SQLException e) {
    System.out.println("SQLException was thrown in displayHeaders: " + e.getMessage());
    throw e;
    System.out.println("");
    public Vector resultToVector(ResultSet rs, Vector vNames) throws SQLException {
    try {
    String name;
    while(rs.next()) {
    name = rs.getString(1) + " " + rs.getString(2);
    vNames.add(name);
    catch (SQLException e){
    System.out.println("SQLException was thrown in displayRows: " + e.getMessage());
    throw e;
    return vNames;
    public String getFileName(ResultSet rs) throws SQLException {
    try {
    String columnLabels = "";
    ResultSetMetaData md = rs.getMetaData();
    for (int x=1; x<=md.getColumnCount(); x++){
    columnLabels = columnLabels + md.getColumnLabel(x);
    if(x==md.getColumnCount()){
    //last column should not add '_'
    else{
    columnLabels = columnLabels + "_";
    return columnLabels;
    catch (SQLException e){
    System.out.println("SQLException was thrown in displayHeaders: " + e.getMessage());
    throw e;
    /* public String getFileHeader(ResultSet rs) throws SQLException {
    try {
    String columnLabelspayInterest = "";
    ResultSetMetaData md = rs.getMetaData();
    for (int x=1; x<=md.getColumnCount(); x++){
    columnLabels = columnLabels + md.getColumnLabel(x) + "[" + md.getColumnDisplaySize(x) + "]";
    if(x==md.getColumnCount()){
    //last column should not add '_'
    else{
    columnLabels = columnLabels + "_";
    return columnLabels;
    catch (SQLException e){
    System.out.println("SQLException was thrown in displayHeaders: " + e.getMessage());
    throw e;
    private static void writeFile(String sFileName, Vector vData){
    try{
    String str;
    String FilePath = "c:/LEC-12/" + sFileName;
    PrintWriter pw = new PrintWriter(new FileWriter(FilePath)); //reading file into the buffer
    for(int i = 0; i < vData.size(); i++){
    str = (String)vData.elementAt(i).toString();
    pw.println(str); //print name in good.txt, bad.txt, average.txt
    //System.out.println(str);
    pw.close();
    catch(Exception e){
    public void WritingToFile() throws IOException {
    public void writeToFile(Vector vData){
    try{
    String str;
    String FilePath="c:\\java\\save.txt";
    PrintWriter pw = new PrintWriter(new FileWriter(FilePath));
    for (int i=0; i < vData.size(); i++) {
    str=(String)vData.elementAt(i).toString();
    pw.println(str);
    pw.close();
    catch(Exception e)
    public static Vector stringToVector(String sLine, String sDelim) {
    Vector v = new Vector();
    String s = new String(sLine);
    int x = sLine.indexOf(sDelim);
    while (x >= 0) {
    String sPiece = s.substring(0, x);
    v.add(sPiece);
    s = s.substring(x + 1).trim();
    x = s.indexOf(sDelim);
    v.add(s);
    return v;
    public static void writeVectorToFile(Vector v, String sFileName)
    throws FileNotFoundException, IOException {
    BufferedWriter fileOut = new BufferedWriter(new FileWriter(sFileName));
    for (int x = 0; x < v.size(); x++) {
    fileOut.write(v.elementAt(x).toString());
    if (x != v.size()-1) fileOut.write("\n");
    fileOut.close();
    public static void writeVectorToFile(Vector v, String sFileName)
    throws FileNotFoundException, IOException {
    BufferedWriter fileOut = new BufferedWriter(new FileWriter(sFileName));
    for (int x = 0; x < v.size(); x++) {
    fileOut.write(v.elementAt(x).toString());
    if (x != v.size()-1) fileOut.write("\n");
    fileOut.close();
    /** Creates a new instance of Bank_Main_Menu */
    BankSystem(DataManager dataManager) throws java.io.IOException
    this.dataManager=dataManager;
    reader=new BufferedReader(new InputStreamReader(System.in));
    writer=new BufferedWriter(new OutputStreamWriter(System.out));
    //////////////////////////////////////MAIN MENU/////////////////////////////////
    public void LoadfromFile() {
    String fileName = "c:/java/names.txt" ;
    String line;
    try {
    BufferedReader in = new BufferedReader(
    new FileReader( fileName ) );
    line = in.readLine();
    while ( line != null ) // continue until end of file
    System.out.println( line );
    line = in.readLine();
    in.close();
    catch ( IOException iox ) {
    System.out.println("Problem reading " + fileName );
    //private BufferedReader reader;
    // System.out.println(" Loading from file");
    //System.out.println(" ");
    public void LoadfromDatabase() {
    Vector vSizes = new Vector();
    Bank_Main_Menu mainPrg = new Bank_Main_Menu();
    try {
    mainPrg.openConnection();
    try {
    ResultSet rs = mainPrg.executeQuery("SELECT Title,LastName,FirstName,City,Region FROM Employees order by Title,lastname");
    mainPrg.displayHeaders(rs, vSizes);
    mainPrg.displayRows(rs, vSizes);
    catch (Exception e) { e.printStackTrace(); }
    finally {     mainPrg.closeConnection(); }
    catch (ClassNotFoundException e) { e.printStackTrace(); }
    catch (InstantiationException e) { e.printStackTrace(); }
    catch (IllegalAccessException e) { e.printStackTrace(); }
    catch (SQLException e) { e.printStackTrace(); }
    catch (Exception e) {
    System.out.println("Exception was thrown in main(): " + e.getMessage());
    e.printStackTrace();
    //private BufferedReader reader;
    System.out.println(" Loading from Database");
    System.out.println(" ");
    public void WriteToFile(){
    Vector vSizes=new Vector();
    Vector vNames=new Vector();
    vNames.add("Sheila");
    WritingToFile wf = new WritingToFile();
    String FileName;
    wf.writeToFile(vNames);
    System.out.println(" Saving to file");
    //System.out.println(" ");
    public void SavetoDatabase(){
    System.out.println(" Saving to Database");
    System.out.println(" ");
    //////////////////////////////////////BANK MENU////////////////////////////////
    public void GotoBankMenu(){
    System.out.println("Welcome to the bank Menu");
    System.out.println(" Bank Menu ");
    System.out.println(" 0. Exit");
    System.out.println(" 1. Edit Bank Information");
    System.out.println(" 2. View Bank Information");
    System.out.println(" 3. Edit Account");
    System.out.println(" 4. View Account ");
    System.out.println(" 5. Delete Account ");
    System.out.println(" 5. Create Account ");
    public void bankDetails() {
    public void listAccounts(){
    System.out.println("These are the accounts");
    public void accountOptions(){
    System.out.println("These are the account options");
    public void add_Account(){
    System.out.println("This is how you add an account");
    /* public void deleteAcc() throws IOException {
    int i = selectAnAccount();
    if (i >= 0) {
    vBankAccounts.remove(i);//vBankAccounts is the vector object and remove() is a method
    System.out.println("Account deleted.");
    public void payInterest() throws IOException {
    int count = 0;
    for (int x = 0; x < vBankAccounts.size(); x++) {
    if (vBankAccounts.get(x) instanceof SavingsAccount) {
    ((SavingsAccount)vBankAccounts.get(x)).addInterestTransaction();
    count++;
    // public void addAcc(GenericAccount a) {
    // vBankAccounts.add(a);
    public void payInterest(){
    System.out.println("This is how you pay interest");
    public void print_statementofAccount(){
    System.out.println("This is how you print a statement");
    public void loadAccountsFromFile(){
    System.out.println("This is how you load an account from file");
    public void loadAccountsfromDatabase(){
    System.out.println("This is how you load an account from a database");
    public void StoreAccounts(){
    System.out.println("This is how you store an account");
    public static int menu() {
    System.out.println("Welcome to the main menu. Please choose from the following options:");
    System.out.println(" MAIN MENU ");
    System.out.println(" 0. Exit");
    System.out.println(" 1. Load from File");
    System.out.println(" 2. Load from Database");
    System.out.println(" 3. Save to file");
    System.out.println(" 4. Save to Database");
    System.out.println(" 5. Go to Bank the Bank Menu");//need to create an instance of bank class that contains the elements of bank menu.
    System.out.println(" 6. Print Statement of Account");
    System.out.println(" 7. Pay Interest");
    System.out.println(" 8. Load Accounts from file");
    System.out.println(" 9. Load Accounts from Database");
    System.out.println("10. Store Accounts");
    System.out.println(" MAIN MENU ");
    System.out.println(" 0. Exit");
    System.out.println(" 1. Edit Bank Information");
    System.out.println(" 2. List Accounts");
    System.out.println(" 3. Account Options");
    System.out.println(" 4. Add an Account ");
    System.out.println(" 5. Delete Account ");
    System.out.println(" 6. Print Statement of Account");
    System.out.println(" 7. Pay Interest");
    System.out.println(" 8. Load Accounts from file");
    System.out.println(" 9. Load Accounts from Database");
    System.out.println("10. Store Accounts");
    MAIN MENU
    * Exit (Leave Program)
    * Load from File
    * Load from Database**
    * Save to File // Do not SAVE if nothing has been loaded!!!
    * Save To Database
    * (Go to the Bank Menu)
    int OptionChosen;
    BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
    try {
    OptionChosen = Integer.parseInt(in.readLine());
    catch (Exception e) {
    OptionChosen = 0;
    return OptionChosen;
    * @param args the command line arguments
    public static void main(String[] args) {
    Bank_Main_Menu bBank = new Bank_Main_Menu(); //Creating an object of the class
    while ( true ) {
    int userInput = menu();
    if (userInput==0) {
    System.out.println(" Good Bye ");
    return;
    System.out.println("You chose " + userInput);
    switch(userInput){
    case 1:
    bBank.LoadfromFile();//Calling a method
    break;
    case 2:
    bBank.LoadfromDatabase();//Calling a method
    break;
    case 3:
    bBank.WriteToFile();//Calling a method
    break;
    case 4:
    bBank.SavetoDatabase();//Calling a method
    break;
    case 5:
    bBank.GotoBankMenu();//Calling a method
    break;
    case 6:
    bBank.print_statementofAccount();//Calling a method
    break;
    case 7:
    bBank.payInterest();//Calling a method
    break;
    case 8:
    bBank.loadAccountsFromFile();//Calling a method
    break;
    case 9:
    bBank.loadAccountsfromDatabase();//Calling a method
    break;
    case 10:
    bBank.StoreAccounts();//Calling a method
    break;
    while ( true ) {
    int userInput = menu();
    if (userInput==0) {
    System.out.println(" Good Bye ");
    return;
    System.out.println("You chose " + userInput);
    switch(userInput){
    case 1:
    bBank.bankDetails();//Calling a method
    break;
    case 2:
    bBank.listAccounts();//Calling a method
    break;
    case 3:
    bBank.accountOptions();//Calling a method
    break;
    case 4:
    bBank.add_Account();//Calling a method
    break;
    case 5:
    bBank.delete_Account();//Calling a method
    break;
    case 6:
    bBank.print_statementofAccount();//Calling a method
    break;
    case 7:
    bBank.payInterest();//Calling a method
    break;
    case 8:
    bBank.loadAccountsFromFile();//Calling a method
    break;
    case 9:
    bBank.loadAccountsfromDatabase();//Calling a method
    break;
    case 10:
    bBank.StoreAccounts();//Calling a method
    break;

    change this:
    while ( true ) {
    int userInput = menu();
    to
    int userInput = menu();
    while ( userInput != 0 ) {
    if (userInput != 5)
    userInput = menu();
    don't have time to explain too well....

  • PO Account Assignment Fund Change is not transferred to backend

    We are on SRM 550 SP10 ECS.
    When a PO is being changed, if the fund is changed, that change does not get transferred to R/3. The old Fund when the PO was created is retained on the R/3 side. On the SRM side the new fund is retained.
    Note:
       The fund that I am talking about is under the Account Assignment link of Item data. If the Cost center is changed the new cost center is reflected to the backend.

    Hi KA!
    Have you found a solution to your problem? We have the same problem and is looking for the FM to get the fund center and commitment item from back end.
    Sincerely
    Anders

  • Accounting Project - Badi DPR_EVENTS

    Hi Gurus,
    when the project is posted in 'RELEASE' status i have to associate to the project, in accounting dynpro, an internal order just created.
    I found Badi DPR_EVENTS use with filter ON_PPO_RELEASED but i don't understand how can be use.
    There's someone with code sample for help me?
    Thank's in advance.
    Best Regards.
    Daniele Monti

    Hi Thorsten,
    this can become a bit tricky. The description is language dependant and is therefore treated a bit different from the other attributes.
    But I found a method call with which you can get the description from the database. This you could to test against the current description as found on the UI:
      rv_description = cl_dpr_common_services=>get_description_by_cgpl(
                                ir_common  = me
                                iv_langu   = iv_langu ).
    Maybe this helps.
    Best regards,
    Thomas

  • Grant accounts access to other accounts' calendars only -using OWA

    I have not been able to find a way to grant an account access to another accounts calendar -Only, when they only use OWA.  I have read this is a limitation and is by MS design but I have also read that other users have had success doing this. 
    I have tried many of the solutions I found online using PS to assign read access to Top of Info Store and editor or reviewer to the calendar specificially but this fails.
    I have tried using some published assistance 
    http://exchangeserverpro.com/grant-read-access-exchange-mailbox/ for example, but I can't get the logic to apply to the MB. 
    Has anyone had any success allowing shared calendar access in OWA 2007 without assigning Full MB Access -and would be willing to share their success? 
    Thanks in advance

    Hi,
    According to your description, you want grant read permission not full access permission to make calendar visible for others.
    If yes, we can use PFDAVAdmin to grant Calendar Reviewer permisson.
    For more information, you can refer to Shafaquat Ali’s and
    Westar1’s replies in the following thread:
    http://social.technet.microsoft.com/Forums/exchange/en-US/074dadf4-c36e-44f1-b3d2-064a13be738b/calendar-reviewer-permission-configured-in-pfdavadmin-not-working-for-all-users
    If I misunderstand your meaning, please feel free to let me know.
    Best regards,
    Angela Shi
    TechNet Community Support

  • Getting Fund Account from Fund id

    Hi,
    During fund id creation, a partner account is assigned, I would like to know which table has the link between the fund id and partner account.
    Thanks in advance,
    Thanks & Regards
    Ananth

    I have used this function module CRM_FM_RFC_FND_READ to get the details of the account, is there any other means of getting this data.

Maybe you are looking for

  • Table to find Transport import time

    Dear Friends, I would like to know the table in which the transport import start time and end times are maintained. Regards, Ramakrishna

  • Macbook Pro 10.7.5 cannot finish download

    Hello Recently i hv reached a problem on downloading using my macbook pro, running 10.7.5 I was trying to download certain file from the Internet using safari but it cant be finished It's like it downloaded the whole size of the file but it continued

  • Problem installing a program

    I tried to install adobe photoshop elements 12 trial version. That did not work. Install was aborted so after trying several times i removed everything. Then i decided to by the official program. Now i cant install this programm because he first want

  • Start a meetme conference from CUPC?

    Hello all, I recently added presence to my environment, and we would like to abandon the soft phones in favor of CUPC because of the presence as well as video chat. My problem is that some of us need to be able to initiate a meetme conference (normal

  • Trouble Using Printer

    I have a Intel based Macbook, and i have a Lexmark x7350 printer. But when i try to use it i dont have a driver and lexmark doesnt have a driver for macs, and i tried to use other drivers but they dont work, but my computer pics up that it is a lexma