DBA Data[Home] [Help]

PACKAGE: APPS.PA_PROJECT_PUB

Source


1 package PA_PROJECT_PUB AUTHID DEFINER as
2 /* $Header: PAPMPRPS.pls 120.41.12020000.4 2013/04/10 09:33:26 djambhek ship $ */
3 /*#
4  * This package contains the public APIs for project, task and deliverable information.
5  * @rep:scope public
6  * @rep:product PA
7  * @rep:lifecycle active
8  * @rep:displayname Project Definition
9  * @rep:compatibility S
10  * @rep:category BUSINESS_ENTITY PA_PROJECT
11  * @rep:doccd 120pjapi.pdf See the Oracle Projects API's, Client Extensions, and Open Interfaces Reference
12 */
13 
14   /*
15    * p_mode constants (Duplicated from EGO_USER_ATTRS_DATA_PVT to avoid
16    * Spec dependency on EGO package)
17    * ----------------
18    * Possible values for p_mode parameter in Load_Extensible_Attribute(s)
19    * : the value of the p_mode parameter affects how these APIs treat the
20    * passed-in data.For example, passing G_CREATE_MODE will
21    * cause the API to execute an Insert statement on the extension table.
22    * As a more complicated example, consider an Attribute Group called
23    * 'Emp Info' with a 'Date Logged' Attribute and a 'Current Status'
24    * Attribute.  The 'Date Logged' Attribute might well have a Minimum
25    * and Maximum value range of 'SYSDATE'.  Thus, if G_CREATE_MODE were
26    * passed to Validate_Row, then the API would need to verify that the
27    * value of the 'Date Logged' Attribute was the Date on the day of that
28    * insertion.  Say, however, that sometime later the bug status changes,
29    * and we want to update the extension table to reflect this.  In this
30    * case, we wouldn't want Validate_Row to evaluate the 'Date Logged'
31    * Attribute as if it were just being inserted, so we'd pass either
32    * G_UPDATE_MODE or G_SYNC_MODE to Validate_Row so it would know the
33    * context in which it should apply the validation rules for the row.
34    * (G_SYNC_MODE instructs the API to determine for itself whether there
35    * exists a row in the extension table for the passed-in data.  If such
36    * a row exists, then it is updated; if not, a row is created and the
37    * data are inserted into it.)
38    * If no value is passed for p_mode, G_SYNC_MODE is assumed.  If an
39    * invalid value is passed for p_mode, such as G_DELETE_MODE on a row
40    * that doesn't exist, an error occurs.
41    */
42 G_CREATE_MODE               CONSTANT VARCHAR2(10) := 'CREATE';        --4th
43 G_UPDATE_MODE               CONSTANT VARCHAR2(10) := 'UPDATE';        --2nd
44 G_DELETE_MODE               CONSTANT VARCHAR2(10) := 'DELETE';        --1st
45 G_SYNC_MODE                 CONSTANT VARCHAR2(10) := 'SYNC';          --3rd
46 
47 
48 --Package constant used for package version validation
49 G_API_VERSION_NUMBER    CONSTANT NUMBER := 1.0;
50 -- Package variable to indicate whether some date checks in Update_task
51 -- need to be deferred until all tasks have been processed
52 G_ParChildTsk_chks_deferred  VARCHAR2(1) := 'N';
53 
54 
55 --Locking exception
56 ROW_ALREADY_LOCKED  EXCEPTION;
57 PRAGMA EXCEPTION_INIT(ROW_ALREADY_LOCKED, -54);
58 
59 G_PROJECT_NUMBER_GEN_MODE  VARCHAR2(30) := PA_PROJECT_UTILS.GetProjNumMode;
60 G_PROJECT_NUMBER_TYPE      VARCHAR2(30) := PA_PROJECT_UTILS.GetProjNumType;
61 
62 --bug 2738747
63 G_Published_version_exists    VARCHAR2(1);
64 G_IS_WP_SEPARATE_FROM_FN      VARCHAR2(1);
65 G_IS_WP_VERSIONING_ENABLED    VARCHAR2(1);
66 --bug 2738747
67 G_WP_STR_EXISTS               VARCHAR2(1);
68 
69 -- 3700247 Added global variable
70 G_DLVR_STRUCTURE_ENABLED      VARCHAR2(1) := NULL;
71 
72 -- bug 4199694
73 G_FLOW_MODE                   VARCHAR2(30);
74 G_OP_VALIDATE_FLAG            VARCHAR2(1);
75 
76 -- 4096218  Changed param name from G_DELETED_TASK_VER_IDS_FROM_OP to  G_DELETED_TASK_IDS_FROM_OP
77 G_DELETED_TASK_IDS_FROM_OP        PA_NUM_1000_NUM := PA_NUM_1000_NUM();
78 
79 --DHI ER , rtarway BUG 4413568
80 G_TASK_STR_UPDATE_MODE        VARCHAR2(30) := NULL;
81 
82 -- Added following global variables for Huawei enhancement - bug 13923366 by skkoppul
83 G_MASS_ADD_TASKS              VARCHAR2(1)  := 'N';
84 G_MASS_UPDATE_TASKS           VARCHAR2(1)  := 'N';
85 G_MASS_DELETE_TASKS           VARCHAR2(1)  := 'N';
86 G_UPDATE_TASK_ALLOWED         VARCHAR2(1)  := NULL;
87 G_UPDATE_PRJ_ALLOWED          VARCHAR2(1)  := NULL;
88 G_VALID_PRODUCT_CODE          VARCHAR2(1)  := NULL;
89 G_SEGMENT1                    VARCHAR2(25) := NULL;
90 G_PROJ_START_DATE             DATE         := NULL;
91 G_PROJ_COMPLETION_DATE        DATE         := NULL;
92 G_STRUC_ELEMENT_ID            NUMBER       := NULL;
93 G_PROJECT_TYPE                VARCHAR2(20) := NULL;
94 G_IS_SUB_PROJ_ASSOCIATED      VARCHAR2(1)  := NULL;
95 G_BULK_ADD_MODE               VARCHAR2(20) := NULL;
96 G_BULK_UPDATE_MODE            VARCHAR2(20) := NULL;
97 G_STRUC_VERSION_ID            NUMBER       := NULL;
98 -- 14556729:Huawei Code change to defer the roll up API when G_ROLLUP_DEFER is set to Y , so that all the roll up is processed once at the end .
99 G_ROLLUP_DEFER                VARCHAR2(1)  := 'N';
100 G_PROJECT_ID            		NUMBER       := NULL;
101 G_TASK_COUNT            		NUMBER       := NULL;
102 
103 /*--The following variables are defined to support load_tasks and fetch_tasks apis.
104  TYPE pa_vc_1000_25 IS VARRAY(1000) OF VARCHAR2(25);
105  TYPE pa_vc_1000_20 IS VARRAY(1000) OF VARCHAR2(20);
106  TYPE pa_vc_1000_10 IS VARRAY(1000) OF VARCHAR2(10);
107  TYPE pa_vc_1000_150 IS VARRAY(1000) OF VARCHAR2(150);
108  TYPE pa_vc_1000_2000 IS VARRAY(1000) OF VARCHAR2(2000);
109  TYPE pa_num_1000_num IS VARRAY(1000) OF NUMBER;
110  TYPE pa_vc_1000_4000 IS VARRAY(1000) OF VARCHAR2(4000);
111  TYPE number_table IS VARRAY(10) OF NUMBER;
112  TYPE pa_date_1000_date IS VARRAY(1000) OF DATE;
113 */
114 
115 --Record and table type definitions
116 --Project record type that is used to pass data to an API
117 --Added new parameters to the project_in_rec_type
118 
119 TYPE project_in_rec_type IS RECORD
120 (pm_project_reference       VARCHAR2(25)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
121  pa_project_id          NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
122  pa_project_number      VARCHAR2(25)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
123  project_name           VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
124  long_name          VARCHAR2(240)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
125  created_from_project_id    NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
126  carrying_out_organization_id   NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
127  public_sector_flag     VARCHAR2(1)     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
128  project_status_code        VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
129  description            VARCHAR2(250)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
130  start_date         DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
131  completion_date        DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
132  distribution_rule      VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
133  customer_id            NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
134  project_relationship_code  VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
135  actual_start_date              DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
136  actual_finish_date             DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
137  early_start_date               DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
138  early_finish_date              DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
139  late_start_date                DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
140  late_finish_date               DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
141  scheduled_start_date           DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
142  scheduled_finish_date          DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
143  attribute_category     VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
144  attribute1         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
145  attribute2         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
146  attribute3         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
147  attribute4         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
148  attribute5         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
149  attribute6         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
150  attribute7         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
151  attribute8         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
152  attribute9         VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
153  attribute10            VARCHAR2(150)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
154  output_tax_code VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
155  retention_tax_code VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
156  project_currency_code VARCHAR2(15) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
157  allow_cross_charge_flag VARCHAR2(1):= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
158  project_rate_date         DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
159  project_rate_type      VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
160  cc_process_labor_flag VARCHAR2(1):= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
161  labor_tp_schedule_id       NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
162  labor_tp_fixed_date         DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
163  cc_process_nl_flag VARCHAR2(1):= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
164  nl_tp_schedule_id       NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
165  nl_tp_fixed_date         DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
166  cc_tax_task_id       NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
167  role_list_id       NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
168  work_type_id       NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
169  calendar_id        NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
170  location_id        NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
171  probability_member_id    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
172  project_value    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
173  expected_approval_date    DATE   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
174  cost_job_group_id    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
175  bill_job_group_id    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
176  team_template_id     NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
177  country_code         VARCHAR2(250) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
178  region               VARCHAR2(250) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
179  city                 VARCHAR2(250) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
180  emp_bill_rate_schedule_id    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
181  job_bill_rate_schedule_id    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM ,
182 --Sakthi MCB
183  invproc_currency_type        VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
184  revproc_currency_code        VARCHAR2(15) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
185  project_bil_rate_date_code   VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
186  project_bil_rate_type        VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
187  project_bil_rate_date        DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
188  project_bil_exchange_rate    NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
189  projfunc_currency_code       VARCHAR2(15) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
190  projfunc_bil_rate_date_code  VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
191  projfunc_bil_rate_type       VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
192  projfunc_bil_rate_date       DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
193  projfunc_bil_exchange_rate   NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
194  funding_rate_date_code  VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
195  funding_rate_type       VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
196  funding_rate_date       DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
197  funding_exchange_rate   NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
198  baseline_funding_flag        VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
199  multi_currency_billing_flag  VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
200  competence_match_wt          NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
201  availability_match_wt        NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
202  job_level_match_wt           NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
203  enable_automated_search      VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
204  search_min_availability      NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
205  search_org_hier_id           NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
206  search_starting_org_id       NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
207  search_country_id            NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
208  min_cand_score_reqd_for_nom  NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
209  max_num_of_sys_nom_cand      NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
210  non_lab_std_bill_rt_sch_id   NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
211  search_country_code          VARCHAR2(2)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
212  inv_by_bill_trans_curr_flag  VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
213  projfunc_cost_rate_type      VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
214  projfunc_cost_rate_date      DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
215 --Sakthi Structure
216  assign_precedes_task           VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
217  split_cost_from_workplan_flag  VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
218  split_cost_from_bill_flag      VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
219 --Sakthi Structure
220 --Advertisement
221  adv_action_set_id              NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
222  start_adv_action_set_flag      VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
223 --Advertisement
224 --Project Setup
225  priority_code                  VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
226 --Project Setup
227 --Retention
228  retn_billing_inv_format_id     NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
229  retn_accounting_flag           VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
230 --Retention
231 -- anlee opportunity changes
232  opp_value_currency_code        VARCHAR2(15) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
233 -- anlee
234 -- patchset K changes
235  revaluate_funding_flag         VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
236  include_gains_losses_flag    VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
237  security_level               NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
238  labor_disc_reason_code     VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
239  non_labor_disc_reason_code     VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
240  --sramesh Code starts for bug 2802984
241  labor_schedule_fixed_date  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
242  labor_schedule_discount    NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
243  non_labor_bill_rate_org_id NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
244  non_labor_schedule_fixed_date  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
245  non_labor_schedule_discount    NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
246  rev_ind_rate_sch_id        NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
247  inv_ind_rate_sch_id        NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
248  rev_ind_sch_fixed_date     DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
249  inv_ind_sch_fixed_date     DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
250  labor_sch_type         VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
251  non_labor_sch_type     VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
252  --sramesh Code ends for bug 2802984
253 -- End of changes
254 --PA L changes -- bug 2872708
255  asset_allocation_method       VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
256  capital_event_processing      VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
257  cint_rate_sch_id              NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
258  cint_eligible_flag            VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
259  cint_stop_date                DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
260 --end PA L changes -- bug 2872708
261 -- crm changes
262 Bill_To_Customer_id         NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
263 Ship_To_Customer_id         NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
264 -- crm changes
265 -- PA L Changes 3010538
266 process_mode                VARCHAR2(30) := 'ONLINE',
267 -- FP M changes begin (venkat)
268  sys_program_flag              VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
269  allow_multi_program_rollup    VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR, -- Bug # 5072032.
270  enable_top_task_customer_flag VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
271  enable_top_task_inv_mth_flag    VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
272  projfunc_attr_for_ar_flag   VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
273 -- FP M changes end (venkat)
274 --These parameters are added for Bug 3911782
275 bill_to_address_id            NUMBER (15) := null,
276 ship_to_address_id            NUMBER (15) := NULL ,
277 --sunkalya:federal Bug#5511353
278 date_eff_funds_flag VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
279 --sunkalya:federal Bug#5511353
280 ar_rec_notify_flag VARCHAR2(1)   := 'N', -- 7508661 : EnC
281 auto_release_pwp_inv VARCHAR2(1) := 'Y',  -- 7508661 : EnC
282 status_change_comment VARCHAR2(4000) := null, -- Added for bug#9110781
283 bill_labor_accrual VARCHAR2(1) := 'N',
284 adj_on_std_inv varchar2(2) :='N'
285 );
286 
287 --Project record type that is used to pass data coming out of an API
288 TYPE project_out_rec_type IS RECORD
289 (pa_project_id          NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
290  pa_project_number      VARCHAR2(25)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
291  return_status          VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
292 );
293 
294 -- Customer Record type created for Tracking bug to all users -- AA
295 TYPE customer_in_rec_type IS RECORD
296 ( customer_id            NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
297   project_relationship_code  VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
298   Bill_To_Customer_id         NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
299   Ship_To_Customer_id         NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
300   bill_to_address_id            NUMBER (15) := null,
301   ship_to_address_id            NUMBER (15) := null,
302   CONTACT_ID                NUMBER (15) := null,
303   PROJECT_CONTACT_TYPE_CODE  VARCHAR (30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
304   CUSTOMER_BILL_SPLIT        NUMBER   := NULL,
305   ALLOW_INV_USER_RATE_TYPE_FLAG  VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
306   INV_RATE_DATE        DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
307   INV_RATE_TYPE        VARCHAR (256) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR, --bug 5554475
308   INV_CURRENCY_CODE    VARCHAR (15) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
309   INV_EXCHANGE_RATE    NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
310   enable_top_task_cust_flag VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
311   BILL_ANOTHER_PROJECT_FLAG     VARCHAR (1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR, --Added later for tracking 4153629
312   RECEIVER_TASK_ID      NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM  --Added later for tracking 4153629
313  );
314 
315 TYPE customer_tbl_type IS TABLE OF customer_in_rec_type
316     INDEX BY BINARY_INTEGER;
317  /** changes end for tracking **/
318 
319 TYPE project_role_rec_type IS RECORD
320 (person_id          NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
321  project_role_type      VARCHAR2(20)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
322  -- Modified from the size from 20 to 80 for project_role_meaning for 8523543
323  project_role_meaning      VARCHAR2(80)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR, -- Bug 6408593
324  start_date         DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
325  end_date           DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
326 );
327 TYPE project_role_tbl_type IS TABLE OF project_role_rec_type
328     INDEX BY BINARY_INTEGER;
329 
330 TYPE class_category_rec_type IS RECORD
331 (class_category         VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
332  class_code             VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
333  new_class_code         VARCHAR2(30)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR, --5348726 added for bug#5294891
334  code_percentage        NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
335 );
336 TYPE class_category_tbl_type IS TABLE OF class_category_rec_type
337     INDEX BY BINARY_INTEGER;
338 
339 TYPE task_in_rec_type IS RECORD
340 (pm_task_reference           VARCHAR2(25)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
341  pa_task_id              NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
342  task_name               VARCHAR2(240)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR, -- Bug 6193314  Changed to 240 from 20
343  long_task_name          VARCHAR2(240)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
344  pa_task_number          VARCHAR2(100)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR, -- Bug 6193314  Changed to 100 from 25
345  task_description            VARCHAR2(2000)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,  -- Bug 9080164 : Changed from 250 to 2000
346  task_start_date             DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
347  task_completion_date        DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
348  pm_parent_task_reference     VARCHAR2(25)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
349  pa_parent_task_id           NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
350  address_id              NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
351  carrying_out_organization_id   NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
352  service_type_code           VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
353  task_manager_person_id      NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
354  billable_flag               VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
355  chargeable_flag             VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
356  ready_to_bill_flag          VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
357  ready_to_distribute_flag     VARCHAR2(1)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
358  limit_to_txn_controls_flag VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
359  labor_bill_rate_org_id     NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
360  labor_std_bill_rate_schdl  VARCHAR2(20)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
361  labor_schedule_fixed_date  DATE             := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
362  labor_schedule_discount         NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
363  non_labor_bill_rate_org_id  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
364  non_labor_std_bill_rate_schdl VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
365  non_labor_schedule_fixed_date DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
366  non_labor_schedule_discount     NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
367  labor_cost_multiplier_name  VARCHAR2(20)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
368  cost_ind_rate_sch_id        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
369  rev_ind_rate_sch_id         NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
370  inv_ind_rate_sch_id         NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
371  cost_ind_sch_fixed_date          DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
372  rev_ind_sch_fixed_date      DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
373  inv_ind_sch_fixed_date      DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
374  labor_sch_type          VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
375  non_labor_sch_type           VARCHAR2(1)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
376  actual_start_date             DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
377  actual_finish_date            DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
378  early_start_date              DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
379  early_finish_date             DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
380  late_start_date               DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
381  late_finish_date              DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
382  scheduled_start_date          DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
383  scheduled_finish_date         DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
384  tasks_dff                    VARCHAR2(1)   := 'N', --bug 6153503
385  attribute_category           VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
386  attribute1               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
387  attribute2               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
388  attribute3               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
389  attribute4               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
390  attribute5               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
391  attribute6               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
392  attribute7               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
393  attribute8               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
394  attribute9               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
395  attribute10                  VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
396  attribute11               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,--bug 6153503
397  attribute12               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,--bug 6153503
398  attribute13               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,--bug 6153503
399  attribute14               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,--bug 6153503
400  attribute15               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,--bug 6153503
401  allow_cross_charge_flag       VARCHAR2(1)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
402  project_rate_date             DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
403  project_rate_type             VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
404  cc_process_labor_flag         VARCHAR2(1)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
405  labor_tp_schedule_id          NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
406  labor_tp_fixed_date           DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
407  cc_process_nl_flag            VARCHAR2(1)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
408  nl_tp_schedule_id             NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
409  nl_tp_fixed_date              DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
410 receive_project_invoice_flag   VARCHAR2(1)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
411  work_type_id                  NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
412  emp_bill_rate_schedule_id     NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM ,
413  job_bill_rate_schedule_id     NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM ,
414 --Sakthi MCB
415  non_lab_std_bill_rt_sch_id    NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM ,
416  taskfunc_cost_rate_type       VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
417  taskfunc_cost_rate_date       DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
418 --Sakthi MCB
419  display_sequence            NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
420  wbs_level                     NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
421 --Project structure
422  OBLIGATION_START_DATE         DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
423  OBLIGATION_FINISH_DATE        DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
424  ESTIMATED_START_DATE          DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
425  ESTIMATED_FINISH_DATE         DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
426  BASELINE_START_DATE           DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
427  BASELINE_FINISH_DATE          DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
428  CLOSED_DATE                   DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
429  WQ_UOM_CODE                   VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
430  WQ_ITEM_CODE                  VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
431  STATUS_CODE                   VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
432  WF_STATUS_CODE                VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
433  PM_SOURCE_CODE                VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
434  PRIORITY_CODE                 VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
435  MILESTONE_FLAG                VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
436  CRITICAL_FLAG                 VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
437  INC_PROJ_PROGRESS_FLAG        VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR ,
438  LINK_TASK_FLAG                VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
439  CALENDAR_ID                   NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
440  PLANNED_EFFORT                NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
441  DURATION                      NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
442  PLANNED_WORK_QUANTITY         NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM ,
443  TASK_TYPE                     NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
444 --Project structure
445  labor_disc_reason_code        VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
446  non_labor_disc_reason_code    VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
447 --PA L changes -- bug 2872708
448  retirement_cost_flag          VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
449  cint_eligible_flag            VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
450  cint_stop_date                DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
451 --end PA L changes -- bug 2872708
452 -- FP-M Bug # 3301192
453  pred_string                   VARCHAR2(4000) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
454  pred_delimiter           VARCHAR2(1)    DEFAULT ',',
455 -- FP M changes begin (venkat)
456  base_percent_comp_deriv_code    VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
457  sch_tool_tsk_type_code  VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
458  constraint_type_code        VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
459  constraint_date             DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
460  free_slack              NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
461  total_slack                 NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
462  effort_driven_flag          VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
463  level_assignments_flag      VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
464  invoice_method          VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
465  customer_id                 NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
466  gen_etc_source_code         VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
467 -- FP M changes end (venkat)
468 -- FP M changes Start (Mapping )
469  financial_task_flag         VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
470  mapped_task_id                NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
471  mapped_task_reference         VARCHAR2(150)       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,  --SMUKKA
472  -- FP M changes end (Mapping )
473  deliverable                   VARCHAR2(4000) :=  PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,  --SMUKKA
474  deliverable_id                NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,  -- 3661788 Added In paramter
475 -- (Begin Venkat) Bug # 3450684 -----------------------------------------------
476  ext_act_duration       NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
477  ext_remain_duration    NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
478  ext_sch_duration       NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
479 -- (End Venkat) Bug # 3450684 ------------------------------------------------
480 
481 -- Progress Management Changes. Bug # 3420093.
482 
483   ,etc_effort                 NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
484   ,percent_complete           NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
485    ,adj_on_std_inv            VARCHAR2(2) :=  PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
486 -- Progress Management Changes. Bug # 3420093.
487 
488 );
489 
490 TYPE task_in_tbl_type IS TABLE OF task_in_rec_type
491     INDEX BY BINARY_INTEGER;
492 
493 TYPE task_out_rec_type IS RECORD
494 (pa_task_id         NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
495  pm_task_reference      VARCHAR2(25)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
496  return_status          VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
497  --project structure
498  task_version_id                NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
499  --project structure
500 );
501 
502 TYPE task_out_tbl_type IS TABLE OF task_out_rec_type
503     INDEX BY BINARY_INTEGER;
504 
505 -- Project Connect 4.0
506 TYPE struc_out_rec_type IS RECORD
507 (structure_version_id           NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
508  structure_type                 VARCHAR2(25)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
509  return_status                  VARCHAR2(1)     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
510 );
511 TYPE struc_out_tbl_type IS TABLE OF struc_out_rec_type
512         INDEX BY BINARY_INTEGER;
513 G_struc_out_tbl         struc_out_tbl_type;
514 -- Project Connect 4.0
515 
516 --project structures
517 --Adding a record type for structure data
518 TYPE structure_in_rec_type IS RECORD
519 ( pa_project_id              NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
520  ,structure_type             VARCHAR2(25)      := 'FINANCIAL'
521  ,structure_version_name     VARCHAR2(240)     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
522  ,structure_version_id       NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
523  ,DESCRIPTION                VARCHAR2(250)     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
524  /*,VERSION_NUMBER             NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
525  ,NAME                       VARCHAR2(240)     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
526  ,CURRENT_FLAG               VARCHAR2(1)       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
527  ,ORIGINAL_FLAG              VARCHAR2(1)       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
528  ,LATEST_EFF_PUBLISHED_FLAG  VARCHAR2(1)       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
529  ,EFFECTIVE_DATE             DATE              := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
530  ,PUBLISHED_DATE             DATE              := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
531  ,PUBLISHED_BY_PERSON_ID     NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
532  ,CURRENT_BASELINE_DATE      DATE              := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
533  ,CURRENT_BASELINE_PERSON_ID   NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
534  ,ORIGINAL_BASELINE_DATE       DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
535  ,ORIGINAL_BASELINE_PERSON_ID  NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
536  ,LOCK_STATUS_CODE             VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
537  ,LOCKED_BY_PERSON_ID          NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
538  ,LOCKED_DATE                  DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
539  ,STATUS_CODE                  VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
540  ,WF_STATUS_CODE               VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
541  ,PM_SOURCE_CODE               VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
542  ,PM_SOURCE_REFERENCE          VARCHAR2(25)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
543  ,CHANGE_REASON_CODE           VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
544 */
545 );
546 
547 TYPE structure_out_rec_type IS RECORD
548 (pa_structure_id             NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
549  pa_structure_version_id     NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
550  return_status               VARCHAR2(1)     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
551 );
552 
553 -- <EA Pl/SQL table data structure>
554 
555 TYPE PA_EXT_ATTR_ROW_TYPE IS RECORD (
556    PROJ_ELEMENT_ID        NUMBER,
557    PROJ_ELEMENT_REFERENCE VARCHAR2(30),
558    ROW_IDENTIFIER         NUMBER,
559    ATTR_GROUP_INT_NAME    VARCHAR2(30),
560    ATTR_GROUP_ID          NUMBER,
561    ATTR_INT_NAME          VARCHAR2(30),
562    ATTR_VALUE_STR         VARCHAR2(1000),
563    ATTR_VALUE_NUM         NUMBER,
564    ATTR_VALUE_DATE        DATE,
565    ATTR_DISP_VALUE        VARCHAR2(150),
566    ATTR_UNIT_OF_MEASURE   VARCHAR2(30),
567    USER_ROW_IDENTIFIER    VARCHAR2(150),
568    TRANSACTION_TYPE       VARCHAR2(30)
569 );
570 
571 TYPE PA_EXT_ATTR_TABLE_TYPE IS TABLE OF PA_EXT_ATTR_ROW_TYPE
572    INDEX BY BINARY_INTEGER;
573 -- </EA Pl/SQL table data structure>
574 
575 -- 3435905 FP M Changes for deliverables : Start
576 
577 TYPE deliverable_in_rec_type IS RECORD
578 (deliverable_short_name   VARCHAR2(100) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
579 ,deliverable_name         VARCHAR2(240) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
580 ,description              VARCHAR2(2000):= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
581 ,deliverable_owner_id     NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
582 -- for bug# 3729250
583 --,carrying_out_org_id      NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
584 ,status_code              VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
585 ,deliverable_type_id      NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
586 ,progress_weight          NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
587 ,due_date                 DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
588 ,completion_date          DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
589 ,pm_source_code           VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
590 ,pm_deliverable_reference VARCHAR2(25)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
591 ,deliverable_id           NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
592 ,task_id                  NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
593 ,task_source_reference    VARCHAR2(25)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
594 -- OKE Item parameters Starts
595 ,item_id                  NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
596 ,inventory_org_id         NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
597 ,quantity                 NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
598 ,uom_code                 VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
599 -- for bug# 3729250
600 --,item_description         VARCHAR2(2000):= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
601 ,unit_price               NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
602 ,unit_number              VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
603 ,currency_code            VARCHAR2(15)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
604 -- OKE Item  parameters End
605 );
606 
607 TYPE deliverable_out_rec_type IS RECORD
608 ( deliverable_id  NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
609  ,return_status  VARCHAR2(1)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
610 );
611 
612 TYPE action_in_rec_type IS RECORD
613 ( action_name                  VARCHAR2(100)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
614  ,action_owner_id              NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
615  ,action_id                    NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
616  ,function_code                VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
617  ,due_date                     DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
618  ,completion_date              DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
619  ,description                  VARCHAR2(2000) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
620  ,pm_source_code               VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
621  ,pm_action_reference          VARCHAR2(25)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
622  -- for bug# 3729250
623 -- ,carrying_out_org_id          NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
624  ,pm_deliverable_reference     VARCHAR2(25)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
625  ,deliverable_id               NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
626 -- OKE procurement parameters
627  ,financial_task_id            NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
628  -- added for bug# 3729250
629  ,financial_task_reference     VARCHAR2(25)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
630  ,destination_type_code        VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
631  ,receiving_org_id             NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
632  ,receiving_location_id        NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
633  ,po_need_by_date              DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
634  ,vendor_id                    NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
635  ,vendor_site_code             VARCHAR2(15)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
636 -- ,project_currency             VARCHAR2(15)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
637  ,quantity                     NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
638  ,uom_code                     VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
639  ,unit_price                   NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
640  ,exchange_rate_type           VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
641  ,exchange_rate_date           DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
642  ,exchange_rate                NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
643  ,expenditure_type             VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
644  ,expenditure_org_id           NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
645  ,expenditure_item_date        DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
646  ,requisition_line_type_id     NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
647  ,category_id                  NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
648  ,ready_to_procure_flag        VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
649  ,initiate_procure_flag        VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
650 -- OKE procurement parameters
651 -- OKE shipping parameters
652  ,ship_from_organization_id    NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
653  ,ship_from_location_id        NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
654  ,ship_to_organization_id      NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
655  ,ship_to_location_id          NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
656  ,demand_schedule              VARCHAR2(10)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
657  ,expected_shipment_date       DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
658  ,promised_shipment_date       DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
659  ,volume                       NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
660  ,volume_uom                   VARCHAR2(10)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
661  ,weight                       NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
662  ,weight_uom                   VARCHAR2(10)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
663  ,ready_to_ship_flag           VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
664  ,initiate_planning_flag       VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
665  ,initiate_shipping_flag       VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
666 -- OKE shipping parameters
667 -- Billing parameters
668  ,event_type                   VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
669  ,currency                     VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
670  ,invoice_amount               NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
671  ,revenue_amount               NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
672  ,event_date                   DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
673  ,event_number                 NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
674  ,organization_id              NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
675  ,bill_hold_flag               VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
676  ,project_functional_rate_type VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
677  ,project_functional_rate_date DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
678  ,project_functional_rate      NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
679  ,project_rate_type            VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
680  ,project_rate_date            DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
681  ,project_rate                 NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
682  ,funding_rate_type            VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
683  ,funding_rate_date            DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
684  ,funding_rate                 NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
685  ,pm_event_reference           VARCHAR2(25)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR -- 3651489 added parameter
686 -- Billing parameters
687 );
688 
689 
690 TYPE action_out_rec_type IS RECORD
691 (action_id      NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
692 ,return_status  VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
693 );
694 
695 -- Bug # 5072032.
696 
697 TYPE program_links_rec_type IS RECORD
698 (object_relationship_id		NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
699 , parent_project_id		NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
700 , pm_parent_project_reference	VARCHAR2(25)	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
701 , task_id			NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
702 , pm_task_reference		VARCHAR2(25)	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
703 , task_version_id		NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
704 , structure_type                VARCHAR2(25)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
705 , sub_project_id		NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
706 , pm_sub_project_reference	VARCHAR2(25)	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
707 , comments			VARCHAR2(240)	:= NULL);
708 
709 TYPE program_links_tbl_type IS TABLE OF program_links_rec_type INDEX BY BINARY_INTEGER;
710 
711 -- End of Bug # 5072032.
712 
713 
714 TYPE action_out_tbl_type         IS TABLE OF action_out_rec_type  INDEX BY BINARY_INTEGER ;
715 TYPE deliverable_in_tbl_type     IS TABLE OF deliverable_in_rec_type INDEX BY BINARY_INTEGER ;
716 TYPE deliverable_out_tbl_type    IS TABLE OF deliverable_out_rec_type  INDEX BY BINARY_INTEGER ;
717 TYPE action_in_tbl_type          IS TABLE OF action_in_rec_type INDEX BY BINARY_INTEGER ;
718 
719 -- 3435905 FP M Changes for deliverables : End
720 
721 --project structures
722 
723 --Globals to be used by the LOAD/EXECUTE/FETCH process
724 --IN types
725 G_project_in_null_rec       project_in_rec_type;
726 G_project_in_rec        project_in_rec_type;
727 
728   --project structure
729 G_structure_in_rec      structure_in_rec_type;
730   --project structure
731 
732 G_key_members_in_tbl        project_role_tbl_type;
733 G_class_categories_in_tbl   class_category_tbl_type;
734 G_tasks_in_tbl          task_in_tbl_type;
735 -- anlee org roles changes
736 G_org_roles_in_tbl      project_role_tbl_type;
737 -- <EA table to store ext attr data/>
738 G_ext_attr_in_tbl            PA_EXT_ATTR_TABLE_TYPE;
739 
740 --Counters
741 G_key_members_tbl_count     NUMBER:=0;
742 G_class_categories_tbl_count    NUMBER:=0;
743 G_tasks_tbl_count       NUMBER:=0;
744 -- anlee org roles changes
745 G_org_roles_tbl_count       NUMBER:=0;
746 -- <EA counter for ext attr data table/>
747 G_ext_attr_tbl_count         NUMBER := 0;
748 
749 --OUT types
750 G_project_out_null_rec      project_out_rec_type;
751 G_project_out_rec       project_out_rec_type;
752 G_tasks_out_tbl         task_out_tbl_type;
753 
754   --project structures
755 G_structure_out_rec             structure_out_rec_type;
756   --project structures
757 
758 --3435905 FP : M Global Tables Deliverables : Starts
759 G_deliverables_in_tbl          deliverable_in_tbl_type     ;
760 G_deliverables_out_tbl         deliverable_out_tbl_type    ;
761 G_deliverable_actions_in_tbl   action_in_tbl_type  ;
762 G_deliverable_actions_out_tbl  action_out_tbl_type ;
763 G_deliverables_in_tbl_count    NUMBER := 0;
764 G_dlvr_actions_in_tbl_count    NUMBER := 0;
765 --3435905 FP : M Global Tables Deliverables : Ends
766 G_customers_in_tbl          customer_tbl_type; -- Added for tracking bug
767 
768 -- Added lite_task_in_rec_type and lite_task_in_tbl_type for Huawei enhancement - bug 13923366 by skkoppul
769 TYPE lite_task_in_rec_type IS RECORD
770 (pm_task_reference           VARCHAR2(25)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
771  pa_task_id              NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
772  task_name               VARCHAR2(240)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
773  long_task_name          VARCHAR2(240)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
774  pa_task_number          VARCHAR2(100)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
775  task_description            VARCHAR2(2000)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
776  task_start_date             DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
777  task_completion_date        DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
778  pm_parent_task_reference     VARCHAR2(25)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
779  pa_parent_task_id           NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
780  actual_start_date             DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
781  actual_finish_date            DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
782  early_start_date              DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
783  early_finish_date             DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
784  late_start_date               DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
785  late_finish_date              DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
786  scheduled_start_date          DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
787  scheduled_finish_date         DATE          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
788  tasks_dff                    VARCHAR2(1)   := 'N',
789  attribute_category           VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
790  attribute1               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
791  attribute2               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
792  attribute3               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
793  attribute4               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
794  attribute5               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
795  attribute6               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
796  attribute7               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
797  attribute8               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
798  attribute9               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
799  attribute10                  VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
800  attribute11               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
801  attribute12               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
802  attribute13               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
803  attribute14               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
804  attribute15               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
805  fp_attribute_category     VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
806  fp_attribute1             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
807  fp_attribute2             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
808  fp_attribute3             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
809  fp_attribute4             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
810  fp_attribute5             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
811  fp_attribute6             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
812  fp_attribute7             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
813  fp_attribute8             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
814  fp_attribute9             VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
815  fp_attribute10            VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
816  ESTIMATED_START_DATE          DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
817  ESTIMATED_FINISH_DATE         DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
818  BASELINE_START_DATE           DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
819  BASELINE_FINISH_DATE          DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
820  CLOSED_DATE                   DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
821  STATUS_CODE                   VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
822  PM_SOURCE_CODE                VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
823 -- 14556729:Huawei Code change : Added new parameters for Add and Update Task Lite API.
824  service_type_code           VARCHAR2(30)   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
825  chargeable_flag             VARCHAR2(1)    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
826  MILESTONE_FLAG                VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
827  PLANNED_WORK_QUANTITY         NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM ,
828  TASK_TYPE                     NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
829  WQ_UOM_CODE                   VARCHAR2(30) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
830  carrying_out_organization_id   NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
831  task_manager_person_id      NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
832  work_type_id                  NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
833  CRITICAL_FLAG                 VARCHAR2(1) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
834  financial_task_flag         VARCHAR2(1)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
835 );
836 
837 TYPE lite_task_in_tbl_type IS TABLE OF lite_task_in_rec_type
838     INDEX BY BINARY_INTEGER;
839 
840 TYPE fp_dff_in_rec_type IS RECORD
841 (pm_task_reference        VARCHAR2(25)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
842  pa_task_id               NUMBER        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
843  pa_task_name             VARCHAR2(240) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
844  attribute_category       VARCHAR2(30)  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
845  attribute1               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
846  attribute2               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
847  attribute3               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
848  attribute4               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
849  attribute5               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
850  attribute6               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
851  attribute7               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
852  attribute8               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
853  attribute9               VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
854  attribute10              VARCHAR2(150) := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
855 );
856 
857 TYPE fp_dff_in_tbl_type IS TABLE OF fp_dff_in_rec_type
858     INDEX BY BINARY_INTEGER;
859 
860 G_FP_DFF_TBL             fp_dff_in_tbl_type;
861 
862 /*#
863  * This API creates a project in the Oracle Projects using a template or existing project.
864  * @param p_api_version_number API standard version number
865  * @param p_commit API standard (default = F): indicates if transaction will be committed
866  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
867  * @param p_msg_count API standard: number of error messages
868  * @rep:paraminfo {@rep:required}
869  * @param p_msg_data API standard: error message
870  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
871  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
872  * @rep:paraminfo {@rep:precision 1} {@rep:required}
873  * @param p_workflow_started Flag indicating whether a workflow has been started
874  * @rep:paraminfo {@rep:required}
875  * @param p_pm_product_code Identifier of the external system from which the project was imported
876  * @rep:paraminfo {@rep:precision 25}
877  * @param p_op_validate_flag Indicates whether the system performs scheduling validations. Default is Y.
878  * @rep:paraminfo {@rep:precision 1}
879  * @param p_project_in Input project details
880  * @rep:paraminfo {@rep:required}
881  * @param p_project_out Output project details
882  * @rep:paraminfo {@rep:required}
883  * @param p_customers_in Input customer details
884  * @param p_key_members The identification code for the role that the members have on the project
885  * @rep:paraminfo {@rep:required}
886  * @param p_class_categories Identifier of the categories by which the project is classified
887  * @rep:paraminfo {@rep:required}
888  * @param p_tasks_in  Input task details of the project
889  * @rep:paraminfo {@rep:required}
890  * @param p_tasks_out Output task details of the project
891  * @rep:paraminfo {@rep:required}
892  * @param p_org_roles Identifier of the organization roles for project
893  * @param p_structure_in Identifier of structure data
894  * @param p_ext_attr_tbl_in Identifier of external attributes
895  * @param p_deliverables_in Input deliverable details
896  * @param p_deliverable_actions_in Input deliverable actions details
897  * @rep:scope public
898  * @rep:lifecycle active
899  * @rep:displayname Create Project
900  * @rep:category BUSINESS_ENTITY PA_PROJECT
901  * @rep:category BUSINESS_ENTITY PA_TASK
902  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
903  * @rep:compatibility S
904 */
905 PROCEDURE create_project
906 ( p_api_version_number      IN  NUMBER      :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
907  ,p_commit                  IN  VARCHAR2    := FND_API.G_FALSE
908  ,p_init_msg_list           IN  VARCHAR2    := FND_API.G_FALSE
909  ,p_msg_count              OUT  NOCOPY NUMBER --File.Sql.39 bug 4440895
910  ,p_msg_data               OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
911  ,p_return_status          OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
912  ,p_workflow_started       OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
913  ,p_pm_product_code         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
914  ,p_op_validate_flag        IN VARCHAR2     := 'Y' --added by rtarway 4218977
915  ,p_project_in              IN  project_in_rec_type
916  ,p_project_out            OUT  NOCOPY  project_out_rec_type    /*added the nocopy check for the bug 2674619*/
917  /* Added for tracking bug - add customers */
918  ,p_customers_in     IN  pa_project_pub.customer_tbl_type := G_customers_in_tbl
919 /*added default value 3683732*/
920  ,p_key_members             IN  project_role_tbl_type := G_key_members_in_tbl
921  ,p_class_categories        IN  class_category_tbl_type := G_class_categories_in_tbl
922  ,p_tasks_in                IN  task_in_tbl_type
923  ,p_tasks_out              OUT  NOCOPY  task_out_tbl_type /*added the nocopy check for the bug 2674619*/
924  ,p_org_roles               IN  project_role_tbl_type := G_org_roles_in_tbl
925 --project structures
926  ,p_structure_in            IN  structure_in_rec_type := G_structure_in_rec
927  ,p_ext_attr_tbl_in         IN  PA_EXT_ATTR_TABLE_TYPE := G_ext_attr_in_tbl -- <EA added parameter for Ext Attr/>
928 
929 -- ,p_structure_out               OUT     structure_out_rec_type
930 --project structures
931 --3435905 FP M : deliverables
932  ,p_deliverables_in         IN  deliverable_in_tbl_type := G_deliverables_in_tbl -- 3435905 passing default
933 -- ,p_deliverables_out          OUT NOCOPY  deliverable_out_tbl_type    -- 3435905 removed
934  ,p_deliverable_actions_in  IN  action_in_tbl_type := G_deliverable_actions_in_tbl -- 3435905 passing default
935 -- ,p_deliverable_actions_out   OUT NOCOPY  action_out_tbl_type -- 3435905 removed
936 --3435905 FP M : deliverables
937 );
938 
939 /*#
940  * This API is used to add new subtasks to a task of a project in Oracle Projects.
941  * @param p_api_version_number API standard version number
942  * @param p_commit API standard (default = F): indicates if transaction will be committed
943  * @rep:paraminfo {@rep:precision 1}
944  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
945  * @param p_msg_count API standard: number of error messages
946  * @rep:paraminfo {@rep:required}
947  * @param p_msg_data API standard: error message
948  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
949  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
950  * @rep:paraminfo {@rep:precision 1} {@rep:required}
951  * @param p_pm_product_code Identifier of the external system from which the project was imported
952  * @rep:paraminfo {@rep:precision 25}
953  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
954  * @param p_pa_project_id The reference code that uniquely identifies the project in the Oracle Projects
955  * @param p_pm_task_reference  The reference code that uniquely identifies project's task in the external system
956  * @param p_pa_task_number  The number that identifies the task in Oracle Projects
957  * @param p_ref_task_id The reference code that uniquely identifies the task in a project in Oracle Projects
958  * @param p_task_name The name that uniquely identifies the task within a project
959  * @param p_long_task_name  Long name of the task
960  * @param p_task_description Description of the task
961  * @param p_task_start_date The start date of the task
962  * @param p_task_completion_date The completion date of the task
963  * @param p_pm_parent_task_reference The unique reference code that identifies the task's parent task
964  * @param p_pa_parent_task_id The identifier of task's parent task in Oracle Projects
965  * @param p_address_id The address of one of the customers that is logically linked to the task
966  * @param p_carrying_out_organization_id The identifier of the organization that is responsible for the project work
967  * @param p_service_type_code The type of work performed on the task
968  * @param p_task_manager_person_id The identifier of the employee who manages the task.
969  * @param p_billable_flag Flag indicating whether items charged to the task can accrue revenue
970  * @rep:paraminfo {@rep:precision 1}
971  * @param p_chargeable_flag Flag indicating whether expenditure items can be charged to the task. Only lowest level tasks can be chargeable
972  * @rep:paraminfo {@rep:precision 1}
973  * @param p_ready_to_bill_flag Flag indicating whether the task is authorized to be invoiced
974  * @rep:paraminfo {@rep:precision 1}
975  * @param p_ready_to_distribute_flag Flag indicating whether the task is authorized for revenue accrual
976  * @rep:paraminfo {@rep:precision 1}
977  * @param p_limit_to_txn_controls_flag Flag indicating whether users can only charge expenditures to the tasks that are listed in task transaction controls
978  * @rep:paraminfo {@rep:precision 1}
979  * @param p_labor_bill_rate_org_id  The identifier of the organization that owns the labor standard bill rate schedule
980  * @param p_labor_std_bill_rate_schdl The labor standard bill rate schedule that is used to calculate revenue for labor expenditure items charged to the task
981  * @param p_labor_schedule_fixed_date The date used to determine the effective bill rates of the task standard labor bill rate schedule. If no
982  * fixed date is entered, the expenditure item date is used to determine the effective bill rate for the item.
983  * @param p_labor_schedule_discount The discount percent for the task standard labor bill rate schedule
984  * @param p_nl_bill_rate_org_id The identifier of the organization that owns the non-labor standard bill rate schedule
985  * @param p_nl_std_bill_rate_schdl The non-labor standard bill rate schedule that is used to calculate revenue for non-labor expenditure items charged to the task
986  * @param p_nl_schedule_fixed_date The fixed date used to determine the effective bill rates of the standard non-labor bill rate schedule
987  * @param p_nl_schedule_discount The discount percent from the task standard non-labor bill rate schedule
988  * @param p_labor_cost_multiplier_name The labor cost multiplier defined for the task of a premium project
989  * @param p_cost_ind_rate_sch_id The identifier of the default costing burden schedule
990  * @param p_rev_ind_rate_sch_id The identifier of the default revenue burden schedule
991  * @param p_inv_ind_rate_sch_id The identifier of the default invoice burden schedule
992  * @param p_cost_ind_sch_fixed_date The schedule fixed date of the firm costing burden schedule
993  * @param p_rev_ind_sch_fixed_date The schedule fixed date of the firm revenue burden schedule
994  * @param p_inv_ind_sch_fixed_date The schedule fixed date of the firm invoice burden schedule
995  * @param p_labor_sch_type The schedule type of labor expenditure items
996  * @param p_nl_sch_type The schedule type of non-labor expenditure items
997  * @param p_actual_start_date The actual start date of the project
998  * @param p_actual_finish_date The actual end date of the project
999  * @param p_early_start_date The early start date of the project. Applicable only for a project that originated in an external system.
1000  * @param p_early_finish_date The early finish date of the project
1001  * @param p_late_start_date The late start date of the project. Applicable only for a project that originated in an external system.
1002  * @param p_late_finish_date The late finish date of the project. Applicable only for a project that originated in an external system.
1003  * @param p_scheduled_start_date The scheduled start date of the project
1004  * @param p_scheduled_finish_date The scheduled finish date of the project
1005  * @param p_attribute_category Descriptive flexfield category
1006  * @param p_attribute1 Identifies Descriptive flexfield segment
1007  * @param p_attribute2 Identifies Descriptive flexfield segment
1008  * @param p_attribute3 Identifies Descriptive flexfield segment
1009  * @param p_attribute4 Identifies Descriptive flexfield segment
1010  * @param p_attribute5 Identifies Descriptive flexfield segment
1011  * @param p_attribute6 Identifies Descriptive flexfield segment
1012  * @param p_attribute7 Identifies Descriptive flexfield segment
1013  * @param p_attribute8 Identifies Descriptive flexfield segment
1014  * @param p_attribute9 Identifies Descriptive flexfield segment
1015  * @param p_attribute10 Identifies Descriptive flexfield segment
1016  * @param p_allow_cross_charge_flag Flat indicating whether cross charges are allowed
1017  * @param p_project_rate_date Task-level default value for project rate date
1018  * @param p_project_rate_type Task-level default value for project rate type
1019  * @param p_cc_process_labor_flag Flag indicating whether cross charge processing is to be performed for labor
1020  * transactions charged to the project. The default value for the project template is N. The default value for a
1021  * project is the value on the project template. The default value for a task is the value on the project.
1022  * @rep:paraminfo {@rep:precision 1}
1023  * @param p_labor_tp_schedule_id Identifier of the transfer price schedule to use for cross charged labor transactions.
1024  * The default value for a project is the value on the project template. The default value for a task is the value on the project.
1025  * If cc_process_labor_flag is set to Y, this field is required.
1026  * @param p_labor_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when determining the
1027  * transfer price for labor transactions. The default value for a project is the value on the project template.
1028  * The default value for a task is the value on the project.
1029  * @param p_cc_process_nl_flag Flag indicating cross charge processing is to be performed for non-labor transactions charged to the project.
1030  * The default value for the project template is N. The default value for a project is the value on the project template.
1031  * The default value for a task is the value on the project.
1032  * @rep:paraminfo {@rep:precision 1}
1033  * @param p_nl_tp_schedule_id Identifier of the transfer price schedule to use for cross charged non-labor transactions.
1034  * The default value for a project is the value on the project template. The default value for a task is the value on the project.
1035  * If cc_process_nl_flag is set to Y, this field is required
1036  * @param p_nl_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when determining the transfer
1037  * price for non-labor transactions.The default value for a project is the value on the project template. The default value for a task
1038  * is the value on the project.
1039  * @param p_receive_project_invoice_flag Flag indicating whether the task can receive charges from internal supplies using interproject billing
1040  * @rep:paraminfo {@rep:precision 1}
1041  * @param p_work_type_id Identifier of the work type
1042  * @param p_emp_bill_rate_schedule_id Identifier of the employee bill rate schedule
1043  * @param p_job_bill_rate_schedule_id Identifier of the job bill rate schedule
1044  * @param p_non_lab_std_bill_rt_sch_id Identifier of the non-labor standard bill rate schedule
1045  * @param p_taskfunc_cost_rate_type Task-level default value for project functional cost rate type
1046  * @param p_taskfunc_cost_rate_date Task-level default value for project functional cost rate date
1047  * @param p_structure_type  Identifier of the project structure type
1048  * @param p_structure_version_id Identifier of the structure version
1049  * @param P_OBLIGATION_START_DATE The obligation start date of the workplan version
1050  * @param P_OBLIGATION_FINISH_DATE The obligation finish date of the workplan version
1051  * @param P_ESTIMATED_START_DATE The estimated start date of the workplan version
1052  * @param P_ESTIMATED_FINISH_DATE The estimated finish date of the workplan version
1053  * @param P_BASELINE_START_DATE The baseline start date for the task or the workplan
1054  * @param P_BASELINE_FINISH_DATE The baseline finish date for the task or the workplan
1055  * @param P_CLOSED_DATE The date that the element status was set to Closed. This is a task-specific attribute.
1056  * @param P_WQ_UOM_CODE The unit of measure used for work quantity for a task
1057  * @param P_WQ_ITEM_CODE The work item for work quantity for a task
1058  * @param P_STATUS_CODE The status of the project element
1059  * @param P_WF_STATUS_CODE  The status of workflow associated with the element
1060  * @param P_PM_SOURCE_CODE Identifier of the the source code system
1061  * @param P_PRIORITY_CODE The priority of the task. This is a task-specific attribute.
1062  * @param P_MILESTONE_FLAG  Flag indicating whether the task version is a milestone. This is a task-specific attribute.
1063  * @param P_CRITICAL_FLAG Flag that indicates if the task version is part of the critical path.
1064  * @param P_INC_PROJ_PROGRESS_FLAG Project progress flag
1065  * @param P_LINK_TASK_FLAG  Flag indicating that a task is used for linking purposes and is not displayed in the user interface
1066  * @param P_CALENDAR_ID The identifier of the work calendar used to schedule the task. This is a task-specific attribute.
1067  * @param P_PLANNED_EFFORT The planned effort for the task
1068  * @param P_DURATION The duration between scheduled start date and scheduled end date using work calendar.
1069  * @param P_PLANNED_WORK_QUANTITY The planned work quantity for the task
1070  * @param P_TASK_TYPE The task type
1071  * @param p_labor_disc_reason_code Labor discount reason code
1072  * @param p_non_labor_disc_reason_code Non-labor discount reason code
1073  * @param p_retirement_cost_flag Flag indicating whether the task is identified for retirement cost collection
1074  * @rep:paraminfo  {@rep:precision 1}
1075  * @param p_cint_eligible_flag Flag indicating whether the project is eligible for capitalized interest
1076  * @rep:paraminfo  {@rep:precision 1}
1077  * @param p_cint_stop_date  Stop date for capital interest calculation
1078  * @param p_pa_project_id_out The unique identifier of the project in Oracle Projects
1079  * @rep:paraminfo  {@rep:required}
1080  * @param p_pa_project_number_out A project code that uniquely identifies the project
1081  * @rep:paraminfo  {@rep:required}
1082  * @param p_task_id  Unique identifier of the the task
1083  * @rep:paraminfo  {@rep:required}
1084  * @param p_process_mode Processing mode. Indicates whether task processing should be done online or via consurrent request
1085  * @rep:paraminfo  {@rep:required}
1086  * @param p_pred_string The string containing the predecessor information
1087  * @rep:paraminfo  {@rep:precision 400} {@rep:required}
1088  * @param p_pred_delimiter Delimiter that separates predecessors in the predecessor string
1089  * @rep:paraminfo  {@rep:precision 1} {@rep:required}
1090  * @param p_base_percent_comp_deriv_code Base percent complete derivation code for the task
1091  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
1092  * @param p_sch_tool_tsk_type_code Default scheduling tool task type for the task version
1093  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
1094  * @param p_constraint_type_code Constraint type for the task version
1095  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
1096  * @param p_constraint_date Constraint date for the task version
1097  * @rep:paraminfo  {@rep:required}
1098  * @param p_free_slack Free slack for the task version
1099  * @rep:paraminfo  {@rep:required}
1100  * @param p_total_slack Total slack for the task version
1101  * @rep:paraminfo  {@rep:required}
1102  * @param p_effort_driven_flag The flag that indicates whether the task is effort driven
1103  * @rep:paraminfo  {@rep:precision 1} {@rep:required}
1104  * @param p_level_assignments_flag Flag that indicates whether the assignments on this task should be leveled
1105  * @rep:paraminfo  {@rep:precision 1} {@rep:required}
1106  * @param p_invoice_method The invoice method for the task. Valid only for top tasks with Invoice Method enabled.
1107  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
1108  * @param p_customer_id The customer for the task. Valid only for top tasks with Customer enabled
1109  * @rep:paraminfo  {@rep:required}
1110  * @param p_gen_etc_source_code Estimate to complete source
1111  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
1112  * @param p_financial_task_flag Flag that indicates whether the task is a financial task.
1113  * This flag is valid only for partially shared structures. Tasks that are above this level are used for financial management.
1114  * @rep:paraminfo  {@rep:precision 1} {@rep:required}
1115  * @param p_mapped_task_id Mapped task ID.This parameter is applicable only in case of split-mapped structure sharing between workplan
1116  * and financial structures.
1117  * @rep:paraminfo  {@rep:required}
1118  * @param p_mapped_task_reference Mapped task reference
1119  * @rep:paraminfo  {@rep:required}
1120  * @param p_deliverable Deliverable reference to be associated with the task.
1121  * @rep:paraminfo  {@rep:precision 4000}
1122  * @param p_deliverable_id Deliverable ID to be associated with the task
1123  * @param p_ext_act_duration From the external application, the actual duration
1124  * @rep:paraminfo  {@rep:required}
1125  * @param p_ext_remain_duration From the external application, the remaining duration
1126  * @rep:paraminfo  {@rep:required}
1127  * @param p_ext_sch_duration From the external application, the scheduled duration
1128  * @rep:paraminfo  {@rep:required}
1129  * @param p_op_validate_flag Indicates whether the system performs scheduling validations. Default is Y.
1130  * @rep:paraminfo  {@rep:precision 1}
1131  * @rep:scope public
1132  * @rep:lifecycle active
1133  * @rep:displayname Create Task
1134  * @rep:category BUSINESS_ENTITY PA_PROJECT
1135  * @rep:category BUSINESS_ENTITY PA_TASK
1136  * @rep:compatibility S
1137 */
1138 PROCEDURE add_task
1139 ( p_api_version_number      IN  NUMBER  :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1140  ,p_commit              IN  VARCHAR2    := FND_API.G_FALSE
1141  ,p_init_msg_list           IN  VARCHAR2    := FND_API.G_FALSE
1142  ,p_msg_count               OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
1143  ,p_msg_data                OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1144  ,p_return_status           OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1145  ,p_pm_product_code         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1146  ,p_pm_project_reference        IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1147  ,p_pa_project_id           IN  NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1148  ,p_pm_task_reference       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1149  ,p_pa_task_number          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1150 --Project Structures
1151  ,p_ref_task_id               IN   NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1152 --Project Structures
1153  ,p_task_name               IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1154  ,p_long_task_name          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1155  ,p_task_description        IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1156  ,p_task_start_date         IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1157  ,p_task_completion_date        IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1158  ,p_pm_parent_task_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1159  ,p_pa_parent_task_id       IN  NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1160  ,p_address_id              IN  NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1161  ,p_carrying_out_organization_id    IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1162  ,p_service_type_code           IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1163  ,p_task_manager_person_id      IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1164  ,p_billable_flag                IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1165  ,p_chargeable_flag              IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1166  ,p_ready_to_bill_flag          IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1167  ,p_ready_to_distribute_flag        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1168  ,p_limit_to_txn_controls_flag  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1169  ,p_labor_bill_rate_org_id      IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1170  ,p_labor_std_bill_rate_schdl       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1171  ,p_labor_schedule_fixed_date       IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1172  ,p_labor_schedule_discount     IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1173  ,p_nl_bill_rate_org_id         IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1174  ,p_nl_std_bill_rate_schdl      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1175  ,p_nl_schedule_fixed_date      IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1176  ,p_nl_schedule_discount            IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1177  ,p_labor_cost_multiplier_name  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1178  ,p_cost_ind_rate_sch_id             IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1179  ,p_rev_ind_rate_sch_id         IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1180  ,p_inv_ind_rate_sch_id         IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1181  ,p_cost_ind_sch_fixed_date     IN DATE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1182  ,p_rev_ind_sch_fixed_date      IN DATE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1183  ,p_inv_ind_sch_fixed_date      IN DATE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1184  ,p_labor_sch_type               IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1185  ,p_nl_sch_type             IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1186  ,p_actual_start_date              IN DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1187  ,p_actual_finish_date             IN DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1188  ,p_early_start_date               IN DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1189  ,p_early_finish_date              IN DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1190  ,p_late_start_date                IN DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1191  ,p_late_finish_date               IN DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1192  ,p_scheduled_start_date           IN DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1193  ,p_scheduled_finish_date          IN DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1194  ,p_tasks_dff                    IN VARCHAR2    := 'N'--bug 6153503
1195  ,p_attribute_category          IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1196  ,p_attribute1                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1197  ,p_attribute2                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1198  ,p_attribute3                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1199  ,p_attribute4                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1200  ,p_attribute5                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1201  ,p_attribute6                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1202  ,p_attribute7                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1203  ,p_attribute8                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1204  ,p_attribute9                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1205  ,p_attribute10             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1206  ,p_attribute11                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR--bug 6153503
1207  ,p_attribute12                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR--bug 6153503
1208  ,p_attribute13                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR--bug 6153503
1209  ,p_attribute14                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR--bug 6153503
1210  ,p_attribute15                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR--bug 6153503
1211  ,p_allow_cross_charge_flag        IN VARCHAR2:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1212  ,p_project_rate_date              IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1213  ,p_project_rate_type              IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1214  ,p_cc_process_labor_flag          IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1215  ,p_labor_tp_schedule_id           IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1216  ,p_labor_tp_fixed_date            IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1217  ,p_cc_process_nl_flag             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1218  ,p_nl_tp_schedule_id              IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1219  ,p_nl_tp_fixed_date               IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1220  ,p_receive_project_invoice_flag   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1221  ,p_work_type_id                   IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1222  ,p_emp_bill_rate_schedule_id      IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1223  ,p_job_bill_rate_schedule_id      IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1224 --Sakthi MCB
1225  ,p_non_lab_std_bill_rt_sch_id     IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1226  ,p_taskfunc_cost_rate_type        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1227  ,p_taskfunc_cost_rate_date        IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1228 --Sakthi MCB
1229 --Project Structures
1230  ,p_structure_type                 IN VARCHAR2 := 'FINANCIAL'
1231  ,p_structure_version_id           IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1232  ,P_OBLIGATION_START_DATE          IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1233  ,P_OBLIGATION_FINISH_DATE         IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1234  ,P_ESTIMATED_START_DATE           IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1235  ,P_ESTIMATED_FINISH_DATE          IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1236  ,P_BASELINE_START_DATE            IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1237  ,P_BASELINE_FINISH_DATE           IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1238  ,P_CLOSED_DATE                    IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1239  ,P_WQ_UOM_CODE                    IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1240  ,P_WQ_ITEM_CODE                   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1241  ,P_STATUS_CODE                    IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1242  ,P_WF_STATUS_CODE                 IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1243  ,P_PM_SOURCE_CODE                 IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1244  ,P_PRIORITY_CODE                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1245  ,P_MILESTONE_FLAG                 IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1246  ,P_CRITICAL_FLAG                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1247  ,P_INC_PROJ_PROGRESS_FLAG         IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1248  ,P_LINK_TASK_FLAG                 IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1249  ,P_CALENDAR_ID                    IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1250  ,P_PLANNED_EFFORT                 IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1251  ,P_DURATION                       IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1252  ,P_PLANNED_WORK_QUANTITY          IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1253  ,P_TASK_TYPE                      IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1254 --Project Structures
1255  ,p_labor_disc_reason_code       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1256  ,p_non_labor_disc_reason_code   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1257 --PA L changes -- bug 2872708   --Add task
1258  ,p_retirement_cost_flag          VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1259  ,p_cint_eligible_flag            VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1260  ,p_cint_stop_date                DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1261 --end PA L changes -- bug 2872708
1262  ,p_pa_project_id_out           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
1263  ,p_pa_project_number_out       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1264  ,p_task_id                  OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
1265  -- PA L Changes 3010538
1266  ,p_process_mode                   IN VARCHAR2 := 'ONLINE'
1267 -- FP-M Bug # 3301192
1268  ,p_pred_string                    IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1269 -- ,p_pred_delimiter                 IN VARCHAR2    DEFAULT ','
1270   ,p_pred_delimiter                IN VARCHAR2   :=  PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1271 -- FP M changes begin (venkat)
1272   ,p_base_percent_comp_deriv_code   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1273   ,p_sch_tool_tsk_type_code      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1274   ,p_constraint_type_code       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1275   ,p_constraint_date            IN DATE   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1276   ,p_free_slack             IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1277   ,p_total_slack                 IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1278   ,p_effort_driven_flag         IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1279   ,p_level_assignments_flag     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1280   ,p_invoice_method              IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1281   ,p_customer_id                 IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1282   ,p_gen_etc_source_code             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1283 -- FP M changes end (venkat)
1284 -- FP M changes start (Mapping )
1285   ,p_financial_task_flag        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1286   ,p_mapped_task_id             IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1287   ,p_mapped_task_reference      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1288 -- FP M changes end (Mapping )
1289   ,p_deliverable                 IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR    -- 3435905
1290   ,p_deliverable_id              IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM -- 3661788 Added IN parameter
1291 -- (Begin Venkat) Bug # 3450684 ----------------------------------------------------------
1292   ,p_ext_act_duration            IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM --Bug no 3450684
1293   ,p_ext_remain_duration         IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM --Bug no 3450684
1294   ,p_ext_sch_duration            IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM --Bug no 3450684
1295 -- (End Venkat) Bug # 3450684 ------------------------------------------------------------
1296   ,p_op_validate_flag        IN VARCHAR2     := 'Y' --added by rtarway 4218977
1297   ,p_structure_updates_flag  IN VARCHAR2     := 'Y' --Added for Bug 7264422
1298   ,p_adj_on_std_inv     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR   /* Added for 12.2Payroll billing ER 11899223 */
1299 ) ;
1300 
1301 /*#
1302  * This API is used to delete tasks of a project in Oracle Projects.
1303  * @param p_api_version_number API standard version number
1304  * @param p_commit API standard (default = F): indicates if transaction will be committed
1305  * @rep:paraminfo {@rep:precision 1}
1306  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
1307  * @rep:paraminfo {@rep:precision 1}
1308  * @param p_msg_count API standard: number of error messages
1309  * @rep:paraminfo {@rep:required}
1310  * @param p_msg_data API standard: error message
1311  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
1312  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
1313  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1314  * @param p_pm_product_code Identifier of the external system from which the project was imported
1315  * @rep:paraminfo {@rep:precision 25}
1316  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
1317  * @param p_pa_project_id The reference code that uniquely identifies the project in the Oracle Projects
1318  * @param p_pm_task_reference  The reference code that uniquely identifies project's task in the external system
1319  * @param p_pa_task_id  The reference code that uniquely identifies the task in a project in Oracle Projects
1320  * @param p_cascaded_delete_flag The flag indicating whether the whole hierarchy of task below the passed task needs
1321  * to be deleted or just the passed task id need to be deleted.The value Y indicates that whole task hierarchy will
1322  * get deleted below passed task. Default=N.
1323  * @param p_project_id The unique identifier of the project in Oracle Projects
1324  * @rep:paraminfo {@rep:required}
1325  * @param p_task_id The unique identifier of the the task
1326  * @rep:paraminfo {@rep:required}
1327  * @param p_task_version_id Identifier of task version
1328  * @param p_structure_type  Identifier of the project structure type
1329  * @param p_process_mode Processing mode
1330  * @param p_structure_updates_flag When 'N' is passed, defer Process Structure Updates
1331  * @rep:scope public
1332  * @rep:lifecycle active
1333  * @rep:displayname Delete Task
1334  * @rep:category BUSINESS_ENTITY PA_PROJECT
1335  * @rep:category BUSINESS_ENTITY PA_TASK
1336  * @rep:compatibility S
1337 */
1338 PROCEDURE delete_task
1339 ( p_api_version_number  IN  NUMBER      := 1.0  -- for bug# 3802319, earlier PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM was used
1340  ,p_commit              IN  VARCHAR2    := FND_API.G_FALSE
1341  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
1342  ,p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
1343  ,p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1344  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1345  ,p_pm_product_code     IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1346  ,p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1347  ,p_pa_project_id       IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1348  ,p_pm_task_reference   IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1349  ,p_pa_task_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1350  ,p_cascaded_delete_flag    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1351  ,p_project_id          OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
1352  ,p_task_id         OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
1353  ,p_task_version_id      IN  NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1354  ,p_structure_type       IN VARCHAR2 := 'FINANCIAL'
1355   -- PA L Changes 3010538
1356  ,p_process_mode         IN   VARCHAR2   := 'ONLINE'
1357  ,p_structure_updates_flag IN  VARCHAR2   := 'Y' -- Bug 7390781
1358 );
1359 
1360 /*#
1361  * This API procedure is used to create the global data structures. Other Load-Execute-Fetch procedures
1362  * use the global data structures to create a new project.
1363  * In order to execute this API the following list of API's should be executed in the following order.
1364  * INIT_PROJECT,
1365  * LOAD_PROJECT,
1366  * LOAD_TASK,
1367  * LOAD_CLASS_CATEGORY,
1368  * LOAD_KEY_MEMBER,
1369  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
1370  * FETCH_TASK and
1371  * CLEAR_PROJECT
1372  * @rep:scope public
1373  * @rep:lifecycle active
1374  * @rep:displayname Create Multiple Projects: Init Project
1375  * @rep:category BUSINESS_ENTITY PA_PROJECT
1376  * @rep:compatibility S
1377 */
1378 PROCEDURE init_project;
1379 
1380 /*#
1381  * This API is used to load a project to a global PL/SQL record.
1382  * In order to execute this API the following list of API's should be executed in the following order.:
1383  * INIT_PROJECT,
1384  * LOAD_PROJECT,
1385  * LOAD_TASK,
1386  * LOAD_CLASS_CATEGORY,
1387  * LOAD_KEY_MEMBER,
1388  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
1389  * FETCH_TASK and
1390  * CLEAR_PROJECT
1391  * @param p_api_version_number API standard version number
1392  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
1393  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
1394  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1395  * @param p_pa_project_id The reference code that uniquely identifies the project in the Oracle Projects
1396  * @param p_pa_project_number The unique Oracle Projects number for the new project
1397  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
1398  * @param p_project_name The name of the project
1399  * @param p_long_name Long name of the project
1400  * @param p_created_from_project_id The unique reference code that identifies the source template in Oracle Projects
1401  * @param p_carrying_out_organization_id The identifier of the organization that carries out the project
1402  * @param p_public_sector_flag Flag indicating whether the project is in the public sector or the private sector
1403  * @param p_project_status_code The code for the project status
1404  * @param p_description The description of the project
1405  * @param p_start_date Start date of the project
1406  * @param p_completion_date End date of the project
1407  * @param p_distribution_rule The distribution rule that specifies the contract project's revenue accrual and billing method
1408  * @param p_customer_id The identifier of the project customer in Oracle Projects
1409  * @param p_project_relationship_code The type of customer relationship that the customer has on the project
1410  * @param p_actual_start_date The actual start date of the project.
1411  * @param p_actual_finish_date The actual end date of the project.
1412  * @param p_early_start_date The early start date of the project. Applicable only for a project that originated in an external system
1413  * @param p_early_finish_date The early finish date of the project. Applicable only for a project that originated in an external system
1414  * @param p_late_start_date The late start date of the project. Applicable only for a project that originated in an external system
1415  * @param p_late_finish_date The late finish date of the project. Applicable only for a project that originated in an external system
1416  * @param p_scheduled_start_date The scheduled start date of the project.
1417  * @param p_scheduled_finish_date The scheduled finish date of the project.
1418  * @param p_attribute_category The descriptive flexfield category
1419  * @param p_attribute1 Descriptive flexfield segment
1420  * @param p_attribute2 Descriptive flexfield segment
1421  * @param p_attribute3 Descriptive flexfield segment
1422  * @param p_attribute4 Descriptive flexfield segment
1423  * @param p_attribute5 Descriptive flexfield segment
1424  * @param p_attribute6 Descriptive flexfield segment
1425  * @param p_attribute7 Descriptive flexfield segment
1426  * @param p_attribute8 Descriptive flexfield segment
1427  * @param p_attribute9 Descriptive flexfield segment
1428  * @param p_attribute10 Descriptive flexfield segment
1429  * @param p_output_tax_code Flag indicating whether tax rate defined for the project will be used for customer invoices.
1430  * @param p_retention_tax_code The tax rate defined for retention invoices.
1431  * @rep:paraminfo {@rep:precision 30}
1432  * @param p_project_currency_code Project currency code. The default value is the currency code of the set of books.
1433  * @param p_allow_cross_charge_flag Indicates whether cross charge is  allowed or not.
1434  * Default Value is 'N'. This value can be overridden at any task level.
1435  * @rep:paraminfo {@rep:precision 1}
1436  * @param p_project_rate_date Task-level default value for project rate date
1437  * @param p_project_rate_type Task-level default value for project rate type
1438  * @param p_cc_process_labor_flag Flag indicating whether cross charge processing is to be performed for labor
1439  * transactions charged to the project. The default value for the project template is N. The default value for a
1440  * project is the value on the project template. The value for the project is the default value for the task.
1441  * @param p_labor_tp_schedule_id Identifier of the transfer price schedule to use for cross charged labor transactions.
1442  * The default value for a project is the value on the project template. The value for the project is the default value for the task.
1443  * If cc_process_labor_flag is set to Y, this field is required.
1444  * @param p_labor_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when
1445  * determining the transfer price for labor transactions. . The default value for a project is the value on the project template.
1446  * The value for the project is the default value for the task.
1447  * @param p_cc_process_nl_flag Flag indicating whether cross charge processing is to be performed for non-labor transactions
1448  * charged to the project. The default value for the project template is N. The default value for a project is the value on the
1449  * project template. The value for the project is the default value for the task.
1450  * @rep:paraminfo {@rep:precision 1}
1451  * @param p_nl_tp_schedule_id Identifier of the transfer price schedule to use for cross charged non labor transactions.
1452  * The default value for a project is the value on the project template. The value for the project is the default value for the task
1453  * If cc_process_nl_flag is set to Y, this field is required.
1454  * @param p_nl_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when determining
1455  * the transfer price for non labor transactions. The default value for a project is the value on the project template.
1456  * The value for the project is the default value for the task.
1457  * @param p_cc_tax_task_id Identifier of the task to which intercompany tax items on the intercompany payables invoice are charged
1458  * @param p_role_list_id Identifier of the role list. The role list is a list of allowable roles that are displayed when the
1459  * members are assigned.
1460  * @param p_work_type_id Identifier of the work type
1461  * @param p_calendar_id Identifier of the calendar used on the project.
1462  * @param p_location_id Identifier of the project work site location.
1463  * @param p_probability_member_id Probability of a project becoming approved. This value is used as a weighting average for reporting.
1464  * @param p_project_value The OPPORTUNITY_VALUE converted to the project  functional currency
1465  * @param p_expected_approval_date The expected date of the project approval
1466  * @param p_cost_job_group_id Identifier of the job group that will be used for costing functionality
1467  * @param p_bill_job_group_id Identifier of the job group that will be used for billing functionality
1468  * @param p_emp_bill_rate_schedule_id Identifier for employee bill rate schedule
1469  * @param p_job_bill_rate_schedule_id Identifier for job bill rate schedule
1470  * @param p_invproc_currency_type Invoice processing currency type
1471  * @param p_revproc_currency_code Revenue processing currency code
1472  * @param p_project_bil_rate_date_code Exchange rate date type for determining the date to use for conversion from bill
1473  * transaction currency/ funding currency to project currency used for customer billing.
1474  * @param p_project_bil_rate_type Exchange rate type to use for conversion from bill transaction currency/ funding currency
1475  * to project currency used for customer billing.
1476  * @param p_project_bil_rate_date Exchange rate date to use for conversion from bill transaction currency/ funding currency
1477  * to project currency if Fixed Date rate date type is used for customer billing.
1478  * @param p_project_bil_exchange_rate Exchange rate to use for conversion from bill transaction currency/ funding currency
1479  * to project if User exchange rate type is used.
1480  * @param p_projfunc_currency_code Project functional currency.  The default value is the value entered for the associated set of books.
1481  * @param p_projfunc_bil_rate_date_code Exchange rate date type for determining the date to use for conversion from bill
1482  * transaction currency/ funding currency to project functional currency for customer billing
1483  * @param p_projfunc_bil_rate_type Exchange rate type to use for conversion from bill transaction currency/ funding currency
1484  * to project functional currency for customer billing
1485  * @param p_projfunc_bil_rate_date Exchange rate date to use for conversion from bill transaction currency/funding currency
1486  * to project functional currency if Fixed Date rate date type is used for customer billing
1487  * @param p_projfunc_bil_exchange_rate Exchange rate for conversion from bill transaction currency or
1488  * funding currency to project functional currency if the rate type is User
1489  * @param p_funding_rate_date_code Exchange rate date type for determining the date to use for conversion from bill transaction
1490  * currency to funding currency for customer billing
1491  * @param p_funding_rate_type Exchange rate type to use for conversion from bill transaction currency to funding currency for
1492  * customer billing
1493  * @param p_funding_rate_date Exchange rate date to use for conversion from bill  transaction currency to funding currency
1494  * if Fixed Date rate date type is used for customer billing
1495  * @param p_funding_exchange_rate Exchange rate to use for conversion from bill transaction currency to project or functional
1496  * currency if User exchange rate type is used
1497  * @param p_baseline_funding_flag Flag indicating whether baseline funding can be created without a revenue budget.
1498  * @rep:paraminfo {@rep:precision 1}
1499  * @param p_multi_currency_billing_flag Flag indicating whether multi-currency billing is allowed for this project
1500  * @rep:paraminfo {@rep:precision 1}
1501  * @param p_competence_match_wt Weighting value for competence match used to calculate score
1502  * @param p_availability_match_wt Weighting value for availability match used to calculate score
1503  * @param p_job_level_match_wt Weighting value for job level match used to calculate score
1504  * @param p_enable_automated_search Flag indicating whether automated candidate nomination is done for the requirements on a project
1505  * (whether the enable Automated Search check box is enabled).
1506  * @param p_search_min_availability The minimum required availability of a resource to be returned in the search result
1507  * @param p_search_org_hier_id The organization hierarchy for the search
1508  * @param p_search_starting_org_id The starting organization for the search
1509  * @param p_search_country_id The country for the search
1510  * @param p_min_cand_score_reqd_for_nom Minimum score required for a resource to be nominated as candidate on a requirement
1511  * @param p_max_num_of_sys_nom_cand Maximum number of candidates nominated
1512  * @param p_non_lab_std_bill_rt_sch_id Identifier of the non-labor standard bill rate schedule.
1513  * @param p_search_country_code Code used for country for the search
1514  * @param p_inv_by_bill_trans_curr_flag Flag indicating whether invoicing is by bill transaction currency
1515  * @rep:paraminfo {@rep:precision 1}
1516  * @param p_projfunc_cost_rate_type The default value for the project functional cost rate
1517  * @param p_projfunc_cost_rate_date The default value for the project functional cost rate date
1518  * @param p_assign_precedes_task Flag indicating whether assignment level attributes override task-level attributes
1519  * @param p_split_cost_from_wokplan_flag Split cost from bill flag
1520  * @rep:paraminfo {@rep:precision 1}
1521  * @param p_split_cost_from_bill_flag Split cost from workplan flag
1522  * @rep:paraminfo {@rep:precision 1}
1523  * @param p_adv_action_set_id The default advertisement action set of the project or the project template
1524  * @param p_start_adv_action_set_flag Flag indicating whether the advertisement action set will be started immediately after a
1525  * requirement is created
1526  * @rep:paraminfo {@rep:precision 1}
1527  * @param p_priority_code The priority code of the project.
1528  * @param p_retn_billing_inv_format_id Identifier of the retention billing invoice format.
1529  * @param p_retn_accounting_flag Flag indicating whether the retention accounting is enabled for the project
1530  * @param p_opp_value_currency_code The currency code for project opportunity value
1531  * @param p_revaluate_funding_flag Flag indicating whether the funding has to be revaluated
1532  * @rep:paraminfo {@rep:precision 1}
1533  * @param p_include_gains_losses_flag Flag indicating whether gains and losses  to be included in project revenue
1534  * @rep:paraminfo {@rep:precision 1}
1535  * @param p_security_level Security level of the project. 0 indicated the project is private. 100 indicates project is public.
1536  * @param p_labor_disc_reason_code Reason code for labor discount
1537  * @param p_non_labor_disc_Reason_code Discount reason code for non-labor
1538  * @param p_asset_allocation_method The method used to allocate indirect and common costs across the assets
1539  * assigned to a grouping level
1540  * @param p_capital_event_processing Capital event processing method.  Used to determine when cost and assets are grouped for
1541  * capitalization or retirement adjustment processing.
1542  * @param p_cint_rate_sch_id  Identifier of the capital interest rate schedule
1543  * @param p_cint_eligible_flag Flag used to determine whether the project is eligible for capitalized interest.
1544  * @rep:paraminfo {@rep:precision 1}
1545  * @param p_cint_stop_date Stop date for capital interest calculation
1546  * @param p_bill_To_Customer_id  Identifier of the bill-to customer
1547  * @param p_ship_To_Customer_id  Identifier of the ship-to customer
1548  * @param p_process_mode Processing mode
1549  * @param p_sys_program_flag Flag that indicates whether the project can work as a program.
1550  * Valid values are Y and N.
1551  * @rep:paraminfo {@rep:precision 1}
1552  * @param p_enable_top_task_cust_flag Flag that indicates whether to enable Top Task Customer
1553  * for the project. Valid values are Y and N.
1554  * @rep:paraminfo {@rep:precision 1}
1555  * @param p_enable_top_task_inv_mth_flag Flag that indicates whether to enable the top task invoice
1556  * method for the project. Valid values are Y and N.
1557  * @rep:paraminfo {@rep:precision 1}
1558  * @param p_projfunc_attr_for_ar_flag This is an internal attribute.
1559  * @rep:scope public
1560  * @rep:lifecycle active
1561  * @rep:displayname Create Multiple Projects: Load Project
1562  * @rep:category BUSINESS_ENTITY PA_PROJECT
1563  * @rep:compatibility S
1564 */
1565 PROCEDURE load_project
1566 ( p_api_version_number      IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1567  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
1568  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1569  ,p_pa_project_id       IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1570  ,p_pa_project_number       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1571  ,p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1572  ,p_project_name        IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1573  ,p_long_name           IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1574  ,p_created_from_project_id IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1575  ,p_carrying_out_organization_id IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1576  ,p_public_sector_flag      IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1577  ,p_project_status_code     IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1578  ,p_description         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1579  ,p_start_date          IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1580  ,p_completion_date     IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1581  ,p_distribution_rule       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1582  ,p_customer_id         IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1583  ,p_project_relationship_code   IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1584  ,p_actual_start_date           IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1585  ,p_actual_finish_date          IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1586  ,p_early_start_date            IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1587  ,p_early_finish_date           IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1588  ,p_late_start_date             IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1589  ,p_late_finish_date            IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1590  ,p_scheduled_start_date        IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1591  ,p_scheduled_finish_date       IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1592  ,p_attribute_category      IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1593  ,p_attribute1          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1594  ,p_attribute2          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1595  ,p_attribute3          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1596  ,p_attribute4          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1597  ,p_attribute5          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1598  ,p_attribute6          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1599  ,p_attribute7          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1600  ,p_attribute8          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1601  ,p_attribute9          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1602  ,p_attribute10         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1603  ,p_output_tax_code     IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1604  ,p_retention_tax_code  IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1605  ,p_project_currency_code IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1606  ,p_allow_cross_charge_flag IN VARCHAR2:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1607  ,p_project_rate_date       IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1608  ,p_project_rate_type       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1609  ,p_cc_process_labor_flag   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1610  ,p_labor_tp_schedule_id    IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1611  ,p_labor_tp_fixed_date     IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1612  ,p_cc_process_nl_flag   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1613  ,p_nl_tp_schedule_id    IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1614  ,p_nl_tp_fixed_date     IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1615  ,p_cc_tax_task_id       IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1616  ,p_role_list_id    IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1617  ,p_work_type_id    IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1618  ,p_calendar_id     IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1619  ,p_location_id     IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1620  ,p_probability_member_id   IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1621  ,p_project_value   IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1622  ,p_expected_approval_date   IN DATE   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1623  ,p_cost_job_group_id   IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1624  ,p_bill_job_group_id   IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1625  ,p_emp_bill_rate_schedule_id  IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1626  ,p_job_bill_rate_schedule_id  IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1627 --Sakthi MCB
1628  ,p_invproc_currency_type        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1629  ,p_revproc_currency_code        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1630  ,p_project_bil_rate_date_code   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1631  ,p_project_bil_rate_type        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1632  ,p_project_bil_rate_date        IN DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1633  ,p_project_bil_exchange_rate    IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1634  ,p_projfunc_currency_code      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1635  ,p_projfunc_bil_rate_date_code  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1636  ,p_projfunc_bil_rate_type       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1637  ,p_projfunc_bil_rate_date       IN DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1638  ,p_projfunc_bil_exchange_rate   IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1639  ,p_funding_rate_date_code  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1640  ,p_funding_rate_type       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1641  ,p_funding_rate_date       IN DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1642  ,p_funding_exchange_rate   IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1643  ,p_baseline_funding_flag        IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1644  ,p_multi_currency_billing_flag  IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1645  ,p_competence_match_wt          IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1646  ,p_availability_match_wt        IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1647  ,p_job_level_match_wt           IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1648  ,p_enable_automated_search      IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1649  ,p_search_min_availability      IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1650  ,p_search_org_hier_id           IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1651  ,p_search_starting_org_id       IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1652  ,p_search_country_id            IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1653  ,p_min_cand_score_reqd_for_nom  IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1654  ,p_max_num_of_sys_nom_cand      IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1655  ,p_non_lab_std_bill_rt_sch_id   IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1656  ,p_search_country_code          IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1657  ,p_inv_by_bill_trans_curr_flag  IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1658  ,p_projfunc_cost_rate_type      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1659  ,p_projfunc_cost_rate_date      IN DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1660 --Sakthi MCB
1661 --Sakthi Structure
1662  ,p_assign_precedes_task            IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1663  ,p_split_cost_from_wokplan_flag   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1664  ,p_split_cost_from_bill_flag       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1665 --Sakthi Structure
1666 --Advertisement
1667  ,p_adv_action_set_id              IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1668  ,p_start_adv_action_set_flag      IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1669 --Advertisement
1670 --Project Setup
1671  ,p_priority_code                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1672 --Project Setup
1673 --Retention
1674  ,p_retn_billing_inv_format_id     IN NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1675  ,p_retn_accounting_flag           IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1676 --Retention
1677 -- anlee opportunity changes
1678  ,p_opp_value_currency_code        VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1679 -- anlee
1680 -- patchset K changes
1681  ,p_revaluate_funding_flag         VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1682  ,p_include_gains_losses_flag    VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1683  ,p_security_level               IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1684  ,p_labor_disc_reason_code       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1685  ,p_non_labor_disc_reason_code   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1686 -- End of changes
1687 --PA L changes -- bug 2872708   --load_project
1688  ,p_asset_allocation_method       VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1689  ,p_capital_event_processing      VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1690  ,p_cint_rate_sch_id              NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1691  ,p_cint_eligible_flag            VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1692  ,p_cint_stop_date                DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1693 --end PA L changes -- bug 2872708
1694 
1695 -- crm changes
1696  ,p_bill_To_Customer_id          NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1697  ,p_ship_To_Customer_id          NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1698 -- crm changes
1699 -- PA L Changes 3010538
1700  ,p_process_mode         IN   VARCHAR2   := 'ONLINE'
1701 
1702 -- FP M changes begin (venkat)
1703  ,p_sys_program_flag            IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1704  , p_allow_multi_program_rollup  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR -- Bug # 5072032.
1705  ,p_enable_top_task_cust_flag      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1706  ,p_enable_top_task_inv_mth_flag    IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1707  ,p_projfunc_attr_for_ar_flag       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1708 -- FP M changes begin (venkat)
1709  ,p_ar_rec_notify_flag              IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR  -- 7508661 : EnC
1710  ,p_auto_release_pwp_inv            IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR  -- 7508661 : EnC
1711   ,p_bill_labor_accrual     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR   /* Added for 12.2Payroll billing ER 11899223 */
1712 -- ,p_adj_on_std_inv     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR                           /* Added for 12.2Payroll billing ER 11899223 */
1713  );
1714 
1715 /*#
1716  * This Load-Execute-Fetch API is used is used to load key members to a global PL/SQL table.
1717  * In order to execute this API the following list of API's should be executed in the following order.
1718  * INIT_PROJECT,
1719  * LOAD_PROJECT,
1720  * LOAD_TASK,
1721  * LOAD_CLASS_CATEGORY,
1722  * LOAD_KEY_MEMBER,
1723  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
1724  * FETCH_TASK and
1725  * CLEAR_PROJECT
1726  * @param p_api_version_number API standard version number
1727  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
1728  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
1729  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1730  * @param p_person_id Identifier of the person
1731  * @param p_project_role_type The type of role played by the person in the project.
1732  * @param p_start_date The start date from when the person is playing a role.
1733  * Default = sysdate
1734  * @param p_end_date Project End date
1735  * @rep:scope public
1736  * @rep:lifecycle active
1737  * @rep:displayname Create Multiple Projects-Load Key Member
1738  * @rep:category  BUSINESS_ENTITY PA_PROJECT
1739  * @rep:compatibility S
1740 */
1741 PROCEDURE load_key_member
1742 ( p_api_version_number      IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1743  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
1744  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1745  ,p_person_id           IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1746  ,p_project_role_type       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1747  ,p_project_role_meaning       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR -- Bug 6408593
1748  ,p_start_date          IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1749  ,p_end_date            IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE  );
1750 
1751 -- anlee org role changes
1752 
1753 /*#
1754  * This API is a Load-Execute-Fetch procedure used to load organization roles
1755  * from the client side to a PL/SQL table on the server side, where the roles will be used
1756  * by the Load-Execute-Fetch cycle. Please refer to the API user guide for more information
1757  * on required parameters and optional parameters of this API.
1758  * @param p_api_version_number API standard: version number
1759  * @rep:paraminfo {@rep:required}
1760  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
1761  * @rep:paraminfo {@rep:precision 1}
1762  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
1763  * @rep:paraminfo {@rep:precision 1}
1764  * @param p_resource_source_id Source identifier of the resource
1765  * @param p_project_role_type Project role type
1766  * @param p_start_date Start date of the organization role (DEFAULT = SYSDATE)
1767  * @param p_end_date End date of the organization role
1768  * @rep:scope public
1769  * @rep:lifecycle active
1770  * @rep:displayname Load Organization Role
1771  * @rep:category BUSINESS_ENTITY PA_PROJECT
1772  * @rep:compatibility S
1773  */
1774 PROCEDURE load_org_role
1775 ( p_api_version_number      IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1776  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
1777  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1778  ,p_resource_source_id      IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1779  ,p_project_role_type       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1780  ,p_start_date          IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1781  ,p_end_date            IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE  );
1782 
1783 /*#
1784  * This Load-Execute-Fetch API is used to load class categories to a global PL/SQL table.
1785  * In order to execute this API the following list of API's should be executed in the following order.
1786  * INIT_PROJECT,
1787  * LOAD_PROJECT,
1788  * LOAD_TASK,
1789  * LOAD_CLASS_CATEGORY,
1790  * LOAD_KEY_MEMBER,
1791  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
1792  * FETCH_TASK and
1793  * CLEAR_PROJECT
1794  * @param p_api_version_number API standard version number
1795  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
1796  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
1797  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1798  * @param p_class_category Class category
1799  * @param p_class_code Yes, Class code
1800  * @param p_code_percentage Class code percentage
1801  * @rep:scope public
1802  * @rep:lifecycle active
1803  * @rep:displayname Create Multiple Projects: Load Class Category
1804  * @rep:category BUSINESS_ENTITY PA_PROJECT
1805  * @rep:compatibility S
1806 */
1807 PROCEDURE load_class_category
1808 ( p_api_version_number      IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
1809  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
1810  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1811  ,p_class_category      IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1812  ,p_class_code          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
1813  ,p_new_class_code      IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR   -- Added for Bug 7028230
1814  ,p_code_percentage             IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM  );
1815 
1816 /*#
1817  * This API is used to load a task to a global PL/SQL table.
1818  * In order to execute this API the following list of API's should be executed in the following order.:
1819  * INIT_PROJECT,
1820  * LOAD_PROJECT,
1821  * LOAD_TASK,
1822  * LOAD_CLASS_CATEGORY,
1823  * LOAD_KEY_MEMBER,
1824  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
1825  * FETCH_TASK and
1826  * CLEAR_PROJECT.
1827  * @param p_api_version_number API standard version number
1828  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
1829  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
1830  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1831  * @param p_pm_task_reference  The reference code that uniquely identifies project's task in the external system
1832  * @param p_pa_task_id The reference code that uniquely identifies the task within a project in Oracle Projects
1833  * @param p_task_name The name that uniquely identifies the task within a project
1834  * @param p_long_task_name  Long name of the task
1835  * @param p_pa_task_number  The number that identifies the task in the Oracle projects
1836  * @param p_task_description Description of the task
1837  * @param p_task_start_date The start date of the task
1838  * @param p_task_completion_date The completion date of the task
1839  * @param p_pm_parent_task_reference The unique reference code that identifies the task's parent task
1840  * @param p_pa_parent_task_id The identifier of task's parent task in Oracle Projects
1841  * @param p_address_id The address of one of the customers that is logically linked to this task
1842  * @param p_carrying_out_organization_id The identifier of the organization that is responsible for the project work
1843  * @param p_service_type_code The type of work performed on the task
1844  * @param p_task_manager_person_id The identifier of the employee who manages the task
1845  * @param p_billable_flag Flag indicating whether items charged to the task can accrue revenue
1846  * @rep:paraminfo {@rep:precision 1}
1847  * @param p_chargeable_flag Flag indicating whether expenditure items can be charged to the task. Only lowest level tasks can be chargeable
1848  * @rep:paraminfo {@rep:precision 1}
1849  * @param p_ready_to_bill_flag Flag indicating whether the task is authorized to be invoiced
1850  * @rep:paraminfo {@rep:precision 1}
1851  * @param p_ready_to_distribute_flag Flag indicating whether the task is authorized for revenue accrual
1852  * @rep:paraminfo {@rep:precision 1}
1853  * @param p_limit_to_txn_controls_flag Flag indicating whether users can only charge expenditures
1854  * to the tasks that are listed in task transaction controls
1855  * @rep:paraminfo {@rep:precision 1}
1856  * @param p_labor_bill_rate_org_id  The identifier of the organization that owns the labor standard bill rate schedule
1857  * @param p_labor_std_bill_rate_schdl The labor standard bill rate schedule that is used to calculate revenue for labor
1858  * expenditure items charged to the task
1859  * @param p_labor_schedule_fixed_date The date used to determine the effective bill rates of the task standard labor bill rate schedule
1860  * @param p_labor_schedule_discount The discount percent on the task standard labor bill rate schedule
1861  * @param p_nl_bill_rate_org_id The identifier of the organization that owns the non-labor standard bill rate schedule
1862  * @param p_nl_std_bill_rate_schdl The non-labor standard bill rate schedule that is used to calculate revenue
1863  * for non-labor expenditure items charged to the task
1864  * @param p_nl_schedule_fixed_date The fixed date used to determine the effective bill rates of the standard non-labor bill rate schedule.
1865  * @param p_nl_schedule_discount The discount percent on the task standard non-labor bill rate schedule
1866  * @param p_labor_cost_multiplier_name The labor cost multiplier defined for the task of a premium project
1867  * @param p_cost_ind_rate_sch_id The identifier of the default costing burden schedule
1868  * @param p_rev_ind_rate_sch_id The identifier of the default revenue burden schedule
1869  * @param p_inv_ind_rate_sch_id The identifier of the default invoice burden schedule
1870  * @param p_cost_ind_sch_fixed_date The schedule fixed date of the firm costing burden schedule
1871  * @param p_rev_ind_sch_fixed_date The schedule fixed date of the firm revenue burden schedule
1872  * @param p_inv_ind_sch_fixed_date The schedule fixed date of the firm invoice burden schedule
1873  * @param p_labor_sch_type The schedule type of labor expenditure items
1874  * @param p_nl_sch_type The schedule type of non-labor expenditure items
1875  * @param p_actual_start_date The actual start date of the project. Applicable only for a project that originated in an external system.
1876  * @param p_actual_finish_date The actual end date of the project. Applicable only for a project that originated in an external system.
1877  * @param p_early_start_date The early start date of the project. Applicable only for a project that originated in an external system.
1878  * @param p_early_finish_date The early finish date of the project. Applicable only for a project that originated in an external system.
1879  * @param p_late_start_date The late start date of the project. Applicable only for a project that originated in an external system.
1880  * @param p_late_finish_date The late finish date of the project. Applicable only for a project that originated in an external system.
1881  * @param p_scheduled_start_date The scheduled start date of the project
1882  * @param p_scheduled_finish_date The scheduled finish date of the project
1883  * @param p_attribute_category Descriptive flexfield category
1884  * @param p_attribute1 Descriptive flexfield segment
1885  * @param p_attribute2 Descriptive flexfield segment
1886  * @param p_attribute3 Descriptive flexfield segment
1887  * @param p_attribute4 Descriptive flexfield segment
1888  * @param p_attribute5 Descriptive flexfield segment
1889  * @param p_attribute6 Descriptive flexfield segment
1890  * @param p_attribute7 Descriptive flexfield segment
1891  * @param p_attribute8 Descriptive flexfield segment
1892  * @param p_attribute9 Descriptive flexfield segment
1893  * @param p_attribute10 Descriptive flexfield segment
1894  * @param p_allow_cross_charge_flag Flag indicating whether cross charges are allowed
1895  * @param p_project_rate_date Task-level default value for project rate date
1896  * @param p_project_rate_type Task-level default value for project rate type
1897  * @param p_cc_process_labor_flag Flag indicating cross charge processing is to be performed for labor transactions charged to the project.
1898  * The default value for the project template is N. The default value for a project is the value on the project template. The value for
1899  * the project is the default value for the task.
1900  * @rep:paraminfo {@rep:precision 1}
1901  * @param p_labor_tp_schedule_id Identifier of the transfer price schedule to use for cross charged labor transactions. The default value
1902  * for a project is the value on the project template. The value for the project is the default value for the task. If cc_process_labor_flag
1903  * is set to Y, this field is required
1904  * @param p_labor_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when determining the transfer price
1905  * for labor transactions. The default value for a project is the value on the project template. The value for the project is
1906  * the default value for the task.
1907  * @param p_cc_process_nl_flag Flag indicating cross charge processing is to be performed for non-labor transactions charged to the project.
1908  * The default value for the project template is N. The default value for a project is the value on the project template. The value for the
1909  * project is the default value for the task.
1910  * @rep:paraminfo {@rep:precision 1}
1911  * @param p_nl_tp_schedule_id Identifier of the transfer price schedule to use for cross charged non-labor transactions. The default value
1912  * for a project is the value on the project template. The value for the project is the default value for the task. If cc_process_nl_flag
1913  * is set to Y, this field is required
1914  * @param p_nl_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when determining the transfer price
1915  * for non-labor transactions. The default value for a project is the value on the project template. The value for the project is the default
1916  * value for the task.
1917  * @param p_receive_project_invoice_flag Flag indicating whether the task cancan receive charges from internal supplies using interproject billing
1918  * via inter project billing
1919  * @rep:paraminfo {@rep:precision 1}
1920  * @param p_work_type_id Identifier of the work type
1921  * @param p_emp_bill_rate_schedule_id Identifier of the the employee bill rate schedule
1922  * @param p_job_bill_rate_schedule_id Identifier of the the job bill rate schedule
1923  * @param p_non_lab_std_bill_rt_sch_id Identifier of the the non-labor standard bill rate schedule
1924  * @param p_taskfunc_cost_rate_type Task-level default value for the project functional cost rate type
1925  * @param p_taskfunc_cost_rate_date Task-level default value for the project functional cost rate date
1926  * @param p_display_sequence Order of display
1927  * @param p_wbs_level The level of the task in the work breakdown structure
1928  * @param P_OBLIGATION_START_DATE The obligation start date of the workplan version
1929  * @param P_OBLIGATION_FINISH_DATE The obligation finish date of the workplan version
1930  * @param P_ESTIMATED_START_DATE The estimated start date of the workplan version
1931  * @param P_ESTIMATED_FINISH_DATE The estimated finish date of the workplan version
1932  * @param P_BASELINE_START_DATE The baseline start date for the task or the workplan
1933  * @param P_BASELINE_FINISH_DATE The baseline finish date for the task or the workplan
1934  * @param P_CLOSED_DATE The date on which the element status was set to Closed. This is a task-specific attribute.
1935  * @param P_WQ_UOM_CODE The unit of measure used for work quantity for a task
1936  * @param P_WQ_ITEM_CODE The work item for work quantity for a task
1937  * @param P_STATUS_CODE The status of the project element
1938  * @param P_WF_STATUS_CODE  The status of workflow associated with the element
1939  * @param P_PM_SOURCE_CODE Identifier of the source code system
1940  * @param P_PRIORITY_CODE The priority of the task. This is a task-specific attribute.
1941  * @param P_MILESTONE_FLAG  Flag indicating whether the task version is a milestone. This is a task-specific attribute.
1942  * @param P_CRITICAL_FLAG Flag indicating whether the task version is part of the critical path. This is a task-specific attribute..
1943  * @param P_INC_PROJ_PROGRESS_FLAG Project progress flag
1944  * @param P_LINK_TASK_FLAG  Flag indicating whether a task is used for linking purposes and is not displayed in the user interface
1945  * @param P_CALENDAR_ID The identifier of the work calendar used to schedule the task. This is a task-specific attribute.
1946  * @param P_PLANNED_EFFORT The planned effort for the task
1947  * @param P_DURATION The duration between scheduled start date and scheduled end date using the work calendar
1948  * @param P_PLANNED_WORK_QUANTITY The planned work quantity for the task
1949  * @param P_TASK_TYPE Type of task.
1950  * @param p_labor_disc_reason_code Labor discount reason code
1951  * @param p_non_labor_disc_reason_code Non-labor discount reason code
1952  * @param p_retirement_cost_flag Flag indicating whether the task is marked for retirement cost collection
1953  * @rep:paraminfo  {@rep:precision 1}
1954  * @param p_cint_eligible_flag Flag indicating whether the project is eligible for capitalized interest.
1955  * @rep:paraminfo  {@rep:precision 1}
1956  * @param p_cint_stop_date  Stop date for capital interest calculation
1957  * @param p_pred_string The string containing the predecessor information
1958  * @rep:paraminfo {@rep:precision 400} {@rep:required}
1959  * @param p_pred_delimiter Delimiter that separates predecessors in the predecessor string
1960  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1961  * @param p_base_percent_comp_deriv_code Base percent complete derivation code for the task
1962  * @rep:paraminfo {@rep:precision 30} {@rep:required}
1963  * @param p_sch_tool_tsk_type_code Default scheduling tool task type for the task version
1964  * @rep:paraminfo {@rep:precision 30} {@rep:required}
1965  * @param p_constraint_type_code Constraint type for the task version
1966  * @rep:paraminfo {@rep:precision 30} {@rep:required}
1967  * @param p_constraint_date Constraint date for the task version
1968  * @rep:paraminfo {@rep:required}
1969  * @param p_free_slack Free slack for the task version
1970  * @rep:paraminfo {@rep:required}
1971  * @param p_total_slack Total slack for the task version
1972  * @rep:paraminfo {@rep:required}
1973  * @param p_effort_driven_flag Flag that indicates whether the task is effort driven
1974  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1975  * @param p_level_assignments_flag Flag that indicates whether the assignments on this task should be leveled
1976  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1977  * @param p_invoice_method The invoice method for the task. This parameter is valid only if invoice method at top task is enabled.
1978  * @rep:paraminfo {@rep:precision 30} {@rep:required}
1979  * @param p_customer_id The customer for the task. This parameter is valid only if customer at top task is enabled.
1980  * @rep:paraminfo {@rep:required}
1981  * @param p_gen_etc_source_code Estimate to complete source
1982  * @rep:paraminfo {@rep:precision 30} {@rep:required}
1983  * @param p_financial_task_flag Flag that indicates whether the task is a financial task or not.
1984  * This flag is valid only for partially shared structures. Tasks that are above this level are used
1985  * for financial management.
1986  * @rep:paraminfo {@rep:precision 1} {@rep:required}
1987  * @param p_mapped_task_id Mapped task ID. This parameter is applicable only in case of split-mapped structure
1988  * sharing between workplan and financial structures.
1989  * @rep:paraminfo {@rep:required}
1990  * @param p_mapped_task_reference Mapped task reference
1991  * @rep:paraminfo {@rep:precision 150} {@rep:required}
1992  * @param p_deliverable Deliverable reference to be associated with the task
1993  * @rep:paraminfo {@rep:precision 4000}
1994  * @param p_deliverable_id Deliverable ID to be associated with the task
1995  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
1996  * @param p_ext_act_duration From the external application, the actual duration
1997  * @rep:paraminfo {@rep:required}
1998  * @param p_ext_remain_duration  From the external application, the remaining duration
1999  * @rep:paraminfo {@rep:required}
2000  * @param p_ext_sch_duration From the external application, the scheduled duration
2001  * @rep:paraminfo {@rep:required}
2002  * @param p_etc_effort Estimated remaining effort for the task
2003  * @rep:paraminfo {@rep:required}
2004  * @param p_percent_complete Percentage of work complete on the task.
2005  * @rep:paraminfo {@rep:required}
2006  * @rep:scope public
2007  * @rep:lifecycle active
2008  * @rep:displayname Create Multiple Tasks: Load
2009  * @rep:category BUSINESS_ENTITY PA_PROJECT
2010  * @rep:category BUSINESS_ENTITY PA_TASK
2011  * @rep:compatibility S
2012 */
2013 PROCEDURE load_task
2014 (  p_api_version_number         IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2015   ,p_init_msg_list          IN  VARCHAR2    := FND_API.G_FALSE
2016   ,p_return_status          OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2017   ,p_pm_task_reference          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2018   ,p_pa_task_id                         IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2019   ,p_task_name              IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2020   ,p_long_task_name         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2021   ,p_pa_task_number             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2022   ,p_task_description           IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2023   ,p_task_start_date            IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2024   ,p_task_completion_date       IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2025   ,p_pm_parent_task_reference       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2026   ,p_pa_parent_task_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2027   ,p_address_id             IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2028   ,p_carrying_out_organization_id   IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2029   ,p_service_type_code          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2030   ,p_task_manager_person_id     IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2031   ,p_billable_flag          IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2032   ,p_chargeable_flag            IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2033   ,p_ready_to_bill_flag         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2034   ,p_ready_to_distribute_flag       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2035   ,p_limit_to_txn_controls_flag     IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2036   ,p_labor_bill_rate_org_id     IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2037   ,p_labor_std_bill_rate_schdl      IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2038   ,p_labor_schedule_fixed_date      IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2039   ,p_labor_schedule_discount        IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2040   ,p_nl_bill_rate_org_id        IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2041   ,p_nl_std_bill_rate_schdl     IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2042   ,p_nl_schedule_fixed_date     IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2043   ,p_nl_schedule_discount       IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2044   ,p_labor_cost_multiplier_name     IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2045   ,p_cost_ind_rate_sch_id       IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2046   ,p_rev_ind_rate_sch_id        IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2047   ,p_inv_ind_rate_sch_id        IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2048   ,p_cost_ind_sch_fixed_date        IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2049   ,p_rev_ind_sch_fixed_date     IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2050   ,p_inv_ind_sch_fixed_date     IN  DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2051   ,p_labor_sch_type         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2052   ,p_nl_sch_type            IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2053  , p_actual_start_date                  IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2054  , p_actual_finish_date                 IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2055  , p_early_start_date                   IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2056  , p_early_finish_date                  IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2057  , p_late_start_date                    IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2058  , p_late_finish_date                   IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2059  , p_scheduled_start_date               IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2060  , p_scheduled_finish_date              IN      DATE            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2061   ,p_tasks_dff                    IN VARCHAR2    := 'N'--bug 6153503
2062   ,p_attribute_category         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2063   ,p_attribute1             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2064   ,p_attribute2             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2065   ,p_attribute3             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2066   ,p_attribute4             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2067   ,p_attribute5             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2068   ,p_attribute6             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2069   ,p_attribute7             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2070   ,p_attribute8             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2071   ,p_attribute9             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2072   ,p_attribute10            IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2073   --bug 6153503
2074   ,p_attribute11             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2075   ,p_attribute12             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2076   ,p_attribute13             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2077   ,p_attribute14             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2078   ,p_attribute15             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2079   --end bug 6153503
2080   ,p_allow_cross_charge_flag IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2081   ,p_project_rate_date       IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2082   ,p_project_rate_type       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2083   ,p_cc_process_labor_flag  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2084   ,p_labor_tp_schedule_id   IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2085   ,p_labor_tp_fixed_date    IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2086   ,p_cc_process_nl_flag     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2087   ,p_nl_tp_schedule_id      IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2088   ,p_nl_tp_fixed_date       IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2089   ,p_receive_project_invoice_flag IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2090   ,p_work_type_id           IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2091   ,p_emp_bill_rate_schedule_id  IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2092   ,p_job_bill_rate_schedule_id  IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2093 --Sakthi  MCB
2094  ,p_non_lab_std_bill_rt_sch_id  IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2095  ,p_taskfunc_cost_rate_type     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2096  ,p_taskfunc_cost_rate_date     IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2097 --Sakthi  MCB
2098  ,p_display_sequence        IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2099  ,p_wbs_level               IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2100 --Project structure
2101  ,P_OBLIGATION_START_DATE              IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2102  ,P_OBLIGATION_FINISH_DATE             IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2103  ,P_ESTIMATED_START_DATE               IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2104  ,P_ESTIMATED_FINISH_DATE              IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2105  ,P_BASELINE_START_DATE                IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2106  ,P_BASELINE_FINISH_DATE               IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2107  ,P_CLOSED_DATE                        IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2108  ,P_WQ_UOM_CODE                        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2109  ,P_WQ_ITEM_CODE                       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2110  ,P_STATUS_CODE                        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2111  ,P_WF_STATUS_CODE                     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2112  ,P_PM_SOURCE_CODE                      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2113  ,P_PRIORITY_CODE                      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2114  ,P_MILESTONE_FLAG                     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2115  ,P_CRITICAL_FLAG                      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2116  ,P_INC_PROJ_PROGRESS_FLAG             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2117  ,P_LINK_TASK_FLAG                     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2118  ,P_CALENDAR_ID                        IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2119  ,P_PLANNED_EFFORT                     IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2120  ,P_DURATION                           IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2121  ,P_PLANNED_WORK_QUANTITY              IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2122  ,P_TASK_TYPE                          IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2123 --Project structure
2124  ,p_labor_disc_reason_code       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2125  ,p_non_labor_disc_reason_code   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2126 --PA L changes -- bug 2872708  --load_task
2127  ,p_retirement_cost_flag          VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2128  ,p_cint_eligible_flag            VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2129  ,p_cint_stop_date                DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2130 --end PA L changes -- bug 2872708
2131 -- FP-M Bug # 3301192
2132  ,p_pred_string                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2133 -- ,p_pred_delimiter                IN VARCHAR2    DEFAULT ','
2134  ,p_pred_delimiter                IN VARCHAR2   :=  PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2135 -- FP M changes begin (venkat)
2136   ,p_base_percent_comp_deriv_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2137   ,p_sch_tool_tsk_type_code   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2138   ,p_constraint_type_code       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2139   ,p_constraint_date            IN DATE  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2140   ,p_free_slack             IN NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2141   ,p_total_slack                IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2142   ,p_effort_driven_flag         IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2143   ,p_level_assignments_flag     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2144   ,p_invoice_method             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2145   ,p_customer_id                IN NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2146   ,p_gen_etc_source_code            IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2147 -- FP M changes end (venkat)
2148 -- FP M changes start (Mapping )
2149    ,p_financial_task_flag        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR  --SMukka
2150    ,p_mapped_task_id             IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM   --SMukka
2151    ,p_mapped_task_reference      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR  --SMukka
2152 -- FP M changes end (Mapping )
2153   ,p_deliverable                IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR    --3435905
2154   ,p_deliverable_id             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM     -- 3661788 Added IN parameter
2155 -- (begin venkat) new params for bug #3450684 --------------------------------------
2156    ,p_ext_act_duration           IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM --Bug no 3450684
2157   ,p_ext_remain_duration         IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM --Bug no 3450684
2158   ,p_ext_sch_duration            IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM --Bug no 3450684
2159 -- (end venkat) new params for bug #3450684 --------------------------------------
2160 
2161 -- Progress Management Changes. Bug # 3420093.
2162   ,p_etc_effort                 IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2163   ,p_percent_complete           IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2164     ,p_adj_on_std_inv             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2165 -- Progress Management Changes. Bug # 3420093.
2166 
2167   );
2168 
2169 /*#
2170  * This Load-Execute-Fetch API is used to create a project and its tasks using the data that is stored in the global tables
2171  * during the Load process.
2172  * INIT_PROJECT,
2173  * LOAD_PROJECT,
2174  * LOAD_TASK,
2175  * LOAD_CLASS_CATEGORY,
2176  * LOAD_KEY_MEMBER,
2177  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
2178  * FETCH_TASK and
2179  * CLEAR_PROJECT
2180  * @param p_api_version_number API standard version number
2181  * @param p_commit API standard (default = F): indicates if transaction will be committed
2182  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2183  * @param p_msg_count API standard: number of error messages
2184  * @rep:paraminfo {@rep:required}
2185  * @param p_msg_data API standard: error message
2186  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2187  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2188  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2189  * @param p_workflow_started Indicates if a workflow has been started (Y or N)
2190  * @rep:paraminfo {@rep:required}
2191  * @param p_pm_product_code Identifier of the external system from which the project was imported
2192  * @rep:paraminfo {@rep:precision 25}
2193  * @param p_op_validate_flag Indicates whether the system performs scheduling validations. Default is Y.
2194  * @rep:paraminfo {@rep:precision 1}
2195  * @param p_pa_project_id The unique Oracle Projects identification code for the project
2196  * @rep:paraminfo {@rep:precision 25} {@rep:required}
2197  * @param p_pa_project_number  The unique Oracle Projects number for the Project
2198  * @rep:paraminfo {@rep:precision 25} {@rep:required}
2199  * @rep:scope public
2200  * @rep:lifecycle active
2201  * @rep:displayname Create Multiple Projects: Execute Create Project
2202  * @rep:category BUSINESS_ENTITY PA_PROJECT
2203  * @rep:category BUSINESS_ENTITY PA_TASK
2204  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
2205  * @rep:compatibility S
2206 */
2207 PROCEDURE execute_create_project
2208 ( p_api_version_number          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2209  ,p_commit              IN  VARCHAR2    := FND_API.G_FALSE
2210  ,p_init_msg_list                         IN    VARCHAR2    := FND_API.G_FALSE
2211  ,p_msg_count               OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2212  ,p_msg_data                OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2213  ,p_return_status                         OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2214  ,p_workflow_started                      OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2215  ,p_pm_product_code         IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2216  ,p_op_validate_flag     IN  VARCHAR2  := 'Y'--added by rtarway, 4218977
2217  ,p_pa_project_id           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2218  ,p_pa_project_number           OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2219 );
2220 
2221 /*#
2222  * This Load Execute Fetch API is used to fetch output parameters related to tasks.
2223  * In order to execute this API the following list of API's should be executed in the following order.
2224  * INIT_PROJECT,
2225  * LOAD_PROJECT,
2226  * LOAD_TASK,
2227  * LOAD_CLASS_CATEGORY,
2228  * LOAD_KEY_MEMBER,
2229  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
2230  * FETCH_TASK and
2231  * CLEAR_PROJECT
2232  * @param p_api_version_number API standard version number
2233  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2234  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2235  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2236  * @param p_task_index Pointer to a single task
2237  * @param p_pa_task_id Unique id for the task to be fetched
2238  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2239  * @param p_pm_task_reference The reference code that identifies the task in the external system
2240  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2241  * @param p_task_return_status  Indicates whether the API has handled the task successfully. 'S'
2242  * indicates success. E indicates a business rule violation, and U indicates that an unexpected error occurred.
2243  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2244  * @rep:scope public
2245  * @rep:lifecycle active
2246  * @rep:displayname Create Multiple Tasks: Fetch
2247  * @rep:category BUSINESS_ENTITY PA_PROJECT
2248  * @rep:category BUSINESS_ENTITY PA_TASK
2249  * @rep:compatibility S
2250 */
2251 PROCEDURE fetch_task
2252 ( p_api_version_number      IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2253  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
2254  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2255  ,p_task_index          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2256  ,p_pa_task_id          OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2257  ,p_pm_task_reference       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2258  ,p_task_return_status      OUT NOCOPY VARCHAR2                ); --File.Sql.39 bug 4440895
2259 
2260 /*#
2261  * This API procedure is used to clear the global structures created during the load process.
2262  * INIT_PROJECT,
2263  * LOAD_PROJECT,
2264  * LOAD_TASK,
2265  * LOAD_CLASS_CATEGORY,
2266  * LOAD_KEY_MEMBER,
2267  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
2268  * FETCH_TASK and
2269  * CLEAR_PROJECT
2270  * @rep:scope public
2271  * @rep:lifecycle active
2272  * @rep:displayname Create Multiple Projects: Clear Project
2273  * @rep:category BUSINESS_ENTITY PA_PROJECT
2274  * @rep:compatibility S
2275 */
2276 PROCEDURE clear_project;
2277 
2278 /*#
2279  * This API is used to determine if you can delete a task.
2280  * @param p_api_version_number API standard version number
2281  * @rep:paraminfo {@rep:required}
2282  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2283  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2284  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2285  * @param p_msg_count API standard: number of error messages
2286  * @rep:paraminfo {@rep:required}
2287  * @param p_msg_data API standard: error message
2288  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2289  * @param p_project_id The unique identifier of the project in Oracle Projects
2290  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2291  * @param p_task_id The reference code that uniquely identifies a task within a project in Oracle Projects
2292  * @param p_pm_task_reference The reference code that identifies the task in the external system
2293  * @param p_structure_type Identifier of the project structure type
2294  * @param p_task_version_id The reference code that identifies the task in the external system
2295  * @param p_delete_task_ok_flag Flag indicating whether or not the task number can be changed
2296  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2297  * @rep:scope public
2298  * @rep:lifecycle active
2299  * @rep:displayname Verify Task Deletion
2300  * @rep:category BUSINESS_ENTITY PA_PROJECT
2301  * @rep:category BUSINESS_ENTITY PA_TASK
2302  * @rep:compatibility S
2303 */
2304 PROCEDURE Check_Delete_Task_OK
2305 ( p_api_version_number      IN  NUMBER
2306 , p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
2307 , p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2308 , p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2309 , p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2310 , p_project_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2311 , p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2312 , p_task_id         IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2313 , p_pm_task_reference       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2314 --Project Structure changes done for bug 2765115
2315 , p_structure_type              IN      VARCHAR2        := 'FINANCIAL'
2316 , p_task_version_id     IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2317 --END Project Structure changes done for bug 2765115
2318 , p_delete_task_ok_flag     OUT NOCOPY VARCHAR2                ); --File.Sql.39 bug 4440895
2319 
2320 /*#
2321  * This API is used to determine if a subtask can be added to a parent task.
2322  * @param p_api_version_number API standard version number
2323  * @rep:paraminfo {@rep:required}
2324  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2325  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2326  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2327  * @param p_msg_count API standard: number of error messages
2328  * @rep:paraminfo {@rep:required}
2329  * @param p_msg_data API standard: error message
2330  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2331  * @param p_project_id The unique identifier of the project in Oracle Projects
2332  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2333  * @param p_task_id The reference code that uniquely identifies a task within a project in Oracle Projects
2334  * @param p_pm_task_reference The reference code that identifies the task in the external system
2335  * @param p_add_subtask_ok_flag Flag indicating whether or not a subtask can be added to this task
2336  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2337  * @rep:scope public
2338  * @rep:lifecycle active
2339  * @rep:displayname Verify Subtask Addition
2340  * @rep:category BUSINESS_ENTITY PA_PROJECT
2341  * @rep:category BUSINESS_ENTITY PA_TASK
2342  * @rep:compatibility S
2343 */
2344 PROCEDURE Check_Add_Subtask_OK
2345 (p_api_version_number       IN  NUMBER
2346 ,p_init_msg_list        IN  VARCHAR2    := FND_API.G_FALSE
2347 , p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2348 , p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2349 , p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2350 , p_project_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2351 , p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2352 , p_task_id         IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2353 , p_pm_task_reference       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2354 , p_add_subtask_ok_flag     OUT NOCOPY VARCHAR2                ); --File.Sql.39 bug 4440895
2355 
2356 /*#
2357  * This API is used to determine if a new or changed task reference (PM_TASK_REFERENCE) is unique.
2358  * @param p_api_version_number API standard version number
2359  * @rep:paraminfo {@rep:required}
2360  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2361  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2362  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2363  * @param p_msg_count API standard: number of error messages
2364  * @rep:paraminfo {@rep:required}
2365  * @param p_msg_data API standard: error message
2366  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2367  * @param p_project_id The unique identifier of the project in Oracle Projects
2368  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2369  * @param p_pm_task_reference The reference code that identifies the task in the external system
2370  * @rep:paraminfo {@rep:required}
2371  * @param p_unique_task_ref_flag Flag indicating whether or not a subtask can be added to this task
2372  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2373  * @rep:scope public
2374  * @rep:lifecycle active
2375  * @rep:displayname Verify Task Reference Uniqueness
2376  * @rep:category BUSINESS_ENTITY PA_PROJECT
2377  * @rep:category BUSINESS_ENTITY PA_TASK
2378  * @rep:compatibility S
2379 */
2380 PROCEDURE Check_Unique_Task_Reference
2381 (p_api_version_number       IN  NUMBER
2382 , p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
2383 , p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2384 , p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2385 , p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2386 , p_project_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2387 , p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2388 , p_pm_task_reference       IN  VARCHAR2
2389 , p_unique_task_ref_flag    OUT NOCOPY VARCHAR2                ); --File.Sql.39 bug 4440895
2390 
2391 /*#
2392  * This API is used to determine if a new or changed project reference(PM_PROJECT_REFERENCE) is unique.
2393  * @param p_api_version_number API standard version number
2394  * @rep:paraminfo {@rep:required}
2395  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2396  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2397  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2398  * @param p_msg_count API standard: number of error messages
2399  * @rep:paraminfo {@rep:required}
2400  * @param p_msg_data API standard: error message
2401  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2402  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2403  * @rep:paraminfo {@rep:required}
2404  * @param p_unique_project_ref_flag Flag indicating whether or not this project reference is unique in Oracle Projects
2405  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2406  * @rep:scope public
2407  * @rep:lifecycle active
2408  * @rep:displayname Verify Project Reference Uniqueness
2409  * @rep:category BUSINESS_ENTITY PA_PROJECT
2410  * @rep:compatibility S
2411 */
2412 PROCEDURE Check_Unique_Project_Reference
2413 (p_api_version_number       IN  NUMBER
2414 , p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
2415 , p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2416 , p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2417 , p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2418 , p_pm_project_reference    IN  VARCHAR2
2419 , p_unique_project_ref_flag OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2420 );
2421 
2422 /*#
2423  * This API is used to determine if you can delete a project.
2424  * @param p_api_version_number API standard version number
2425  * @rep:paraminfo {@rep:required}
2426  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2427  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2428  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2429  * @param p_msg_count API standard: number of error messages
2430  * @rep:paraminfo {@rep:required}
2431  * @param p_msg_data API standard: error message
2432  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2433  * @param p_project_id The unique identifier of the project in Oracle Projects
2434  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2435  * @param p_delete_project_ok_flag Flag indicating whether or not the project can be deleted
2436  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2437  * @rep:scope public
2438  * @rep:lifecycle active
2439  * @rep:displayname Validate Project Deletion
2440  * @rep:category BUSINESS_ENTITY PA_PROJECT
2441  * @rep:compatibility S
2442 */
2443 PROCEDURE Check_Delete_Project_OK
2444 (p_api_version_number       IN  NUMBER
2445 , p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
2446 , p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2447 , p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2448 , p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2449 , p_project_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2450 , p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2451 , p_delete_project_ok_flag  OUT NOCOPY VARCHAR2                ); --File.Sql.39 bug 4440895
2452 
2453 /*#
2454  * This API is used to determine if you can move a task from one parent task to another. You
2455  * can move a task as long as it retains the same top task
2456  * @param p_api_version_number API standard version number
2457  * @rep:paraminfo {@rep:required}
2458  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2459  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2460  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2461  * @param p_msg_count API standard: number of error messages
2462  * @rep:paraminfo {@rep:required}
2463  * @param p_msg_data API standard: error message
2464  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2465  * @param p_project_id The unique identifier of the project in Oracle Projects
2466  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2467  * @param p_task_id The reference code that uniquely identifies a task within a project in Oracle Projects
2468  * @param p_pm_task_reference The reference code that identifies the task in the external system
2469  * @param p_new_parent_task_id The Oracle Projects identification code of the new parent task
2470  * @param p_pm_new_parent_task_reference The external system reference code of the new parent task
2471  * @param p_change_parent_ok_flag Flag indicating whether or not this task can be assigned to a new parent task
2472  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2473  * @rep:scope public
2474  * @rep:lifecycle active
2475  * @rep:displayname Verify Parent Change
2476  * @rep:category BUSINESS_ENTITY PA_PROJECT
2477  * @rep:category BUSINESS_ENTITY PA_TASK
2478  * @rep:compatibility S
2479 */
2480 PROCEDURE Check_Change_Parent_OK
2481 (p_api_version_number        IN NUMBER
2482 , p_init_msg_list        IN VARCHAR2    := FND_API.G_FALSE
2483 , p_return_status        OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2484 , p_msg_count            OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
2485 , p_msg_data             OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2486 , p_project_id           IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2487 , p_pm_project_reference     IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2488 , p_task_id          IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2489 , p_pm_task_reference        IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2490 , p_new_parent_task_id       IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2491 , p_pm_new_parent_task_reference IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2492 , p_change_parent_ok_flag    OUT    NOCOPY VARCHAR2                ); --File.Sql.39 bug 4440895
2493 
2494 /*#
2495  * This API is used to determine if you can change the CARRYING_OUT_ORGANIZATION_ID field for a particular project or task.
2496  * @param p_api_version_number API standard version number
2497  * @rep:paraminfo {@rep:required}
2498  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2499  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2500  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2501  * @param p_msg_count API standard: number of error messages
2502  * @rep:paraminfo {@rep:required}
2503  * @param p_msg_data API standard: error message
2504  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2505  * @param p_project_id The unique identifier of the project in Oracle Projects
2506  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2507  * @param p_change_project_org_ok_flag The reference code that uniquely identifies a task within a project in Oracle Projects
2508  * @rep:paraminfo {@rep:required}
2509  * @rep:scope public
2510  * @rep:lifecycle active
2511  * @rep:displayname Validate Project Organization Change
2512  * @rep:category BUSINESS_ENTITY PA_PROJECT
2513  * @rep:category BUSINESS_ENTITY PA_TASK
2514  * @rep:compatibility S
2515 */
2516 PROCEDURE Check_Change_Project_Org_OK
2517 (p_api_version_number       IN  NUMBER
2518 , p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
2519 , p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2520 , p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2521 , p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2522 , p_project_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2523 , p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2524 , p_change_project_org_ok_flag  OUT NOCOPY VARCHAR2                ); --File.Sql.39 bug 4440895
2525 
2526 /*#
2527  * This API is used to determine if a new or changed task number is unique within a project.
2528  * @param p_api_version_number API standard version number
2529  * @rep:paraminfo {@rep:required}
2530  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2531  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2532  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2533  * @param p_msg_count API standard: number of error messages
2534  * @rep:paraminfo {@rep:required}
2535  * @param p_msg_data API standard: error message
2536  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2537  * @param p_project_id The unique identifier of the project in Oracle Projects
2538  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2539  * @param p_task_number The number that identifies the task in Oracle Projects
2540  * @rep:paraminfo {@rep:required}
2541  * @param p_unique_task_number_flag Flag indicating whether or not this task number is unique in the project within Oracle Projects
2542  * @rep:scope public
2543  * @rep:lifecycle active
2544  * @rep:displayname Verify Task Number Uniqueness
2545  * @rep:category BUSINESS_ENTITY PA_PROJECT
2546  * @rep:category BUSINESS_ENTITY PA_TASK
2547  * @rep:compatibility S
2548 */
2549 PROCEDURE Check_Unique_Task_Number
2550 (p_api_version_number       IN  NUMBER
2551 , p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
2552 , p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2553 , p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2554 , p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2555 , p_project_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2556 , p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2557 , p_task_number         IN  VARCHAR2
2558 , p_unique_task_number_flag OUT NOCOPY VARCHAR2                ); --File.Sql.39 bug 4440895
2559 
2560 /*#
2561  * This API is used to determine if you can change a tasks number.
2562  * @param p_api_version_number API standard version number
2563  * @rep:paraminfo {@rep:required}
2564  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2565  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2566  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2567  * @param p_msg_count API standard: number of error messages
2568  * @rep:paraminfo {@rep:required}
2569  * @param p_msg_data API standard: error message
2570  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2571  * @param p_project_id The unique identifier of the project in Oracle Projects
2572  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2573  * @param p_task_id The reference code that uniquely identifies a task within a project in Oracle Projects
2574  * @param p_pm_task_reference The reference code that identifies the task in the external system
2575  * @param p_task_number_change_Ok_flag Flag indicating whether or not the task number can be changed
2576  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2577  * @rep:scope public
2578  * @rep:lifecycle active
2579  * @rep:displayname Verify Task Number Change
2580  * @rep:category BUSINESS_ENTITY PA_PROJECT
2581  * @rep:category BUSINESS_ENTITY PA_TASK
2582  * @rep:compatibility S
2583 */
2584 PROCEDURE Check_Task_Number_Change_Ok
2585 ( p_api_version_number      IN  NUMBER
2586 , p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
2587 , p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2588 , p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
2589 , p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2590 , p_project_id          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2591 , p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2592 , p_task_id         IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2593 , p_pm_task_reference       IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
2594 , p_task_number_change_Ok_flag  OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2595 );
2596 
2597 /*#
2598  * This API procedure pushes project and task information from your external system to Oracle Projects to reflect any
2599  * changes you have made in the external system.
2600  * @param p_api_version_number API standard version number
2601  * @param p_commit API standard (default = F): indicates if transaction will be committed
2602  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2603  * @param p_msg_count API standard: number of error messages
2604  * @rep:paraminfo {@rep:required}
2605  * @param p_msg_data API standard: error message
2606  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2607  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2608  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2609  * @param p_workflow_started Flag indicating whether a workflow has been started
2610  * @rep:paraminfo {@rep:required}
2611  * @param p_pm_product_code Identifier of the external system from which the project was imported
2612  * @rep:paraminfo {@rep:precision 25}
2613  * @param p_op_validate_flag Indicates whether the system performs scheduling validations.
2614  * @rep:paraminfo {@rep:precision 1}
2615  * @param p_project_in Input project details
2616  * @rep:paraminfo {@rep:required}
2617  * @param p_project_out Output project details
2618  * @rep:paraminfo {@rep:required}
2619  * @param p_customers_in Input customer details
2620  * @param p_key_members The identifier for the role that the members have on the project
2621  * @rep:paraminfo {@rep:required}
2622  * @param p_class_categories Identifier of the the categories by which the project is classified
2623  * @rep:paraminfo {@rep:required}
2624  * @param p_tasks_in  Input task details of the project
2625  * @rep:paraminfo {@rep:required}
2626  * @param p_tasks_out Output task details of the project
2627  * @rep:paraminfo {@rep:required}
2628  * @param p_org_roles Identifier of the organization roles for project
2629  * @param p_structure_in Identifier of structure data
2630  * @param p_ext_attr_tbl_in Table of external attributes
2631  * @param p_pass_entire_structure Flag indicating whether to pass entire structure.If you use the UPDATE_PROJECT API to
2632  * update structure tasks, and the financial and workplan
2633  * structures are either shared or split, this parameter
2634  * enables updates in one structure to pass to the
2635  * other structure.This enables you to take advantage
2636  * of bulk processing. When workplan and financial
2637  * structures are shared or split, this parameter
2638  * needs to be passed as 'Y.' When this happens, the
2639  * entire structure needs to be passed. Default = 'N'
2640  * @rep:paraminfo {@rep:precision 1}
2641  * @param p_deliverables_in Input deliverable details
2642  * @param p_deliverable_actions_in Input deliverable action details
2643  * @param p_update_mode This parameter can have the following
2644  * two values: PA_TASKS or PA_STRUCTURES. The default value is
2645  * PA_STRUCTURES. If the value is PA_TASKS, other users can update
2646  * task attributes in the structure at one time. (This excludes
2647  * the ability to update task-level deliverable attributes and task
2648  * attachments.) If the value is PA_STRUCTURES, the structure version
2649  * is locked during updates so that no other user can perform changes
2650  * to the structure.
2651  * @rep:paraminfo {@rep:precision 20}
2652  * @rep:scope public
2653  * @rep:lifecycle active
2654  * @rep:displayname Update Project
2655  * @rep:category BUSINESS_ENTITY PA_PROJECT
2656  * @rep:category BUSINESS_ENTITY PA_TASK
2657  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
2658  * @rep:compatibility S
2659 */
2660 PROCEDURE update_project
2661 ( p_api_version_number      IN  NUMBER      :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2662  ,p_commit                  IN  VARCHAR2    := FND_API.G_FALSE
2663  ,p_init_msg_list           IN  VARCHAR2    := FND_API.G_FALSE
2664  ,p_msg_count              OUT  NOCOPY NUMBER --File.Sql.39 bug 4440895
2665  ,p_msg_data               OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2666  ,p_return_status          OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2667  ,p_workflow_started       OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
2668  ,p_pm_product_code         IN  VARCHAR2
2669  ,p_op_validate_flag        IN VARCHAR2     := 'Y' --added by rtarway 4218977
2670  ,p_project_in              IN  pa_project_pub.project_in_rec_type
2671  ,p_project_out            OUT NOCOPY  pa_project_pub.project_out_rec_type /*added the nocopy check for bug 2674619*/
2672  /* Added for tracking bug - add customers */
2673  ,p_customers_in     IN  pa_project_pub.customer_tbl_type := G_customers_in_tbl
2674 /*added default values for p_key_members and p_class_categories 3683732*/
2675  ,p_key_members             IN  pa_project_pub.project_role_tbl_type := G_key_members_in_tbl
2676  ,p_class_categories        IN  pa_project_pub.class_category_tbl_type := G_class_categories_in_tbl
2677  ,p_tasks_in                IN  pa_project_pub.task_in_tbl_type
2678  ,p_tasks_out              OUT NOCOPY  pa_project_pub.task_out_tbl_type /*added the nocopy check for bug 2674619*/
2679 -- anlee org role changes
2680  ,p_org_roles               IN  pa_project_pub.project_role_tbl_type := G_org_roles_in_tbl
2681 --project structures
2682  ,p_structure_in            IN      structure_in_rec_type := G_structure_in_rec
2683  ,p_ext_attr_tbl_in         IN   PA_EXT_ATTR_TABLE_TYPE := G_ext_attr_in_tbl
2684 -- ,p_structure_out               OUT     structure_out_rec_type
2685  ,p_pass_entire_structure       IN      VARCHAR2 := 'N'  -- bug 3548473 : BUg 3627124
2686 --project structures
2687 --3435905 FP M : deliverables
2688  ,p_deliverables_in         IN  deliverable_in_tbl_type := G_deliverables_in_tbl -- 3435905 passing default
2689 -- ,p_deliverables_out          OUT NOCOPY  deliverable_out_tbl_type -- 3435905 removed out parameter
2690  ,p_deliverable_actions_in  IN  action_in_tbl_type := G_deliverable_actions_in_tbl -- 3435905 passing default
2691 -- ,p_deliverable_actions_out   OUT NOCOPY  action_out_tbl_type -- 3435905 removed out parameter
2692 --3435905 FP M : deliverables
2693  ,p_update_mode             in varchar2 := 'PA_UPD_WBS_ATTR' --DHI ER, BUG 4413568   --bug4534919
2694 );
2695 
2696 /*#
2697  * This API is used to update existing tasks of a project in Oracle Projects.
2698  * @param p_api_version_number API standard version number
2699  * @param p_commit API standard (default = F): indicates if transaction will be committed
2700  * @rep:paraminfo {@rep:precision 1}
2701  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
2702  * @param p_msg_count API standard: number of error messages
2703  * @rep:paraminfo {@rep:required}
2704  * @param p_msg_data API standard: error message
2705  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
2706  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
2707  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2708  * @param p_ref_task_id  The reference code that uniquely identifies the reference to a task within a project in Oracle Projects
2709  * @param p_pm_product_code Identifier of the external system from which the project was imported
2710  * @rep:paraminfo {@rep:precision 25}
2711  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
2712  * @param p_pa_project_id The reference code that uniquely identifies the project in the Oracle Projects
2713  * @param p_pm_task_reference  The reference code that uniquely identifies project's task in the external system
2714  * @param p_task_number The number that identifies the task in Oracle Projects
2715  * @rep:paraminfo {@rep:precision 25} {@rep:required}
2716  * @param p_pa_task_id  The reference code that uniquely identifies the task within a project in Oracle Projects
2717  * @param p_task_name The name that uniquely identifies the task within a project
2718  * @param p_long_task_name  Long name of the task
2719  * @param p_task_description Description of the task
2720  * @param p_task_start_date The start date of the task
2721  * @param p_task_completion_date The completion date of the task
2722  * @param p_pm_parent_task_reference The unique reference code that identifies the task's parent task
2723  * @param p_pa_parent_task_id The identifier of task's parent task in Oracle Projects
2724  * @param p_address_id The address of one of the customers that is logically linked to this task
2725  * @param p_carrying_out_organization_id The identifier of the organization that is responsible for the project work
2726  * @param p_service_type_code The type of work performed on the task
2727  * @param p_task_manager_person_id The identifier of the employee who manages the task
2728  * @param p_billable_flag Flag indicating whether items charged to the task can accrue revenue
2729  * @rep:paraminfo {@rep:precision 1}
2730  * @param p_chargeable_flag Flag indicating whether expenditure items can be charged to the task. Only lowest level tasks can be chargeable
2731  * @rep:paraminfo {@rep:precision 1}
2732  * @param p_ready_to_bill_flag Flag indicating whether the task is authorized to be invoiced
2733  * @rep:paraminfo {@rep:precision 1}
2734  * @param p_ready_to_distribute_flag Flag indicating whether the task is authorized for revenue accrual
2735  * @rep:paraminfo {@rep:precision 1}
2736  * @param p_limit_to_txn_controls_flag Flag indicating whether users can only charge expenditures to
2737  * the tasks that are listed in task transaction controls
2738  * @rep:paraminfo {@rep:precision 1}
2739  * @param p_labor_bill_rate_org_id  The identifier of the organization that owns the labor standard bill rate schedule
2740  * @param p_labor_std_bill_rate_schdl The labor standard bill rate schedule that is used to calculate revenue for labor
2741  * expenditure items charged to the task
2742  * @param p_labor_schedule_fixed_date The date used to determine the effective bill rates of the task standard labor bill rate schedule
2743  * @param p_labor_schedule_discount The discount percent for the task standard labor bill rate schedule
2744  * @param p_nl_bill_rate_org_id The identifier of the organization that owns the non-labor standard bill rate schedule
2745  * @param p_nl_std_bill_rate_schdl The non-labor standard bill rate schedule that is used to calculate revenue for non-labor
2746  * expenditure items charged to the task
2747  * @param p_nl_schedule_fixed_date The fixed date used to determine the effective bill rates of the standard non-labor bill rate schedule
2748  * @param p_nl_schedule_discount The discount percent for the task standard non-labor bill rate schedule
2749  * @param p_labor_cost_multiplier_name The labor cost multiplier defined for the task of a premium project
2750  * @param p_cost_ind_rate_sch_id The identifier of the default costing burden schedule
2751  * @param p_rev_ind_rate_sch_id The identifier of the default revenue burden schedule
2752  * @param p_inv_ind_rate_sch_id The identifier of the default invoice burden schedule
2753  * @param p_cost_ind_sch_fixed_date The schedule fixed date of the firm costing burden schedule
2754  * @param p_rev_ind_sch_fixed_date The schedule fixed date of the firm revenue burden schedule
2755  * @param p_inv_ind_sch_fixed_date The schedule fixed date of the firm invoice burden schedule
2756  * @param p_labor_sch_type The schedule type of labor expenditure items
2757  * @param p_nl_sch_type The schedule type of non-labor expenditure items
2758  * @param p_actual_start_date The actual start date of the project
2759  * @param p_actual_finish_date The actual end date of the project. Applicable only for a project that originated in an external system.
2760  * @param p_early_start_date The early start date of the project. Applicable only for a project that originated in an external system.
2761  * @param p_early_finish_date The early finish date of the project. Applicable only for a project that originated in an external system.
2762  * @param p_late_start_date The late start date of the project. Applicable only for a project that originated in an external system.
2763  * @param p_late_finish_date The late finish date of the project. Applicable only for a project that originated in an external system.
2764  * @param p_scheduled_start_date The scheduled start date of the project
2765  * @param p_scheduled_finish_date The scheduled finish date of the project
2766  * @param p_attribute_category Descriptive flexfield category
2767  * @param p_attribute1 Identifies Descriptive flexfield
2768  * @param p_attribute2 Identifies Descriptive flexfield
2769  * @param p_attribute3 Identifies Descriptive flexfield
2770  * @param p_attribute4 Identifies Descriptive flexfield
2771  * @param p_attribute5 Identifies Descriptive flexfield
2772  * @param p_attribute6 Identifies Descriptive flexfield
2773  * @param p_attribute7 Identifies Descriptive flexfield
2774  * @param p_attribute8 Identifies Descriptive flexfield
2775  * @param p_attribute9 Identifies Descriptive flexfield
2776  * @param p_attribute10 Identifies Descriptive flexfield
2777  * @param p_allow_cross_charge_flag Flag indicating whether cross charges are allowed
2778  * @param p_project_rate_date Task-level default value for project rate date
2779  * @param p_project_rate_type Task-level default value for project rate type
2780  * @param p_cc_process_labor_flag Flag indicating whether cross charge processing is to be performed for labor transactions charged
2781  * to the project. The default value for the project template is N. The default value for a project is the value on the project template.
2782  * The default value for a task is the value on the project.
2783  * @rep:paraminfo {@rep:precision 1}
2784  * @param p_labor_tp_schedule_id Identifier of the transfer price schedule to use for cross charged labor transactions. The default value
2785  * for a project is the value on the project template. The default value for a task is the value on the project. If cc_process_labor_flag is
2786  * set to Y, this field is required.
2787  * @param p_labor_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when determining the transfer price
2788  * for labor transactions. The default value for a project is the value on the project template. The default value for a task is the value on
2789  * the project.
2790  * @param p_cc_process_nl_flag Flag indicating whether cross charge processing is to be performed for non-labor transactions charged to the project.
2791  * The default value for the project template is N. The default value for a project is the value on the project template. The default value for a
2792  * task is the value on the project.
2793  * @rep:paraminfo {@rep:precision 1}
2794  * @param p_nl_tp_schedule_id Identifier of the transfer price schedule to use for cross charged non-labor transactions. The default value for a
2795  * project is the value on the project template. The default value for a task is the value on the project. If cc_process_nl_flag is set to Y,
2796  * this field is required.
2797  * @param p_nl_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when determining the transfer price for
2798  * non-labor transactions. The default value for a project is the value on the project template. The default value for a task is the value on the project.
2799  * @param p_receive_project_invoice_flag Flag indicating whether the task can receive charges from internal supplies using inter project billing
2800  * @rep:paraminfo {@rep:precision 1}
2801  * @param p_work_type_id Identifier of the work type
2802  * @param p_emp_bill_rate_schedule_id Identifier of the employee bill rate schedule
2803  * @param p_job_bill_rate_schedule_id Identifier of the job bill rate schedule
2804  * @param p_non_lab_std_bill_rt_sch_id Identifier of the non-labor standard bill rate schedule
2805  * @param p_taskfunc_cost_rate_type Task-level default value for project functional cost rate type
2806  * @param p_taskfunc_cost_rate_date Task-level default value for project functional cost rate date
2807  * @param p_structure_type  Identifier of the project structure type
2808  * @param p_structure_version_id Identifier of the structure version.
2809  * @param P_OBLIGATION_START_DATE The obligation start date of the workplan version
2810  * @param P_OBLIGATION_FINISH_DATE The obligation finish date of the workplan version
2811  * @param P_ESTIMATED_START_DATE The estimated start date of the workplan version
2812  * @param P_ESTIMATED_FINISH_DATE The estimated finish date of the workplan version
2813  * @param P_BASELINE_START_DATE Baseline start date for the task or the workplan
2814  * @param P_BASELINE_FINISH_DATE Baseline finish date for the task or the workplan
2815  * @param P_CLOSED_DATE The date that the element status was set to Closed. This is a task-specific attribute.
2816  * @param P_WQ_UOM_CODE The unit of measure used for work quantity for a task
2817  * @param P_WQ_ITEM_CODE The work item for work quantity for a task
2818  * @param P_STATUS_CODE The status of the project element
2819  * @param P_WF_STATUS_CODE  The status of workflow associated with the element
2820  * @param P_PM_SOURCE_CODE Identifier of the the source code system
2821  * @param P_PRIORITY_CODE The priority of the task. This is a task-specific attribute.
2822  * @param P_MILESTONE_FLAG  Flag indicating whether the task version is a milestone. This is a task-specific attribute.
2823  * @param P_CRITICAL_FLAG Flag indicating whether the task version is part of the critical path
2824  * @param P_INC_PROJ_PROGRESS_FLAG Project progress flag
2825  * @param P_LINK_TASK_FLAG  Flag indicating whether a task is used for linking purposes and is therefore not displayed in the user interface
2826  * @param P_CALENDAR_ID The identifier of the work calendar used to schedule the task. This is a task-specific attribute.
2827  * @param P_PLANNED_EFFORT The planned effort for the task
2828  * @param P_DURATION The number of days between scheduled start date and scheduled end date using the work calendar
2829  * @param P_PLANNED_WORK_QUANTITY The planned work quantity for the task
2830  * @param P_TASK_TYPE The task type
2831  * @param p_labor_disc_reason_code Labor discount reason code
2832  * @param p_non_labor_disc_reason_code Non-labor discount reason code
2833  * @param p_retirement_cost_flag Flag indicating whether the task is identified for retirement cost collection.
2834  * @rep:paraminfo  {@rep:precision 1}
2835  * @param p_cint_eligible_flag Flag indicating whether the project is eligible for capitalized interest
2836  * @rep:paraminfo  {@rep:precision 1}
2837  * @param p_cint_stop_date  Stop date for capital interest calculation
2838  * @param p_out_pa_task_id Identifier of the output task
2839  * @rep:paraminfo  {@rep:required}
2840  * @param p_out_pm_task_reference Unique identifier for the task in the external system
2841  * @rep:paraminfo  {@rep:required}
2842  * @param p_update_task_structure Task structure
2843  * @param p_process_mode Processing mode
2844  * @param p_pred_string The string containing the predecessors information
2845  * @rep:paraminfo {@rep:precision 400} {@rep:required}
2846  * @param p_pred_delimiter Delimiter that separates predecessor in the predecessor string
2847  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2848  * @param p_base_percent_comp_deriv_code Base percent complete derivation code for the task
2849  * @rep:paraminfo {@rep:precision 30} {@rep:required}
2850  * @param p_sch_tool_tsk_type_code Default scheduling tool task type for the task version
2851  * @rep:paraminfo {@rep:precision 30} {@rep:required}
2852  * @param p_constraint_type_code Constraint type for the task version
2853  * @rep:paraminfo {@rep:precision 30} {@rep:required}
2854  * @param p_constraint_date Constraint date for the task version
2855  * @rep:paraminfo {@rep:required}
2856  * @param p_free_slack Free slack for the task version
2857  * @rep:paraminfo {@rep:required}
2858  * @param p_total_slack Total slack for task version
2859  * @rep:paraminfo {@rep:required}
2860  * @param p_effort_driven_flag The flag that indicates whether the task is effort driven
2861  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2862  * @param p_level_assignments_flag Flag that indicates whether the assignments
2863  * on this task should be leveled
2864  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2865  * @param p_invoice_method The invoice method for the task. This parameter is valid only if invoice
2866  * method at top task is enabled.
2867  * @rep:paraminfo {@rep:precision 30} {@rep:required}
2868  * @param p_customer_id The customer for the task. This parameter is valid only if customer at top task is enabled.
2869  * @rep:paraminfo {@rep:required}
2870  * @param p_gen_etc_source_code Estimate to complete source
2871  * @rep:paraminfo {@rep:precision 30} {@rep:required}
2872  * @param p_financial_task_flag The flag that indicates
2873  * whether the task is a financial task or not. This flag
2874  * is valid only for partially shared structures. Tasks
2875  * that are above this level are used for financial management.
2876  * @rep:paraminfo {@rep:precision 1} {@rep:required}
2877  * @param p_mapped_task_id Mapped task ID. This is parameter only in case of split-mapped structure
2878  * sharing between workplan and financial structures.
2879  * @rep:paraminfo {@rep:required}
2880  * @param p_mapped_task_reference Mapped task reference
2881  * @rep:paraminfo {@rep:required}
2882  * @param p_deliverable Deliverable reference to be associated with the task
2883  * @rep:paraminfo {@rep:precision 4000}
2884  * @param p_ext_act_duration From the external application, the actual duration
2885  * @rep:paraminfo {@rep:required}
2886  * @param p_ext_remain_duration From the external application, the remaining duration
2887  * @rep:paraminfo {@rep:required}
2888  * @param p_ext_sch_duration From the external application, the scheduled duration
2889  * @rep:paraminfo {@rep:required}
2890  * @param p_etc_effort Estimated remaining effort for the task
2891  * @rep:paraminfo {@rep:required}
2892  * @param p_percent_complete Percentage of work complete on the task
2893  * @rep:paraminfo {@rep:required}
2894  * @param p_is_wp_seperate_from_fn Flag that indicates whether Workplan structure is shared with financial structure or not. Default='X'
2895  * @param p_calling_api The calling API name. (Default = 'UPDATE_TASK')
2896  * @param p_op_validate_flag Flag indicating whether the system performs scheduling validations. Default is Y.
2897  * @rep:paraminfo {@rep:precision 1}
2898  * @rep:category BUSINESS_ENTITY PA_PROJECT
2899  * @rep:category BUSINESS_ENTITY PA_TASK
2900  * @rep:scope public
2901  * @rep:lifecycle active
2902  * @rep:displayname Update Task
2903  * @rep:compatibility S
2904 */
2905 PROCEDURE update_task
2906 ( p_api_version_number               IN NUMBER  :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2907   p_commit                        IN    VARCHAR2    := FND_API.G_FALSE,
2908   p_init_msg_list                     IN    VARCHAR2    := FND_API.G_FALSE,
2909   p_msg_count                         OUT   NOCOPY NUMBER, --File.Sql.39 bug 4440895
2910   p_msg_data                          OUT   NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
2911   p_return_status                     OUT   NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
2912 --Project Structures
2913   p_ref_task_id                         IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2914 --Project Structures
2915   p_pm_product_code                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2916   p_pm_project_reference            IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2917   p_pa_project_id                   IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2918   p_pm_task_reference               IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2919   p_task_number                     IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2920   p_pa_task_id                      IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2921   p_task_name                       IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2922   p_long_task_name                      IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2923   p_task_description                IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2924   p_task_start_date                 IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2925   p_task_completion_date            IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2926   p_pm_parent_task_reference        IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2927   p_pa_parent_task_id                IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2928   p_address_id                        IN NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2929   p_carrying_out_organization_id    IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2930   p_service_type_code               IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2931   p_task_manager_person_id          IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2932   p_billable_flag                   IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2933   p_chargeable_flag                 IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2934   p_ready_to_bill_flag              IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2935   p_ready_to_distribute_flag        IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2936   p_limit_to_txn_controls_flag      IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2937   p_labor_bill_rate_org_id          IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2938   p_labor_std_bill_rate_schdl       IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2939   p_labor_schedule_fixed_date       IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2940   p_labor_schedule_discount         IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2941   p_nl_bill_rate_org_id             IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2942   p_nl_std_bill_rate_schdl          IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2943   p_nl_schedule_fixed_date          IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2944   p_nl_schedule_discount            IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2945   p_labor_cost_multiplier_name      IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2946   p_cost_ind_rate_sch_id            IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2947   p_rev_ind_rate_sch_id             IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2948   p_inv_ind_rate_sch_id             IN NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2949   p_cost_ind_sch_fixed_date         IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2950   p_rev_ind_sch_fixed_date          IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2951   p_inv_ind_sch_fixed_date          IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2952   p_labor_sch_type                  IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2953   p_nl_sch_type                     IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2954   p_actual_start_date                   IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2955   p_actual_finish_date                  IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2956   p_early_start_date                    IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2957   p_early_finish_date                   IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2958   p_late_start_date                     IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2959   p_late_finish_date                    IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2960   p_scheduled_start_date                IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2961   p_scheduled_finish_date               IN DATE        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2962   p_tasks_dff                           IN VARCHAR2    := 'N',  --bug 6153503
2963   p_attribute_category               IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2964   p_attribute1                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2965   p_attribute2                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2966   p_attribute3                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2967   p_attribute4                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2968   p_attribute5                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2969   p_attribute6                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2970   p_attribute7                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2971   p_attribute8                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2972   p_attribute9                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2973   p_attribute10                  IN VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2974   --bug 6153503
2975   p_attribute11                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2976   p_attribute12                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2977   p_attribute13                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2978   p_attribute14                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2979   p_attribute15                        IN VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2980   --end bug 6153503
2981   p_allow_cross_charge_flag             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2982   p_project_rate_date                   IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2983   p_project_rate_type                   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2984   p_cc_process_labor_flag               IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2985   p_labor_tp_schedule_id                IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2986   p_labor_tp_fixed_date                 IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2987   p_cc_process_nl_flag                  IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2988   p_nl_tp_schedule_id                   IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2989   p_nl_tp_fixed_date                    IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2990   p_receive_project_invoice_flag        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2991   p_work_type_id                        IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2992   p_emp_bill_rate_schedule_id           IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2993   p_job_bill_rate_schedule_id           IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2994 --Sakthi  MCB
2995  p_non_lab_std_bill_rt_sch_id           IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
2996  p_taskfunc_cost_rate_type              IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
2997  p_taskfunc_cost_rate_date              IN DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
2998 --Sakthi  MCB
2999 --Project Structures
3000  p_structure_type                     IN VARCHAR2 := 'FINANCIAL',
3001  p_structure_version_id               IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
3002  P_OBLIGATION_START_DATE              IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
3003  P_OBLIGATION_FINISH_DATE             IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
3004  P_ESTIMATED_START_DATE               IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
3005  P_ESTIMATED_FINISH_DATE              IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
3006  P_BASELINE_START_DATE                IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
3007  P_BASELINE_FINISH_DATE               IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
3008  P_CLOSED_DATE                        IN DATE    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
3009  P_WQ_UOM_CODE                        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3010  P_WQ_ITEM_CODE                       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3011  P_STATUS_CODE                        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3012  P_WF_STATUS_CODE                     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3013  P_PM_SOURCE_CODE                     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3014  P_PRIORITY_CODE                      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3015  P_MILESTONE_FLAG                     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3016  P_CRITICAL_FLAG                      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3017  P_INC_PROJ_PROGRESS_FLAG             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3018  P_LINK_TASK_FLAG                     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3019  P_CALENDAR_ID                        IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
3020  P_PLANNED_EFFORT                     IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
3021  P_DURATION                           IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
3022  P_PLANNED_WORK_QUANTITY              IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
3023  P_TASK_TYPE                          IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
3024 --Project Structures
3025  p_labor_disc_reason_code       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3026  p_non_labor_disc_reason_code   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3027 --PA L changes -- bug 2872708  --update_task
3028  p_retirement_cost_flag          VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3029  p_cint_eligible_flag            VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR,
3030  p_cint_stop_date                DATE         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
3031 --end PA L changes -- bug 2872708
3032   p_out_pa_task_id               OUT    NOCOPY NUMBER, --File.Sql.39 bug 4440895
3033   p_out_pm_task_reference        OUT    NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
3034   p_update_task_structure        IN      VARCHAR2  := 'Y'         -- Added new parameter for performance changes. Bug 2931183
3035   -- PA L Changes 3010538
3036  ,p_process_mode                 IN VARCHAR2 := 'ONLINE'
3037 -- FP-M Bug # 3301192
3038  ,p_pred_string                  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3039 -- ,p_pred_delimiter               VARCHAR2    DEFAULT ','
3040  ,p_pred_delimiter               VARCHAR2   :=  PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3041 -- FP M changes begin (venkat)
3042   ,p_base_percent_comp_deriv_code   IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3043   ,p_sch_tool_tsk_type_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3044   ,p_constraint_type_code       IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3045   ,p_constraint_date            IN DATE   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
3046   ,p_free_slack             IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3047   ,p_total_slack                 IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3048   ,p_effort_driven_flag         IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3049   ,p_level_assignments_flag     IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3050   ,p_invoice_method              IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3051   ,p_customer_id                 IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3052   ,p_gen_etc_source_code             IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3053 -- FP M changes end (venkat)
3054 -- FP M changes start (Mapping )
3055   ,p_financial_task_flag           IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3056   ,p_mapped_task_id                IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3057   ,p_mapped_task_reference         IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3058 -- FP M changes end (Mapping )
3059  ,p_deliverable                 IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR   --3435905
3060 -- (Begin venkat) Bug #3450684 --------------------------------------------------------------------
3061   ,p_ext_act_duration            IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3062   ,p_ext_remain_duration         IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3063   ,p_ext_sch_duration            IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3064 -- (End venkat) Bug #3450684 --------------------------------------------------------------------
3065 
3066 -- Progress Management Changes. Bug # 3420093.
3067   ,p_etc_effort                 IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3068   ,p_percent_complete           IN NUMBER  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3069 -- Progress Management Changes. Bug # 3420093.
3070   ,p_is_wp_seperate_from_fn      IN VARCHAR2 := 'X'   -- Added for Bug # 3451073
3071   ,p_calling_api      IN VARCHAR2 := 'UPDATE_TASK'   -- Added for Bug # 4199694
3072   ,p_op_validate_flag        IN VARCHAR2     := 'Y' --added by rtarway 4218977
3073   ,p_adj_on_std_inv             IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3074 );
3075 
3076 /*#
3077  * This API procedure is used to update an existing project, including changing or adding project data,
3078  * adding new tasks, and updating existing tasks. This API does not delete tasks; rather, it uses the
3079  * data stored in the global tables during the Load process.
3080  * In order to execute this API the following list of API's should be executed in the following order.
3081  * INIT_PROJECT,
3082  * LOAD_PROJECT,
3083  * LOAD_TASK,
3084  * LOAD_CLASS_CATEGORY,
3085  * LOAD_KEY_MEMBER,
3086  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
3087  * FETCH_TASK and
3088  * CLEAR_PROJECT
3089  * @param p_api_version_number API standard version number
3090  * @param p_commit API standard (default = F): indicates if transaction will be committed
3091  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3092  * @param p_op_validate_flag Indicates whether the system performs scheduling validations. Default is Y.
3093  * @rep:paraminfo {@rep:precision 1}
3094  * @param p_msg_count API standard: number of error messages
3095  * @rep:paraminfo {@rep:required}
3096  * @param p_msg_data API standard: error message
3097  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
3098  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
3099  * @rep:paraminfo {@rep:precision 1} {@rep:required}
3100  * @param p_workflow_started Indicates if a workflow has been started (Y or N)
3101  * @rep:paraminfo {@rep:required}
3102  * @param p_pm_product_code Identifier of the external system from which the project was imported
3103  * @rep:paraminfo {@rep:precision 25}
3104  * @param p_pass_entire_structure In situations where structures are completely shared,
3105  * this parameter enables updates to one structure to pass to the other structure(s). Default = 'N'.
3106  * @rep:paraminfo {@rep:precision 1}
3107  * @param p_update_mode Update mode. This parameter can have the following two
3108  * values:PA_TASKS or PA_STRUCTURES. The default value is PA_STRUCTURES.
3109  * If the value is PA_TASKS, other users can update task attributes in the
3110  * structure at one time. (This excludes the ability to update
3111  * task-level deliverable attributes and task attachments). If the value is
3112  * PA_STRUCTURES, the structure version is locked during updates
3113  * so that no other user can perform changes to the structure.
3114  * @rep:paraminfo {@rep:precision 20}
3115  * @rep:scope public
3116  * @rep:lifecycle active
3117  * @rep:displayname Create Multiple Projects: Execute Update Project
3118  * @rep:category BUSINESS_ENTITY PA_PROJECT
3119  * @rep:category BUSINESS_ENTITY PA_TASK
3120  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
3121  * @rep:compatibility S
3122 */
3123 PROCEDURE execute_update_project
3124 ( p_api_version_number          IN NUMBER       :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3125  ,p_commit                   IN VARCHAR2    := FND_API.G_FALSE
3126  ,p_init_msg_list                IN VARCHAR2    := FND_API.G_FALSE
3127  ,p_op_validate_flag  IN VARCHAR2 := 'Y'--added by rtarway, bug 4218977
3128  ,p_msg_count                    OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
3129  ,p_msg_data                     OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3130  ,p_return_status                OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3131  ,p_workflow_started             OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3132  ,p_pm_product_code                IN   VARCHAR2        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3133  ,p_pass_entire_structure       IN      VARCHAR2 := 'N' -- Added for bug 3696234 : Bug 3627124
3134  ,p_update_mode                 IN VARCHAR2      := 'PA_UPD_WBS_ATTR'--DHI ER BUG 4413568 --bug 4534919
3135  );
3136 
3137 /*#
3138  * This API procedure is used to delete a project and its tasks from Oracle Projects.
3139  * @param p_api_version_number API standard version number
3140  * @param p_commit API standard (default = F): indicates if transaction will be committed
3141  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3142  * @param p_msg_count API standard: number of error messages
3143  * @rep:paraminfo {@rep:required}
3144  * @param p_msg_data API standard: error message
3145  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
3146  * @param p_return_status API standard: return of the API (success/failure/unexpected error)
3147  * @rep:paraminfo {@rep:precision 1} {@rep:required}
3148  * @param p_pm_product_code Identifier of the external system from which the project was imported
3149  * @rep:paraminfo {@rep:precision 25}
3150  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
3151  * @param p_pa_project_id The unique identifier of the project in Oracle Projects
3152  * @rep:scope public
3153  * @rep:lifecycle active
3154  * @rep:displayname Delete Project
3155  * @rep:category BUSINESS_ENTITY PA_PROJECT
3156  * @rep:compatibility S
3157 */
3158 PROCEDURE delete_project
3159 ( p_api_version_number  IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3160  ,p_commit          IN  VARCHAR2    := FND_API.G_FALSE
3161  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
3162  ,p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
3163  ,p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3164  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3165  ,p_pm_product_code     IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3166  ,p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3167  ,p_pa_project_id       IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM     );
3168 
3169 
3170 PROCEDURE approve_project
3171 ( p_api_version_number  IN  NUMBER
3172  ,p_commit          IN  VARCHAR2    := FND_API.G_FALSE
3173  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
3174  ,p_msg_count           OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
3175  ,p_msg_data            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3176  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3177  ,p_pm_product_code     IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3178  ,p_pm_project_reference    IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3179  ,p_pa_project_id       IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM     );
3180 
3181 
3182 /*#
3183  * This is a Load-Execute-Fetch procedure used to load tasks to a global
3184  * PL/SQL table.
3185  * In order to execute this API,the following list of API's should be executed in the following order.:
3186  * INIT_PROJECT,
3187  * LOAD_PROJECT,
3188  * LOAD_TASKS,
3189  * LOAD_CLASS_CATEGORY,
3190  * LOAD_KEY_MEMBER,
3191  * EXECUTE_CREATE_PROJECT/EXECUTE_UPDATE_PROJECT,
3192  * FETCH_TASK and
3193  * CLEAR_PROJECT
3194  * @param p_api_version_number API standard: version number
3195  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3196  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3197  * @rep:paraminfo {@rep:precision 1} {@rep:required}
3198  * @param p_pm_task_reference  The reference code that uniquely identifies the project task in the external system
3199  * @param p_pa_task_id The reference code that uniquely identifies the task in a project in Oracle Projects
3200  * @param p_task_name The name that uniquely identifies a task in a project
3201  * @param p_long_task_name The long name of a task
3202  * @param p_pa_task_number The number that indicates the task in the Oracle Projects
3203  * @param p_task_description Description of the task
3204  * @param p_task_start_date The date on which the task starts
3205  * @param p_task_completion_date The date on which the task is completed
3206  * @param p_pm_parent_task_reference The unique reference code that identifies the task's parent task
3207  * @param p_pa_parent_task_id Identifier of the task's parent task in Oracle Projects
3208  * @param p_address_id The address identifier of one of the customers that is logically linked to this task
3209  * @param p_carrying_out_organization_id The identifier of the organization that is responsible for the project work
3210  * @param p_service_type_code The type of work performed on the task
3211  * @param p_task_manager_person_id The identifier of the employee who manages the task
3212  * @param p_billable_flag Default flag for items charged to the task that indicates whether the item can accrue revenue (Y or N)
3213  * @rep:paraminfo {@rep:precision 1}
3214  * @param p_chargeable_flag Flag that indicates if expenditure items can be charged to the task. Only lowest tasks can be charged
3215  * @rep:paraminfo {@rep:precision 1}
3216  * @param p_ready_to_bill_flag Flag that indicates if the task is authorized to be invoiced
3217  * @rep:paraminfo {@rep:precision 1}
3218  * @param p_ready_to_distribute_flag Flag that indicates if the task is authorized for revenue accrual
3219  * @rep:paraminfo {@rep:precision 1}
3220  * @param p_limit_to_txn_controls_flag Flag that indicates if users can only charge expenditures to the task that are listed in
3221  * task transaction controls
3222  * @rep:paraminfo {@rep:precision 1}
3223  * @param p_labor_bill_rate_org_id  The identifier of the organization that owns the labor standard bill rate schedule
3224  * @param p_labor_std_bill_rate_schdl The labor standard bill rate schedule that is used to calculate revenue for labor expenditure
3225  * items charged to the task
3226  * @param p_labor_schedule_fixed_date The date used to determine the effective bill rates of the task standard labor bill rate schedule.
3227  * @param p_labor_schedule_discount The percentage to be discounted from the task standard labor bill rate schedule
3228  * @param p_nl_bill_rate_org_id The identifier of the organization that owns the non-labor standard bill rate schedule
3229  * @param p_nl_std_bill_rate_schdl The non-labor standard bill rate schedule that is used to calculate revenue for non-labor
3230  * expenditure items charged to the task
3231  * @param p_nl_schedule_fixed_date The fixed date used to determine the effective bill rates of the standard non-labor bill rate schedule
3232  * @param p_nl_schedule_discount The percentage to be discounted from the task standard non-labor bill rate schedule
3233  * @param p_labor_cost_multiplier_name The labor cost multiplier defined for the task of a premium project
3234  * @param p_cost_ind_rate_sch_id The identifier of default costing burden schedule
3235  * @param p_rev_ind_rate_sch_id The identifier of default revenue burden schedule
3236  * @param p_inv_ind_rate_sch_id The identifier of default invoice burden schedule
3237  * @param p_cost_ind_sch_fixed_date The schedule fixed date of firm costing burden schedule
3238  * @param p_rev_ind_sch_fixed_date The schedule fixed date of firm revenue burden schedule
3239  * @param p_inv_ind_sch_fixed_date The schedule fixed date of firm invoice burden schedule
3240  * @param p_labor_sch_type The schedule type of labor expenditure items
3241  * @param p_nl_sch_type The schedule type of non labor expenditure items
3242  * @param p_actual_start_date The actual start date of the project. Applicable only for a project that originated in
3243  * an external system.
3244  * @param p_actual_finish_date The actual end date of the project. Applicable only for a project that originated in
3245  * an external system.
3246  * @param p_early_start_date The early start date of the project. Applicable only for a project that originated in an external system.
3247  * @param p_early_finish_date The early finish date of the project. Applicable only for a project that originated in an external
3248  * system.
3249  * @param p_late_start_date The late start date of the project. Applicable only for a project that originated in an external system.
3250  * @param p_late_finish_date The late finish date of the project. Applicable only for a project that originated in an external system.
3251  * @param p_scheduled_start_date The scheduled start date of the project
3252  * @param p_scheduled_finish_date The scheduled finish date of the project
3253  * @param p_attribute_category Descriptive flexfield category
3254  * @param p_attribute1 Descriptive flexfield attribute
3255  * @param p_attribute2 Descriptive flexfield attribute
3256  * @param p_attribute3 Descriptive flexfield attribute
3257  * @param p_attribute4 Descriptive flexfield attribute
3258  * @param p_attribute5 Descriptive flexfield attribute
3259  * @param p_attribute6 Descriptive flexfield attribute
3260  * @param p_attribute7 Descriptive flexfield attribute
3261  * @param p_attribute8 Descriptive flexfield attribute
3262  * @param p_attribute9 Descriptive flexfield attribute
3263  * @param p_attribute10 Descriptive flexfield attribute
3264  * @param p_allow_cross_charge_flag Flag indicating if cross-charge is allowed
3265  * @param p_project_rate_date Task level default value for project rate date
3266  * @param p_project_rate_type Task level default value for project rate type
3267  * @param p_cc_process_labor_flag Flag that indicates if cross-charge processing is to be performed for labor
3268  * transactions charged to the project. The default value for the project template is N.
3269  * @rep:paraminfo {@rep:precision 1}
3270  * @param p_labor_tp_schedule_id Identifier of the transfer price schedule to use for cross-charged labor transactions.
3271  * If P_CC_PROCESS_LABOR_FLAG is set to Y, this field is required.
3272  * @param p_labor_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when
3273  * determining the transfer price for labor transactions.
3274  * @param p_cc_process_nl_flag Flag that indicates if cross-charge processing is to be performed for non-labor transactions
3275  * charged to the project. The default value for the project template is N.
3276  * @rep:paraminfo {@rep:precision 1}
3277  * @param p_nl_tp_schedule_id Identifier of the transfer price schedule to use for cross-charged non labor transactions.
3278  * If P_CC_PROCESS_NL_FLAG is set to Y, this field is required.
3279  * @param p_nl_tp_fixed_date Fixed date to find the effective rate of the bill rate or burden schedule when determining
3280  * the transfer price for non-labor transactions.
3281  * @param p_receive_project_invoice_flag Flag that indicates if the task can receive charges from internal supplies
3282  * using inter-project billing
3283  * @rep:paraminfo {@rep:precision 1}
3284  * @param p_work_type_id Identifier for predefined types of work
3285  * @param p_emp_bill_rate_schedule_id Identifier of the employee bill rate schedule
3286  * @param p_job_bill_rate_schedule_id Identifier of the job bill rate schedule
3287  * @param p_non_lab_std_bill_rt_sch_id Identifier of the non-labor standard bill rate schedule
3288  * @param p_taskfunc_cost_rate_type Task level default value for project functional cost rate type
3289  * @param p_taskfunc_cost_rate_date Task level default value for project functional cost rate date
3290  * @param p_display_sequence Order of display
3291  * @param p_wbs_level The level of the task in the work breakdown structure
3292  * @param p_milestone Flag that indicates if the task version is a milestone. This is a task-specific attribute.
3293  * @param p_duration The duration between scheduled start date and scheduled end date using the calendar
3294  * @param p_duration_unit The unit of duration between scheduled start date and scheduled end date using the calendar
3295  * @param p_login_user_name The logged in user name
3296  * @param p_critical_flag Flag that indicates if the task version is part of the critical path.
3297  * This is a task-specific attribute.
3298  * @param p_sub_project_id The unique identifier of the sub project associated with the task
3299  * @param p_progress_status_code The progress status code
3300  * @param p_progress_comments Progress comments
3301  * @param p_progress_asof_date The cycle date on which progress information can be entered
3302  * @param p_progress_description Progress description
3303  * @param p_predecessors The predecessor for specified task. This parameter is applicable for workplan tasks.
3304  * @param p_priority_code The priority of the task. This is a task-specific attribute.
3305  * @param p_wbs_number Outline number for the task
3306  * @param P_ESTIMATED_START_DATE The estimated start date of the workplan version
3307  * @param P_ESTIMATED_FINISH_DATE The estimated finish date of the workplan version
3308  * @param p_estimate_to_complete Estimated time to complete the task
3309  * @param p_language Language in which the task details are stored
3310  * @param p_delimiter Delimiter that separates predecessors in the predecessor string
3311  * @param p_structure_version_id Unique identifier of the workplan structure
3312  * @param P_OBLIGATION_START_DATE The obligation start date of the workplan version
3313  * @param P_OBLIGATION_FINISH_DATE The obligation finish date of the workplan version
3314  * @param P_BASELINE_START_DATE Baseline start date for the task or the workplan
3315  * @param P_BASELINE_FINISH_DATE Baseline finish date for the task or the workplan
3316  * @param P_CLOSED_DATE The date that the element status was set to Closed. This is a task-specific attribute.
3317  * @param P_WQ_UOM_CODE The unit of measure used for work quantity for a task
3318  * @param P_WQ_ITEM_CODE The work item for work quantity for a task
3319  * @param P_STATUS_CODE The status of the project element.
3320  * @param P_WF_STATUS_CODE  The status of workflow associated with the element
3321  * @param P_PM_SOURCE_CODE Identifier of the source code system
3322  * @param P_INC_PROJ_PROGRESS_FLAG Flag indicating the project progress
3323  * @param P_LINK_TASK_FLAG Flag indicating whether a task is used for linking purposes and is not displayed in the user interface
3324  * @param P_CALENDAR_ID The identifier of the calendar used to schedule the task. This is a task-specific attribute.
3325  * @param P_PLANNED_EFFORT The planned effort for the task
3326  * @param P_PLANNED_WORK_QUANTITY The planned work quantity for the task
3327  * @param P_TASK_TYPE Type of task
3328  * @param p_labor_disc_reason_code Labor discount reason code
3329  * @param p_non_labor_disc_reason_code Non-labor discount reason code
3330  * @param p_retirement_cost_flag Flag indicating whether the task is identified for retirement cost collection
3331  * @rep:paraminfo  {@rep:precision 1}
3332  * @param p_cint_eligible_flag Flag indicating whether the project is eligible for capitalized interest
3333  * @rep:paraminfo  {@rep:precision 1}
3334  * @param p_cint_stop_date  Stop date for capital interest calculation
3335  * @param p_pred_string The string containing the predecessor information
3336  * @rep:paraminfo  {@rep:precision 400} {@rep:required}
3337  * @param p_pred_delimiter Delimiter that separates predecessors in the predecessor string
3338  * @rep:paraminfo  {@rep:precision 1} {@rep:required}
3339  * @param p_deliverable Deliverable reference to be associated with the task
3340  * @rep:paraminfo  {@rep:precision 4000}
3341  * @param p_deliverable_id Deliverable identifier to be associated with a task
3342  * @param p_base_percent_comp_deriv_code Base percent complete derivation code for the task
3343  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
3344  * @param p_sch_tool_tsk_type_code Default scheduling tool task type for the task version
3345  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
3346  * @param p_constraint_type_code Constraint type for the task version
3347  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
3348  * @param p_constraint_date Constraint date for the task version
3349  * @rep:paraminfo  {@rep:required}
3350  * @param p_free_slack  Free slack for the task version
3351  * @rep:paraminfo  {@rep:required}
3352  * @param p_total_slack Total slack for the task version
3353  * @rep:paraminfo  {@rep:required}
3354  * @param p_effort_driven_flag Flag that indicates whether the task is effort driven
3355  * @rep:paraminfo  {@rep:precision 1} {@rep:required}
3356  * @param p_level_assignments_flag Flag that indicates whether the assignments on this task should be leveled
3357  * @rep:paraminfo  {@rep:precision 1} {@rep:required}
3358  * @param p_invoice_method The invoice method for the task. This parameter is valid only if invoice method at top task is enabled.
3359  * @rep:paraminfo  {@rep:precision 30} {@rep:required}
3360  * @param p_customer_id The customer for the task. This parameter is valid only if customer at top task is enabled.
3361  * @rep:paraminfo {@rep:required}
3362  * @param p_gen_etc_source_code Estimate to complete source
3363  * @rep:paraminfo {@rep:precision 30} {@rep:required}
3364  * @param p_financial_task_flag Flag that indicates whether the task is a financial task. This flag
3365  * is valid only for partially shared structures. Tasks that are above this level are used for financial management.
3366  * @rep:paraminfo {@rep:precision 1} {@rep:required}
3367  * @param p_mapped_task_id Mapped task identifier. This parameter is applicable only in case of split-mapped structure
3368  * sharing between workplan and financial structures.
3369  * @rep:paraminfo {@rep:required}
3370  * @param p_mapped_task_reference Mapped task reference
3371  * @rep:paraminfo {@rep:required}
3372  * @param p_ext_act_duration The actual duration from the external application
3373  * @rep:paraminfo {@rep:required}
3374  * @param p_ext_remain_duration The remaining duration from the external application
3375  * @rep:paraminfo {@rep:required}
3376  * @param p_ext_sch_duration The scheduled duration from the external application
3377  * @rep:paraminfo {@rep:required}
3378  * @param p_etc_effort Estimated remaining effort for the task
3379  * @rep:paraminfo {@rep:required}
3380  * @param p_percent_complete Percentage of work complete on the task
3381  * @rep:paraminfo {@rep:required}
3382  * @rep:scope public
3383  * @rep:lifecycle active
3384  * @rep:displayname Load Tasks
3385  * @rep:category BUSINESS_ENTITY PA_PROJECT
3386  * @rep:category BUSINESS_ENTITY PA_TASK
3387  * @rep:compatibility S
3388 */
3389 PROCEDURE load_tasks
3390 (
3391    p_api_version_number     IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3392   ,p_init_msg_list           IN VARCHAR2    := FND_API.G_FALSE
3393   ,p_return_status           OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3394   ,p_pm_task_reference      IN  PA_VC_1000_150
3395   ,p_pa_task_id               IN   PA_NUM_1000_NUM
3396   ,p_task_name                IN    PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR) -- bug 6193314 .modified from PA_VC_1000_150
3397   ,p_long_task_name           IN   PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3398   ,p_pa_task_number           IN    PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3399   ,p_task_description       IN  PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3400   ,p_task_start_date         IN PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3401   ,p_task_completion_date   IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3402   ,p_pm_parent_task_reference   IN  PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3403   ,p_pa_parent_task_id      IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3404   ,p_address_id         IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3405   ,p_carrying_out_organization_id IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3406   ,p_service_type_code       IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3407   ,p_task_manager_person_id   IN    PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3408   ,p_billable_flag            IN    PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3409   ,p_chargeable_flag         IN PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3410   ,p_ready_to_bill_flag      IN PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3411   ,p_ready_to_distribute_flag IN   PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3412  ,p_limit_to_txn_controls_flag IN  PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3413   ,p_labor_bill_rate_org_id IN   PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3414  ,p_labor_std_bill_rate_schdl IN   PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3415   ,p_labor_schedule_fixed_date IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3416   ,p_labor_schedule_discount  IN    PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3417   ,p_nl_bill_rate_org_id      IN    PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3418   ,p_nl_std_bill_rate_schdl   IN    PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3419   ,p_nl_schedule_fixed_date   IN    PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3420   ,p_nl_schedule_discount     IN    PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3421  ,p_labor_cost_multiplier_name IN  PA_VC_1000_25 := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3422   ,p_cost_ind_rate_sch_id     IN    PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3423   ,p_rev_ind_rate_sch_id      IN    PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3424   ,p_inv_ind_rate_sch_id      IN    PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3425   ,p_cost_ind_sch_fixed_date  IN    PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3426   ,p_rev_ind_sch_fixed_date   IN    PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3427   ,p_inv_ind_sch_fixed_date   IN    PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3428   ,p_labor_sch_type           IN    PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3429   ,p_nl_sch_type              IN    PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3430   ,p_actual_start_date        IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3431   ,p_actual_finish_date       IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3432   ,p_early_start_date         IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3433   ,p_early_finish_date        IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3434   ,p_late_start_date          IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3435   ,p_late_finish_date         IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3436   ,p_scheduled_start_date     IN     PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3437   ,p_scheduled_finish_date    IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3438   ,p_attribute_category      IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3439   ,p_attribute1           IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3440   ,p_attribute2          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3441   ,p_attribute3          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3442   ,p_attribute4          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3443   ,p_attribute5          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3444   ,p_attribute6          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3445   ,p_attribute7         IN  PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3446   ,p_attribute8          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3447   ,p_attribute9          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3448   ,p_attribute10              IN    PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3449   ,p_allow_cross_charge_flag  IN      PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3450   ,p_project_rate_date        IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3451   ,p_project_rate_type        IN      PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3452   ,p_cc_process_labor_flag    IN      PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3453   ,p_labor_tp_schedule_id     IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3454   ,p_labor_tp_fixed_date      IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3455   ,p_cc_process_nl_flag       IN      PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3456   ,p_nl_tp_schedule_id        IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3457   ,p_nl_tp_fixed_date         IN   PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3458   ,p_receive_project_invoice_flag    IN      PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3459   ,p_work_type_id                IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3460   ,p_emp_bill_rate_schedule_id   IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3461   ,p_job_bill_rate_schedule_id   IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3462 --Sakthi  MCB
3463  ,p_non_lab_std_bill_rt_sch_id   IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3464  ,p_taskfunc_cost_rate_type      IN      PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3465  ,p_taskfunc_cost_rate_date      IN      PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3466 --Sakthi  MCB
3467  ,p_display_sequence IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3468  ,p_wbs_level        IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3469  ,p_milestone        IN     PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3470  ,p_duration        IN      PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3471  ,p_duration_unit   IN      PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3472  ,p_login_user_name     IN      PA_VC_1000_150:= PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3473  ,p_critical_flag       IN      PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3474  ,p_sub_project_id      IN      PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3475  ,p_progress_status_code IN     PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3476  ,p_progress_comments    IN     PA_VC_1000_4000 := PA_VC_1000_4000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3477  ,p_progress_asof_date   IN     PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3478  ,p_progress_description    IN      PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3479  ,p_predecessors                IN      PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3480  ,p_priority_code               IN      PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3481  ,p_wbs_number                  IN      PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3482  ,p_estimated_start_date  IN PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3483  ,p_estimated_finish_date IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3484  ,p_estimate_to_complete  IN    PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3485  ,p_language                        IN      VARCHAR2 default 'US'
3486  ,p_delimiter                       IN      VARCHAR2 default ','
3487  ,p_structure_version_id            IN      NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3488 -- ,p_calling_mode                      IN      VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3489 --  Bug 2683364
3490  ,P_OBLIGATION_START_DATE   IN PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3491  ,P_OBLIGATION_FINISH_DATE  IN PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3492  ,P_BASELINE_START_DATE     IN PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3493  ,P_BASELINE_FINISH_DATE    IN PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3494  ,P_CLOSED_DATE             IN PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3495  ,P_WQ_UOM_CODE             IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3496  ,P_WQ_ITEM_CODE            IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3497  ,P_STATUS_CODE             IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3498  ,P_WF_STATUS_CODE          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3499  ,P_PM_SOURCE_CODE          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3500  ,P_INC_PROJ_PROGRESS_FLAG  IN PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3501  ,P_LINK_TASK_FLAG          IN PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3502  ,P_CALENDAR_ID             IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3503  ,P_PLANNED_EFFORT          IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3504  ,P_PLANNED_WORK_QUANTITY   IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3505  ,P_TASK_TYPE               IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3506 -- Bug 2683364
3507  ,p_labor_disc_reason_code       IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3508  ,p_non_labor_disc_reason_code   IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3509 --PA L changes -- bug 2872708  --load_tasks
3510  ,p_retirement_cost_flag          IN PA_VC_1000_10    := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3511  ,p_cint_eligible_flag            IN PA_VC_1000_10    := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3512  ,p_cint_stop_date       IN PA_DATE_1000_DATE         := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3513 --end PA L changes -- bug 2872708
3514 -- FP-M Bug # 3301192
3515  ,p_pred_string                 IN PA_VC_1000_4000 := PA_VC_1000_4000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3516 -- ,p_pred_delimiter              IN PA_VC_1000_10   := PA_VC_1000_10(',')
3517  ,p_pred_delimiter                IN PA_VC_1000_10   := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3518 -- FP M : Deliverable
3519 --,p_deliverable                 IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR      --3435905
3520   ,p_deliverable                 IN PA_VC_1000_4000 := PA_VC_1000_4000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3521   ,p_deliverable_id              IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)  -- 3661788 Added IN paramter
3522 -- FP M changes begin (venkat)
3523   ,p_base_percent_comp_deriv_code IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3524   ,p_sch_tool_tsk_type_code       IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3525   ,p_constraint_type_code         IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3526   ,p_constraint_date          IN PA_DATE_1000_DATE:= PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
3527   ,p_free_slack                   IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3528   ,p_total_slack                  IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3529   ,p_effort_driven_flag           IN PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3530   ,p_level_assignments_flag       IN PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3531   ,p_invoice_method           IN PA_VC_1000_4000 := PA_VC_1000_4000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3532   ,p_customer_id                  IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3533   ,p_gen_etc_source_code          IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3534 -- FP M changes end (venkat)
3535 
3536 -- FP M changes start (Mapping )
3537 --  ,p_financial_task_flag        IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3538 --  ,p_mapped_task_id             IN NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3539 --  ,p_mapped_task_reference      IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3540    ,p_financial_task_flag        IN PA_VC_1000_10 := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3541    ,p_mapped_task_id             IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3542    ,p_mapped_task_reference      IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
3543  -- FP M changes end (Mapping )  -- FP M changes end (Mapping )
3544 
3545 -- (begin venkat) new params for bug #3450684 ----------------------------------------------
3546   ,p_ext_act_duration            IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3547   ,p_ext_remain_duration         IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3548   ,p_ext_sch_duration            IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3549 -- (end venkat) new params for bug #3450684 -------------------------------------------------
3550 
3551 -- Progress Management Changes. Bug # 3420093.
3552   ,p_etc_effort                 IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3553   ,p_percent_complete           IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3554 -- Progress Management Changes. Bug # 3420093.
3555 
3556 );
3557 
3558 /*#
3559  * This is a wrapper API for FETCH_TASK to handle multiple calls to FETCH_TASK.
3560  * @param p_api_version_number API standard: version number
3561  * @rep:paraminfo {@rep:required}
3562  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3563  * @rep:paraminfo {@rep:precision 1}
3564  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3565  * @rep:paraminfo {@rep:precision 1}
3566  * @param p_task_index Points to a single task
3567  * @rep:paraminfo {@rep:required}
3568  * @param p_pa_task_id Unique identifier for the task to be fetched
3569  * @rep:paraminfo {@rep:precision 15}
3570  * @param p_task_version_id Task version identifier
3571  * @param p_pm_task_reference The reference code that identifies the task in the external system
3572  * @rep:paraminfo {@rep:precision 25}
3573  * @param p_task_return_status Flag indicating whether the API has handled the task successfully. S indicates
3574  * success, E indicates a business rule violation, and U indicates that an unexpected error occurred
3575  * @rep:paraminfo {@rep:precision 1}
3576  * @rep:scope public
3577  * @rep:lifecycle active
3578  * @rep:displayname Fetch Tasks
3579  * @rep:category BUSINESS_ENTITY PA_PROJECT
3580  * @rep:category BUSINESS_ENTITY PA_TASK
3581  * @rep:compatibility S
3582  */
3583 PROCEDURE fetch_tasks
3584 ( p_api_version_number  IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3585  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
3586  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3587  ,p_task_index          IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
3588  ,p_pa_task_id          OUT     NOCOPY PA_NUM_1000_NUM --File.Sql.39 bug 4440895
3589  ,p_task_version_id     OUT     NOCOPY PA_NUM_1000_NUM --File.Sql.39 bug 4440895
3590  ,p_pm_task_reference   OUT     NOCOPY PA_VC_1000_150 --File.Sql.39 bug 4440895
3591  ,p_task_return_status  OUT     NOCOPY PA_VC_1000_150 --File.Sql.39 bug 4440895
3592 );
3593 
3594 -- <EA Load API>
3595 /**
3596 P_API_VERSION_NUMBER
3597 P_INIT_MSG_LIST
3598 P_COMMIT
3599 X_RETURN_STATUS
3600 P_TRANSACTION_TYPE
3601 P_TASK_ID
3602 P_TASK_REFERENCE
3603 P_ATTR_GRP_INTERNAL_NAME
3604 P_ATTR_GRP_ID
3605 P_ATTR_GRP_ROW_INDEX
3606 P_ATTR_INTERNAL_NAME
3607 P_ATTR_VALUE_STR
3608 P_ATTR_VALUE_NUM
3609 P_ATTR_VALUE_NUM_UOM
3610 P_ATTR_VALUE_DATE
3611 P_ATTR_DISP_VALUE
3612 **/
3613 
3614 /*#
3615  * This API loads a single attribute value for a given attribute group for the specified
3616  * project and task. Please refer the API User Guide to find more on required parameters
3617  * and optional parameters of this API.
3618  * @param P_API_VERSION_NUMBER API standard version number
3619  * @param P_INIT_MSG_LIST API standard (default = F): indicates if message stack will be initialized
3620  * @rep:paraminfo {@rep:precision 1}
3621  * @param P_COMMIT API standard (default = F): indicates if transaction will be committed
3622  * @rep:paraminfo {@rep:precision 1}
3623  * @param X_RETURN_STATUS API standard: return of the API (success/failure/unexpected error)
3624  * @rep:paraminfo {@rep:precision 1}
3625  * @param P_TRANSACTION_TYPE The mode of processing for a logical attribute group row.
3626  * The value should correspond to the following constants:
3627  * PA_PROJECT_PUB: G_DELETE_MODE, G_UPDATE_MODE, G_SYNC_MODE (which either creates or
3628  * updates, as appropriate), and G_CREATE_MODE. Rows are processed in the
3629  * order in which they are displayed (deletion, updates and synchronization, and creation).
3630  * @param P_TASK_ID  Identifier of the task, if known. Required only if
3631  * a task-level extensible attribute is provided.
3632  * @param P_TASK_REFERENCE Unique task reference, if task identifier is unknown.
3633  * Required only if a task-level extensible attribute is provided.
3634  * @param P_ATTR_GRP_INTERNAL_NAME Internal name of the attribute group to which the current row belongs
3635  * @param P_ATTR_GRP_ID Identifier of the attribute group to which the current row belongs
3636  * @param P_ATTR_GRP_ROW_INDEX Logical row identifier
3637  * @rep:paraminfo {@rep:required}
3638  * @param P_ATTR_INTERNAL_NAME Internal name of the current row attribute
3639  * @param P_ATTR_VALUE_STR The value of the current row attribute if its data type is String
3640  * @param P_ATTR_VALUE_NUM The value of the current row attribute if its data type is Number
3641  * @param P_ATTR_VALUE_NUM_UOM The unit of measure selected to display number attributes
3642  * @param P_ATTR_VALUE_DATE The value for the current row attribute if its data type is Date
3643  * @param P_ATTR_DISP_VALUE The value for the current row attribute (as a String, regardless
3644  * of its data type) if the attribute has a value set with separate display and internal values
3645  * (for example, value sets with validation type set to Independent or Table).
3646  * @rep:scope public
3647  * @rep:lifecycle active
3648  * @rep:displayname Load Extensible Attribute
3649  * @rep:category BUSINESS_ENTITY PA_PROJECT
3650  * @rep:category BUSINESS_ENTITY PA_TASK
3651  * @rep:compatibility S
3652  */
3653 PROCEDURE load_extensible_attribute(P_API_VERSION_NUMBER     IN     NUMBER   := 1.0,
3654                                     P_INIT_MSG_LIST          IN     VARCHAR2 := FND_API.G_FALSE,
3655                                     P_COMMIT                 IN     VARCHAR2 := FND_API.G_FALSE,
3656                                     X_RETURN_STATUS             OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
3657                                     P_TRANSACTION_TYPE       IN     VARCHAR2 := PA_PROJECT_PUB.G_SYNC_MODE,
3658                         P_TASK_ID                IN     NUMBER   := NULL,
3659                                     P_TASK_REFERENCE         IN     VARCHAR2 := NULL,
3660                                     P_ATTR_GRP_INTERNAL_NAME IN     VARCHAR2 := NULL,
3661                                     P_ATTR_GRP_ID            IN     NUMBER   := NULL,
3662                                     P_ATTR_GRP_ROW_INDEX     IN     NUMBER   := NULL,
3663                                     P_ATTR_INTERNAL_NAME     IN     VARCHAR2 := NULL,
3664                                     P_ATTR_VALUE_STR         IN     VARCHAR2 := NULL,
3665                                     P_ATTR_VALUE_NUM         IN     NUMBER   := NULL,
3666                                     P_ATTR_VALUE_NUM_UOM     IN     VARCHAR2 := NULL,
3667                                     P_ATTR_VALUE_DATE        IN     DATE     := NULL,
3668                                     P_ATTR_DISP_VALUE        IN     VARCHAR2 := NULL
3669                                     );
3670 
3671 /*#
3672  * This is a bulk load API that loads the attribute values in a batch of 1000 attributes per
3673  * API call. This procedure calls the LOAD_EXTENSIBLE_ATTRIBUTE API.
3674  * @param P_API_VERSION_NUMBER API standard: version number
3675  * @param P_INIT_MSG_LIST API standard (default = F): indicates if message stack will be initialized
3676  * @rep:paraminfo {@rep:precision 1}
3677  * @param P_COMMIT API standard (default = F): indicates if the transaction will be committed
3678  * @rep:paraminfo {@rep:precision 1}
3679  * @param X_RETURN_STATUS API standard: return status of the API (success/failure/unexpected error)
3680  * @rep:paraminfo {@rep:precision 1}
3681  * @param P_TRANSACTION_TYPE The mode of processing for a logical attribute group row.
3682  * The value should correspond to the following constants:
3683  * PA_PROJECT_PUB : G_DELETE_MODE, G_UPDATE_MODE, G_SYNC_MODE (which either creates or
3684  * updates, as appropriate), and G_CREATE_MODE. Rows are processed in the
3685  * order in which they are displayed (deletion, updates and
3686  * synchronization, and creation).
3687  * @param P_TASK_ID  Identifier of the task, if known. Required only if
3688  * a task-level extensible attribute is provided.
3689  * @param P_TASK_REFERENCE Unique task reference, if task identifier is unknown.
3690  * Required only if a task-level extensible attribute is provided.
3691  * @param P_ATTR_GRP_INTERNAL_NAME Internal name of the attribute group to which the current row belongs
3692  * @param P_ATTR_GRP_ID Identifier of the attribute group to which the current row belongs
3693  * @param P_ATTR_GRP_ROW_INDEX Logical row identifier
3694  * @rep:paraminfo {@rep:required}
3695  * @param P_ATTR_INTERNAL_NAME Internal name of the current row attribute
3696  * @param P_ATTR_VALUE_STR The value of the current row attribute if its data type is String
3697  * @param P_ATTR_VALUE_NUM The value of the current row attribute if its data type is Number
3698  * @param P_ATTR_VALUE_NUM_UOM The unit of measure selected to display number attributes
3699  * @param P_ATTR_VALUE_DATE The value for the current row attribute if its data type is Date
3700  * @param P_ATTR_DISP_VALUE The value for the current row attribute (as a String, regardless
3701  * of its data type) if the attribute has a value set with separate display and internal values
3702  * (for example, value sets with validation type set to Independent or Table).
3703  * @rep:scope public
3704  * @rep:lifecycle active
3705  * @rep:displayname Load Extensible Attributes
3706  * @rep:category BUSINESS_ENTITY PA_PROJECT
3707  * @rep:category BUSINESS_ENTITY PA_TASK
3708  * @rep:compatibility S
3709  */
3710 PROCEDURE load_extensible_attributes(P_API_VERSION_NUMBER     IN     NUMBER,
3711                                      P_INIT_MSG_LIST          IN     VARCHAR2          := FND_API.G_FALSE,
3712                                      P_COMMIT                 IN     VARCHAR2          := FND_API.G_FALSE,
3713                                      X_RETURN_STATUS          OUT    NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
3714                                      P_TRANSACTION_TYPE       IN     PA_VC_1000_10     := PA_VC_1000_10(PA_PROJECT_PUB.G_SYNC_MODE),
3715                                      P_TASK_ID        IN     PA_NUM_1000_NUM   := PA_NUM_1000_NUM(NULL),
3716                                      P_TASK_REFERENCE IN     PA_VC_1000_150    := PA_VC_1000_150(NULL),
3717                                      P_ATTR_GRP_INTERNAL_NAME    IN     PA_VC_1000_30     := PA_VC_1000_30(NULL),
3718                                      P_ATTR_GRP_ID          IN     PA_NUM_1000_NUM   := PA_NUM_1000_NUM(NULL),
3719                                      P_ATTR_GRP_ROW_INDEX          IN     PA_NUM_1000_NUM   := PA_NUM_1000_NUM(NULL),
3720                                      P_ATTR_INTERNAL_NAME          IN     PA_VC_1000_30     := PA_VC_1000_30(NULL),
3721                                      P_ATTR_VALUE_STR         IN     PA_VC_1000_1000    := PA_VC_1000_1000(NULL),
3722                                      P_ATTR_VALUE_NUM         IN     PA_NUM_1000_NUM   := PA_NUM_1000_NUM(NULL),
3723                                      P_ATTR_VALUE_NUM_UOM   IN     PA_VC_1000_30     := PA_VC_1000_30(NULL),
3724                                      P_ATTR_VALUE_DATE        IN     PA_DATE_1000_DATE := PA_DATE_1000_DATE(NULL),
3725                                      P_ATTR_DISP_VALUE        IN     PA_VC_1000_150    := PA_VC_1000_150(NULL)
3726                          );
3727 -- </EA Load API>
3728 
3729 --Project Structures
3730 /*#
3731  * This is a Load-Execute-Fetch procedure used to load structure data.
3732  * @param p_api_version_number API standard: version number
3733  * @rep:paraminfo {@rep:required}
3734  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3735  * @rep:paraminfo {@rep:precision 1}
3736  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3737  * @rep:paraminfo {@rep:precision 1}
3738  * @param p_pa_project_id The unique identifier of the project
3739  * @param p_structure_type Structure type
3740  * @rep:paraminfo {@rep:precision 25}
3741  * @param p_structure_version_name The name of the structure version
3742  * @param P_structure_version_id The unique identifier of the structure version
3743  * @param P_DESCRIPTION Description of the structure version
3744  * @rep:scope public
3745  * @rep:lifecycle active
3746  * @rep:displayname Load Structure
3747  * @rep:category BUSINESS_ENTITY PA_PROJECT
3748  * @rep:category BUSINESS_ENTITY PA_TASK
3749  * @rep:compatibility S
3750  */
3751 PROCEDURE load_structure
3752 ( p_api_version_number             IN   NUMBER
3753  ,p_init_msg_list              IN   VARCHAR2           := FND_API.G_FALSE
3754  ,p_return_status              OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3755  ,p_pa_project_id              IN   NUMBER       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3756  ,p_structure_type             IN    VARCHAR2          := 'FINANCIAL'
3757  ,p_structure_version_name     IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3758  ,P_structure_version_id       IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3759  ,P_DESCRIPTION                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3760  /*,P_VERSION_NUMBER             IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3761  ,P_NAME                       IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3762  ,P_CURRENT_FLAG               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3763  ,P_ORIGINAL_FLAG              IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3764  ,P_LATEST_EFF_PUBLISHED_FLAG IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3765  ,P_EFFECTIVE_DATE             IN    DATE              := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
3766  ,P_PUBLISHED_DATE             IN    DATE              := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
3767  ,P_PUBLISHED_BY_PERSON_ID     IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3768  ,P_CURRENT_BASELINE_DATE      IN    DATE              := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
3769  ,P_CURRENT_BASELINE_PERSON_ID   IN    NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3770  ,P_ORIGINAL_BASELINE_DATE       IN    DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
3771  ,P_ORIGINAL_BASELINE_PERSON_ID  IN    NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3772  ,P_LOCK_STATUS_CODE             IN    VARCHAR2       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3773  ,P_LOCKED_BY_PERSON_ID          IN    NUMBER         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3774  ,P_LOCKED_DATE                  IN    DATE           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
3775  ,P_STATUS_CODE                  IN    VARCHAR2       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3776  ,P_WF_STATUS_CODE               IN    VARCHAR2       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3777  ,P_PM_SOURCE_CODE               IN    VARCHAR2       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3778  ,P_PM_SOURCE_REFERENCE          IN    VARCHAR2       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3779  ,P_CHANGE_REASON_CODE           IN    VARCHAR2       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
3780  */
3781 );
3782 
3783 
3784 /*#
3785  * This API is used to delete a workplan structure version from Oracle Projects.
3786  * @param p_api_version_number API standard: version number
3787  * @rep:paraminfo {@rep:required}
3788  * @param p_commit API standard (default = F): indicates if the transaction will be committed
3789  * @rep:paraminfo {@rep:precision 1}
3790  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3791  * @rep:paraminfo {@rep:precision 1}
3792  * @param p_msg_count API standard: number of error messages
3793  * @rep:paraminfo {@rep:required}
3794  * @param p_msg_data API standard: error message
3795  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
3796  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3797  * @rep:paraminfo {@rep:precision 1}
3798  * @param p_structure_version_id The unique identifier of the workplan structure
3799  * @rep:paraminfo {@rep:required}
3800  * @param p_record_version_number The unique identifier of the published workplan structure version
3801  * @rep:scope public
3802  * @rep:lifecycle active
3803  * @rep:displayname Delete Structure Version
3804  * @rep:category BUSINESS_ENTITY PA_PROJECT
3805  * @rep:category BUSINESS_ENTITY PA_TASK
3806  * @rep:compatibility S
3807  */
3808 PROCEDURE delete_structure_version
3809 ( p_api_version_number          IN      NUMBER          := 1.0 -- for bug# 3802759
3810  ,p_commit                      IN      VARCHAR2        := FND_API.G_FALSE
3811  ,p_init_msg_list               IN      VARCHAR2        := FND_API.G_FALSE
3812  ,p_msg_count                   OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
3813  ,p_msg_data                    OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3814  ,p_return_status               OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3815  ,p_structure_version_id        IN  NUMBER
3816  ,p_record_version_number       IN      NUMBER
3817 );
3818 
3819 /*#
3820  * This PL/SQL procedure is used to publish, submit, rework, reject, or approve
3821  * a workplan structure and thereby change its status code. The valid status codes are:STRUCTURE_WORKING,
3822  * STRUCTURE_PUBLISHED, STRUCTURE_SUBMITTED, STRUCTURE_REJECTED, and STRUCTURE_APPROVED.
3823  * @param p_api_version_number API standard: version number
3824  * @rep:paraminfo {@rep:required}
3825  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3826  * @rep:paraminfo {@rep:precision 1}
3827  * @param p_commit API standard (default = F): indicates if the transaction will be committed
3828  * @rep:paraminfo {@rep:precision 1}
3829  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3830  * @rep:paraminfo {@rep:precision 1}
3831  * @param p_msg_count API standard: number of error messages
3832  * @rep:paraminfo {@rep:required}
3833  * @param p_msg_data API standard: error message
3834  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
3835  * @param p_structure_version_id The unique identifier of the workplan structure
3836  * @rep:paraminfo {@rep:required}
3837  * @param p_pa_project_id The unique identifier of the project
3838  * @rep:paraminfo {@rep:required}
3839  * @param p_status_code The workplan status code. The valid values: STRUCTURE_WORKING, STRUCTURE_PUBLISHED,
3840  * STRUCTURE_SUBMITTED, STRUCTURE_REJECTED, and STRUCTURE_APPROVED
3841  * @rep:paraminfo {@rep:required}
3842  * @param p_process_mode Process mode
3843  * @rep:paraminfo {@rep:precision 30}
3844  * @param p_published_struct_ver_id The unique identifier of the published workplan structure version
3845  * @rep:scope public
3846  * @rep:lifecycle active
3847  * @rep:displayname Change Structure Status
3848  * @rep:category BUSINESS_ENTITY PA_PROJECT
3849  * @rep:category BUSINESS_ENTITY PA_TASK
3850  * @rep:compatibility S
3851  */
3852 PROCEDURE change_structure_status
3853 (p_api_version_number           IN      NUMBER          := 1.0 -- for bug# 3802319
3854 , p_init_msg_list               IN      VARCHAR2        := 'F'
3855 , p_commit                      IN      VARCHAR2        := 'F'
3856 , p_return_status               OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3857 , p_msg_count                   OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
3858 , p_msg_data                    OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3859 , p_structure_version_id        IN      NUMBER
3860 , p_pa_project_id               IN      NUMBER
3861 , p_status_code                 IN      VARCHAR2
3862 , p_process_mode                IN      VARCHAR2 := 'ONLINE'
3863 , p_published_struct_ver_id     OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
3864 
3865 );
3866 
3867 
3868 /*#
3869  * This API is used to baseline a workplan structure version.
3870  * @param p_api_version_number API standard: version number
3871  * @rep:paraminfo {@rep:required}
3872  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3873  * @rep:paraminfo {@rep:precision 1}
3874  * @param p_commit API standard (default = F): indicates if the transaction will be committed
3875  * @rep:paraminfo {@rep:precision 1}
3876  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3877  * @rep:paraminfo {@rep:precision 1}
3878  * @param p_msg_count API standard: number of error messages
3879  * @rep:paraminfo {@rep:required}
3880  * @param p_msg_data API standard: error message
3881  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
3882  * @param p_structure_version_id The unique identifier of the workplan structure
3883  * @rep:paraminfo {@rep:required}
3884  * @param p_pa_project_id The unique identifier of the project
3885  * @rep:paraminfo {@rep:required}
3886  * @rep:scope public
3887  * @rep:lifecycle active
3888  * @rep:displayname Baseline Structure Version
3889  * @rep:category BUSINESS_ENTITY PA_PROJECT
3890  * @rep:category BUSINESS_ENTITY PA_TASK
3891  * @rep:compatibility S
3892  */
3893 PROCEDURE baseline_structure
3894 (p_api_version_number           IN      NUMBER
3895 , p_init_msg_list               IN      VARCHAR2        := 'F'
3896 , p_commit                      IN      VARCHAR2        := 'F'
3897 , p_return_status               OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3898 , p_msg_count                   OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
3899 , p_msg_data                    OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3900 , p_structure_version_id        IN      NUMBER
3901 , p_pa_project_id               IN      NUMBER
3902 
3903 );
3904 
3905 --Project Structures
3906 
3907 --Project Connect 4.0
3908 --------------------------------------------------------------------------------
3909 --Name:               fetch_structure_version
3910 --Type:               Procedure
3911 --Description:        This procedure can be used to get the structure version ids
3912 --                    to the client side as part part of the LOAD/EXECUTE/FETCH cycle.
3913 --
3914 --Called subprograms:
3915 --
3916 --
3917 --
3918 --History:
3919 --    03-DEC-2002        Created
3920 --
3921 
3922 /*#
3923  * This API is a Load-Execute-Fetch procedure that returns
3924  * structure version identifiers of workplan and financial structures.
3925  * @param p_api_version_number API standard: version number
3926  * @rep:paraminfo {@rep:required}
3927  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3928  * @rep:paraminfo {@rep:precision 1}
3929  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3930  * @rep:paraminfo {@rep:precision 1}
3931  * @param p_structure_type Structure type
3932  * @param p_pa_structure_version_id The unique identifier of the structure
3933  * @rep:paraminfo {@rep:required}
3934  * @param p_struc_return_status Structure status
3935  * @rep:scope public
3936  * @rep:lifecycle active
3937  * @rep:displayname Fetch Structure Version
3938  * @rep:category BUSINESS_ENTITY PA_PROJECT
3939  * @rep:category BUSINESS_ENTITY PA_TASK
3940  * @rep:compatibility S
3941  */
3942 PROCEDURE fetch_structure_version
3943 ( p_api_version_number        IN      NUMBER
3944  ,p_init_msg_list             IN      VARCHAR2        := FND_API.G_FALSE
3945  ,p_return_status             OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3946  ,p_structure_type            IN      VARCHAR2        := 'FINANCIAL'
3947  ,p_pa_structure_version_id   OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
3948  ,p_struc_return_status       OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3949 )
3950 ;
3951 --Project Connect 4.0
3952 
3953 
3954 /*#
3955  * This API is a Load-Execute-Fetch procedure that returns version identifier
3956  * for a task.
3957  * @param p_api_version_number API standard: version number
3958  * @rep:paraminfo {@rep:required}
3959  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3960  * @rep:paraminfo {@rep:precision 1}
3961  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3962  * @rep:paraminfo {@rep:precision 1}
3963  * @param p_task_index Points to a single task
3964  * @param p_task_version_id Task version identifier
3965  * @param p_task_return_status Flag indicating whether the API has handled the task successfully. S indicates
3966  *  success, E indicates a business rule violation, and U indicates that an unexpected error occurred
3967  * @rep:paraminfo {@rep:precision 1}
3968  * @rep:scope public
3969  * @rep:lifecycle active
3970  * @rep:displayname Fetch Task Version
3971  * @rep:category BUSINESS_ENTITY PA_PROJECT
3972  * @rep:category BUSINESS_ENTITY PA_TASK
3973  * @rep:compatibility S
3974  */
3975 PROCEDURE fetch_task_version
3976 ( p_api_version_number      IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3977  ,p_init_msg_list       IN  VARCHAR2    := FND_API.G_FALSE
3978  ,p_return_status       OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3979  ,p_task_index          IN  NUMBER      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
3980  ,p_task_version_id     OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
3981  ,p_task_return_status      OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
3982 );
3983 
3984 --bug 2765115
3985 
3986 /*#
3987  * This API is used to get the task version identifier of a task for a particular
3988  * workplan structure version.
3989  * @param p_api_version_number API standard: version number
3990  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
3991  * @rep:paraminfo {@rep:precision 1}
3992  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
3993  * @rep:paraminfo {@rep:precision 1}
3994  * @param p_pa_project_id The unique identifier of a project
3995  * @param p_pa_task_id The unique identifier of a task
3996  * @param p_pa_structure_version_id The unique identifier of a workplan structure
3997  * @param p_task_version_id Task version identifier
3998  * @rep:scope public
3999  * @rep:lifecycle active
4000  * @rep:displayname Get Task Version
4001  * @rep:category BUSINESS_ENTITY PA_PROJECT
4002  * @rep:category BUSINESS_ENTITY PA_TASK
4003  * @rep:compatibility S
4004  */
4005 PROCEDURE get_task_version
4006 ( p_api_version_number          IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4007  ,p_init_msg_list               IN      VARCHAR2        := FND_API.G_FALSE
4008  ,p_return_status               OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4009  ,p_pa_project_id                  IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4010  ,p_pa_task_id                     IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4011  ,p_pa_structure_version_id        IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4012  ,p_task_version_id             OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
4013 );
4014 --bug 2765115
4015 
4016  -- FP M changes begin (venkat)
4017 
4018 /*#
4019  * This API is used to change the current working version of a workplan structure.
4020  * @param p_api_version_number API standard: version number
4021  * @rep:paraminfo {@rep:required}
4022  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4023  * @rep:paraminfo {@rep:precision 1}
4024  * @param p_commit API standard (default = F): indicates if the transaction will be committed
4025  * @rep:paraminfo {@rep:precision 1}
4026  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
4027  * @rep:paraminfo {@rep:precision 1}
4028  * @param p_msg_count API standard: number of error messages
4029  * @rep:paraminfo {@rep:required}
4030  * @param p_msg_data API standard: error message
4031  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
4032  * @param p_structure_version_id The unique identifier of the workplan structure
4033  * @rep:paraminfo {@rep:required}
4034  * @param p_pa_project_id The unique identifier of the project
4035  * @rep:paraminfo {@rep:required}
4036  * @rep:scope public
4037  * @rep:lifecycle active
4038  * @rep:displayname Change Current Working Version
4039  * @rep:category BUSINESS_ENTITY PA_PROJECT
4040  * @rep:category BUSINESS_ENTITY PA_TASK
4041  * @rep:compatibility S
4042  */
4043 PROCEDURE change_current_working_version
4044 (p_api_version_number           IN      NUMBER
4045 , p_init_msg_list               IN      VARCHAR2        := 'F'
4046 , p_commit                      IN      VARCHAR2        := 'F'
4047 , p_return_status               OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4048 , p_msg_count                   OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
4049 , p_msg_data                    OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4050 , p_structure_version_id        IN      NUMBER
4051 , p_pa_project_id               IN      NUMBER
4052 );
4053 -- FP M changes end (venkat)
4054 
4055 -- Progress Management Changes. Bug # 3420093.
4056 
4057 /*#
4058  * This API is used to apply the latest progress information on the
4059  * current working version of a workplan structure.
4060  * @param p_api_version API standard: version number
4061  * @rep:paraminfo {@rep:required}
4062  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4063  * @rep:paraminfo {@rep:precision 1}
4064  * @param p_commit API standard (default = F): indicates if the transaction will be committed
4065  * @rep:paraminfo {@rep:precision 1}
4066  * @param p_pa_project_id The unique identifier of the project
4067  * @rep:paraminfo {@rep:required}
4068  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
4069  * @rep:paraminfo {@rep:precision 25}
4070  * @param p_working_str_version_id Identifier of the working version of a workplan structure
4071  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
4072  * @rep:paraminfo {@rep:precision 1}
4073  * @param p_msg_count API standard: number of error messages
4074  * @rep:paraminfo {@rep:required}
4075  * @param p_msg_data API standard: error message
4076  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
4077  * @rep:scope public
4078  * @rep:lifecycle active
4079  * @rep:displayname Apply Latest Progress
4080  * @rep:category BUSINESS_ENTITY PA_PROJECT
4081  * @rep:category BUSINESS_ENTITY PA_TASK
4082  * @rep:compatibility S
4083  */
4084 PROCEDURE apply_lp_prog_on_cwv(
4085   p_api_version                 IN      NUMBER          :=1.0
4086  ,p_init_msg_list               IN      VARCHAR2        :=FND_API.G_TRUE
4087  ,p_commit                      IN      VARCHAR2        :=FND_API.G_FALSE
4088  ,p_pa_project_id               IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4089  ,p_pm_project_reference        IN      VARCHAR2        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4090  ,p_working_str_version_id      IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4091  ,p_return_status               OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4092  ,p_msg_count                   OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
4093  ,p_msg_data                    OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4094 );
4095 
4096 -- Progress Management Changes. Bug # 3420093.
4097 
4098 -- 3435905 FP M Changes for Deliverables : Start
4099 
4100 /*#
4101  * This API is used to load one deliverable into a PL/SQL table.
4102  * @param p_api_version API standard: version number
4103  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4104  * @param p_debug_mode Indicates to the system whether to display debug messages
4105  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
4106  * @rep:paraminfo {@rep:required}
4107  * @param p_deliverable_name Deliverable name
4108  * @rep:paraminfo {@rep:required}
4109  * @param p_deliverable_short_name Deliverable short name
4110  * @rep:paraminfo {@rep:required}
4111  * @param p_deliverable_type_id Identifier of the deliverable type
4112  * @param p_deliverable_owner_id Deliverable owner identifier
4113  * @param p_description Deliverable description
4114  * @param p_status_code Deliverable status
4115  * @param p_due_date Deliverable due date
4116  * @param p_completion_date Deliverable completion date
4117  * @param p_progress_weight Progress weight
4118  * @param p_pm_source_code Identifier of the source code system
4119  * @param px_deliverable_id Unique identifier of the deliverable in Oracle Projects
4120  * @rep:paraminfo {@rep:required}
4121  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
4122  * @rep:paraminfo {@rep:required}
4123  * @param p_task_id Task identifier of the task associated with the deliverable
4124  * @param p_task_source_reference Task reference of the task associated with the deliverable
4125  * @param p_item_id The item identifier. Applies only to item-based deliverables.
4126  * @param P_inventory_org_id The inventory organization identifier of the item. Applies only to item-based deliverables.
4127  * @param p_quantity The quantity of the item. Applies only to item-based deliverables.
4128  * @param p_uom_code The unit of measure code of the deliverable. Applies only to item-based deliverables.
4129  * @rep:paraminfo {@rep:precision 30}
4130  * @param p_unit_price The unit price of the deliverable. Applies only to item-based deliverables.
4131  * @param p_unit_number The unit number of the deliverable. Required when an item-based deliverable
4132  * is unit number-enabled.
4133  * @rep:paraminfo {@rep:precision 30}
4134  * @param p_currency_code The currency code of the deliverable. Applies only to item-based deliverables.
4135  * @rep:paraminfo {@rep:precision 15}
4136  * @rep:scope public
4137  * @rep:lifecycle active
4138  * @rep:displayname Load Deliverable
4139  * @rep:category BUSINESS_ENTITY PA_PROJECT
4140  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
4141  * @rep:compatibility S
4142  */
4143 PROCEDURE load_deliverable
4144 (   p_api_version            IN  NUMBER     := 1.0
4145   , p_init_msg_list          IN  VARCHAR2   := FND_API.G_TRUE
4146   , p_debug_mode             IN  VARCHAR2   := 'N'
4147   , x_return_status          OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4148   , p_deliverable_name       IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4149   , p_deliverable_short_name IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4150   , p_deliverable_type_id    IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4151   , p_deliverable_owner_id   IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4152   , p_description            IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4153   , p_status_code            IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4154   , p_due_date               IN  DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4155   , p_completion_date        IN  DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4156   , p_progress_weight        IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4157   , p_pm_source_code         IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4158   , px_deliverable_id     IN OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
4159   , p_pm_deliverable_reference IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4160   -- for bug# 3729250
4161 --  , p_carrying_out_org_id    IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4162   , p_task_id                IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4163   , p_task_source_reference  IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4164   , p_item_id                IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4165   , P_inventory_org_id       IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4166   , p_quantity               IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4167   , p_uom_code               IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4168   -- for bug# 3729250
4169 --  , p_item_description       IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4170   , p_unit_price         IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4171   -- for bug# 3729250
4172   , p_unit_number        IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4173   , p_currency_code      IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4174   ) ;
4175 
4176 
4177 
4178 /*#
4179  * This API is used to load deliverables into a PL/SQL table.
4180  * @param p_api_version API standard: version number
4181  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4182  * @param p_debug_mode Indicates to the system whether to display debug messages
4183  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
4184  * @rep:paraminfo {@rep:required}
4185  * @param p_deliverable_name Deliverable name
4186  * @rep:paraminfo {@rep:required}
4187  * @param p_deliverable_short_name Deliverable short name
4188  * @rep:paraminfo {@rep:required}
4189  * @param p_deliverable_type_id Identifier of the deliverable type
4190  * @param p_deliverable_owner_id Deliverable owner identifier
4191  * @param p_description Deliverable description
4192  * @param p_status_code Deliverable status
4193  * @param p_due_date Deliverable due date
4194  * @param p_completion_date Deliverable completion date
4195  * @param p_progress_weight Progress weight
4196  * @param p_pm_source_code Identifier of the source code system
4197  * @param px_deliverable_id Unique identifier of the deliverable in Oracle Projects
4198  * @rep:paraminfo {@rep:required}
4199  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
4200  * @rep:paraminfo {@rep:required}
4201  * @param p_task_id Task identifier of the task associated with the deliverable
4202  * @param p_task_source_reference Task reference of the task associated with the deliverable
4203  * @param p_item_id The item identifier. Applies only to item-based deliverables.
4204  * @param P_inventory_org_id The inventory organization identifier of the item. Applies only to item-based deliverables.
4205  * @param p_quantity The quantity of the item. Applies only to item-based deliverables.
4206  * @param p_uom_code The unit of measure code of the deliverable. Applies only to item-based deliverables.
4207  * @rep:paraminfo {@rep:precision 30}
4208  * @param p_unit_price The unit price of the deliverable. Applies only to item-based deliverables.
4209  * @param p_unit_number The unit number of the deliverable. Required when an item-based deliverable
4210  * is unit number-enabled.
4211  * @rep:paraminfo {@rep:precision 30}
4212  * @param p_currency_code The currency code of the deliverable. Applies only to item-based deliverables.
4213  * @rep:paraminfo {@rep:precision 15}
4214  * @rep:scope public
4215  * @rep:lifecycle active
4216  * @rep:displayname Load Deliverables
4217  * @rep:category BUSINESS_ENTITY PA_PROJECT
4218  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
4219  * @rep:compatibility S
4220  */
4221 PROCEDURE load_deliverables
4222 (   p_api_version            IN  NUMBER     := 1.0
4223   , p_init_msg_list          IN  VARCHAR2   := FND_API.G_TRUE
4224   , p_debug_mode             IN  VARCHAR2  := 'N'
4225   , x_return_status          OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4226   , p_deliverable_name       IN  PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4227   --, p_deliverable_name       IN  PA_VC_1000_240 := PA_VC_1000_240(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4228 --  , p_deliverable_short_name IN  PA_VC_1000_100 := PA_VC_1000_100(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4229   , p_deliverable_short_name IN  PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4230   , p_deliverable_type_id    IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4231   , p_deliverable_owner_id   IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4232   , p_description            IN  PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4233   , p_status_code            IN  PA_VC_1000_30 := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4234   , p_due_date               IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4235   , p_completion_date        IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4236   , p_progress_weight        IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4237   , p_pm_source_code         IN  PA_VC_1000_30 := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4238   , px_deliverable_id     IN OUT  NOCOPY PA_NUM_1000_NUM --File.Sql.39 bug 4440895
4239   , p_pm_deliverable_reference IN  PA_VC_1000_25 := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4240   -- for bug# 3729250
4241 --  , p_carrying_out_org_id    IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4242   , p_task_id                IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4243   , p_task_source_reference  IN  PA_VC_1000_25 := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4244   , p_item_id                IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4245   , P_inventory_org_id       IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4246   , p_quantity               IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4247   , p_uom_code               IN  PA_VC_1000_30 := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4248   -- for bug# 3729250
4249 --  , p_item_description       IN  PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4250   , p_unit_price         IN  PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4251   -- for bug# 3729250
4252   , p_unit_number        IN  PA_VC_1000_30 := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4253 --  , p_currency_code        IN  PA_VC_1000_15 := PA_VC_1000_15(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4254   , p_currency_code      IN  PA_VC_1000_30 := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4255   ) ;
4256 
4257 /*
4258  * This API is used to load a single deliverable action in the PL/SQL table for
4259  * deliverable actions.
4260  * @param p_api_version_number API standard: version number
4261  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4262  * @param p_debug_mode Indicates to the system whether to display debug messages
4263  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
4264  * @param p_action_name Unique identifier of the project in the external system
4265  * @param p_action_id Unique identifier of the deliverable action
4266  * @param p_action_owner_id Action owner identifier
4267  * @param p_function_code Deliverable action function code
4268  * @param p_due_date Due date of the deliverable action
4269  * @param p_description Description of the action
4270  * @param p_completion_date Completion date
4271  * @param p_pm_source_code Unique identifier of the external system
4272  * @param p_pm_action_reference Unique identifier of the deliverable action in the external system
4273  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
4274  * @param p_deliverable_id Unique identifier of the deliverable in Oracle Projects
4275  * @rep:paraminfo {@rep:required}
4276  * @param p_financial_task_reference Unique identifier of the financial task
4277  * @param p_financial_task_id Identifier of the financial task
4278  * @param p_destination_type_code The destination type code of the deliverable action
4279  * @rep:paraminfo {@rep:precision 30}
4280  * @param p_receiving_org_id The identifier of the inventory organization that will receive the item
4281  * @param p_receiving_location_id The location (address) identifier where the item will be received. The
4282  * RECEIVING_LO CATION_ID must be related to the RECEIVING_ORG_ID.
4283  * @param p_po_need_by_date The date by which the purchase order is needed
4284  * @param p_vendor_id The identifier of the vendor that will supply the object
4285  * @param p_vendor_site_code The location (address) identifier of the vendor from where the object will be supplied.
4286  * @param p_Quantity Quantity for procurement deliverable action
4287  * @param p_uom_code The unit of measure code for procurement deliverable action
4288  * @rep:paraminfo {@rep:precision 30}
4289  * @param p_unit_price The unit price of the object. The unit price is needed only for non-item
4290  * deliverable procurement actions.
4291  * @param p_exchange_rate_type Exchange rate type for procurement deliverable actions
4292  * @param p_exchange_rate_date Exchange rate date for procurement deliverable actions
4293  * @param p_exchange_rate Exchange rate for procurement deliverable actions
4294  * @param p_expenditure_type The expenditure type is needed only for non-item based deliverable procurement actions.
4295  * @param p_expenditure_org_id Expenditure organization for procurement deliverable actions
4296  * @param p_expenditure_item_date Expenditure item date for procurement deliverable actions
4297  * @param p_requisition_line_type_id The requisition line type can only have a type of AMOUNT
4298  * The requisition line type is needed only for non-item based deliverable procurement actions
4299  * @param p_category_id The item category identifier is needed only for non-item based deliverable procurement actions
4300  * @param p_ready_to_procure_flag Flag that indicates whether an item is ready to be procured
4301  * @rep:paraminfo {@rep:precision 1}
4302  * @param p_initiate_procure_flag Flag that indicates whether a procurement action should be initiated
4303  * @rep:paraminfo {@rep:precision 1}
4304  * @param p_ship_from_organization_id The inventory organization identifier of the inventory organization that will ship the item
4305  * @param p_ship_from_location_id The location (address) identifier where the item will be shipped.
4306  * The SHIP_FROM_LOCATION_ID must be related to the SHIP_FROM_ORG_ID.
4307  * @param p_ship_to_organization_id The customer account identifier to which the item will be shipped.
4308  * @param p_ship_to_location_id The customer location (address) identifier to where the item will be shipped
4309  * The SHIP_TO_LOCATION_ID must be related to the SHIP_TO_ORG_ID
4310  * @param p_demand_schedule Demand schedule
4311  * @rep:paraminfo {@rep:precision 10}
4312  * @param p_expected_shipment_date Expected shipment date
4313  * @param p_promised_shipment_date Promised shipment date
4314  * @param p_volume The volume of each object to be shipped. The volume is needed only for non-item shipping.
4315  * @param p_volume_uom The volume unit of measure of each object to be shipped.
4316  * The volume unit of measure is needed only for non-item shipping.
4317  * @rep:paraminfo {@rep:precision 10}
4318  * @param p_weight The weight of each object to be shipped. The weight is needed only for non-item shipping.
4319  * @param p_weight_uom The weight unit of measure of each object to be shipped. The weight unit of
4320  * measure is needed only for non-item shipping.
4321  * @rep:paraminfo {@rep:precision 10}
4322  * @param p_ready_to_ship_flag Flag that indicates whether an item is ready to be shiped
4323  * @rep:paraminfo {@rep:precision 1}
4324  * @param p_initiate_planning_flag Flag that indicates whether planning should be initiated
4325  * @rep:paraminfo {@rep:precision 1}
4326  * @param p_initiate_shipping_flag Flag that indicates whether shipping should be initiated
4327  * @rep:paraminfo {@rep:precision 1}
4328  * @param p_event_type Billing event type
4329  * @rep:paraminfo {@rep:precision 30}
4330  * @param p_currency Currency code for the billing event
4331  * @rep:paraminfo {@rep:precision 30}
4332  * @param p_invoice_amount Invoice amount for the billing
4333  * @param p_revenue_amount Revenue amount for the billing event
4334  * @param p_event_date Event date for the billing event.
4335  * @param p_event_number Event number for the billing event.
4336  * @param p_organization_id Organization identifier of the organization associated with the billing event
4337  * @param p_bill_hold_flag Flag that indicates whether a billing event is on hold
4338  * @rep:paraminfo {@rep:precision 1}
4339  * @param p_project_functional_rate_type Rate type for project functional currency for the billing event
4340  * @rep:paraminfo {@rep:precision 30}
4341  * @param p_project_functional_rate_date Rate date for project functional currency for the billing event
4342  * @param p_project_functional_rate Rate for project functional currency for the billing event
4343  * @param p_project_rate_type Rate type for project currency for the billing event
4344  * @rep:paraminfo {@rep:precision 30}
4345  * @param p_project_rate_date Rate date for project currency for the billing event
4346  * @param p_project_rate Rate for project currency for the billing event
4347  * @param p_funding_rate_type Rate type for funding currency for the billing event
4348  * @rep:paraminfo {@rep:precision 30}
4349  * @param p_funding_rate_date Rate date for funding currency for the billing event
4350  * @param p_funding_rate Rate for funding currency for the billing event
4351  * @param p_pm_event_reference The unique identifier of the billing event in the external system
4352  * @rep:paraminfo {@rep:precision 25}
4353  * @rep:scope public
4354  * @rep:lifecycle active
4355  * @rep:displayname Load Deliverable Action
4356  * @rep:category BUSINESS_ENTITY PA_PROJECT
4357  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
4358  * @rep:compatibility S
4359  */
4360 PROCEDURE load_action
4361 (   p_api_version                  IN  NUMBER    := 1.0
4362   , p_init_msg_list                IN  VARCHAR2  := FND_API.G_TRUE
4363   , p_debug_mode                   IN  VARCHAR2  := 'N'
4364   , x_return_status                OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4365   , p_action_name                  IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4366   , p_action_id                    IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4367   , p_action_owner_id              IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4368   , p_function_code                IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4369   , p_due_date                     IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4370   , p_description                  IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4371   , p_completion_date              IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4372   , p_pm_source_code               IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4373   , p_pm_action_reference          IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4374   -- for bug# 3729250
4375 --  , p_carrying_out_org_id          IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4376   , p_pm_deliverable_reference     IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4377   , p_deliverable_id               IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4378   -- added for bug# 3729250
4379   , p_financial_task_reference     IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4380   , p_financial_task_id            IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4381   , p_destination_type_code        IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4382   , p_receiving_org_id             IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4383   , p_receiving_location_id        IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4384   , p_po_need_by_date              IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4385   , p_vendor_id                    IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4386   , p_vendor_site_code             IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4387 --  , p_project_currency             IN  VARCHAR2    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4388   , p_Quantity                     IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4389   , p_uom_code                     IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4390   , p_unit_price                   IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4391   , p_exchange_rate_type           IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4392   , p_exchange_rate_date           IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4393   , p_exchange_rate                IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM       /* Bug # 3590235 */
4394   , p_expenditure_type             IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4395   , p_expenditure_org_id           IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4396   , p_expenditure_item_date        IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4397   , p_requisition_line_type_id     IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4398   , p_category_id                  IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4399   , p_ready_to_procure_flag        IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4400   , p_initiate_procure_flag        IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4401   , p_ship_from_organization_id    IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4402   , p_ship_from_location_id        IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4403   , p_ship_to_organization_id      IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4404   , p_ship_to_location_id          IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4405   , p_demand_schedule              IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4406   , p_expected_shipment_date       IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4407   , p_promised_shipment_date       IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4408   , p_volume                       IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4409   , p_volume_uom                   IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4410   , p_weight                       IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4411   , p_weight_uom                   IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4412   , p_ready_to_ship_flag           IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4413   , p_initiate_planning_flag       IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4414   , p_initiate_shipping_flag       IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4415   , p_event_type                   IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4416   , p_currency                     IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4417   , p_invoice_amount               IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4418   , p_revenue_amount               IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4419   , p_event_date                   IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4420   , p_event_number                 IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4421   , p_organization_id              IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4422   , p_bill_hold_flag               IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4423   , p_project_functional_rate_type IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4424   , p_project_functional_rate_date IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4425   , p_project_functional_rate      IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4426   , p_project_rate_type            IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4427   , p_project_rate_date            IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4428   , p_project_rate                 IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4429   , p_funding_rate_type            IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4430   , p_funding_rate_date            IN  DATE      := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4431   , p_funding_rate                 IN  NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4432   , p_pm_event_reference           IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR -- 3651489 added parameter
4433 );
4434 
4435 /*
4436  * This API is used to load deliverable actions in the PL/SQL table for
4437  * deliverable actions.
4438  * @param p_api_version_number API standard: version number
4439  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4440  * @param p_debug_mode Indicates to the system whether to display debug messages
4441  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
4442  * @param p_action_name Unique identifier of the project in the external system
4443  * @param p_action_id Unique identifier of the deliverable action
4444  * @param p_action_owner_id Action owner identifier
4445  * @param p_function_code Deliverable action function code
4446  * @param p_due_date Due date of the deliverable action
4447  * @param p_description Description of the action
4448  * @param p_completion_date Completion date
4449  * @param p_pm_source_code Unique identifier of the external system
4450  * @param p_pm_action_reference Unique identifier of the deliverable action in the external system
4451  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
4452  * @param p_deliverable_id Unique identifier of the deliverable in Oracle Projects
4453  * @rep:paraminfo {@rep:required}
4454  * @param p_financial_task_reference Unique identifier of the financial task
4455  * @param p_financial_task_id Identifier of the financial task
4456  * @param p_destination_type_code The destination type code of the deliverable action
4457  * @rep:paraminfo {@rep:precision 30}
4458  * @param p_receiving_org_id The identifier of the inventory organization that will receive the item
4459  * @param p_receiving_location_id The location (address) identifier where the item will be received. The
4460  * RECEIVING_LO CATION_ID must be related to the RECEIVING_ORG_ID.
4461  * @param p_po_need_by_date The date by which the purchase order is needed
4462  * @param p_vendor_id The identifier of the vendor that will supply the object
4463  * @param p_vendor_site_code The location (address) code of the vendor from where the object will be supplied
4464  * @param p_Quantity Quantity for procurement deliverable action
4465  * @param p_uom_code The unit of measure code for procurement deliverable action
4466  * @rep:paraminfo {@rep:precision 30}
4467  * @param p_unit_price The unit price of the object. The unit price is needed only for non-item
4468  * deliverable procurement actions.
4469  * @param p_exchange_rate_type Exchange rate type for procurement deliverable actions
4470  * @param p_exchange_rate_date Exchange rate date for procurement deliverable actions
4471  * @param p_exchange_rate Exchange rate for procurement deliverable actions
4472  * @param p_expenditure_type The expenditure type is needed only for non-item based deliverable procurement actions.
4473  * @param p_expenditure_org_id Expenditure organization for procurement deliverable actions
4474  * @param p_expenditure_item_date Expenditure item date for procurement deliverable actions
4475  * @param p_requisition_line_type_id The requisition line type can only have a type of AMOUNT
4476  * The requisition line type is needed only for non-item based deliverable procurement actions
4477  * @param p_category_id The item category identifier is needed only for non-item based deliverable procurement actions.
4478  * @param p_ready_to_procure_flag Flag that indicates whether an item is ready to be procured
4479  * @rep:paraminfo {@rep:precision 1}
4480  * @param p_initiate_procure_flag Flag that indicates whether a procurement action should be initiated
4481  * @rep:paraminfo {@rep:precision 1}
4482  * @param p_ship_from_organization_id The inventory organization identifier of the inventory organization that will ship the item
4483  * @param p_ship_from_location_id The location (address) identifier where the item will be shipped.
4484  * The SHIP_FROM_LOCATION_ID must be related to the SHIP_FROM_ORG_ID.
4485  * @param p_ship_to_organization_id The customer account identifier to which the item will be shipped
4486  * @param p_ship_to_location_id The customer location (address) identifier to where the item will be shipped.
4487  * The SHIP_TO_LOCATION_ID must be related to the SHIP_TO_ORG_ID.
4488  * @param p_demand_schedule Demand schedule.
4489  * @rep:paraminfo {@rep:precision 10}
4490  * @param p_expected_shipment_date Expected shipment date
4491  * @param p_promised_shipment_date Promised shipment date
4492  * @param p_volume The volume of each object to be shipped. The volume is needed only for non-item shipping.
4493  * @param p_volume_uom The volume unit of measure of each object to be shipped.
4494  * The volume unit of measure is needed only for non-item shipping.
4495  * @rep:paraminfo {@rep:precision 10}
4496  * @param p_weight The weight of each object to be shipped. The weight is needed only for non-item shipping.
4497  * @param p_weight_uom The weight unit of measure of each object to be shipped. The weight unit of
4498  * measure is needed only for non-item shipping.
4499  * @rep:paraminfo {@rep:precision 10}
4500  * @param p_ready_to_ship_flag Flag that indicates whether an item is ready to be shiped
4501  * @rep:paraminfo {@rep:precision 1}
4502  * @param p_initiate_planning_flag Flag that indicates whether planning should be initiated
4503  * @rep:paraminfo {@rep:precision 1}
4504  * @param p_initiate_shipping_flag Flag that indicates whether shipping should be initiated
4505  * @rep:paraminfo {@rep:precision 1}
4506  * @param p_event_type Billing event type
4507  * @rep:paraminfo {@rep:precision 30}
4508  * @param p_currency Currency code for the billing event
4509  * @rep:paraminfo {@rep:precision 30}
4510  * @param p_invoice_amount Invoice amount for the billing
4511  * @param p_revenue_amount Revenue amount for the billing event
4512  * @param p_event_date Event date for the billing event
4513  * @param p_event_number Event number for the billing event
4514  * @param p_organization_id Organization identifier of the organization associated with the billing event
4515  * @param p_bill_hold_flag Flag that indicates whether a billing event is on hold
4516  * @rep:paraminfo {@rep:precision 1}
4517  * @param p_project_functional_rate_type Rate type for project functional currency for the billing event
4518  * @rep:paraminfo {@rep:precision 30}
4519  * @param p_project_functional_rate_date Rate date for project functional currency for the billing event
4520  * @param p_project_functional_rate Rate for project functional currency for the billing event
4521  * @param p_project_rate_type Rate type for project currency for the billing event
4522  * @rep:paraminfo {@rep:precision 30}
4523  * @param p_project_rate_date Rate date for project currency for the billing event
4524  * @param p_project_rate Rate for project currency for the billing event
4525  * @param p_funding_rate_type Rate type for funding currency for the billing event
4526  * @rep:paraminfo {@rep:precision 30}
4527  * @param p_funding_rate_date Rate date for funding currency for the billing event
4528  * @param p_funding_rate Rate for funding currency for the billing event
4529  * @param p_pm_event_reference The unique identifier of the billing event in the external system
4530  * @rep:paraminfo {@rep:precision 25}
4531  * @rep:scope public
4532  * @rep:lifecycle active
4533  * @rep:displayname Load Deliverable Actions
4534  * @rep:category BUSINESS_ENTITY PA_PROJECT
4535  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
4536  * @rep:compatibility S
4537  */
4538 PROCEDURE load_actions
4539 (   p_api_version                  IN  NUMBER            := 1.0
4540   , p_init_msg_list                IN  VARCHAR2          := FND_API.G_TRUE
4541   , p_debug_mode                   IN  VARCHAR2          := 'N'
4542   , x_return_status            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4543   --, p_action_name                  IN  PA_VC_1000_240  := PA_VC_1000_240(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4544   , p_action_name                  IN  PA_VC_1000_150    := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4545   , p_action_id                    IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4546   , p_action_owner_id              IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4547   , p_function_code                IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4548   , p_due_date                     IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4549   , p_description                  IN  PA_VC_1000_2000   := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4550   , p_completion_date              IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4551   , p_pm_source_code               IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4552   , p_pm_action_reference          IN  PA_VC_1000_25     := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4553   -- for bug# 3729250
4554 --  , p_carrying_out_org_id          IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4555   , p_pm_deliverable_reference     IN  PA_VC_1000_25     := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4556   , p_deliverable_id               IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4557   -- added for bug# 3729250
4558   , p_financial_task_reference     IN  PA_VC_1000_25     := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4559   , p_financial_task_id            IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4560   , p_destination_type_code        IN  PA_VC_1000_25     := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4561   , p_receiving_org_id             IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4562   , p_receiving_location_id        IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4563   , p_po_need_by_date              IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4564   , p_vendor_id                    IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4565   , p_vendor_site_code             IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4566 --  , p_project_currency             IN  PA_VC_1000_25   := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4567   , p_Quantity                     IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4568   , p_uom_code                     IN  PA_VC_1000_25     := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4569   , p_unit_price                   IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4570   , p_exchange_rate_type           IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4571   , p_exchange_rate_date           IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4572   , p_exchange_rate                IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)   /* Bug # 3590235 */
4573   , p_expenditure_type             IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4574   , p_expenditure_org_id           IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4575   , p_expenditure_item_date        IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4576   , p_requisition_line_type_id     IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4577   , p_category_id                  IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4578 --  , p_ready_to_procure_flag        IN  PA_VC_1000_1    := PA_VC_1000_1(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4579 --  , p_initiate_procure_flag        IN  PA_VC_1000_1    := PA_VC_1000_1(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4580   , p_ready_to_procure_flag        IN  PA_VC_1000_10     := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4581   , p_initiate_procure_flag        IN  PA_VC_1000_10     := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4582   , p_ship_from_organization_id    IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4583   , p_ship_from_location_id        IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4584   , p_ship_to_organization_id      IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4585   , p_ship_to_location_id          IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4586   , p_demand_schedule              IN  PA_VC_1000_10     := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4587   , p_expected_shipment_date       IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4588   , p_promised_shipment_date       IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4589   , p_volume                       IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4590   , p_volume_uom                   IN  PA_VC_1000_10     := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4591   , p_weight                       IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4592   , p_weight_uom                   IN  PA_VC_1000_10     := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4593 --  , p_ready_to_ship_flag           IN  PA_VC_1000_1    := PA_VC_1000_1(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4594 --  , p_initiate_planning_flag       IN  PA_VC_1000_1    := PA_VC_1000_1(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4595 --  , p_initiate_shipping_flag       IN  PA_VC_1000_1    := PA_VC_1000_1(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4596   , p_ready_to_ship_flag           IN  PA_VC_1000_10     := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4597   , p_initiate_planning_flag       IN  PA_VC_1000_10     := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4598   , p_initiate_shipping_flag       IN  PA_VC_1000_10     := PA_VC_1000_10(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4599   , p_event_type                   IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4600   , p_currency                     IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4601   , p_invoice_amount               IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4602   , p_revenue_amount               IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4603   , p_event_date                   IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4604   , p_event_number                 IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4605   , p_organization_id              IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4606   , p_bill_hold_flag               IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4607   , p_project_functional_rate_type IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4608   , p_project_functional_rate_date IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4609   , p_project_functional_rate      IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4610   , p_project_rate_type            IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4611   , p_project_rate_date            IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4612   , p_project_rate                 IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4613   , p_funding_rate_type            IN  PA_VC_1000_30     := PA_VC_1000_30(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
4614   , p_funding_rate_date            IN  PA_DATE_1000_DATE := PA_DATE_1000_DATE(PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE)
4615   , p_funding_rate                 IN  PA_NUM_1000_NUM   := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
4616   , p_pm_event_reference           IN  PA_VC_1000_25     := PA_VC_1000_25(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR) -- 3651489 added parameter
4617 );
4618 
4619 /*#
4620  * This API is used to create a deliverable for a project.
4621  * @param p_api_version API standard: version number
4622  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4623  * @param p_commit API standard (default = F): indicates if the transaction will be committed
4624  * @param p_debug_mode Indicates to the system whether to display debug messages
4625  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
4626  * @rep:paraminfo {@rep:required}
4627  * @param p_deliverable_name Deliverable name
4628  * @rep:paraminfo {@rep:required}
4629  * @param p_deliverable_short_name Deliverable short name
4630  * @rep:paraminfo {@rep:required}
4631  * @param p_deliverable_type_id Identifier of the deliverable type
4632  * @param p_deliverable_owner_id Deliverable owner identifier
4633  * @param p_description Deliverable description
4634  * @param p_status_code Deliverable status
4635  * @param p_due_date Deliverable due date
4636  * @param p_completion_date Deliverable completion date
4637  * @param p_progress_weight Progress weight
4638  * @param px_deliverable_id Unique identifier of the deliverable in Oracle Projects
4639  * @rep:paraminfo {@rep:required}
4640  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
4641  * @rep:paraminfo {@rep:required}
4642  * @param p_task_id Task identifier of the task associated with the deliverable
4643  * @param p_task_source_reference Task reference of the task associated with the deliverable
4644  * @param p_project_id Unique identifier of the project
4645  * @param p_proj_source_reference Unique identifier of the project in the external system
4646  * @param p_action_in_tbl Table of deliverable actions that need to be created
4647  * @param x_action_out_tbl Table of successfully processed actions
4648  * @param p_item_id The identifier of the item. Applies only to item-based deliverables.
4649  * @param P_inventory_org_id The inventory organization identifier of the item. Applies only to item-based deliverables.
4650  * @param p_quantity The quantity of the item. Applies only to item-based deliverables.
4651  * @param p_uom_code The unit of measure code of the deliverable. Applies only to item-based deliverables.
4652  * @rep:paraminfo {@rep:precision 30}
4653  * @param p_unit_price The unit price of the deliverable. Applies only to item-based deliverables.
4654  * @param p_unit_number The unit number of the deliverable. Required when an item-based deliverable
4655  * is unit number enabled.
4656  * @rep:paraminfo {@rep:precision 30}
4657  * @param p_currency_code The currency code of the deliverable. Applies only to item-based deliverables.
4658  * @rep:paraminfo {@rep:precision 15}
4659  * @param p_pm_source_code Identifier of the external system
4660  * @param x_msg_count API standard: number of error messages
4661  * @param x_msg_data API standard: error message
4662  * @rep:scope public
4663  * @rep:lifecycle active
4664  * @rep:displayname Create Deliverable
4665  * @rep:category BUSINESS_ENTITY PA_PROJECT
4666  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
4667  * @rep:compatibility S
4668  */
4669 PROCEDURE create_deliverable
4670 (   p_api_version            IN  NUMBER     := 1.0
4671   , p_init_msg_list          IN  VARCHAR2   := FND_API.G_TRUE
4672   , p_commit                 IN  VARCHAR2   := FND_API.G_FALSE
4673   , p_debug_mode             IN  VARCHAR2   := 'N'
4674   , x_return_status          OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4675   , p_deliverable_name       IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4676   , p_deliverable_short_name IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4677   , p_deliverable_type_id    IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4678   , p_deliverable_owner_id   IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4679   , p_description            IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4680   , p_status_code            IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4681   , p_due_date               IN  DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4682   , p_completion_date        IN  DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4683   , p_progress_weight        IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4684   , px_deliverable_id        IN OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
4685   , p_pm_deliverable_reference IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4686   -- for bug# 3729250
4687 --  , p_carrying_out_org_id    IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4688   , p_task_id                IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4689   , p_task_source_reference  IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4690   , p_project_id             IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4691   , p_proj_source_reference  IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4692   , p_action_in_tbl          IN  action_in_tbl_type := G_deliverable_actions_in_tbl -- 3435905 passing default
4693   , x_action_out_tbl         OUT NOCOPY action_out_tbl_type --File.Sql.39 bug 4440895
4694   , p_item_id                IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4695   , P_inventory_org_id       IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4696   , p_quantity               IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4697   , p_uom_code               IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4698   -- for bug# 3729250
4699 --  , p_item_description       IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4700   , p_unit_price             IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4701   -- for bug# 3729250
4702   , p_unit_number            IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4703   , p_currency_code          IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4704   , p_pm_source_code         IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR              /* Bug no. 3651113 */
4705   , x_msg_count              OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
4706   , x_msg_data               OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4707   ) ;
4708 
4709 
4710 /*#
4711  * This API is used to create a deliverable action for a deliverable.
4712  * @param p_api_version API standard: version number
4713  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4714  * @param p_debug_mode Indicates to the system whether to display debug messages
4715  * @param p_commit API standard (default = F): indicates if the transaction will be committed
4716  * @param p_action_name Deliverable action name
4717  * @param p_action_owner_id Action owner identifier
4718  * @param p_function_code Deliverable action function code
4719  * @param p_due_date Due date of the deliverable action
4720  * @param p_description Description of the action
4721  * @param p_completion_date Completion date
4722  * @param p_pm_source_code Unique identifier of the external system
4723  * @param p_pm_action_reference Unique identifier of the deliverable action in the external system
4724  * @param p_deliverable_reference Unique identifier of the deliverable in the external system
4725  * @param p_deliverable_id Unique identifier of the deliverable in Oracle Projects
4726  * @rep:paraminfo {@rep:required}
4727  * @param p_pm_proj_reference Unique identifier of the project in the external system
4728  * @param p_project_id Unique identifier of the project
4729  * @param p_financial_task_reference Unique identifier of the financial task
4730  * @param p_financial_task_id Identifier of the financial task
4731  * @param p_destination_type_code The destination type code of the deliverable action
4732  * @rep:paraminfo {@rep:precision 30}
4733  * @param p_receiving_org_id The identifier of the inventory organization that will receive the item
4734  * @param p_receiving_location_id The location (address) where the item will be received. The
4735  * RECEIVING_LO CATION_ID must be related to the RECEIVING_ORG_ID
4736  * @param p_po_need_by_date The date by which the purchase order is needed
4737  * @param p_vendor_id The identifier of the vendor that will supply the object
4738  * @param p_vendor_site_code The location (address) code of the vendor from where the object will be supplied
4739  * @param p_Quantity Quantity for procurement deliverable action
4740  * @param p_uom_code The unit of measure code for procurement deliverable action
4741  * @rep:paraminfo {@rep:precision 30}
4742  * @param p_unit_price The unit price of the object. The unit price is needed only for non-item
4743  * deliverable procurement actions.
4744  * @param p_exchange_rate_type Exchange rate type for procurement deliverable actions
4745  * @param p_exchange_rate_date Exchange rate date for procurement deliverable actions
4746  * @param p_exchange_rate Exchange rate for procurement deliverable actions
4747  * @param p_expenditure_type The expenditure type is needed only for non-item-based deliverable procurement actions.
4748  * @param p_expenditure_org_id Expenditure organization identifier for procurement deliverable actions
4749  * @param p_expenditure_item_date Expenditure item date for procurement deliverable actions
4750  * @param p_requisition_line_type_id The requisition line type identifier. This can only have a type of AMOUNT.
4751  * The requisition line type is needed only for non-item-based deliverable procurement actions.
4752  * @param p_category_id The item category identifier is needed only for non-item-based deliverable procurement actions.
4753  * @param p_ready_to_procure_flag Flag that indicates if an idem is ready to be procured
4754  * @rep:paraminfo {@rep:precision 1}
4755  * @param p_initiate_procure_flag Flag that indicates if a procurement action should be initiated
4756  * @rep:paraminfo {@rep:precision 1}
4757  * @param p_ship_from_organization_id The inventory org identifier of the inventory organization that will ship the item
4758  * @param p_ship_from_location_id The location (address) identifier where the item will be shipped to.
4759  * The SHIP_FROM_LOCATION_ID must be related to the P_SHIP_FROM_ORGANIZATION_ID .
4760  * @param p_ship_to_organization_id The customer account identifier to which the item will be shipped to
4761  * @param p_ship_to_location_id The customer location (address) identifier where the item will be shipped to.
4762  * The SHIP_TO_LOCATION_ID must be related to the P_SHIP_TO_ORGANIZATION_ID .
4763  * @param p_demand_schedule Demand schedule
4764  * @rep:paraminfo {@rep:precision 10}
4765  * @param p_expected_shipment_date Expected shipment date
4766  * @param p_promised_shipment_date Promised shipment date
4767  * @param p_volume The volume of each object to be shipped. The volume is needed only for non-item shipping.
4768  * @param p_volume_uom The volume unit of measure of each object to be shipped.
4769  * The volume unit of measure is needed only for non-item shipping.
4770  * @rep:paraminfo {@rep:precision 10}
4771  * @param p_weight The weight of each object to be shipped. The weight is needed only for non-item shipping.
4772  * @param p_weight_uom The weight unit of measure of each object to be shipped. The weight unit of
4773  * measure is needed only for non-item shipping.
4774  * @rep:paraminfo {@rep:precision 10}
4775  * @param p_ready_to_ship_flag Flag that indicates if an item is ready to shipped
4776  * @rep:paraminfo {@rep:precision 1}
4777  * @param p_initiate_planning_flag Flag that indicates if planning should be initiated
4778  * @rep:paraminfo {@rep:precision 1}
4779  * @param p_initiate_shipping_flag Flag that indicates if shipping should be initiated
4780  * @rep:paraminfo {@rep:precision 1}
4781  * @param p_event_type Billing event type
4782  * @rep:paraminfo {@rep:precision 30}
4783  * @param p_currency Currency code for the billing event
4784  * @rep:paraminfo {@rep:precision 30}
4785  * @param p_invoice_amount Invoice amount for the billing
4786  * @param p_revenue_amount Revenue amount for the billing event
4787  * @param p_event_date Event date for the billing event
4788  * @param p_event_number Event number for the billing event
4789  * @param p_organization_id Organization identifier of the organization associated with the billing event
4790  * @param p_bill_hold_flag Flag that indicates if a billing event is on hold
4791  * @rep:paraminfo {@rep:precision 1}
4792  * @param p_project_functional_rate_type Rate type for project functional currency for the billing event
4793  * @rep:paraminfo {@rep:precision 30}
4794  * @param p_project_functional_rate_date Rate date for project functional currency for the billing event
4795  * @param p_project_functional_rate Rate for project functional currency for the billing event
4796  * @param p_project_rate_type Rate type for project currency for the billing event
4797  * @rep:paraminfo {@rep:precision 30}
4798  * @param p_project_rate_date Rate date for project currency for the billing event
4799  * @param p_project_rate Rate for project currency for the billing event
4800  * @param p_funding_rate_type Rate type for funding currency for the billing event
4801  * @rep:paraminfo {@rep:precision 30}
4802  * @param p_funding_rate_date Rate date for funding currency for the billing event
4803  * @param p_funding_rate Rate for funding currency for the billing event
4804  * @param p_pm_event_reference The unique identifier of the billing event in the external system
4805  * @rep:paraminfo {@rep:precision 25}
4806  * @param x_action_out Table of successfully processed actions
4807  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
4808  * @rep:paraminfo {@rep:required}
4809  * @param x_msg_count API standard: number of error messages
4810  * @param x_msg_data API standard: error message
4811  * @rep:scope public
4812  * @rep:lifecycle active
4813  * @rep:displayname Create Deliverable Action
4814  * @rep:category BUSINESS_ENTITY PA_PROJECT
4815  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
4816  * @rep:compatibility S
4817  */
4818 PROCEDURE create_deliverable_action
4819 (   p_api_version                  IN  NUMBER   := 1.0
4820   , p_init_msg_list                IN  VARCHAR2 := FND_API.G_TRUE
4821   , p_debug_mode                   IN  VARCHAR2 := FND_API.G_FALSE
4822   , p_commit                       IN  VARCHAR2 := FND_API.G_FALSE
4823   , p_action_name                  IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4824   , p_action_owner_id              IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4825   , p_function_code                IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4826   , p_due_date                     IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4827   , p_description                  IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4828   , p_completion_date              IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4829   , p_pm_source_code               IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4830   , p_pm_action_reference          IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4831   -- for bug# 3729250
4832 --  , p_carrying_out_org_id          IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4833   , p_deliverable_reference        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4834   , p_deliverable_id               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4835   -- added for bug# 3729250
4836   , p_pm_proj_reference            IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4837   , p_project_id                   IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4838   -- added for bug# 3729250
4839   , p_financial_task_reference     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4840   , p_financial_task_id            IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4841   , p_destination_type_code        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4842   , p_receiving_org_id             IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4843   , p_receiving_location_id        IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4844   , p_po_need_by_date              IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4845   , p_vendor_id                    IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4846   , p_vendor_site_code             IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4847 --  , p_project_currency             IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4848   , p_Quantity                     IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4849   , p_uom_code                     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4850   , p_unit_price                   IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4851   , p_exchange_rate_type           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4852   , p_exchange_rate_date           IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4853   , p_exchange_rate                IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4854   , p_expenditure_type             IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4855   , p_expenditure_org_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4856   , p_expenditure_item_date        IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4857   , p_requisition_line_type_id     IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4858   , p_category_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4859   , p_ready_to_procure_flag        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4860   , p_initiate_procure_flag        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4861   , p_ship_from_organization_id    IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4862   , p_ship_from_location_id        IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4863   , p_ship_to_organization_id      IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4864   , p_ship_to_location_id          IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4865   , p_demand_schedule              IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4866   , p_expected_shipment_date       IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4867   , p_promised_shipment_date       IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4868   , p_volume                       IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4869   , p_volume_uom                   IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4870   , p_weight                       IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4871   , p_weight_uom                   IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4872   , p_ready_to_ship_flag           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4873   , p_initiate_planning_flag       IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4874   , p_initiate_shipping_flag       IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4875   , p_event_type                   IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4876   , p_currency                     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR  -- 3749462 changed data type
4877   , p_invoice_amount               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4878   , p_revenue_amount               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4879   , p_event_date                   IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4880   , p_event_number                 IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4881   , p_organization_id              IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4882   , p_bill_hold_flag               IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4883   , p_project_functional_rate_type IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4884   , p_project_functional_rate_date IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4885   , p_project_functional_rate      IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4886   , p_project_rate_type            IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4887   , p_project_rate_date            IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4888   , p_project_rate                 IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4889   , p_funding_rate_type            IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4890   , p_funding_rate_date            IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4891   , p_funding_rate                 IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4892   , p_pm_event_reference           IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR -- 3651489 added parameter
4893   , x_action_out                   OUT NOCOPY  action_out_tbl_type
4894   , x_return_status                OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4895   , x_msg_count                    OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
4896   , x_msg_data                     OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4897   );
4898 
4899 
4900   /*#
4901  * This API is used to update attributes of a deliverable for a project.
4902  * @param p_api_version API standard: version number
4903  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4904  * @param p_commit API standard (default = F): indicates if the transaction will be committed
4905  * @param p_debug_mode Indicates to the system whether to display debug messages
4906  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
4907  * @rep:paraminfo {@rep:required}
4908  * @param p_deliverable_name Deliverable name
4909  * @rep:paraminfo {@rep:required}
4910  * @param p_deliverable_short_name Deliverable short name
4911  * @rep:paraminfo {@rep:required}
4912  * @param p_deliverable_type_id Identifier of the deliverable type
4913  * @param p_deliverable_owner_id Deliverable owner identifier
4914  * @param p_description Deliverable description
4915  * @param p_status_code Deliverable status code
4916  * @param p_due_date Deliverable due date
4917  * @param p_completion_date Deliverable completion date
4918  * @param p_progress_weight Progress weight
4919  * @param px_deliverable_id Unique identifier of the deliverable in Oracle Projects
4920  * @rep:paraminfo {@rep:required}
4921  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
4922  * @rep:paraminfo {@rep:required}
4923  * @param p_task_id Task identifier of the task associated with the deliverable
4924  * @param p_task_source_reference Task reference of the task associated with the deliverable
4925  * @param p_project_id Unique identifier of the project
4926  * @param p_proj_source_reference Unique identifier of the project in the external system
4927  * @param p_action_in_tbl Table of deliverable actions that need to be created
4928  * @param x_action_out_tbl Table of successfully processed actions
4929  * @param p_item_id The identifier of the item. Applies only to item-based deliverables.
4930  * @param P_inventory_org_id The inventory organization identifier of the item. Applies only to item-based deliverables.
4931  * @param p_quantity The quantity of the item. Applies only to item-based deliverables.
4932  * @param p_uom_code The unit of measure code of the deliverable. Applies only to item-based deliverables.
4933  * @rep:paraminfo {@rep:precision 30}
4934  * @param p_unit_price The unit price of the deliverable. Applies only to item-based deliverables.
4935  * @param p_unit_number The unit number of the deliverable. Required when an item-based deliverable
4936  * is unit number-enabled.
4937  * @rep:paraminfo {@rep:precision 30}
4938  * @param p_currency_code The currency code of the deliverable. Applies only to item-based deliverables.
4939  * @rep:paraminfo {@rep:precision 15}
4940  * @param p_pm_source_code Identifier of the external system
4941  * @param x_msg_count API standard: number of error messages
4942  * @param x_msg_data API standard: error message
4943  * @rep:scope public
4944  * @rep:lifecycle active
4945  * @rep:displayname Update Deliverable
4946  * @rep:category BUSINESS_ENTITY PA_PROJECT
4947  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
4948  * @rep:compatibility S
4949  */
4950 PROCEDURE update_deliverable
4951 (   p_api_version            IN  NUMBER     := 1.0
4952   , p_init_msg_list          IN  VARCHAR2   := 'F'
4953   , p_commit                 IN  VARCHAR2   := FND_API.G_FALSE
4954   , p_debug_mode             IN  VARCHAR2   := 'N'
4955   , x_return_status          OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4956   , p_deliverable_name       IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4957   , p_deliverable_short_name IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4958   , p_deliverable_type_id    IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4959   , p_deliverable_owner_id   IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4960   , p_description            IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4961   , p_status_code            IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4962   , p_due_date               IN  DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4963   , p_completion_date        IN  DATE       := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
4964   , p_progress_weight        IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4965   , px_deliverable_id        IN OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
4966   , p_pm_deliverable_reference IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4967   -- for bug# 3729250
4968 --  , p_carrying_out_org_id    IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4969   , p_task_id                IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4970   , p_task_source_reference  IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4971   , p_project_id             IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4972   , p_proj_source_reference  IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4973   , p_action_in_tbl          IN  action_in_tbl_type := G_deliverable_actions_in_tbl -- 3435905 passing default
4974   , x_action_out_tbl         OUT NOCOPY action_out_tbl_type --File.Sql.39 bug 4440895
4975   , p_item_id                IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4976   , P_inventory_org_id       IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4977   , p_quantity               IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4978   , p_uom_code               IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4979   -- for bug# 3729250
4980 --  , p_item_description       IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4981   , p_unit_price             IN  NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
4982   -- for bug# 3729250
4983   , p_unit_number            IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4984   , p_currency_code          IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
4985   , p_pm_source_code         IN  VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR              /* Bug no. 3651113 */
4986   , x_msg_count              OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
4987   , x_msg_data               OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
4988   ) ;
4989 
4990 
4991 /*#
4992  * This API is used to update a deliverable action for a deliverable.
4993  * @param p_api_version API standard: version number
4994  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
4995  * @param p_debug_mode Indicates to the system whether to display debug messages
4996  * @param p_commit API standard (default = F): indicates if the transaction will be committed
4997  * @param p_action_name Deliverable action name
4998  * @param p_action_owner_id Action owner identifier
4999  * @param p_function_code Deliverable action function code
5000  * @param p_due_date Due date of the deliverable action
5001  * @param p_description Description of the action
5002  * @param p_completion_date Completion date
5003  * @param p_pm_source_code Unique identifier of the external system
5004  * @param p_pm_action_reference Unique identifier of the deliverable action in the external system
5005  * @param p_action_id Unique identifier of the deliverable action
5006  * @param p_deliverable_reference Unique identifier of the deliverable in the external system
5007  * @param p_deliverable_id Unique identifier of the deliverable in Oracle Projects
5008  * @rep:paraminfo {@rep:required}
5009  * @param p_pm_proj_reference Unique identifier of the project in the external system
5010  * @param p_project_id Unique identifier of the project
5011  * @param p_financial_task_reference Unique identifier of the financial task
5012  * @param p_financial_task_id Identifier of the financial task
5013  * @param p_destination_type_code The destination type code of the deliverable action
5014  * @rep:paraminfo {@rep:precision 30}
5015  * @param p_receiving_org_id The identifier of the inventory organization that will receive the item
5016  * @param p_receiving_location_id The location (address) identifier where the item will be received. The
5017  * RECEIVING_LO CATION_ID must be related to the RECEIVING_ORG_ID.
5018  * @param p_po_need_by_date The date by which the purchase order is needed
5019  * @param p_vendor_id The identifier of the vendor that will supply the object
5020  * @param p_vendor_site_code The location (address) code of the vendor from where the object will be supplied
5021  * @param p_Quantity Quantity for procurement deliverable action
5022  * @param p_uom_code The unit of measure code for procurement deliverable action
5023  * @rep:paraminfo {@rep:precision 30}
5024  * @param p_unit_price The unit price of the object. The unit price is needed only for non-item
5025  * deliverable procurement actions.
5026  * @param p_exchange_rate_type Exchange rate type for procurement deliverable actions
5027  * @param p_exchange_rate_date Exchange rate date for procurement deliverable actions
5028  * @param p_exchange_rate Exchange rate for procurement deliverable actions
5029  * @param p_expenditure_type The expenditure type. This is needed only for non-item based deliverable procurement actions.
5030  * @param p_expenditure_org_id Expenditure organization identifier for procurement deliverable actions
5031  * @param p_expenditure_item_date Expenditure item date for procurement deliverable actions
5032  * @param p_requisition_line_type_id The requisition line type identifier. This can only have a type of AMOUNT.
5033  * The requisition line type is needed only for non-item based deliverable procurement actions.
5034  * @param p_category_id The item category identifier. This is needed only for non-item based deliverable procurement actions.
5035  * @param p_ready_to_procure_flag Flag that indicates if an item is ready to be procured
5036  * @rep:paraminfo {@rep:precision 1}
5037  * @param p_initiate_procure_flag Flag that indicates if a procurement action should be initiated
5038  * @rep:paraminfo {@rep:precision 1}
5039  * @param p_ship_from_organization_id The inventory organization identifier of the inventory organization that will ship the item
5040  * @param p_ship_from_location_id The location (address) identifier where the item will be shipped.
5041  * The P_SHIP_FROM_LOCATION_ID must be related to the P_SHIP_FROM_ORGANIZATION_ID.
5042  * @param p_ship_to_organization_id The customer account identifier to which the item will be shipped
5043  * @param p_ship_to_location_id The customer location (address) identifier to where the item will be shipped
5044  * The P_SHIP_TO_LOCATION_ID must be related to the P_SHIP_TO_ORGANIZATION_ID.
5045  * @param p_demand_schedule Demand schedule
5046  * @rep:paraminfo {@rep:precision 10}
5047  * @param p_expected_shipment_date Expected shipment date
5048  * @param p_promised_shipment_date Promised shipment date
5049  * @param p_volume The volume of each object to be shipped. The volume is needed only for non-item shipping.
5050  * @param p_volume_uom The volume unit of measure of each object to be shipped.
5051  * The volume unit of measure is needed only for non-item shipping.
5052  * @rep:paraminfo {@rep:precision 10}
5053  * @param p_weight The weight of each object to be shipped. The weight is needed only for non-item shipping.
5054  * @param p_weight_uom The weight unit of measure of each object to be shipped. The weight unit of
5055  * measure is needed only for non-item shipping.
5056  * @rep:paraminfo {@rep:precision 10}
5057  * @param p_ready_to_ship_flag Flag that indicates if an item is ready to be shiped.
5058  * @rep:paraminfo {@rep:precision 1}
5059  * @param p_initiate_planning_flag Flag that indicates if planning should be initiated.
5060  * @rep:paraminfo {@rep:precision 1}
5061  * @param p_initiate_shipping_flag Flag that indicates if shipping should be initiated.
5062  * @rep:paraminfo {@rep:precision 1}
5063  * @param p_event_type Billing event type
5064  * @rep:paraminfo {@rep:precision 30}
5065  * @param p_currency Currency code for the billing event
5066  * @rep:paraminfo {@rep:precision 30}
5067  * @param p_invoice_amount Invoice amount for the billing
5068  * @param p_revenue_amount Revenue amount for the billing event
5069  * @param p_event_date Event date for the billing event
5070  * @param p_event_number Event number for the billing event
5071  * @param p_organization_id Organization identifier of the organization associated with the billing event
5072  * @param p_bill_hold_flag Flag that indicates if a billing event is on hold
5073  * @rep:paraminfo {@rep:precision 1}
5074  * @param p_project_functional_rate_type Rate type for project functional currency for the billing event
5075  * @rep:paraminfo {@rep:precision 30}
5076  * @param p_project_functional_rate_date Rate date for project functional currency for the billing event
5077  * @param p_project_functional_rate Rate for project functional currency for the billing event
5078  * @param p_project_rate_type Rate type for project currency for the billing event
5079  * @rep:paraminfo {@rep:precision 30}
5080  * @param p_project_rate_date Rate date for project currency for the billing event
5081  * @param p_project_rate Rate for project currency for the billing event
5082  * @param p_funding_rate_type Rate type for funding currency for the billing event
5083  * @rep:paraminfo {@rep:precision 30}
5084  * @param p_funding_rate_date Rate date for funding currency for the billing event
5085  * @param p_funding_rate Rate for funding currency for the billing event
5086  * @param p_pm_event_reference The unique identifier of the billing event in the external system
5087  * @rep:paraminfo {@rep:precision 25}
5088  * @param x_action_out Table of successfully processed actions
5089  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5090  * @rep:paraminfo {@rep:required}
5091  * @param x_msg_count API standard: number of error messages
5092  * @param x_msg_data API standard: error message
5093  * @rep:scope public
5094  * @rep:lifecycle active
5095  * @rep:displayname Update Deliverable Action
5096  * @rep:category BUSINESS_ENTITY PA_PROJECT
5097  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
5098  * @rep:compatibility S
5099  */
5100 PROCEDURE update_deliverable_action
5101 (   p_api_version                  IN  NUMBER   := 1.0
5102   , p_init_msg_list                IN  VARCHAR2 := FND_API.G_TRUE
5103   , p_debug_mode                   IN  VARCHAR2 := FND_API.G_FALSE
5104   , p_commit                       IN  VARCHAR2 := FND_API.G_FALSE
5105   , p_action_name                  IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5106   , p_action_owner_id              IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5107   , p_function_code                IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5108   , p_due_date                     IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5109   , p_description                  IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5110   , p_completion_date              IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5111   , p_pm_source_code               IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5112   , p_pm_action_reference          IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5113   -- added for bug# 3729250
5114   , p_action_id                    IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5115   -- for bug# 3729250
5116 --  , p_carrying_out_org_id          IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5117   , p_deliverable_reference        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5118   , p_deliverable_id               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5119   -- added for bug# 3729250
5120   , p_pm_proj_reference            IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5121   , p_project_id                   IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5122   , p_financial_task_id            IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5123   -- added for bug# 3729250
5124   , p_financial_task_reference     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5125   , p_destination_type_code        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5126   , p_receiving_org_id             IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5127   , p_receiving_location_id        IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5128   , p_po_need_by_date              IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5129   , p_vendor_id                    IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5130   , p_vendor_site_code             IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5131 --  , p_project_currency             IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5132   , p_Quantity                     IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5133   , p_uom_code                     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5134   , p_unit_price                   IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5135   , p_exchange_rate_type           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5136   , p_exchange_rate_date           IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5137   , p_exchange_rate                IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5138   , p_expenditure_type             IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5139   , p_expenditure_org_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5140   , p_expenditure_item_date        IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5141   , p_requisition_line_type_id     IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5142   , p_category_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5143   , p_ready_to_procure_flag        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5144   , p_initiate_procure_flag        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5145   , p_ship_from_organization_id    IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5146   , p_ship_from_location_id        IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5147   , p_ship_to_organization_id      IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5148   , p_ship_to_location_id          IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5149   , p_demand_schedule              IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5150   , p_expected_shipment_date       IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5151   , p_promised_shipment_date       IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5152   , p_volume                       IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5153   , p_volume_uom                   IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5154   , p_weight                       IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5155   , p_weight_uom                   IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5156   , p_ready_to_ship_flag           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5157   , p_initiate_planning_flag       IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5158   , p_initiate_shipping_flag       IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5159   , p_event_type                   IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5160   , p_currency                     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR  -- 3749474 changed data type
5161   , p_invoice_amount               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5162   , p_revenue_amount               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5163   , p_event_date                   IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5164   , p_event_number                 IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5165   , p_organization_id              IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5166   , p_bill_hold_flag               IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5167   , p_project_functional_rate_type IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5168   , p_project_functional_rate_date IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5169   , p_project_functional_rate      IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5170   , p_project_rate_type            IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5171   , p_project_rate_date            IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5172   , p_project_rate                 IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5173   , p_funding_rate_type            IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5174   , p_funding_rate_date            IN  DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
5175   , p_funding_rate                 IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5176   , p_pm_event_reference           IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR -- 3651489 added parameter
5177   , x_action_out                   OUT NOCOPY  action_out_tbl_type
5178   , x_return_status                OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5179   , x_msg_count                    OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5180   , x_msg_data                     OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5181   );
5182 
5183 /*#
5184  * This API is used to delete a deliverable for a project.
5185  * @param p_api_version API standard: version number
5186  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5187  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5188  * @param p_pm_source_code Identifier of the external system
5189  * @param p_pm_project_reference Unique identifier of the project in the external system
5190  * @param p_project_id Unique identifier of the project in Oracle Projects
5191  * @param p_deliverable_id Unique identifier of the deliverable
5192  * @param p_pm_dlv_source_reference Unique identifier of the deliverable in the external system
5193  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5194  * @param x_msg_count API standard: number of error messages
5195  * @param x_msg_data API standard: error message
5196  * @rep:scope public
5197  * @rep:lifecycle active
5198  * @rep:displayname Delete Deliverable
5199  * @rep:category BUSINESS_ENTITY PA_PROJECT
5200  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
5201  * @rep:compatibility S
5202  */
5203 Procedure  Delete_Deliverables (
5204    p_api_version              IN  NUMBER   := 1.0
5205   ,p_init_msg_list            IN  VARCHAR2 := FND_API.G_FALSE
5206   ,p_commit               IN  VARCHAR2 := FND_API.G_FALSE
5207   ,p_pm_source_code           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5208   ,p_pm_project_reference     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5209   ,p_project_id               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5210   -- for bug# 3729250
5211   ,p_deliverable_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5212   ,p_pm_dlv_source_reference  IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5213   ,x_return_status            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5214   ,x_msg_count                OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5215   ,x_msg_data                 OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5216 );
5217 
5218 
5219 /*#
5220  * This API is used to delete a deliverable action for a deliverable.
5221  * @param p_api_version API standard: version number
5222  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5223  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5224  * @param p_pm_source_code Identifier of the external system
5225  * @param p_pm_project_reference Unique identifier of the project in the external system
5226  * @param p_project_id Unique identifier of the project in Oracle Projects
5227  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
5228  * @rep:paraminfo {@rep:required}
5229  * @param p_deliverable_id Unique identifier of the deliverable
5230  * @rep:paraminfo {@rep:required}
5231  * @param p_action_source_reference Unique identifier of the deliverable action in the external system
5232  * @param p_action_id Unique identifier of the deliverable action
5233  * @rep:paraminfo {@rep:required}
5234  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5235  * @param x_msg_count API standard: number of error messages
5236  * @param x_msg_data API standard: error message
5237  * @rep:scope public
5238  * @rep:lifecycle active
5239  * @rep:displayname Delete Deliverable Action
5240  * @rep:category BUSINESS_ENTITY PA_PROJECT
5241  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
5242  * @rep:compatibility S
5243  */
5244 PROCEDURE delete_deliverable_actions
5245 (  p_api_version              IN  NUMBER   := 1.0       -- 3749480 changed default value
5246   ,p_init_msg_list            IN  VARCHAR2 := FND_API.G_FALSE
5247   ,p_commit               IN  VARCHAR2 := FND_API.G_FALSE
5248   ,p_pm_source_code           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5249   ,p_pm_project_reference     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5250   ,p_project_id               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5251   -- for bug# 3729250 , changed datatype from NUMBER to VARCHAR2
5252   ,p_pm_deliverable_reference IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5253   ,p_deliverable_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5254   -- for bug# 3729250 , changed datatype from NUMBER to VARCHAR2
5255   ,p_action_source_reference  IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5256   ,p_action_id                IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5257   ,x_return_status            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5258   ,x_msg_count                OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5259   ,x_msg_data                 OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5260 );
5261 
5262 
5263 /*#
5264  * This API is used to associate a deliverable with a task.
5265  * @param p_api_version API standard: version number
5266  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5267  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5268  * @param p_debug_mode Indicates whether to display debug messages
5269  * @param p_pm_source_code Identifier of the external system
5270  * @param p_pm_project_reference Unique identifier of the project in the external system
5271  * @param p_project_id Unique identifier of the project in Oracle Projects
5272  * @param p_pm_task_reference Unique identifier of the task in the external system
5273  * @param p_task_id  Unique identifier of the task
5274  * @param p_deliverable_reference Unique identifier of the deliverable in the external system
5275  * @rep:paraminfo {@rep:required}
5276  * @param p_deliverable_id Unique identifier of the deliverable
5277  * @rep:paraminfo {@rep:required}
5278  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5279  * @param x_msg_count API standard: number of error messages
5280  * @param x_msg_data API standard: error message
5281  * @rep:scope public
5282  * @rep:lifecycle active
5283  * @rep:displayname Associate Deliverable with Task
5284  * @rep:category BUSINESS_ENTITY PA_PROJECT
5285  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
5286  * @rep:category BUSINESS_ENTITY PA_TASK
5287  * @rep:compatibility S
5288  */
5289 Procedure ASSOCIATE_DLV_TO_TASK (
5290       p_api_version              IN  NUMBER   := 1.0
5291      ,p_init_msg_list            IN  VARCHAR2 := FND_API.G_TRUE
5292      ,p_commit                   IN  VARCHAR2 := FND_API.G_FALSE
5293      ,p_debug_mode               IN  VARCHAR2 := FND_API.G_FALSE
5294      ,p_pm_source_code           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5295      -- added for bug# 3729250
5296      ,p_pm_project_reference     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5297      ,p_project_id               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5298      -- added for bug# 3729250
5299      ,p_pm_task_reference        IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5300      ,p_task_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5301      -- added for bug# 3729250
5302      ,p_deliverable_reference    IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5303      ,p_deliverable_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5304      ,x_return_status            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5305      ,x_msg_count                OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5306      ,x_msg_data                 OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5307      );
5308 
5309  /*#
5310   * This API is used to associate a deliverable with a task assignment.
5311   * @param p_api_version API standard: version number
5312   * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5313   * @param p_commit API API standard (default = F): indicates if the transaction will be committed
5314   * @param p_debug_mode Indicates whether to display debug messages
5315   * @param p_pm_source_code Identifier of the external system
5316   * @param p_pm_project_reference Unique identifier of the project in the external system
5317   * @param p_project_id Unique identifier of the project in Oracle Projects
5318   * @param p_pm_task_asgmt_reference Unique identifier of the task assignment in the external system
5319   * @param p_task_assign_id Unique identifier of the task assignment
5320   * @param p_deliverable_reference Unique identifier of the deliverable in the external system
5321   * @rep:paraminfo {@rep:required}
5322   * @param p_deliverable_id Unique identifier of the deliverable
5323   * @rep:paraminfo {@rep:required}
5324   * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5325   * @param x_msg_count API standard: number of error messages
5326   * @param x_msg_data API standard: error message
5327   * @rep:scope public
5328   * @rep:lifecycle active
5329   * @rep:displayname Associate Deliverable to Task Assignment
5330   * @rep:category BUSINESS_ENTITY PA_PROJECT
5331   * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
5332   * @rep:category BUSINESS_ENTITY PA_TASK_RESOURCE
5333   * @rep:compatibility S
5334   */
5335 Procedure ASSOCIATE_DLV_TO_TASK_ASSIGN (
5336       p_api_version              IN  NUMBER   := 1.0
5337      ,p_init_msg_list            IN  VARCHAR2 := FND_API.G_TRUE
5338      ,p_commit                   IN  VARCHAR2 := FND_API.G_FALSE
5339      ,p_debug_mode               IN  VARCHAR2 := FND_API.G_FALSE
5340      ,p_pm_source_code           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5341      -- added for bug# 3729250
5342      ,p_pm_project_reference     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5343      ,p_project_id               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5344      ,p_pm_task_asgmt_reference  IN  VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5345      ,p_task_assign_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5346      -- added for bug# 3729250
5347      ,p_deliverable_reference    IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5348      ,p_deliverable_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5349      ,x_return_status            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5350      ,x_msg_count                OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5351      ,x_msg_data                 OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5352      );
5353 
5354 
5355  /*#
5356  * This API is used to delete a deliverable-to-task association.
5357  * @param p_api_version API standard: version number
5358  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5359  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5360  * @param p_pm_source_code Identifier of the external system
5361  * @param p_pm_project_reference Unique identifier of the project in the external system
5362  * @param p_project_id Unique identifier of the project in Oracle Projects
5363  * @param p_task_reference Unique identifier of the task in the external system
5364  * @param p_task_id  Unique identifier of the task
5365  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
5366  * @rep:paraminfo {@rep:required}
5367  * @param p_deliverable_id Unique identifier of the deliverable
5368  * @rep:paraminfo {@rep:required}
5369  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5370  * @param x_msg_count API standard: number of error messages
5371  * @param x_msg_data API standard: error message
5372  * @rep:scope public
5373  * @rep:lifecycle active
5374  * @rep:displayname Delete Deliverable-Task Association
5375  * @rep:category BUSINESS_ENTITY PA_PROJECT
5376  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
5377  * @rep:category BUSINESS_ENTITY PA_TASK
5378  * @rep:compatibility S
5379  */
5380 Procedure DELETE_DLV_TO_TASK_ASSCN (
5381       p_api_version              IN NUMBER   :=1.0
5382      ,p_init_msg_list            IN VARCHAR2 :=FND_API.G_TRUE
5383      ,p_commit                   IN VARCHAR2 :=FND_API.G_FALSE
5384      ,p_pm_source_code           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5385      ,p_pm_project_reference     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5386      ,p_project_id               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5387      ,p_task_reference           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5388      ,p_task_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5389      ,p_pm_deliverable_reference IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5390      ,p_deliverable_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5391      ,x_return_status            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5392      ,x_msg_count                OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5393      ,x_msg_data                 OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5394      );
5395 
5396 -- 3729250 Added procedure to spec, procedure was already defined in body
5397 -- added p_pm_project_reference IN parameter also
5398 
5399 /*#
5400  * This API is used to delete a deliverable-to-task assignment association.
5401  * @param p_api_version API standard: version number
5402  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5403  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5404  * @param p_debug_mode  Indicates whether to display debug messages
5405  * @param p_pm_source_code Identifier of the external system
5406  * @param p_project_id Unique identifier of the project in Oracle Projects
5407  * @param p_pm_project_reference Unique identifier of the project in the external system
5408  * @param p_task_assign_id Unique identifier of the task assignment
5409  * @param p_pm_task_asgmt_reference Unique identifier of the task assignment in the external system
5410  * @param p_deliverable_id Unique identifier of the deliverable
5411  * @rep:paraminfo {@rep:required}
5412  * @param p_pm_deliverable_reference Unique identifier of the deliverable in the external system
5413  * @rep:paraminfo {@rep:required}
5414  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5415  * @param x_msg_count API standard: number of error messages
5416  * @param x_msg_data API standard: error message
5417  * @rep:scope public
5418  * @rep:lifecycle active
5419  * @rep:displayname Delete Deliverable-Task Assignment Association
5420  * @rep:category BUSINESS_ENTITY PA_PROJECT
5421  * @rep:category BUSINESS_ENTITY PA_PROJ_DELIVERABLE
5422  * @rep:category BUSINESS_ENTITY PA_TASK_RESOURCE
5423  * @rep:compatibility S
5424  */
5425 Procedure DELETE_DLV_TO_TASK_ASSIGN (
5426       p_api_version              IN  NUMBER   := 1.0
5427      ,p_init_msg_list            IN  VARCHAR2 := FND_API.G_TRUE
5428      ,p_commit                   IN  VARCHAR2 := FND_API.G_FALSE
5429      ,p_debug_mode               IN  VARCHAR2 := FND_API.G_FALSE
5430      ,p_pm_source_code           IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5431      ,p_project_id               IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5432      ,p_pm_project_reference     IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5433      ,p_task_assign_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5434      ,p_pm_task_asgmt_reference  IN VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5435      ,p_deliverable_id           IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM   -- Added for 3888280
5436      ,p_pm_deliverable_reference IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR  -- Added for 3888280
5437      ,x_return_status            OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5438      ,x_msg_count                OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5439      ,x_msg_data                 OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5440      );
5441 
5442 -- 3435905 FP M Changes for deliverables : End
5443 -- Added by rtarway for FP.M Changes in Mapping and Set Financial Task
5444 
5445 /*#
5446  * This API is used to update an existing mapping between a workplan task and a financial task for a project
5447  * having split-mapped structure sharing between workplan and financial structures.
5448  * @param p_api_version API standard: version number
5449  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5450  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5451  * @param p_debug_mode Indicates to the system whether to display debug messages (default = N)
5452  * @param px_mapped_task_id The unique identifier of the financial task in Oracle Projects
5453  * @param p_mapped_task_reference The reference code that uniquely identifies the financial task in the external system
5454  * @param p_mapped_task_name Name of the financial task
5455  * @param p_wkp_task_id The unique identifier of the workplan task
5456  * @param p_wkp_task_name Name of the workplan task
5457  * @param p_wkp_structure_version_id The unique identifier of the workplan structure in Oracle Projects
5458  * @param p_wkp_task_reference The reference code that uniquely identifies the workplan task in the external system
5459  * @param p_project_id The unique identifier of the project in Oracle Projects
5460  * @param p_proj_source_reference The reference code that uniquely identifies the project in the external system
5461  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5462  * @rep:paraminfo {@rep:required}
5463  * @param x_msg_count API standard: number of error messages
5464  * @rep:paraminfo {@rep:required}
5465  * @param x_msg_data API standard: error message
5466  * @rep:paraminfo {@rep:required}
5467  * @rep:scope public
5468  * @rep:lifecycle active
5469  * @rep:displayname Update Mapping
5470  * @rep:category BUSINESS_ENTITY PA_TASK
5471  * @rep:compatibility S
5472  */
5473 PROCEDURE update_mapping
5474 (   p_api_version                  IN        NUMBER     := 1.0
5475   , p_init_msg_list                IN        VARCHAR2   := FND_API.G_TRUE
5476   , p_commit                       IN        VARCHAR2   := FND_API.G_TRUE
5477   , p_debug_mode                   IN        VARCHAR2   := 'N'
5478   , px_mapped_task_id              IN        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5479   , p_mapped_task_reference        IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5480   , p_mapped_task_name             IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5481   , p_wkp_task_id                  IN        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5482   , p_wkp_task_name                IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5483   , p_wkp_structure_version_id     IN        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5484   , p_wkp_task_reference           IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5485   , p_project_id                   IN        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5486   , p_proj_source_reference        IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5487   , x_return_status                OUT       NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5488   , x_msg_count                    OUT       NOCOPY NUMBER --File.Sql.39 bug 4440895
5489   , x_msg_data                     OUT       NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5490   );
5491 
5492 /*#
5493  * This API is used to create a mapping between a workplan task and a financial task for a project
5494  * having split-mapped structure sharing between workplan and financial structures.
5495  * @param p_api_version API standard: version number
5496  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5497  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5498  * @param p_debug_mode Indicates to the system whether to display debug messages (default = N)
5499  * @param px_mapped_task_id The unique identifier of the financial task in Oracle Projects
5500  * @param p_mapped_task_reference The reference code that uniquely identifies the financial task in the external system
5501  * @param p_mapped_task_name Name of the mapped financial Task
5502  * @param p_wkp_task_id The unique identifier of the workplan task
5503  * @param p_wkp_task_name Name of the workplan task
5504  * @param p_wkp_structure_version_id The unique identifier of the workplan structure version in Oracle Projects
5505  * @param p_wkp_task_reference The reference code that uniquely identifies the workplan task in the external system
5506  * @param p_project_id The unique identifier of the project in Oracle Projects
5507  * @param p_proj_source_reference The reference code that uniquely identifies the project in the external system
5508  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5509  * @rep:paraminfo {@rep:required}
5510  * @param x_msg_count API standard: number of error messages
5511  * @rep:paraminfo {@rep:required}
5512  * @param x_msg_data API standard: error message
5513  * @rep:paraminfo {@rep:required}
5514  * @rep:scope public
5515  * @rep:lifecycle active
5516  * @rep:displayname Create Mapping
5517  * @rep:category BUSINESS_ENTITY PA_TASK
5518  * @rep:compatibility S
5519  */
5520   PROCEDURE create_mapping
5521 (   p_api_version                  IN        NUMBER     := 1.0
5522   , p_init_msg_list                IN        VARCHAR2   := FND_API.G_TRUE
5523   , p_commit                       IN        VARCHAR2   := FND_API.G_TRUE
5524   , p_debug_mode                   IN        VARCHAR2   := 'N'
5525   , px_mapped_task_id              IN         NUMBER
5526   , p_mapped_task_reference        IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5527   , p_mapped_task_name             IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5528   , p_wkp_task_id                  IN        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5529   , p_wkp_task_name                IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5530   , p_wkp_structure_version_id     IN        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5531   , p_wkp_task_reference           IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5532   , p_project_id                   IN        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5533   , p_proj_source_reference        IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5534   , x_return_status                OUT       NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5535   , x_msg_count                    OUT       NOCOPY NUMBER --File.Sql.39 bug 4440895
5536   , x_msg_data                     OUT       NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5537   ) ;
5538 
5539 PROCEDURE process_tasks_table
5540 (   p_api_version                  IN        NUMBER     := 1.0
5541   , p_init_msg_list                IN        VARCHAR2   := FND_API.G_TRUE
5542   , p_debug_mode                   IN        VARCHAR2   := 'N'
5543   , p_structure_type               IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5544   , p_tasks_in_tbl                 IN OUT       NOCOPY task_in_tbl_type --File.Sql.39 bug 4440895
5545   , p_project_id                   IN        NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5546   , p_proj_source_reference        IN        VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5547   , x_return_status                OUT       NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5548   , x_msg_count                    OUT       NOCOPY NUMBER --File.Sql.39 bug 4440895
5549   , x_msg_data                     OUT       NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5550   ) ;
5551 
5552   /*#
5553    * This API is used to delete an existing mapping between a workplan task and a financial task for a project
5554    * having split-mapped structure sharing between workplan and financial structures.
5555    * @param p_api_version API standard: version number
5556    * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5557    * @param p_commit API standard (default = F): indicates if the transaction will be committed
5558    * @param p_debug_mode Indicates to the system whether to display debug messages (default = N)
5559    * @param p_wp_task_version_id The unique identifier of a workplan task version in Oracle Projects
5560    * @param p_fp_task_version_id The unique identifier of the financial task version in Oracle Projects
5561    * @param p_wp_task_id The unique identifier of the workplan task in Oracle Projects
5562    * @param p_fp_task_id The unique identifier of the financial task in Oracle Projects
5563    * @param p_pm_wp_task_reference The reference code that uniquely identifies the workplan task in the external system
5564    * @param p_pm_fp_task_reference The reference code that uniquely identifies the financial task in the external system
5565    * @param p_wp_structure_version_id The unique identifier of the workplan structure version in Oracle Projects
5566    * @param p_project_id The unique identifier of the project in Oracle Projects
5567    * @param p_proj_source_reference The reference code that uniquely identifies the project in the external system
5568    * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5569    * @rep:paraminfo {@rep:required}
5570    * @param x_msg_count API standard: number of error messages
5571    * @rep:paraminfo {@rep:required}
5572    * @param x_msg_data API standard: error message
5573    * @rep:paraminfo {@rep:required}
5574    * @rep:scope public
5575    * @rep:lifecycle active
5576    * @rep:displayname Delete Mapping
5577    * @rep:category BUSINESS_ENTITY PA_TASK
5578    * @rep:compatibility S
5579    */
5580 PROCEDURE Delete_Mapping
5581 (
5582    p_api_version              IN   NUMBER     := 1.0
5583  , p_init_msg_list            IN   VARCHAR2   := FND_API.G_TRUE
5584  , p_commit                   IN   VARCHAR2   := FND_API.G_TRUE
5585  , p_debug_mode               IN   VARCHAR2   := 'N'
5586  , p_wp_task_version_id       IN   NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5587  , p_fp_task_version_id       IN   NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5588  , p_wp_task_id               IN   NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5589  , p_fp_task_id               IN   NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5590  , p_pm_wp_task_reference     IN   VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5591  , p_pm_fp_task_reference     IN   VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5592  , p_wp_structure_version_id  IN   NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5593  , p_project_id               IN   NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5594  , p_proj_source_reference    IN   VARCHAR2   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5595  , x_return_status            OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5596  , x_msg_count                OUT  NOCOPY NUMBER --File.Sql.39 bug 4440895
5597  , x_msg_data                 OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5598 );
5599 -- Added by rtarway for FP.M Changes in Mapping and Set Financial Task
5600 
5601 -- added by hsiu
5602 /*#
5603  * This procedure is used to create an intra-project dependency.
5604  * @param p_api_version_number API standard: version number
5605  * @rep:paraminfo {@rep:required}
5606  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5607  * @rep:paraminfo {@rep:precision 1}
5608  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5609  * @rep:paraminfo {@rep:precision 1}
5610  * @param p_msg_count API standard: number of error messages
5611  * @rep:paraminfo {@rep:required}
5612  * @param p_msg_data API standard: error message
5613  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
5614  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
5615  * @rep:paraminfo {@rep:precision 1}
5616  * @param p_pm_product_code The identifier of the external project management system
5617  * from which the project is imported
5618  * @rep:paraminfo {@rep:required}
5619  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
5620  * @rep:paraminfo {@rep:precision 25}
5621  * @param p_pa_project_id The unique identifier of the project
5622  * @rep:paraminfo {@rep:required}
5623  * @param p_structure_version_id Unique identifier of the of the workplan structure version from which
5624  * the intra project dependency is created
5625  * @rep:paraminfo {@rep:required}
5626  * @param p_pm_task_reference The identifier of the task in the external project
5627  * management system from which the budget is imported
5628  * @rep:paraminfo {@rep:required}
5629  * @param p_pa_task_id Unique identifier of the task
5630  * @rep:paraminfo {@rep:required}
5631  * @param p_pm_pred_reference The identifier of the predecessor task in the external project
5632  * management system from which the budget is imported
5633  * @rep:paraminfo {@rep:required}
5634  * @param p_pa_pred_id Unique identifier of the predecessor task
5635  * @rep:paraminfo {@rep:required}
5636  * @param p_type Type of dependency
5637  * @param p_lag_days Lag days of the dependency
5638  * @param p_comments Comments for the dependency
5639  * @rep:scope public
5640  * @rep:lifecycle active
5641  * @rep:displayname Create Dependency
5642  * @rep:category BUSINESS_ENTITY PA_PROJECT
5643  * @rep:category BUSINESS_ENTITY PA_TASK
5644  * @rep:compatibility S
5645  */
5646 PROCEDURE Create_Dependency(
5647   p_api_version_number          IN  NUMBER   :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5648  ,p_commit                      IN  VARCHAR2 := FND_API.G_FALSE
5649  ,p_init_msg_list               IN  VARCHAR2 := FND_API.G_FALSE
5650  ,p_msg_count                   OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5651  ,p_msg_data                    OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5652  ,p_return_status               OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5653  ,p_pm_product_code     IN  VARCHAR2
5654  ,p_pm_project_reference    IN  VARCHAR2
5655  ,p_pa_project_id       IN  NUMBER
5656  ,p_structure_version_id        IN  NUMBER
5657  ,p_pm_task_reference           IN  VARCHAR2
5658  ,p_pa_task_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5659  ,p_pm_pred_reference           IN  VARCHAR2
5660  ,p_pa_pred_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5661  ,p_type                        IN  VARCHAR2 := 'FS'
5662  ,p_lag_days                    IN  NUMBER   := 0
5663  ,p_comments                    IN  VARCHAR2 := NULL
5664 );
5665 
5666 /*#
5667  * This procedure is used to update an intra-project dependency.
5668  * @param p_api_version_number API standard: version number
5669  * @rep:paraminfo {@rep:required}
5670  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5671  * @rep:paraminfo {@rep:precision 1}
5672  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5673  * @rep:paraminfo {@rep:precision 1}
5674  * @param p_msg_count API standard: number of error messages
5675  * @rep:paraminfo {@rep:required}
5676  * @param p_msg_data API standard: error message
5677  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
5678  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
5679  * @rep:paraminfo {@rep:precision 1}
5680  * @param p_pm_product_code The identifier of the external project management system
5681  * from which the project is imported
5682  * @rep:paraminfo {@rep:required}
5683  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
5684  * @rep:paraminfo {@rep:precision 25}
5685  * @param p_pa_project_id The unique identifier of the project
5686  * @rep:paraminfo {@rep:required}
5687  * @param p_structure_version_id Unique identifier of the of the workplan structure version from which
5688  * the intra project dependency is created
5689  * @rep:paraminfo {@rep:required}
5690  * @param p_pm_task_reference The identifier of the task in the external project
5691  * management system from which the budget is imported
5692  * @rep:paraminfo {@rep:required}
5693  * @param p_pa_task_id Unique identifier of the task
5694  * @rep:paraminfo {@rep:required}
5695  * @param p_pm_pred_reference The identifier of the predecessor task in the external project
5696  * management system from which the budget is imported
5697  * @rep:paraminfo {@rep:required}
5698  * @param p_pa_pred_id Unique identifier of the predecessor task
5699  * @rep:paraminfo {@rep:required}
5700  * @param p_type Type of dependency
5701  * @param p_lag_days Lag days of the dependency
5702  * @param p_comments Comments for the dependency
5703  * @rep:scope public
5704  * @rep:lifecycle active
5705  * @rep:displayname Update Dependency
5706  * @rep:category BUSINESS_ENTITY PA_PROJECT
5707  * @rep:category BUSINESS_ENTITY PA_TASK
5708  * @rep:compatibility S
5709  */
5710 
5711 PROCEDURE Update_Dependency(
5712   p_api_version_number          IN  NUMBER   :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5713  ,p_commit                      IN  VARCHAR2 := FND_API.G_FALSE
5714  ,p_init_msg_list               IN  VARCHAR2 := FND_API.G_FALSE
5715  ,p_msg_count                   OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5716  ,p_msg_data                    OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5717  ,p_return_status               OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5718  ,p_pm_product_code             IN  VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5719  ,p_pm_project_reference        IN  VARCHAR2
5720  ,p_pa_project_id       IN  NUMBER
5721  ,p_structure_version_id        IN  NUMBER
5722  ,p_pm_task_reference           IN  VARCHAR2
5723  ,p_pa_task_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5724  ,p_pm_pred_reference           IN  VARCHAR2
5725  ,p_pa_pred_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5726  ,p_type                        IN  VARCHAR2 := 'FS'
5727  ,p_lag_days                    IN  NUMBER   := 0
5728  ,p_comments                    IN  VARCHAR2 := NULL
5729 );
5730 
5731 /*#
5732  * This procedure is used to delete an intra-project dependency.
5733  * @param p_api_version_number API standard: version number
5734  * @rep:paraminfo {@rep:required}
5735  * @param p_commit API standard (default = F): indicates if the transaction will be committed
5736  * @rep:paraminfo {@rep:precision 1}
5737  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5738  * @rep:paraminfo {@rep:precision 1}
5739  * @param p_msg_count API standard: number of error messages
5740  * @rep:paraminfo {@rep:required}
5741  * @param p_msg_data API standard: error message
5742  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
5743  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
5744  * @rep:paraminfo {@rep:precision 1}
5745  * @param p_pm_product_code The identifier of the external project management system
5746  * from which the project is imported
5747  * @rep:paraminfo {@rep:required}
5748  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
5749  * @rep:paraminfo {@rep:precision 25}
5750  * @param p_pa_project_id The unique identifier of the project
5751  * @rep:paraminfo {@rep:required}
5752  * @param p_structure_version_id Unique identifier of the workplan structure version from which
5753  * the intra project dependency is created
5754  * @rep:paraminfo {@rep:required}
5755  * @param p_pm_task_reference The identifier of the task in the external project
5756  * management system from which the budget is imported
5757  * @rep:paraminfo {@rep:required}
5758  * @param p_pa_task_id Unique identifier of the task
5759  * @rep:paraminfo {@rep:required}
5760  * @param p_pm_pred_reference The identifier of the predecessor task in the external project
5761  * management system from which the budget is imported
5762  * @rep:paraminfo {@rep:required}
5763  * @param p_pa_pred_id Unique identifier of the predecessor task
5764  * @rep:paraminfo {@rep:required}
5765  * @rep:scope public
5766  * @rep:lifecycle active
5767  * @rep:displayname Delete Dependency
5768  * @rep:category BUSINESS_ENTITY PA_PROJECT
5769  * @rep:category BUSINESS_ENTITY PA_TASK
5770  * @rep:compatibility S
5771  */
5772 
5773 PROCEDURE Delete_Dependency(
5774   p_api_version_number          IN  NUMBER   :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5775  ,p_commit                      IN  VARCHAR2 := FND_API.G_FALSE
5776  ,p_init_msg_list               IN  VARCHAR2 := FND_API.G_FALSE
5777  ,p_msg_count                   OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
5778  ,p_msg_data                    OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5779  ,p_return_status               OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5780  ,p_pm_product_code     IN  VARCHAR2
5781  ,p_pm_project_reference    IN  VARCHAR2
5782  ,p_pa_project_id       IN  NUMBER
5783  ,p_structure_version_id        IN  NUMBER
5784  ,p_pm_task_reference           IN  VARCHAR2
5785  ,p_pa_task_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5786  ,p_pm_pred_reference           IN  VARCHAR2
5787  ,p_pa_pred_id                  IN  NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5788 );
5789 
5790 -- Begin fix for Bug # Bug # 4096218.
5791 /*#
5792  * This API is used to determine whether tasks deleted in an external scheduling system
5793  * such as Microsoft Project would be deleted in Oracle Projects when both the systems are
5794  * integrated. Tasks are deleted immediately in Oracle Projects
5795  * if no published version exists, and are marked for deletion or cancelled when the
5796  * working workplan version is published in Oracle Projects. This procedure prevents
5797  * tasks from being deleted if they have transactions.
5798  * @param p_api_version_number API standard: version number
5799  * @rep:paraminfo {@rep:required}
5800  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
5801  * @rep:paraminfo {@rep:precision 1}
5802  * @param p_return_status API standard: return status of the API (success/failure/unexpected error)
5803  * @rep:paraminfo {@rep:precision 1}
5804  * @param p_msg_count API standard: number of error messages
5805  * @rep:paraminfo {@rep:required}
5806  * @param p_msg_data API standard: error message
5807  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
5808  * @param p_project_id The reference code that uniquely identifies the project in Oracle Projects
5809  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
5810  * @param p_task_id The reference code that uniquely identifies the task in a project in Oracle Projects
5811  * @param p_pm_task_reference The reference code that uniquely identifies the task wit a project in the external system
5812  * @param p_task_version_id The reference code that uniquely identifies the task version of the task
5813  * in a project in Oracle Projects
5814  * @param p_structure_type  The structure type (default = FINANCIAL)
5815  * @param p_perform_check_delete_task_ok The flag that decides which
5816  * mode this API will be called in (default = N). If this flag is set to N the value of
5817  * the flag: P_CHECK_TASK_MFD_FLAG will be decided by the current
5818  * task status code of the task.If this flag is set to Y the value of
5819  * the flag: P_CHECK_TASK_MFD_FLAG will be decided by performing a
5820  * check to see if the task can be deleted immediately from the structure.
5821  * @param p_check_task_mfd_flag This flag returns the following values:
5822  * Y if the task can be deleted immediately from the structure.
5823  * M if the task can be marked for delete from the structure and deleted later in a subsequent publishing flow.
5824  * N if the task cannot be deleted from the structure.
5825  * @rep:scope public
5826  * @rep:lifecycle active
5827  * @rep:displayname Check Delete Task
5828  * @rep:category BUSINESS_ENTITY PA_PROJECT
5829  * @rep:category BUSINESS_ENTITY PA_TASK
5830  * @rep:compatibility S
5831  */
5832 
5833 PROCEDURE check_task_mfd
5834 ( p_api_version_number          IN      NUMBER
5835  , p_init_msg_list              IN      VARCHAR2        := FND_API.G_FALSE
5836  , p_return_status              OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5837  , p_msg_count                  OUT     NOCOPY NUMBER --File.Sql.39 bug 4440895
5838  , p_msg_data                   OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5839  , p_project_id                 IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5840  , p_pm_project_reference       IN      VARCHAR2        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5841  , p_task_id                    IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5842  , p_pm_task_reference          IN      VARCHAR2        := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5843  , p_task_version_id            IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5844  , p_structure_type             IN      VARCHAR2        := 'FINANCIAL'
5845  , p_perform_check_delete_task_ok IN    VARCHAR2        := 'N'
5846  , p_check_task_mfd_flag        OUT     NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5847 );
5848 
5849 -- 4096218 Changed OUT param name to x_deleted_task_ids (earlier it was x_deleted_task_ver_ids)
5850 
5851 /*#
5852  * When you publish a version-enabled workplan in Oracle Projects, tasks in the working
5853  * version with a status of To Be Deleted are either deleted or set to a Canceled status.
5854  * The GET_DELETED_TASKS_FROM_OP procedure retrieves the list of deleted tasks in
5855  * Oracle Projects and displays the tasks in an integrated external system such as
5856  * Microsoft Project.
5857  * @param x_deleted_task_ids The list of tasks that were previously marked for deletion and
5858  * have now been deleted from the workplan structure
5859  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
5860  * @rep:paraminfo {@rep:precision 1}
5861  * @param x_msg_count API standard: number of error messages
5862  * @rep:paraminfo {@rep:required}
5863  * @param x_msg_data API standard: error message
5864  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
5865  * @rep:scope public
5866  * @rep:lifecycle active
5867  * @rep:displayname Delete Tasks from Oracle Projects
5868  * @rep:category BUSINESS_ENTITY PA_PROJECT
5869  * @rep:category BUSINESS_ENTITY PA_TASK
5870  * @rep:compatibility S
5871  */
5872 
5873 PROCEDURE get_deleted_tasks_from_op
5874 (
5875  x_deleted_task_ids      OUT NOCOPY PA_NUM_1000_NUM, --File.Sql.39 bug 4440895
5876  x_return_status             OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
5877  x_msg_count                 OUT  NOCOPY NUMBER, --File.Sql.39 bug 4440895
5878  x_msg_data                  OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
5879 );
5880 -- End fix for Bug # Bug # 4096218.
5881 
5882 
5883 -- Bug 5436264 : AMG API FOR PROCESS STRUCTURE UPDATES
5884 
5885 PROCEDURE process_structure_updates
5886 (p_api_version_number           IN      NUMBER          := 1.0
5887 , p_init_msg_list               IN      VARCHAR2        := FND_API.G_FALSE
5888 , p_commit                      IN      VARCHAR2        := FND_API.G_FALSE
5889 , p_return_status               OUT     NOCOPY VARCHAR2
5890 , p_msg_count                   OUT     NOCOPY NUMBER
5891 , p_msg_data                    OUT     NOCOPY VARCHAR2
5892 , p_structure_version_id        IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5893 , p_pa_project_id               IN      NUMBER          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5894 , p_pm_project_reference	IN	VARCHAR2 	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5895 , p_process_mode                IN      VARCHAR2        := 'ONLINE'
5896 , p_calling_context             IN      VARCHAR2        := 'AMG');  -- Bug 6727014
5897 
5898 
5899 -- Bug 6727014. Creating a wrapper on process_structure_updates to be used in new concurrent request
5900 
5901 PROCEDURE process_structure_updates_wrp
5902 (errbuf                         OUT NOCOPY   VARCHAR2
5903 , retcode                       OUT NOCOPY   VARCHAR2
5904 , p_operating_unit              IN           VARCHAR2
5905 , p_project_num_from            IN           VARCHAR2
5906 , p_project_num_to              IN           VARCHAR2
5907 );
5908 
5909 
5910 -- Bug # 5072032.
5911 
5912 PROCEDURE SETUP_PROJECT_AS_PROGRAM
5913 (p_api_version			IN	NUMBER		:= 1.0
5914 , p_init_msg_list		IN	VARCHAR2	:= FND_API.G_TRUE
5915 , p_commit			IN	VARCHAR2	:= FND_API.G_FALSE
5916 , p_debug_mode			IN	VARCHAR2	:= 'N'
5917 , p_max_msg_count		IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5918 , p_project_id			IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5919 , p_pm_project_reference	IN	VARCHAR2 	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5920 , p_sys_program_flag		IN	VARCHAR2	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5921 , p_allow_multi_program_rollup	IN	VARCHAR2	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5922 , x_return_status		OUT	NOCOPY VARCHAR2
5923 , x_msg_count			OUT	NOCOPY NUMBER
5924 , x_msg_data			OUT	NOCOPY VARCHAR2);
5925 
5926 PROCEDURE CREATE_PROGRAM_LINKS
5927 (p_api_version			IN	NUMBER		:= 1.0
5928 , p_init_msg_list		IN	VARCHAR2	:= FND_API.G_TRUE
5929 , p_commit			IN	VARCHAR2	:= FND_API.G_FALSE
5930 , p_debug_mode			IN	VARCHAR2	:= 'N'
5931 , p_max_msg_count		IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5932 , p_program_links_tbl		IN	PA_PROJECT_PUB.PROGRAM_LINKS_TBL_TYPE
5933 , x_return_status		OUT	NOCOPY VARCHAR2
5934 , x_msg_count			OUT	NOCOPY NUMBER
5935 , x_msg_data			OUT	NOCOPY VARCHAR2);
5936 
5937 PROCEDURE UPDATE_PROGRAM_LINK_COMMENTS
5938 (p_api_version			IN	NUMBER		:= 1.0
5939 , p_init_msg_list		IN	VARCHAR2	:= FND_API.G_TRUE
5940 , p_commit			IN	VARCHAR2	:= FND_API.G_FALSE
5941 , p_debug_mode			IN	VARCHAR2	:= 'N'
5942 , p_max_msg_count		IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5943 , p_program_links_tbl		IN	PA_PROJECT_PUB.PROGRAM_LINKS_TBL_TYPE
5944 , x_return_status		OUT	NOCOPY VARCHAR2
5945 , x_msg_count			OUT	NOCOPY NUMBER
5946 , x_msg_data			OUT	NOCOPY VARCHAR2);
5947 
5948 PROCEDURE DELETE_PROGRAM_LINK
5949 (p_api_version			IN	NUMBER		:= 1.0
5950 , p_init_msg_list		IN	VARCHAR2	:= FND_API.G_TRUE
5951 , p_commit			IN	VARCHAR2	:= FND_API.G_FALSE
5952 , p_debug_mode			IN	VARCHAR2	:= 'N'
5953 , p_max_msg_count		IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5954 , p_object_relationship_id	IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5955 , p_parent_project_id		IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5956 , p_pm_parent_project_reference	IN	VARCHAR2	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5957 , p_task_id			IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5958 , p_pm_task_reference		IN	VARCHAR2	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5959 , p_task_version_id		IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5960 , p_structure_type              IN      VARCHAR2        := 'WORKPLAN'
5961 , p_sub_project_id		IN	NUMBER		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
5962 , p_pm_sub_project_reference	IN	VARCHAR2	:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5963 , x_return_status		OUT	NOCOPY VARCHAR2
5964 , x_msg_count			OUT	NOCOPY NUMBER
5965 , x_msg_data			OUT	NOCOPY VARCHAR2);
5966 
5967 -- End of Bug # 5072032.
5968 
5969 
5970 --Bug 7525628
5971 
5972 PROCEDURE UPDATE_FINANCIAL_ATTRIBUTES
5973 (
5974  P_API_VERSION_NUMBER           IN  NUMBER,
5975  P_COMMIT                       IN  VARCHAR2,
5976  P_INIT_MSG_LIST                IN  VARCHAR2,
5977  P_PA_PROJECT_ID                IN  NUMBER,
5978  P_TASK_ID_TBL                  IN  SYSTEM.PA_NUM_TBL_TYPE,
5979  P_SERVICE_TYPE_CODE_TBL        IN  SYSTEM.PA_VARCHAR2_150_TBL_TYPE,
5980  P_CHARGEABLE_FLAG_TBL          IN  SYSTEM.PA_VARCHAR2_150_TBL_TYPE,
5981  P_BILLABLE_FLAG_TBL            IN  SYSTEM.PA_VARCHAR2_150_TBL_TYPE,
5982  X_MSG_COUNT                    OUT NOCOPY NUMBER,
5983  X_MSG_DATA                     OUT NOCOPY VARCHAR2,
5984  X_RETURN_STATUS                OUT NOCOPY VARCHAR2
5985 );
5986 -- End fix for Bug 7525628
5987 
5988 PROCEDURE BULK_UPDATE_TASKS_LITE
5989 ( p_api_version_number          IN         NUMBER
5990  ,p_commit                      IN         VARCHAR2  := FND_API.G_FALSE
5991  ,p_init_msg_list               IN         VARCHAR2  := FND_API.G_FALSE
5992  ,x_msg_count                  OUT  NOCOPY NUMBER
5993  ,x_msg_data                   OUT  NOCOPY VARCHAR2
5994  ,x_return_status              OUT  NOCOPY VARCHAR2
5995  ,p_project_id                  IN         NUMBER
5996  ,p_tasks_in                    IN         pa_project_pub.lite_task_in_tbl_type
5997  ,p_pass_entire_structure       IN         VARCHAR2
5998  ,p_pm_product_code             IN         VARCHAR2
5999  ,p_bulk_update_mode            IN         VARCHAR2  := 'ALL' -- other possible value is 'NO_DATES'
6000  ,p_op_validate_flag            IN         VARCHAR2  := 'N'
6001  ,p_update_mode                 IN         VARCHAR2  := 'PA_UPD_WBS_ATTR'
6002 );
6003 
6004 PROCEDURE BULK_ADD_TASKS_LITE
6005 ( p_api_version_number          IN         NUMBER
6006  ,p_commit                      IN         VARCHAR2  := FND_API.G_FALSE
6007  ,p_init_msg_list               IN         VARCHAR2  := FND_API.G_FALSE
6008  ,x_msg_count                  OUT  NOCOPY NUMBER
6009  ,x_msg_data                   OUT  NOCOPY VARCHAR2
6010  ,x_return_status              OUT  NOCOPY VARCHAR2
6011  ,p_project_id                  IN         NUMBER
6012  ,p_tasks_in                    IN         pa_project_pub.lite_task_in_tbl_type
6013  ,p_pass_entire_structure       IN         VARCHAR2
6014  ,p_pm_product_code             IN         VARCHAR2
6015  ,p_bulk_add_mode               IN         VARCHAR2  := 'ALL' -- other possible value is 'NO_DATES'
6016  ,p_op_validate_flag            IN         VARCHAR2  := 'N'
6017  ,p_update_mode                 IN         VARCHAR2  := 'PA_UPD_WBS_ATTR'
6018  ,p_tasks_out                   OUT NOCOPY        pa_project_pub.task_out_tbl_type
6019 );
6020 
6021 -- Added following three new api's to indent, outdent and move tasks for Huawei enhancement - bug 13923366
6022 PROCEDURE BULK_INDENT_TASKS_LITE (
6023  p_api_version                IN    NUMBER   :=1.0,
6024  p_init_msg_list              IN    VARCHAR2 :=FND_API.G_TRUE,
6025  p_commit             IN    VARCHAR2 :=FND_API.G_FALSE,
6026  p_validate_only              IN    VARCHAR2 :=FND_API.G_TRUE,
6027  p_validation_level       IN    NUMBER   :=FND_API.G_VALID_LEVEL_FULL,
6028  p_calling_module         IN    VARCHAR2 :='SELF_SERVICE',
6029  p_debug_mode             IN    VARCHAR2 :='N',
6030  p_max_msg_count          IN    NUMBER   :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
6031  p_structure_version_id       IN    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
6032  p_task_version_id        IN    NUMBER,
6033  p_project_id             IN    NUMBER,
6034  p_record_version_number      IN    NUMBER,
6035  x_return_status          OUT   NOCOPY VARCHAR2,
6036  x_msg_count              OUT   NOCOPY NUMBER,
6037  x_msg_data           OUT   NOCOPY VARCHAR2
6038 );
6039 
6040 PROCEDURE BULK_OUTDENT_TASKS_LITE (
6041  p_api_version                IN    NUMBER   :=1.0,
6042  p_init_msg_list              IN    VARCHAR2 :=FND_API.G_TRUE,
6043  p_commit             IN    VARCHAR2 :=FND_API.G_FALSE,
6044  p_validate_only              IN    VARCHAR2 :=FND_API.G_TRUE,
6045  p_validation_level       IN    NUMBER   :=FND_API.G_VALID_LEVEL_FULL,
6046  p_calling_module         IN    VARCHAR2 :='SELF_SERVICE',
6047  p_debug_mode             IN    VARCHAR2 :='N',
6048  p_max_msg_count          IN    NUMBER   :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
6049  p_structure_version_id       IN    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
6050  p_task_version_id        IN    NUMBER,
6051  p_project_id             IN    NUMBER,
6052  p_record_version_number      IN    NUMBER,
6053  x_return_status          OUT   NOCOPY VARCHAR2,
6054  x_msg_count              OUT   NOCOPY NUMBER,
6055  x_msg_data           OUT   NOCOPY VARCHAR2
6056 );
6057 
6058 PROCEDURE BULK_MOVE_TASKS_LITE
6059    ( p_api_version           IN     NUMBER   := 1.0,
6060      p_init_msg_list         IN     VARCHAR2 := FND_API.G_TRUE,
6061      p_commit                IN     VARCHAR2 := FND_API.G_FALSE,
6062      p_validate_only         IN     VARCHAR2 := FND_API.G_TRUE,
6063      p_validation_level      IN     NUMBER   := FND_API.G_VALID_LEVEL_FULL,
6064      p_calling_module        IN     VARCHAR2 := 'SELF_SERVICE',
6065      p_debug_mode            IN     VARCHAR2 := 'N',
6066      p_max_msg_count         IN     NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
6067      p_structure_version_id  IN     NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
6068      p_task_version_id_tbl   IN     SYSTEM.PA_NUM_TBL_TYPE := SYSTEM.PA_NUM_TBL_TYPE(),
6069      p_ref_task_version_id   IN     NUMBER,
6070      p_ref_project_id        IN     NUMBER,
6071      p_peer_or_sub           IN     VARCHAR2,
6072      p_record_version_number_tbl     IN SYSTEM.PA_NUM_TBL_TYPE := SYSTEM.PA_NUM_TBL_TYPE(),
6073      x_return_status                 OUT NOCOPY VARCHAR2,
6074      x_msg_count                     OUT NOCOPY NUMBER,
6075      x_msg_data                      OUT NOCOPY VARCHAR2
6076 );
6077 
6078 PROCEDURE Bulk_Delete_Task ( p_api_version_number    IN  NUMBER     := 1.0
6079                        ,p_commit                IN  VARCHAR2   := FND_API.G_FALSE
6080                        ,p_init_msg_list         IN   VARCHAR2  := FND_API.G_FALSE
6081                        ,p_msg_count             OUT NOCOPY NUMBER
6082                        ,p_msg_data              OUT NOCOPY VARCHAR2
6083                        ,p_return_status         OUT NOCOPY VARCHAR2
6084                        ,p_pm_product_code       IN   VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6085                        ,p_pm_project_reference  IN   VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6086                        ,p_pa_project_id         IN   NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6087                        ,p_pm_task_reference     IN   VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6088                        ,p_pa_task_id            IN   NUMBER    := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6089                        ,p_cascaded_delete_flag  IN   VARCHAR2  := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6090                        ,p_project_id            OUT NOCOPY NUMBER
6091                        ,p_task_id               OUT NOCOPY NUMBER
6092                        ,p_task_version_id       IN   NUMBER     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6093                        ,p_structure_type        IN   VARCHAR2   := 'FINANCIAL'
6094                        ,p_process_mode          IN   VARCHAR2   := 'ONLINE'
6095 					   ,p_structure_updates_flag IN  VARCHAR2   := 'Y'
6096  );
6097 
6098  procedure STRUCTURE_ROLLUP (
6099 					 p_api_version                IN    NUMBER   := 1.0,
6100 					 p_init_msg_list              IN    VARCHAR2 := FND_API.G_TRUE,
6101 					 p_commit                     IN    VARCHAR2 := FND_API.G_FALSE,
6102 					 p_validate_only              IN    VARCHAR2 := FND_API.G_TRUE,
6103 					 p_validation_level           IN    NUMBER   := FND_API.G_VALID_LEVEL_FULL,
6104 					 p_calling_module             IN    VARCHAR2 := 'SELF_SERVICE',
6105 					 p_debug_mode                 IN    VARCHAR2 := 'N',
6106 					 p_max_msg_count              IN    NUMBER   := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM,
6107 					 p_structure_version_id       IN    NUMBER   := NULL,
6108 					 p_project_id                 IN    NUMBER   := NULL,
6109 					 p_as_of_date                 IN    DATE     := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE,
6110 					 p_structure_type             IN    VARCHAR2 := 'WORKPLAN',
6111 					 p_entire_structure_flag      IN    VARCHAR2 := 'Y',
6112 					 x_return_status              OUT   NOCOPY VARCHAR2,
6113 					 x_msg_count                  OUT   NOCOPY NUMBER,
6114 					 x_msg_data                   OUT   NOCOPY VARCHAR2);
6115 
6116 
6117 --Added below 2 new API for CBS RBS 16627046
6118 TYPE TASK_COST_CODE_REC IS RECORD (
6119   pa_task_id              NUMBER                          		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6120 , pa_task_number          VARCHAR2(100)                         		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6121 , cbs_element_id          NUMBER                           		:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6122 , cost_code               VARCHAR2(240)                            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6123 );
6124 
6125 TYPE TASK_COST_CODE_TBL IS TABLE OF TASK_COST_CODE_REC
6126 INDEX BY BINARY_INTEGER;
6127 
6128 	/*
6129 This api will be  used to add multiple cost codes to multiple tasks for a single project.
6130 We need to ensure p_task_cost_code_in is passed with either proj_element_id or element number
6131 and cost_code / cbs_element_id to add the same to corresponding element.
6132 p_structure_type should be either WORKPLAN or FINANCIAL.
6133  * @param p_api_version_number API standard: version number
6134  * @rep:paraminfo {@rep:required}
6135  * @param p_commit API standard (default = F): indicates if the transaction will be committed
6136  * @rep:paraminfo {@rep:precision 1}
6137  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
6138  * @rep:paraminfo {@rep:precision 1}
6139  * @param x_msg_count API standard: number of error messages
6140  * @rep:paraminfo {@rep:required}
6141  * @param x_msg_data API standard: error message
6142  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
6143  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
6144  * @rep:paraminfo {@rep:precision 1}
6145  * @param p_pm_product_code The identifier of the external project management system
6146  * from which the project is imported
6147  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
6148  * @param p_pa_project_id The unique identifier of the project
6149  * @rep:paraminfo {@rep:required}
6150   * @param p_structure_type represents the structure type workplan or financial
6151  * @rep:paraminfo {@rep:required}
6152    * @param p_task_cost_code_in is record type which hold task and cost code details
6153  * @rep:paraminfo {@rep:required}
6154  */
6155 
6156 PROCEDURE ADD_COST_CODE_TO_TASK (
6157       p_api_version                     IN   NUMBER           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6158     , p_init_msg_list                   IN   VARCHAR2         := FND_API.G_FALSE
6159     , p_commit                          IN   VARCHAR2         := FND_API.G_FALSE
6160     , p_pa_project_id           				IN   NUMBER           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6161     , p_pm_product_code         				IN   VARCHAR2         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6162  		, p_pm_project_reference        		IN   VARCHAR2         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6163  		, p_task_cost_code_in               IN   TASK_COST_CODE_TBL
6164  		, p_structure_type                  IN   VARCHAR2         := 'FINANCIAL'
6165     , x_msg_count                       OUT  NOCOPY  NUMBER
6166     , x_msg_data                        OUT  NOCOPY VARCHAR2
6167     , x_return_status                   OUT  NOCOPY VARCHAR2
6168      );
6169 
6170 /*
6171 This api will be  used to delete multiple cost codes assigned to multiple tasks for a single project.
6172 We need to ensure p_task_cost_code_in is passed with either proj_element_id or element number
6173 and cost_code / cbs_element_id to add the same to corresponding element.
6174 p_structure_type should be either WORKPLAN or FINANCIAL.
6175  * @param p_api_version_number API standard: version number
6176  * @rep:paraminfo {@rep:required}
6177  * @param p_commit API standard (default = F): indicates if the transaction will be committed
6178  * @rep:paraminfo {@rep:precision 1}
6179  * @param p_init_msg_list API standard (default = F): indicates if message stack will be initialized
6180  * @rep:paraminfo {@rep:precision 1}
6181  * @param x_msg_count API standard: number of error messages
6182  * @rep:paraminfo {@rep:required}
6183  * @param x_msg_data API standard: error message
6184  * @rep:paraminfo {@rep:precision 2000} {@rep:required}
6185  * @param x_return_status API standard: return status of the API (success/failure/unexpected error)
6186  * @rep:paraminfo {@rep:precision 1}
6187  * @param p_pm_product_code The identifier of the external project management system
6188  * from which the project is imported
6189  * @param p_pm_project_reference The reference code that uniquely identifies the project in the external system
6190  * @param p_pa_project_id The unique identifier of the project
6191  * @rep:paraminfo {@rep:required}
6192   * @param p_structure_type represents the structure type workplan or financial
6193  * @rep:paraminfo {@rep:required}
6194    * @param p_task_cost_code_in is record type which hold task and cost code details
6195  * @rep:paraminfo {@rep:required}
6196 */
6197 
6198 
6199 PROCEDURE DELETE_COST_CODE_FROM_TASK (
6200       p_api_version                     IN   NUMBER           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6201     , p_init_msg_list                   IN   VARCHAR2         := FND_API.G_FALSE
6202     , p_commit                          IN   VARCHAR2         := FND_API.G_FALSE
6203     , p_pa_project_id           				IN   NUMBER           := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
6204     , p_pm_product_code         				IN   VARCHAR2         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6205  		, p_pm_project_reference        		IN   VARCHAR2         := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
6206     , p_task_cost_code_in               IN   TASK_COST_CODE_TBL
6207     , p_structure_type                  IN   VARCHAR2         := 'FINANCIAL'
6208     , x_msg_count                       OUT  NOCOPY  NUMBER
6209     , x_msg_data                        OUT  NOCOPY VARCHAR2
6210     , x_return_status                   OUT  NOCOPY VARCHAR2
6211      );
6212 
6213 end PA_PROJECT_PUB;