1 PACKAGE PA_TASK_ASSIGNMENT_UTILS AUTHID CURRENT_USER AS
2 -- $Header: PATAUTLS.pls 120.11 2008/03/20 09:00:33 rthumma noship $
3
4
5 p_multi_asgmt_req_flag VARCHAR2(1) := 'N'; /* Added for bug 3724780.*/
6 p_assignment_effort NUMBER;
7
8 g_require_progress_rollup VARCHAR(1) := 'N'; -- Bug 4492493
9 g_process_flow VARCHAR(20) := null; -- Bug 4646016
10
11 /* This record type is used to pass the details of the tasks that should to be
12 processed by the TA validation API. This record type will be passed to the TA
13 validation API from add_planning_transactions API and update_planninng_transactions API*/
14 TYPE task_rec_type IS RECORD
15 (
16 project_id NUMBER DEFAULT NULL
17 ,task_elem_version_id NUMBER DEFAULT NULL
18 ,struct_elem_version_id NUMBER DEFAULT NULL
19 ,task_name pa_proj_elements.name%TYPE DEFAULT NULL
20 ,task_number pa_proj_elements.element_number%TYPE DEFAULT NULL
21 ,start_date pa_resource_assignments.planning_start_date%TYPE DEFAULT NULL
22 ,end_date pa_resource_assignments.planning_end_date%TYPE DEFAULT NULL
23 ,planned_people_effort pa_resource_assignments.total_plan_quantity%TYPE DEFAULT NULL
24 ,planned_equip_effort pa_resource_assignments.total_plan_quantity%TYPE DEFAULT NULL
25 ,latest_eff_pub_flag pa_proj_elem_ver_structure.latest_eff_published_flag%TYPE DEFAULT NULL
26 );
27
28 /* This record type is used to pass the details of the resource assignments that should to be
29 processed by the TA validation API. This record type will be passed to the TA
30 validation API from add_planning_transactions API and update_planninng_transactions API*/
31 TYPE resource_rec_type IS RECORD
32 (
33 resource_assignment_id NUMBER DEFAULT NULL
34 ,assignment_description pa_resource_assignments.assignment_description%TYPE DEFAULT NULL
35 ,resource_list_member_id NUMBER DEFAULT NULL
36 ,planning_resource_alias pa_resource_list_members.alias%TYPE DEFAULT NULL
37 ,resource_class_flag pa_resource_list_members.resource_class_flag%TYPE DEFAULT NULL
38 ,resource_class_code pa_resource_assignments.resource_class_code%TYPE DEFAULT NULL
39 ,resource_class_id NUMBER DEFAULT NULL
40 ,res_type_code pa_resource_assignments.res_type_code%TYPE DEFAULT NULL
41 ,resource_code VARCHAR2(30) DEFAULT NULL
42 ,resource_name VARCHAR2(240) DEFAULT NULL
43 ,person_id NUMBER DEFAULT NULL
47 ,non_labor_resource pa_resource_assignments.non_labor_resource%TYPE DEFAULT NULL
44 ,job_id NUMBER DEFAULT NULL
45 ,person_type_code pa_resource_assignments.person_type_code%TYPE DEFAULT NULL
46 ,bom_resource_id NUMBER DEFAULT NULL
48 ,inventory_item_id NUMBER DEFAULT NULL
49 ,item_category_id NUMBER DEFAULT NULL
50 ,project_role_id NUMBER DEFAULT NULL
51 ,project_role_name pa_proj_roles_v.meaning%TYPE DEFAULT NULL
52 ,organization_id NUMBER DEFAULT NULL
53 ,organization_name hr_all_organization_units.name%TYPE DEFAULT NULL
54 ,fc_res_type_code pa_resource_assignments.fc_res_type_code%TYPE DEFAULT NULL
55 ,financial_category_code VARCHAR2(30) DEFAULT NULL
56 ,expenditure_type pa_resource_assignments.expenditure_type%TYPE DEFAULT NULL
57 ,expenditure_category pa_resource_assignments.expenditure_category%TYPE DEFAULT NULL
58 ,event_type pa_resource_assignments.event_type%TYPE DEFAULT NULL
59 ,revenue_category_code pa_resource_assignments.revenue_category_code%TYPE DEFAULT NULL
60 ,supplier_id NUMBER DEFAULT NULL
61 ,project_assignment_id NUMBER DEFAULT NULL
62 ,unit_of_measure pa_resource_assignments.unit_of_measure%TYPE DEFAULT NULL
63 ,spread_curve_id NUMBER DEFAULT NULL
64 ,etc_method_code pa_resource_assignments.etc_method_code%TYPE DEFAULT NULL
65 ,mfc_cost_type_id NUMBER DEFAULT NULL
66 ,procure_resource_flag pa_resource_assignments.procure_resource_flag%TYPE DEFAULT NULL
67 ,incurred_by_res_flag pa_resource_assignments.incurred_by_res_flag%TYPE DEFAULT NULL
68 ,incur_by_resource_code VARCHAR2(30) DEFAULT NULL
69 ,incur_by_resource_name VARCHAR2(240) DEFAULT NULL
70 ,Incur_by_res_class_code pa_resource_assignments.Incur_by_res_class_code%TYPE DEFAULT NULL
71 ,Incur_by_role_id NUMBER DEFAULT NULL
72 ,use_task_schedule_flag pa_resource_assignments.use_task_schedule_flag%TYPE DEFAULT NULL
73 ,planning_start_date pa_resource_assignments.planning_start_date%TYPE DEFAULT NULL
74 ,planning_end_date pa_resource_assignments.planning_end_date%TYPE DEFAULT NULL
75 ,schedule_start_date pa_resource_assignments.schedule_start_date%TYPE DEFAULT NULL
76 ,schedule_end_date pa_resource_assignments.schedule_end_date%TYPE DEFAULT NULL
77 ,total_quantity pa_resource_assignments.total_plan_quantity%TYPE DEFAULT NULL
78 ,total_raw_cost pa_resource_assignments.total_plan_raw_cost%TYPE DEFAULT NULL
79 ,override_currency_code pa_fp_txn_currencies.txn_currency_code%TYPE DEFAULT NULL
80 ,billable_percent pa_resource_assignments.billable_percent%TYPE DEFAULT NULL
81 ,cost_rate_override NUMBER DEFAULT NULL
82 ,burdened_rate_override NUMBER DEFAULT NULL
83 ,sp_fixed_date pa_resource_assignments.sp_fixed_date%TYPE DEFAULT NULL
84 ,named_role pa_resource_assignments.named_role%TYPE DEFAULT NULL
85 ,financial_category_name VARCHAR2(80) DEFAULT NULL
86 ,supplier_name VARCHAR2(240) DEFAULT NULL
87 ,wbs_element_version_id NUMBER DEFAULT NULL
88 ,unplanned_flag VARCHAR2(1) DEFAULT NULL
89 ,org_id pa_resource_assignments.rate_expenditure_org_id%TYPE DEFAULT NULL
90 ,rate_based_flag pa_resource_assignments.rate_based_flag%TYPE DEFAULT NULL
91 ,rate_expenditure_type pa_resource_assignments.rate_expenditure_type%TYPE DEFAULT NULL
92 ,rate_func_curr_code pa_resource_assignments.rate_exp_func_curr_code%TYPE DEFAULT NULL
93 --parameter not used for resource defaults anymore..
94 -- ,rate_incurred_by_org_id pa_resource_assignments.rate_incurred_by_organz_id%TYPE DEFAULT NULL
95 ,incur_by_res_type VARCHAR2(30) DEFAULT NULL
96 ,task_id pa_resource_assignments.task_id%TYPE DEFAULT NULL
97 ,structure_version_id pa_proj_element_versions.parent_structure_version_id%TYPE DEFAULT NULL
98 ,ATTRIBUTE_CATEGORY pa_resource_assignments.attribute_category%TYPE DEFAULT NULL
99 ,ATTRIBUTE1 pa_resource_assignments.attribute1%TYPE DEFAULT NULL
100 ,ATTRIBUTE2 pa_resource_assignments.attribute2%TYPE DEFAULT NULL
101 ,ATTRIBUTE3 pa_resource_assignments.attribute3%TYPE DEFAULT NULL
102 ,ATTRIBUTE4 pa_resource_assignments.attribute4%TYPE DEFAULT NULL
103 ,ATTRIBUTE5 pa_resource_assignments.attribute5%TYPE DEFAULT NULL
104 ,ATTRIBUTE6 pa_resource_assignments.attribute6%TYPE DEFAULT NULL
108 ,ATTRIBUTE10 pa_resource_assignments.attribute10%TYPE DEFAULT NULL
105 ,ATTRIBUTE7 pa_resource_assignments.attribute7%TYPE DEFAULT NULL
106 ,ATTRIBUTE8 pa_resource_assignments.attribute8%TYPE DEFAULT NULL
107 ,ATTRIBUTE9 pa_resource_assignments.attribute9%TYPE DEFAULT NULL
109 ,ATTRIBUTE11 pa_resource_assignments.attribute11%TYPE DEFAULT NULL
110 ,ATTRIBUTE12 pa_resource_assignments.attribute12%TYPE DEFAULT NULL
111 ,ATTRIBUTE13 pa_resource_assignments.attribute13%TYPE DEFAULT NULL
112 ,ATTRIBUTE14 pa_resource_assignments.attribute14%TYPE DEFAULT NULL
113 ,ATTRIBUTE15 pa_resource_assignments.attribute15%TYPE DEFAULT NULL
114 ,ATTRIBUTE16 pa_resource_assignments.attribute16%TYPE DEFAULT NULL
115 ,ATTRIBUTE17 pa_resource_assignments.attribute17%TYPE DEFAULT NULL
116 ,ATTRIBUTE18 pa_resource_assignments.attribute18%TYPE DEFAULT NULL
117 ,ATTRIBUTE19 pa_resource_assignments.attribute19%TYPE DEFAULT NULL
118 ,ATTRIBUTE20 pa_resource_assignments.attribute20%TYPE DEFAULT NULL
119 ,ATTRIBUTE21 pa_resource_assignments.attribute21%TYPE DEFAULT NULL
120 ,ATTRIBUTE22 pa_resource_assignments.attribute22%TYPE DEFAULT NULL
121 ,ATTRIBUTE23 pa_resource_assignments.attribute23%TYPE DEFAULT NULL
122 ,ATTRIBUTE24 pa_resource_assignments.attribute24%TYPE DEFAULT NULL
123 ,ATTRIBUTE25 pa_resource_assignments.attribute25%TYPE DEFAULT NULL
124 ,ATTRIBUTE26 pa_resource_assignments.attribute26%TYPE DEFAULT NULL
125 ,ATTRIBUTE27 pa_resource_assignments.attribute27%TYPE DEFAULT NULL
126 ,ATTRIBUTE28 pa_resource_assignments.attribute28%TYPE DEFAULT NULL
127 ,ATTRIBUTE29 pa_resource_assignments.attribute29%TYPE DEFAULT NULL
128 ,ATTRIBUTE30 pa_resource_assignments.attribute30%TYPE DEFAULT NULL
129 ,scheduled_delay pa_resource_assignments.scheduled_delay%TYPE DEFAULT NULL
130 );
131
132 --
133 -- Global Variables
134 --
135 g_resource_assignment_id pa_resource_assignments.resource_assignment_id%TYPE := -999;
136
137 g_baselined_asgmt_start_date pa_resource_assignments.planning_end_date%TYPE;
138 g_baselined_asgmt_end_date pa_resource_assignments.planning_start_date%TYPE;
139
140 g_baselined_planned_qty pa_resource_assignments.total_plan_quantity%TYPE;
141 g_bl_planned_bur_cost_txn_cur pa_resource_assignments.total_plan_raw_cost%TYPE;
142 g_bl_bur_cost_proj_cur pa_resource_assignments.total_project_burdened_cost%TYPE;
143 g_bl_bur_cost_projfunc_cur pa_resource_assignments.total_plan_burdened_cost%TYPE;
144 g_bl_planned_raw_cost_txn_cur pa_budget_lines.txn_raw_cost%TYPE;
145 g_bl_raw_cost_proj_cur pa_resource_assignments.total_project_raw_cost%TYPE;
146 g_bl_raw_cost_projfunc_cur pa_resource_assignments.total_plan_raw_cost%TYPE;
147
148 g_pl_resource_assignment_id pa_resource_assignments.resource_assignment_id%TYPE := -999;
149
150 g_planned_quantity pa_budget_lines.quantity%TYPE;
151 g_planned_bur_cost_txn_cur pa_budget_lines.txn_burdened_cost%TYPE;
152 g_planned_raw_cost_txn_cur pa_budget_lines.txn_raw_cost%TYPE;
153 g_actual_quantity pa_budget_lines.init_quantity%TYPE;
154 g_act_bur_cost_txn_cur pa_budget_lines.init_burdened_cost%TYPE;
155 g_act_raw_cost_txn_cur pa_budget_lines.init_raw_cost%TYPE;
156 g_avg_raw_cost_rate pa_budget_lines.txn_standard_cost_rate%TYPE;
157 g_avg_bur_cost_rate pa_budget_lines.burden_cost_rate%TYPE;
158
159 g_cur_resource_assignment_id pa_resource_assignments.resource_assignment_id%TYPE := -999;
160
161 g_txn_currency_code pa_budget_lines.txn_currency_code%TYPE;
162
163 g_ta_display_flag VARCHAR2(1) := 'N';
164 g_apply_progress_flag VARCHAR2(1) := 'N'; -- Bug 4286558
165
166 --
167 -- FUNCTION
168 -- Get_Task_Resources
169 -- PURPOSE
170 -- Returns VARCHAR - a string of planning resource aliases on a given task.
171 --
172 FUNCTION Get_Task_Resources(p_element_version_id IN NUMBER) RETURN VARCHAR2;
173
174 --
175 -- FUNCTION
176 -- Check_Asgmt Exists in Task
177 -- PURPOSE
178 -- Returns VARCHAR - 'Y' if task assignment exists in the given workplan task version.
179 --
180 FUNCTION Check_Asgmt_Exists_In_Task(p_element_version_id IN NUMBER) RETURN VARCHAR2;
181
182 --
183 -- FUNCTION
184 -- Check_Task_Asgmt_Exists
185 -- PURPOSE
186 -- If task assignment exists in the given financial task on the given ei date
187 -- for a person, return 'Y'; otherwise, return 'N'
188
189 FUNCTION Check_Task_Asgmt_Exists(
190 p_person_id IN NUMBER,
191 p_financial_task_id IN NUMBER,
192 p_ei_date IN DATE) RETURN VARCHAR2;
193
194 --
195 -- FUNCTION
196 -- Compare Dates
197 -- PURPOSE
198 -- Returns VARCHAR - 'E ' if first date is earlier than second and
199 -- 'L' otherwise.
200 --
201 FUNCTION Compare_Dates(p_first_date IN DATE, p_second_date IN DATE) RETURN VARCHAR2;
202
203 -- This procedure will Adjust the Task Assignment Dates
204 -- upon changes on a Task's Scheduled Dates.
205 PROCEDURE Adjust_Asgmt_Dates(
209 p_old_task_sch_finish IN DATE DEFAULT NULL,
206 p_context IN VARCHAR2 DEFAULT 'UPDATE',
207 p_element_version_id IN NUMBER,
208 p_old_task_sch_start IN DATE,
210 p_new_task_sch_start IN DATE,
211 p_new_task_sch_finish IN DATE,
212 x_res_assignment_id_tbl OUT NOCOPY SYSTEM.PA_NUM_TBL_TYPE,
213 x_planning_start_tbl OUT NOCOPY SYSTEM.PA_DATE_TBL_TYPE,
214 x_planning_end_tbl OUT NOCOPY SYSTEM.PA_DATE_TBL_TYPE,
215 x_return_status OUT NOCOPY VARCHAR2);
216
217 TYPE l_task_rec_tbl_type IS TABLE OF task_rec_type
218 INDEX BY BINARY_INTEGER;
219 TYPE l_resource_rec_tbl_type IS TABLE OF resource_rec_type
220 INDEX BY BINARY_INTEGER;
221
222
223
224 -- This procedure will Validate the Creation
225 -- and also obtain task assignment specific attributes upon
226 -- Planning transaction creation.
227
228 PROCEDURE Validate_Create_Assignment
229 (
230 p_calling_context IN VARCHAR2 DEFAULT NULL, -- Added for Bug 6856934
231 p_one_to_one_mapping_flag IN VARCHAR2 DEFAULT 'N',
232 p_task_rec_tbl IN l_task_rec_tbl_type,
233 p_task_assignment_tbl IN OUT NOCOPY l_resource_rec_tbl_type,
234 x_del_task_level_rec_code_tbl OUT NOCOPY SYSTEM.PA_VARCHAR2_30_TBL_TYPE ,
235 x_return_status OUT NOCOPY VARCHAR2
236 );
237
238 -- This procedure will Validate the Updation on Planning Transaction
239
240 PROCEDURE Validate_Update_Assignment
241 (
242 p_calling_context IN VARCHAR2 DEFAULT NULL, -- Added for Bug 6856934
243 p_task_assignment_tbl IN OUT NOCOPY l_resource_rec_tbl_type,
244 x_return_status OUT NOCOPY VARCHAR2
245 );
246
247 -- This procedure will Validate the Deletion of Planning Transactions
248 -- and return Assignments that can be deleted.
249 --Bug 4951422. Added the OUT parameter x_task_assmt_ids_tbl. This tbl will be populated
250 --when p_task_or_res parameter is 'TASKS'. This table will contain the resource assignment ids
251 --that are eligible for deletion so that delete_planning_transactions uses these ids instead
252 --of element_version_ids for deleting data
253 PROCEDURE Validate_Delete_Assignment
254 ( p_context IN VARCHAR2,
255 p_calling_context IN VARCHAR2 DEFAULT NULL, -- Added for Bug 6856934
256 p_task_or_res IN VARCHAR2 DEFAULT 'ASSIGNMENT',
257 p_elem_ver_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE,
258 p_task_name_tbl IN SYSTEM.PA_VARCHAR2_240_TBL_TYPE,
259 p_task_number_tbl IN SYSTEM.PA_VARCHAR2_240_TBL_TYPE,
260 p_resource_assignment_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE,
261 x_delete_task_flag_tbl OUT NOCOPY SYSTEM.PA_VARCHAR2_1_TBL_TYPE,
262 x_delete_asgmt_flag_tbl OUT NOCOPY SYSTEM.PA_VARCHAR2_1_TBL_TYPE,
263 x_task_assmt_ids_tbl OUT NOCOPY SYSTEM.PA_NUM_TBL_TYPE, --Bug 4951422
264 x_return_status OUT NOCOPY VARCHAR2);
265
266 -- This procedure will Validate the Copying of Planning Transaction
267 -- and return Assignments that can be copied.
268
269 PROCEDURE Validate_Copy_Assignment(
270 p_src_project_id IN NUMBER,
271 p_target_project_id IN NUMBER,
272 p_src_elem_ver_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE,
273 p_targ_elem_ver_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE,
274 p_copy_people_flag IN VARCHAR2,
275 p_copy_equip_flag IN VARCHAR2,
276 p_copy_mat_item_flag IN VARCHAR2,
277 p_copy_fin_elem_flag IN VARCHAR2,
278 p_copy_external_flag IN VARCHAR2 DEFAULT 'N',
279 x_resource_rec_tbl OUT NOCOPY l_resource_rec_tbl_type,
280 x_calculate_flag OUT NOCOPY VARCHAR2,
281 x_rbs_diff_flag OUT NOCOPY VARCHAR2,
282 x_return_status OUT NOCOPY VARCHAR2 ) ;
283
284
285
286 -- This function will Validates the Planning Resources for a Workplan
287
288 FUNCTION Validate_Pl_Res_For_WP( p_resource_list_member_id IN NUMBER ) RETURN VARCHAR2 ;
289
290 -- This function will Validate whether a financial category is valid for workplan
291 -- Returns error if the given fc_res_type_code is 'REVENUE_CATEGORY' or 'EVENT_TYPE'.
292
293 FUNCTION Validate_Fin_Cat_For_WP( p_fc_res_type_code IN VARCHAR2) RETURN VARCHAR2;
294
295 --Function below calls both pa_proj_element_utils.check_edit_task_ok &
296 --PA_PROJECT_STRUCTURE_UTILS.GET_UPDATE_WBS_FLAG
297 --Needs Project_Id
298 --Structure Version Id & Element_Id will be queried based on
299 --either Element Version Id or Task Assignment Id if not passed.
300
301 FUNCTION Check_Edit_Task_Ok(P_PROJECT_ID IN NUMBER default NULL,
302 P_STRUCTURE_VERSION_ID IN NUMBER default NULL,
303 P_CURR_STRUCT_VERSION_ID IN NUMBER default NULL,
304 P_Element_Id IN NUMBER default NULL,
305 P_Element_Version_Id IN NUMBER default NULL,
306 P_Task_Assignment_Id IN NUMBER default NULL) RETURN VARCHAR2;
307
308 FUNCTION Get_WP_Resource_List_Id(
309 p_project_id IN NUMBER)
310 RETURN pa_proj_fp_options.all_resource_list_id%TYPE;
311
312 /* This function find all task assignments a resource is assigned to, and find
313 the min/max dates for those assignments.
314 p_resource_list_member_id: the resource id.
315 p_mode: MAX or MIN
316 p_project_id: tasks of which project.
317 p_budget_version_id: budget version.
318 p_unstaffed_only: Y or N, whether only task assigments without team role created, or all
319 task assignments.
320 */
321 FUNCTION Get_Min_Max_Task_Asgmt_Date(p_resource_list_member_id IN NUMBER, p_mode IN VARCHAR2,
322 p_project_id IN NUMBER, p_budget_version_id IN NUMBER, p_unstaffed_only IN VARCHAR2 default 'N') RETURN DATE;
323
324 FUNCTION Get_Class_UOM(p_project_id IN NUMBER,
325 p_budget_version_id IN NUMBER,
326 p_class IN VARCHAR2 ) RETURN VARCHAR2;
327
328 FUNCTION Get_Role(p_resource_list_member_id IN NUMBER default NULL,
329 p_project_id IN NUMBER default NULL) RETURN VARCHAR2;
330
331 FUNCTION Get_Team_Role(p_resource_list_member_id IN NUMBER default NULL,
332 p_project_id IN NUMBER default NULL) RETURN VARCHAR2;
333
334 FUNCTION Get_Assignment_Effort RETURN NUMBER ;
335
336 FUNCTION get_baselined_asgmt_dates(
337 p_project_id IN pa_projects_all.project_id%TYPE,
338 p_element_version_id IN pa_proj_element_versions.element_version_id%TYPE,
339 p_resource_assignment_id IN pa_resource_assignments.resource_assignment_id%TYPE,
340 p_txn_currency_code IN pa_budget_lines.txn_currency_code%TYPE,
341 p_proj_currency_code IN pa_projects_all.project_currency_code%TYPE,
342 p_projfunc_currency_code IN pa_projects_all.projfunc_currency_code%TYPE,
343 p_code IN VARCHAR2) RETURN DATE;
344
345 FUNCTION get_baselined_asgmt_amounts(
346 p_project_id IN pa_projects_all.project_id%TYPE,
347 p_element_version_id IN pa_proj_element_versions.element_version_id%TYPE,
348 p_resource_assignment_id IN pa_resource_assignments.resource_assignment_id%TYPE,
349 p_txn_currency_code IN pa_budget_lines.txn_currency_code%TYPE,
350 p_proj_currency_code IN pa_projects_all.project_currency_code%TYPE,
351 p_projfunc_currency_code IN pa_projects_all.projfunc_currency_code%TYPE,
352 p_code IN VARCHAR2) RETURN NUMBER;
353
354 /*Commented for bug#6798529
355 FUNCTION get_planned_asgmt_amounts(
356 p_resource_assignment_id IN pa_resource_assignments.resource_assignment_id%TYPE,
357 p_code IN VARCHAR2) RETURN NUMBER;
358 */
359
360 FUNCTION get_planned_currency_info(
361 p_resource_assignment_id IN pa_resource_assignments.resource_assignment_id%TYPE,
362 p_project_id IN pa_projects_all.project_id%TYPE,
363 p_code IN VARCHAR2) RETURN VARCHAR2;
364
365 FUNCTION get_task_level_record(
366 p_project_id IN pa_projects_all.project_id%TYPE,
367 p_element_version_id IN pa_proj_element_versions.element_version_id%TYPE
368 ) RETURN NUMBER;
369
370 --Internal Utiilities to convert char/num/date to NULL or fnd_api.g_miss_xx depending on p_mode of 'F' or 'B'
371 function gchar(p_char IN VARCHAR2 default NULL, p_mode IN VARCHAR2 default 'F') return varchar2 ;
372 function gnum(p_num IN NUMBER default NULL, p_mode IN VARCHAR2 default 'F') return NUMBER;
373 function gdate(p_date IN DATE default NULL, p_mode IN VARCHAR2 default 'F') return DATE ;
374
375 PROCEDURE set_table_stats(ownname IN VARCHAR2,
376 tabname IN VARCHAR2,
377 numrows IN NUMBER,
378 numblks IN NUMBER,
379 avgrlen IN NUMBER);
380 --BUG 4373411 , rtarway, DHIER refresh rates
381 PROCEDURE CHECK_EDIT_OK( p_api_version_number IN NUMBER := 1.0
382 , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
383 , p_commit IN VARCHAR2 := FND_API.G_FALSE
384 , p_project_id IN NUMBER
385 , p_pa_structure_version_id IN NUMBER
386 , px_budget_version_id IN OUT NOCOPY NUMBER
387 , x_return_status OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
388 , x_msg_data OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
389 , x_msg_count OUT NOCOPY NUMBER); --File.Sql.39 bug 4440895
390
391 -- Bug 4492493
392 FUNCTION Is_Progress_Rollup_Required(
393 p_project_id IN pa_projects_all.project_id%TYPE
394 ) RETURN VARCHAR2;
395
396 /* Added for bug 6014706*/
397 FUNCTION is_uncategorized_res_list
398 ( p_resource_list_id IN pa_resource_lists_all_bg.resource_list_id%TYPE := NULL
399 ,p_project_id IN pa_projects_all.project_id%TYPE := NULL
400 ) RETURN VARCHAR2;
401 /* End for bug 6014706*/
402
403 end PA_TASK_ASSIGNMENT_UTILS;
404
405