DBA Data[Home] [Help]

PACKAGE: APPS.PA_ASSIGNMENTS_PUB

Source


4 
1 PACKAGE pa_assignments_pub AUTHID CURRENT_USER AS
2 /*$Header: PARAPUBS.pls 120.2.12010000.6 2009/12/02 06:09:31 kkorrapo ship $*/
3 --
5 --
6 --Global Variable used to determine if any error has occured in the procedure.
7 --
8 g_error_exists  VARCHAR2(1) := FND_API.G_FALSE;
9 --
10 --Composite Record used to pass information from the API wrapper
11 --
12 TYPE Assignment_Rec_Type
13 IS RECORD
14  ( assignment_row_id          ROWID
15  ,assignment_id               pa_project_assignments.assignment_id%TYPE                := FND_API.G_MISS_NUM
16  ,assignment_name             pa_project_assignments.assignment_name%TYPE              := FND_API.G_MISS_CHAR
17  ,assignment_type             pa_project_assignments.assignment_type%TYPE              := FND_API.G_MISS_CHAR
18  ,apprvl_status_code          pa_project_assignments.apprvl_status_code%TYPE           := FND_API.G_MISS_CHAR
19  ,status_code                 pa_project_assignments.status_code%TYPE                  := FND_API.G_MISS_CHAR
20  ,staffing_priority_code      pa_project_assignments.staffing_priority_code%TYPE       := FND_API.G_MISS_CHAR
21  ,multiple_status_flag        pa_project_assignments.multiple_status_flag%TYPE         := 'N'
22  ,record_version_number       pa_project_assignments.record_version_number%TYPE        := FND_API.G_MISS_NUM
23  ,project_id                  pa_project_assignments.project_id%TYPE                   := FND_API.G_MISS_NUM
24  ,project_role_id             pa_project_assignments.project_role_id%TYPE              := FND_API.G_MISS_NUM
25  ,resource_id                 pa_project_assignments.resource_id%TYPE                  := FND_API.G_MISS_NUM
26  ,project_party_id            pa_project_assignments.project_party_id%TYPE             := FND_API.G_MISS_NUM
27  ,description                 pa_project_assignments.description%TYPE                  := FND_API.G_MISS_CHAR
28  ,note_to_approver            pa_project_assignments.note_to_approver%TYPE             := FND_API.G_MISS_CHAR
29  ,start_date                  pa_project_assignments.start_date%TYPE                   := FND_API.G_MISS_DATE
30  ,end_date                    pa_project_assignments.end_date%TYPE                     := FND_API.G_MISS_DATE
31  ,assignment_effort           pa_project_assignments.assignment_effort%TYPE            := FND_API.G_MISS_NUM
32  ,extension_possible          pa_project_assignments.extension_possible%TYPE           := FND_API.G_MISS_CHAR
33  ,source_assignment_id        pa_project_assignments.source_assignment_id%TYPE         := FND_API.G_MISS_NUM
34  ,min_resource_job_level      pa_project_assignments.min_resource_job_level%TYPE       := FND_API.G_MISS_NUM
35  ,max_resource_job_level      pa_project_assignments.max_resource_job_level%TYPE       := FND_API.G_MISS_NUM
36  ,assignment_number           pa_project_assignments.assignment_number%TYPE            := FND_API.G_MISS_NUM
37  ,additional_information      pa_project_assignments.additional_information%TYPE       := FND_API.G_MISS_CHAR
38  ,location_id                 pa_project_assignments.location_id%TYPE                  := FND_API.G_MISS_NUM
39  ,work_type_id                pa_project_assignments.work_type_id%TYPE                 := FND_API.G_MISS_NUM
40  ,revenue_currency_code       pa_project_assignments.revenue_currency_code%TYPE        := FND_API.G_MISS_CHAR
41  ,revenue_bill_rate           pa_project_assignments.revenue_bill_rate%TYPE            := FND_API.G_MISS_NUM
42  ,markup_percent              pa_project_assignments.markup_percent%TYPE               := FND_API.G_MISS_NUM
43  ,expense_owner               pa_project_assignments.expense_owner%TYPE                := FND_API.G_MISS_CHAR
44  ,expense_limit               pa_project_assignments.expense_limit%TYPE                := FND_API.G_MISS_NUM
45  ,expense_limit_currency_code pa_project_assignments.expense_limit_currency_code%TYPE  := FND_API.G_MISS_CHAR
46  ,fcst_tp_amount_type         pa_project_assignments.fcst_tp_amount_type%TYPE          := FND_API.G_MISS_CHAR
47  ,fcst_job_id                 pa_project_assignments.fcst_job_id%TYPE                  := FND_API.G_MISS_NUM
48  ,fcst_job_group_id           pa_project_assignments.fcst_job_group_id%TYPE           := FND_API.G_MISS_NUM
49  ,expenditure_org_id          pa_project_assignments.expenditure_org_id%TYPE          := FND_API.G_MISS_NUM
50  ,expenditure_organization_id pa_project_assignments.expenditure_organization_id%TYPE := FND_API.G_MISS_NUM
51  ,expenditure_type_class      pa_project_assignments.expenditure_type_class%TYPE      := FND_API.G_MISS_CHAR
52  ,expenditure_type            pa_project_assignments.expenditure_type%TYPE            := FND_API.G_MISS_CHAR
53  ,calendar_type               pa_project_assignments.calendar_type%TYPE                := FND_API.G_MISS_CHAR
54  ,calendar_id                 pa_project_assignments.calendar_id %TYPE                 := FND_API.G_MISS_NUM
55  ,resource_calendar_percent   pa_project_assignments.resource_calendar_percent%TYPE    := FND_API.G_MISS_NUM
59  ,source_assignment_type      VARCHAR2(80)                                             := NULL
56  ,no_of_active_candidates     pa_project_assignments.no_of_active_candidates%TYPE      := FND_API.G_MISS_NUM
57  ,assignment_template_id      pa_project_assignments.assignment_template_id%TYPE       := FND_API.G_MISS_NUM
58  ,template_flag               pa_project_assignments.template_flag%TYPE                := FND_API.G_MISS_CHAR
60  ,comp_match_weighting        pa_project_assignments.competence_match_weighting%TYPE   := FND_API.G_MISS_NUM
61  ,avail_match_weighting       pa_project_assignments.availability_match_weighting%TYPE := FND_API.G_MISS_NUM
62  ,job_level_match_weighting   pa_project_assignments.job_level_match_weighting%TYPE    := FND_API.G_MISS_NUM
63  ,search_min_availability     pa_project_assignments.search_min_availability%TYPE      := FND_API.G_MISS_NUM
64  ,search_country_code         pa_project_assignments.search_country_code%TYPE          := FND_API.G_MISS_CHAR
65  ,search_exp_org_struct_ver_id pa_project_assignments.search_exp_org_struct_ver_id%TYPE := FND_API.G_MISS_NUM
66  ,search_exp_start_org_id     pa_project_assignments.search_exp_start_org_id%TYPE       := FND_API.G_MISS_NUM
67  ,search_min_candidate_score  pa_project_assignments.search_min_candidate_score%TYPE    := FND_API.G_MISS_NUM
68  ,last_auto_search_date       pa_project_assignments.last_auto_search_date%TYPE         := FND_API.G_MISS_DATE
69  ,enable_auto_cand_nom_flag   pa_project_assignments.enable_auto_cand_nom_flag%TYPE     := FND_API.G_MISS_CHAR
70  ,mass_wf_in_progress_flag    pa_project_assignments.mass_wf_in_progress_flag%TYPE      := FND_API.G_MISS_CHAR
71  ,bill_rate_override          pa_project_assignments.bill_rate_override%TYPE            := FND_API.G_MISS_NUM
72  ,bill_rate_curr_override     pa_project_assignments.bill_rate_curr_override%TYPE       := FND_API.G_MISS_CHAR
73  ,markup_percent_override     pa_project_assignments.markup_percent_override%TYPE       := FND_API.G_MISS_NUM
74  ,discount_percentage       pa_project_assignments.discount_percentage%TYPE           := FND_API.G_MISS_NUM -- Bug 2531267
75  ,rate_disc_reason_code     pa_project_assignments.rate_disc_reason_code%TYPE         := FND_API.G_MISS_CHAR -- Bug 2531267
76  ,tp_rate_override            pa_project_assignments.tp_rate_override%TYPE              := FND_API.G_MISS_NUM
77  ,tp_currency_override        pa_project_assignments.tp_currency_override%TYPE          := FND_API.G_MISS_CHAR
78  ,tp_calc_base_code_override  pa_project_assignments.tp_calc_base_code_override%TYPE    := FND_API.G_MISS_CHAR
79  ,tp_percent_applied_override pa_project_assignments.tp_percent_applied_override%TYPE   := FND_API.G_MISS_NUM
80 ,staffing_owner_person_id     pa_project_assignments.staffing_owner_person_id%TYPE      := FND_API.G_MISS_NUM
81  -- FP.M Development
82  ,resource_list_member_id     pa_project_assignments.resource_list_member_id%TYPE       := FND_API.G_MISS_NUM
83  ,attribute_category          pa_project_assignments.attribute_category%TYPE           := FND_API.G_MISS_CHAR
84  ,attribute1                  pa_project_assignments.attribute1%TYPE                   := FND_API.G_MISS_CHAR
85  ,attribute2                  pa_project_assignments.attribute2%TYPE                   := FND_API.G_MISS_CHAR
86  ,attribute3                  pa_project_assignments.attribute3%TYPE                   := FND_API.G_MISS_CHAR
87  ,attribute4                  pa_project_assignments.attribute4%TYPE                   := FND_API.G_MISS_CHAR
88  ,attribute5                  pa_project_assignments.attribute5%TYPE                   := FND_API.G_MISS_CHAR
89  ,attribute6                  pa_project_assignments.attribute6%TYPE                   := FND_API.G_MISS_CHAR
90  ,attribute7                  pa_project_assignments.attribute7%TYPE                   := FND_API.G_MISS_CHAR
91  ,attribute8                  pa_project_assignments.attribute8%TYPE                   := FND_API.G_MISS_CHAR
92  ,attribute9                  pa_project_assignments.attribute9%TYPE                   := FND_API.G_MISS_CHAR
93  ,attribute10                 pa_project_assignments.attribute10%TYPE                  := FND_API.G_MISS_CHAR
94  ,attribute11                 pa_project_assignments.attribute11%TYPE                  := FND_API.G_MISS_CHAR
95  ,attribute12                 pa_project_assignments.attribute12%TYPE                  := FND_API.G_MISS_CHAR
96  ,attribute13                 pa_project_assignments.attribute13%TYPE                  := FND_API.G_MISS_CHAR
97  ,attribute14                 pa_project_assignments.attribute14%TYPE                  := FND_API.G_MISS_CHAR
98  ,attribute15                 pa_project_assignments.attribute15%TYPE                  := FND_API.G_MISS_CHAR
99 /* Added for bug 3051110 */
100  ,transfer_price_rate        pa_project_assignments.transfer_price_rate%TYPE           := FND_API.G_MISS_NUM
101  ,transfer_pr_rate_curr      pa_project_assignments.transfer_pr_rate_curr%TYPE         := FND_API.G_MISS_CHAR
102 );
103 
104 TYPE Assignment_Tbl_Type IS TABLE OF Assignment_Rec_Type
105    INDEX BY BINARY_INTEGER;
106 
107 TYPE Assignment_Id_Rec_Type IS RECORD
108  (assignment_id   NUMBER);
109 
110 TYPE Assignment_Id_Tbl_Type IS TABLE OF Assignment_Id_Rec_Type
111    INDEX BY BINARY_INTEGER;
112 
113 TYPE num_tbl_type IS TABLE OF NUMBER
114    INDEX BY BINARY_INTEGER;
115 
116 TYPE res_name_tbl_type IS TABLE OF pa_resources_denorm.resource_name%TYPE
117    INDEX BY BINARY_INTEGER;
118 
119 g_assignment_id_tbl    Assignment_Id_Tbl_Type;
120 G_update_assignment_bulk_call    varchar2(1) := 'N';  -- Bug 8223045
121 
122 -- ----------------------------------------------------------------------------
123 -- |--------------------------<Execute_Create_Assignment>----------------------|
124 -- ----------------------------------------------------------------------------
125 --
126 -- {Start Of Comments}
127 --
128 -- Description:
129 -- 	This API creates a requirement or an assignment from the scalar values passed to it. It loads the composite
130 --      record with scalar values and calls Create_Assignment.
131 -- Prerequisites:
132 --
133 -- In Parameters:
134 --   Name                           Reqd Type             Description
138 --                                                          partial.
135 -- p_asgn_creation_mode                  VARCHAR2         Indicates whether the assignment creation is FULL or
136 --                                                          PARTIAL. Defaults to 'FULL'
137 -- p_unfilled_assignment_status          VARCHAR2         Status of the newly created requirement when assignment is
139 -- p_assignment_name                X    VARCHAR2         Required if p_assignment_id is null.
140 -- p_assignment_type                Y    VARCHAR2         Indicates the type of the object for which status is shown.
141 --                                                          'OPEN_ASSIGNMENT'   => Requirement
142 --                                                          'STAFFED_ASSIGNMENT'=> Assignment/Project Assignment
143 --                                                          'STAFFED_ADMIN_ASSIGNMENT' => Administrative Assignment
144 -- p_multiple_status_flag           Y    VARCHAR2         Indicates whether the underlying schedule for the Assignment
145 --                                                          have more than one statuses. For requirement, use 'N'
146 -- p_status_code                    X    VARCHAR2         Indicates the status of the assignment. This column may be
147 --						   	    null if the underlying schedule has multiple status codes.
148 --                                                          This is mandatory if p_project_status_name is null.
149 -- p_project_id                     X    NUMBER           The identifier of the project to which this record belongs
150 --                                                          This is mandatory if p_project_number is null.
151 -- p_project_role_id                X    NUMBER           Identifier of the project role for the record.
152 --                                                          This is mandatory if project_role_name is null.
153 -- p_resource_id                         NUMBER           Identifier of the project resource.
154 -- p_project_party_id                    NUMBER           The identifier of the project party on an assignment.
155 -- p_project_subteam_id             X    NUMBER           The identifier for the project subteam to which this record
156 --                                                           belongs. Mandatory if p_project_subteam_name is null.
157 -- p_description                         VARCHAR2         The free text description of the record.
158 -- p_start_date                     Y    DATE             Start date of the requirement/assignment
159 -- p_end_date                       Y    DATE             End date of the requirement/assignment.
160 -- p_assignment_effort                   NUMBER		  Total number of hours of the requirement/assignment
161 -- p_extension_possible                  VARCHAR2         Indicates whether it is possible to extend the
162 --       						    requirement/assignment.
163 -- p_source_assignment_id                NUMBER           Identifies the assignment from which this assignment record
164 --                                                          is originated.
165 -- p_min_resource_job_level              NUMBER           Indicates the minimum acceptable job level for a requirement.
166 -- p_max_resource_job_level	         NUMBER           Indidates the maximum acceptable job level for a requirement.
167 -- p_additional_information              VARCHAR2         Free text for additional information on a record.
168 -- p_location_id                         NUMBER           Identifier of the location of the assignment. For new
169 --                                                          assignments this column gets default value from the project
170 --                                                          setup.
171 -- p_work_type_id                  X     NUMBER           Identifies the type of work being carried out. Gets defaulted
172 --                                                          from project setup for open assignment and from staffed
173 --                                                          assignments not created from an open assignment.Mandatory
174 --                                                          if work_type_name is null
175 -- p_revenue_currency_code               VARCHAR2         Currency code of the revenue
176 -- p_revenue_bill_rate                   NUMBER           Bill rate of the revenue
177 -- p_expense_owner                       VARCHAR2         Owner of the expense
178 -- p_expense_limit                       NUMBER           The maximum amount that expense owner is willing to pay.
179 -- p_expense_limit_currency_code         VARCHAR2         Currency code of the expense limit.
180 -- p_fcst_tp_amount_type		 VARCHAR2
181 -- p_fcst_job_id                         NUMBER
182 -- p_calendar_type                       VARCHAR2         Indicates the base calendar used for generating schedules.
183 -- p_calendar_id	                 NUMBER           Identifier of the calendar
184 -- p_resource_calendar_percent           NUMBER           Daily percentage of the resource calendar
185 -- p_project_name                 X      VARCHAR2         Required if p_project_number and p_project_id are null.
186 -- p_project_number               X      VARCHAR2         Required if p_project_id and p_project_name are null.
187 -- p_resource_name                X      VARCHAR2         Required for an assignment and if p_resource_source_id is null
188 -- p_resource_source_id           X      NUMBER           Person ID used by HR, used to staff an assignment.
189 --                                                          Required for an assignment
190 -- p_project_subteam_name                VARCHAR2
191 -- p_project_status_name          X      VARCHAR2         Required if p_project_status_code is null.
192 -- p_project_role_name            X      VARCHAR2         Required if p_project_role_id is null.
193 -- p_location_city                       VARCHAR2
194 -- p_location_region                     VARCHAR2
195 -- p_location_country_name               VARCHAR2
196 -- p_location_country_code               VARCHAR2
197 -- p_calendar_name                X      VARCHAR2         Required if p_calendar_id is null.
201 -- p_attribute2                  	 VARCHAR2
198 -- p_work_type_name               X      VARCHAR2         Required if p_work_type_id is null.
199 -- p_attribute_category                  VARCHAR2	  Descriptive flexfield context field
200 -- p_attribute1                  	 VARCHAR2	  Descriptive flexfield segment
202 -- p_attribute3                 	 VARCHAR2
203 -- p_attribute4                		 VARCHAR2
204 -- p_attribute5                		 VARCHAR2
205 -- p_attribute6                   	 VARCHAR2
206 -- p_attribute7                 	 VARCHAR2
207 -- p_attribute8                  	 VARCHAR2
208 -- p_attribute9                 	 VARCHAR2
209 -- p_attribute10                 	 VARCHAR2
210 -- p_attribute11                 	 VARCHAR2
211 -- p_attribute12                  	 VARCHAR2
212 -- p_attribute13                	 VARCHAR2
213 -- p_attribute14                	 VARCHAR2
214 -- p_attribute15                 	 VARCHAR2
215 -- p_api_version                         VARCHAR2         A NO Null field, defaults to '1.0'
216 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
217 --							  'F' => append to exisiting message stack
218 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
219 --							  'T' => This API does the database commit
220 -- p_validate_only                       VARCHAR2         'T' => perform validation only
221 --                                                        'F' => perform validation and DML
222 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
223 --                                                           be put on the message stack.
224 --Out Parameters:
225 --
226 --   The api will set the following out parameters:
227 --
228 --   Name                           Type     Description
229 --
230 -- x_new_assignment_id              NUMBER   System generated id of the requirement/assignment
231 -- x_assignment_number              NUMBER   System generated number of the requirement/assignment
232 -- x_assignment_row_id              ROWID    requirement/assignment row id
233 -- x_resource_id                    NUMBER   Identifier of the Project resource, it is null for a requirement
234 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
235 --                                                          'E' => Error occured.
236 --                                                          'U' => Unexpected error occured.
237 -- x_msg_count                      NUMBER   Number of error count.
238 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
239 -- x_new_assignment_id_tbl          Number table type.Poplulating in case of multiple requirements.
240 --   13-aug-2003    sramesh     -- Added the new parameter x_new_assignment_id_tbl for the procedure
241 --                                 Execute_Create_Assignment and also in the impacted places.
242 -- Access Status:
243 --   Public.
244 --
245 -- {End Of Comments}
246 --
247 PROCEDURE Execute_Create_Assignment
248 ( p_asgn_creation_mode          IN    VARCHAR2                                                := 'FULL'
249  ,p_unfilled_assignment_status  IN    pa_project_assignments.status_code%TYPE                 := FND_API.G_MISS_CHAR
250  ,p_assignment_name             IN    pa_project_assignments.assignment_name%TYPE             := FND_API.G_MISS_CHAR
251  ,p_assignment_type             IN    pa_project_assignments.assignment_type%TYPE             := FND_API.G_MISS_CHAR
252  ,p_multiple_status_flag        IN    pa_project_assignments.multiple_status_flag%TYPE        := FND_API.G_MISS_CHAR
253  ,p_status_code                 IN    pa_project_assignments.status_code%TYPE                 := FND_API.G_MISS_CHAR
254  ,p_staffing_priority_code      IN    pa_project_assignments.staffing_priority_code%TYPE      := FND_API.G_MISS_CHAR
255  ,p_project_id                  IN    pa_project_assignments.project_id%TYPE                  := FND_API.G_MISS_NUM
256  ,p_assignment_template_id      IN    pa_project_assignments.assignment_template_id%TYPE      := FND_API.G_MISS_NUM
257  ,p_project_role_id             IN    pa_project_assignments.project_role_id%TYPE             := FND_API.G_MISS_NUM
258  ,p_role_list_id                IN    pa_role_lists.role_list_id%TYPE                         := FND_API.G_MISS_NUM
259  ,p_resource_id                 IN    pa_resources.resource_id%TYPE                           := FND_API.G_MISS_NUM
260  ,p_project_party_id            IN    pa_project_assignments.project_party_id%TYPE            := FND_API.G_MISS_NUM
261  ,p_project_subteam_id          IN    pa_project_subteams.project_subteam_id%TYPE             := FND_API.G_MISS_NUM
262  ,p_description                 IN    pa_project_assignments.description%TYPE                 := FND_API.G_MISS_CHAR
263  ,p_start_date                  IN    pa_project_assignments.start_date%TYPE                  := FND_API.G_MISS_DATE
264  ,p_end_date                    IN    pa_project_assignments.end_date%TYPE                    := FND_API.G_MISS_DATE
265  ,p_assignment_effort           IN    pa_project_assignments.assignment_effort%TYPE           := FND_API.G_MISS_NUM
266  ,p_extension_possible          IN    pa_project_assignments.extension_possible%TYPE          := FND_API.G_MISS_CHAR
267  ,p_source_assignment_id        IN    pa_project_assignments.source_assignment_id%TYPE        := FND_API.G_MISS_NUM
268  ,p_min_resource_job_level      IN    pa_project_assignments.min_resource_job_level%TYPE      := FND_API.G_MISS_NUM
269  ,p_max_resource_job_level	IN    pa_project_assignments.max_resource_job_level%TYPE      := FND_API.G_MISS_NUM
270  ,p_additional_information      IN    pa_project_assignments.additional_information%TYPE      := FND_API.G_MISS_CHAR
271  ,p_location_id                 IN    pa_project_assignments.location_id%TYPE                 := FND_API.G_MISS_NUM
272  ,p_work_type_id                IN    pa_project_assignments.work_type_id%TYPE                := FND_API.G_MISS_NUM
276  ,p_expense_owner               IN    pa_project_assignments.expense_owner%TYPE               := FND_API.G_MISS_CHAR
273  ,p_revenue_currency_code       IN    pa_project_assignments.revenue_currency_code%TYPE       := FND_API.G_MISS_CHAR
274  ,p_revenue_bill_rate           IN    pa_project_assignments.revenue_bill_rate%TYPE           := FND_API.G_MISS_NUM
275  ,p_markup_percent              IN    pa_project_assignments.markup_percent%TYPE              := FND_API.G_MISS_NUM
277  ,p_expense_limit               IN    pa_project_assignments.expense_limit%TYPE               := FND_API.G_MISS_NUM
278  ,p_expense_limit_currency_code IN    pa_project_assignments.expense_limit_currency_code%TYPE := FND_API.G_MISS_CHAR
279  ,p_fcst_tp_amount_type         IN    pa_project_assignments.fcst_tp_amount_type%TYPE         := FND_API.G_MISS_CHAR
280  ,p_fcst_job_id                 IN    pa_project_assignments.fcst_job_id%TYPE                 := FND_API.G_MISS_NUM
281  ,p_fcst_job_group_id           IN    pa_project_assignments.fcst_job_group_id%TYPE           := FND_API.G_MISS_NUM
282  ,p_expenditure_org_id          IN    pa_project_assignments.expenditure_org_id%TYPE          := FND_API.G_MISS_NUM
283  ,p_expenditure_organization_id IN    pa_project_assignments.expenditure_organization_id%TYPE := FND_API.G_MISS_NUM
284  ,p_expenditure_type_class      IN    pa_project_assignments.expenditure_type_class%TYPE      := FND_API.G_MISS_CHAR
285  ,p_expenditure_type            IN    pa_project_assignments.expenditure_type%TYPE            := FND_API.G_MISS_CHAR
286  ,p_calendar_type               IN    pa_project_assignments.calendar_type%TYPE               := FND_API.G_MISS_CHAR
287  ,p_calendar_id	                IN    pa_project_assignments.calendar_id%TYPE	              := FND_API.G_MISS_NUM
288  ,p_resource_calendar_percent   IN    pa_project_assignments.resource_calendar_percent%TYPE   := FND_API.G_MISS_NUM
289  ,p_project_name                IN    pa_projects_all.name%TYPE                               := FND_API.G_MISS_CHAR
290  ,p_project_number              IN    pa_projects_all.segment1%TYPE                           := FND_API.G_MISS_CHAR
291  ,p_resource_name               IN    pa_resources.name%TYPE                                  := FND_API.G_MISS_CHAR
292  ,p_resource_source_id          IN    NUMBER                                                  := FND_API.G_MISS_NUM
293  ,p_project_subteam_name        IN    pa_project_subteams.name%TYPE                           := FND_API.G_MISS_CHAR
294  ,p_project_status_name         IN    pa_project_statuses.project_status_name%TYPE            := FND_API.G_MISS_CHAR
295  ,p_staffing_priority_name      IN    pa_lookups.meaning%TYPE                                 := FND_API.G_MISS_CHAR
296  ,p_project_role_name           IN    pa_project_role_types.meaning%TYPE                      := FND_API.G_MISS_CHAR
297  ,p_location_city               IN    pa_locations.city%TYPE                                  := FND_API.G_MISS_CHAR
298  ,p_location_region             IN    pa_locations.region%TYPE                                := FND_API.G_MISS_CHAR
299  ,p_location_country_name       IN    fnd_territories_tl.territory_short_name%TYPE            := FND_API.G_MISS_CHAR
300  ,p_location_country_code       IN    pa_locations.country_code%TYPE                          := FND_API.G_MISS_CHAR
301  ,p_calendar_name               IN    jtf_calendars_tl.calendar_name%TYPE                     := FND_API.G_MISS_CHAR
302  ,p_work_type_name              IN    pa_work_types_vl.name%TYPE                              := FND_API.G_MISS_CHAR
303  ,p_fcst_job_name               IN    per_jobs.name%TYPE                                      := FND_API.G_MISS_CHAR
304  ,p_fcst_job_group_name         IN    per_job_groups.displayed_name%TYPE                      := FND_API.G_MISS_CHAR
305  ,p_expenditure_org_name        IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
306  ,p_exp_organization_name       IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
307  ,p_adv_action_set_id           IN    NUMBER                                                  := FND_API.G_MISS_NUM
308  ,p_start_adv_action_set_flag   IN    VARCHAR2                                                := FND_API.G_MISS_CHAR
309  ,p_adv_action_set_name         IN    pa_action_sets.action_set_name%TYPE                     := FND_API.G_MISS_CHAR
310  ,p_bill_rate_override          IN  pa_project_assignments.bill_rate_override%TYPE            := FND_API.G_MISS_NUM
311  ,p_bill_rate_curr_override     IN  pa_project_assignments.bill_rate_curr_override%TYPE       := FND_API.G_MISS_CHAR
312  ,p_markup_percent_override     IN  pa_project_assignments.markup_percent_override%TYPE       := FND_API.G_MISS_NUM
313  ,p_discount_percentage         IN  pa_project_assignments.discount_percentage%TYPE           := FND_API.G_MISS_NUM
314  ,p_rate_disc_reason_code       IN  pa_project_assignments.rate_disc_reason_code%TYPE         := FND_API.G_MISS_CHAR
315  ,p_tp_rate_override            IN  pa_project_assignments.tp_rate_override%TYPE              := FND_API.G_MISS_NUM
316  ,p_tp_currency_override        IN  pa_project_assignments.tp_currency_override%TYPE          := FND_API.G_MISS_CHAR
317  ,p_tp_calc_base_code_override  IN  pa_project_assignments.tp_calc_base_code_override%TYPE    := FND_API.G_MISS_CHAR
318  ,p_tp_percent_applied_override IN  pa_project_assignments.tp_percent_applied_override%TYPE   := FND_API.G_MISS_NUM
319  ,p_staffing_owner_person_id    IN  pa_project_assignments.staffing_owner_person_id%TYPE      := FND_API.G_MISS_NUM
320  ,p_staffing_owner_name         IN  per_people_f.full_name%TYPE                               := FND_API.G_MISS_CHAR
321  ,p_resource_list_member_id     IN  pa_project_assignments.resource_list_member_id%TYPE       := FND_API.G_MISS_NUM
322  ,p_sum_tasks_flag				IN    VARCHAR2												  := FND_API.G_FALSE  -- FP.M Development
323  ,p_budget_version_id			IN	  pa_resource_assignments.budget_version_id%TYPE  		  := FND_API.G_MISS_NUM
324  ,p_attribute_category          IN    pa_project_assignments.attribute_category%TYPE          := FND_API.G_MISS_CHAR
325  ,p_attribute1                  IN    pa_project_assignments.attribute1%TYPE                  := FND_API.G_MISS_CHAR
326  ,p_attribute2                  IN    pa_project_assignments.attribute2%TYPE                  := FND_API.G_MISS_CHAR
330  ,p_attribute6                  IN    pa_project_assignments.attribute6%TYPE                  := FND_API.G_MISS_CHAR
327  ,p_attribute3                  IN    pa_project_assignments.attribute3%TYPE                  := FND_API.G_MISS_CHAR
328  ,p_attribute4                  IN    pa_project_assignments.attribute4%TYPE                  := FND_API.G_MISS_CHAR
329  ,p_attribute5                  IN    pa_project_assignments.attribute5%TYPE                  := FND_API.G_MISS_CHAR
331  ,p_attribute7                  IN    pa_project_assignments.attribute7%TYPE                  := FND_API.G_MISS_CHAR
332  ,p_attribute8                  IN    pa_project_assignments.attribute8%TYPE                  := FND_API.G_MISS_CHAR
333  ,p_attribute9                  IN    pa_project_assignments.attribute9%TYPE                  := FND_API.G_MISS_CHAR
334  ,p_attribute10                 IN    pa_project_assignments.attribute10%TYPE                 := FND_API.G_MISS_CHAR
335  ,p_attribute11                 IN    pa_project_assignments.attribute11%TYPE                 := FND_API.G_MISS_CHAR
336  ,p_attribute12                 IN    pa_project_assignments.attribute12%TYPE                 := FND_API.G_MISS_CHAR
337  ,p_attribute13                 IN    pa_project_assignments.attribute13%TYPE                 := FND_API.G_MISS_CHAR
338  ,p_attribute14                 IN    pa_project_assignments.attribute14%TYPE                 := FND_API.G_MISS_CHAR
339  ,p_attribute15                 IN    pa_project_assignments.attribute15%TYPE                 := FND_API.G_MISS_CHAR
340  ,p_number_of_requirements      IN    NUMBER                                                  := 1
341  ,p_api_version                 IN    NUMBER                                                  := 1.0
342  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_FALSE
343  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
344  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
345  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
346  -- 5130421 Begin
347  ,p_comp_match_weighting         IN    pa_project_assignments.competence_match_weighting%TYPE    := FND_API.G_MISS_NUM
348  ,p_avail_match_weighting        IN    pa_project_assignments.availability_match_weighting%TYPE  := FND_API.G_MISS_NUM
349  ,p_job_level_match_weighting    IN    pa_project_assignments.job_level_match_weighting%TYPE     := FND_API.G_MISS_NUM
350  ,p_search_min_availability      IN    pa_project_assignments.search_min_availability%TYPE       := FND_API.G_MISS_NUM
351  ,p_search_country_code          IN    pa_project_assignments.search_country_code%TYPE           := FND_API.G_MISS_CHAR
352  ,p_search_exp_org_struct_ver_id IN    pa_project_assignments.search_exp_org_struct_ver_id%TYPE  := FND_API.G_MISS_NUM
353  ,p_search_exp_start_org_id      IN    pa_project_assignments.search_exp_start_org_id%TYPE       := FND_API.G_MISS_NUM
354  ,p_search_min_candidate_score   IN    pa_project_assignments.search_min_candidate_score%TYPE    := FND_API.G_MISS_NUM
355  ,p_enable_auto_cand_nom_flag    IN    pa_project_assignments.enable_auto_cand_nom_flag%TYPE     := FND_API.G_MISS_CHAR
356   -- 5130421 End
357   ,x_new_assignment_id_tbl       OUT   NOCOPY system.pa_num_tbl_type --File.Sql.39 bug 4440895
358  ,x_new_assignment_id           OUT   NOCOPY pa_project_assignments.assignment_id%TYPE --File.Sql.39 bug 4440895
359  ,x_assignment_number           OUT   NOCOPY pa_project_assignments.assignment_number%TYPE --File.Sql.39 bug 4440895
360  ,x_assignment_row_id           OUT   NOCOPY ROWID --File.Sql.39 bug 4440895
361  ,x_resource_id                 OUT   NOCOPY pa_resources.resource_id%TYPE --File.Sql.39 bug 4440895
362  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
363  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
364  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
365 );
366 
367 
368 -- ----------------------------------------------------------------------------
369 -- |----------------------------<Create_Assignment>----------------------------|
370 -- ----------------------------------------------------------------------------
371 --
372 -- {Start Of Comments}
373 --
374 -- Description:
375 -- 	Creates or validates for creation of a requirement or an assignment record and all of  its detail records.
376 -- Prerequisites:
377 --
378 -- In Parameters:
379 --   Name                         Reqd Type               Description
380 -- p_assignment_rec               Y    Assignment_Rec_Type A record type defined in this package, use to hold
381 --                                                           information concerning the requirment/assignment to be
382 --							     created.
383 -- p_asgn_creation_mode                  VARCHAR2         Indicates whether the assignment creation is FULL or
384 --                                                          PARTIAL. Defaults to 'FULL'
385 -- p_project_name                 X      VARCHAR2         Required if p_project_number and p_project_id are null.
386 -- p_project_number               X      VARCHAR2         Required if p_project_id and p_project_name are null.
387 -- p_resource_name                X      VARCHAR2         Required for an assignment and if p_resource_source_id is null
388 -- p_resource_source_id           X      NUMBER           Person ID used by HR, used to staff an assignment.
389 --                                                          Required for an assignment
390 -- p_project_subteam_name                VARCHAR2         Name of the subteam
391 -- p_project_subteam_id                  NUMBER           Identifier of the subteam
392 -- p_project_status_name          X      VARCHAR2         Required if p_project_status_code is null.
393 -- p_project_role_name            X      VARCHAR2         Required if p_project_role_name is null.
394 -- p_location_city                       VARCHAR2         name of the city where the job is carried out.
398 -- p_calendar_name                X      VARCHAR2         Required if p_calendar_id is null.
395 -- p_location_region                     VARCHAR2         name of the region where the job is carried out.
396 -- p_location_country_name               VARCHAR2	  name of the country where the job is carried out.
397 -- p_location_country_code               VARCHAR2	  code of the country where the job is carried out.
399 -- p_work_type_name               X      VARCHAR2         Required if p_work_type_id is null.
400 -- p_api_version                         VARCHAR2         A NO Null field, defaults to '1.0'
401 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
402 --							  'F' => append to exisiting message stack
403 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
404 --							  'T' => This API does the database commit
405 -- p_validate_only                       VARCHAR2         'T' => perform validation only
406 --                                                        'F' => perform validation and DML
407 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
408 --                                                           be put on the message stack.
409 --Out Parameters:
410 --
411 --   The api will set the following out parameters:
412 --
413 --   Name                           Type     Description
414 --
415 -- x_new_assignment_id              NUMBER   System generated id of the requirement/assignment
416 -- x_assignment_number              NUMBER   System generated number of the requirement/assignment
417 -- x_assignment_row_id              ROWID    requirement/assignment row id
418 -- x_resource_id                    NUMBER   Identifier of the Project resource, it is null for a requirement
419 -- x_wf_type                        VARCHAR2 Type of the workflow that can be launched during an assignment
420 -- x_wf_item_type                   VARCHAR2 Item Type of the workflow during an assignment
421 -- x_wf_process                     VARCHAR2 Workflow process during an assignment
422 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
423 --                                                          'E' => Error occured.
424 --                                                          'U' => Unexpected error occured.
425 -- x_msg_count                      NUMBER   Number of error count.
426 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
427 --
428 -- Access Status:
429 --   Public.
430 --
431 -- {End Of Comments}
432 --
433 PROCEDURE Create_Assignment
434 ( p_assignment_rec              IN     PA_ASSIGNMENTS_PUB.Assignment_Rec_Type
435  ,p_asgn_creation_mode          IN     VARCHAR2                                        := 'FULL'
436 -- ,p_unfilled_assignment_status  IN     pa_project_assignments.status_code%TYPE         := FND_API.G_MISS_CHAR
437  ,p_project_name                IN    pa_projects_all.name%TYPE                               := FND_API.G_MISS_CHAR
438  ,p_project_number              IN    pa_projects_all.segment1%TYPE                           := FND_API.G_MISS_CHAR
439  ,p_resource_name               IN     pa_resources.name%TYPE                          := FND_API.G_MISS_CHAR
440  ,p_resource_source_id          IN     NUMBER                                          := FND_API.G_MISS_NUM
441  ,p_project_subteam_id          IN     pa_project_subteams.project_subteam_id%TYPE     := FND_API.G_MISS_NUM
442  ,p_project_subteam_name        IN     pa_project_subteams.name%TYPE                  := FND_API.G_MISS_CHAR
443  ,p_project_status_name         IN     pa_project_statuses.project_status_name%TYPE    := FND_API.G_MISS_CHAR
444  ,p_staffing_priority_name      IN     pa_lookups.meaning%TYPE                         := FND_API.G_MISS_CHAR
445  ,p_project_role_name           IN     pa_project_role_types.meaning%TYPE              := FND_API.G_MISS_CHAR
446  ,p_location_city               IN     pa_locations.city%TYPE                          := FND_API.G_MISS_CHAR
447  ,p_location_region             IN     pa_locations.region%TYPE                        := FND_API.G_MISS_CHAR
448  ,p_location_country_name       IN     fnd_territories_tl.territory_short_name%TYPE    := FND_API.G_MISS_CHAR
449  ,p_location_country_code       IN     pa_locations.country_code%TYPE                  := FND_API.G_MISS_CHAR
450  ,p_calendar_name               IN     jtf_calendars_tl.calendar_name%TYPE             := FND_API.G_MISS_CHAR
451  ,p_work_type_name              IN     pa_work_types_vl.name%TYPE                      := FND_API.G_MISS_CHAR
452  ,p_role_list_id                IN     pa_role_lists.role_list_id%TYPE                  := FND_API.G_MISS_NUM
453  ,p_adv_action_set_id           IN     NUMBER                                          := FND_API.G_MISS_NUM
454  ,p_start_adv_action_set_flag   IN     VARCHAR2                                        := FND_API.G_MISS_CHAR
455  ,p_adv_action_set_name         IN     pa_action_sets.action_set_name%TYPE             := FND_API.G_MISS_CHAR
456  ,p_staffing_owner_name         IN     per_people_f.full_name%TYPE                     := FND_API.G_MISS_CHAR
457  ,p_sum_tasks_flag				IN     VARCHAR2										   := FND_API.G_FALSE  -- FP.M Development
458  ,p_budget_version_id			IN	   pa_resource_assignments.budget_version_id%TYPE  := FND_API.G_MISS_NUM
459  ,p_number_of_requirements      IN     NUMBER                                          := 1
460  ,p_api_version                 IN     NUMBER                                          := 1.0
461  ,p_init_msg_list               IN     VARCHAR2                                        := FND_API.G_FALSE
462  ,p_commit                      IN     VARCHAR2                                        := FND_API.G_FALSE
463  ,p_validate_only               IN     VARCHAR2                                        := FND_API.G_TRUE
464  ,p_max_msg_count               IN     NUMBER                                          := FND_API.G_MISS_NUM
468  ,x_resource_id                 OUT    NOCOPY pa_resources.resource_id%TYPE --File.Sql.39 bug 4440895
465  ,x_new_assignment_id           OUT    NOCOPY pa_project_assignments.assignment_id%TYPE --File.Sql.39 bug 4440895
466  ,x_assignment_number           OUT    NOCOPY pa_project_assignments.assignment_number%TYPE --File.Sql.39 bug 4440895
467  ,x_assignment_row_id           OUT    NOCOPY ROWID --File.Sql.39 bug 4440895
469  ,x_return_status               OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
470  ,x_msg_count                   OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
471  ,x_msg_data                    OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
472  );
473 
474 -- ----------------------------------------------------------------------------
475 -- |----------------------------<Exec_Create_Assign_With_Def>----------------------------|
476 -- ----------------------------------------------------------------------------
477 --
478 -- {Start Of Comments}
479 --
480 -- Description:
481 -- 	Assign defaults from the role to the composite record, then call Create_Assign_With_Def with the record
482 --      to create a requirement or an assignment using scalar values passed in and the defaults from the role.
483 -- Prerequisites:
484 --
485 -- In Parameters:
486 --   Name                         Reqd   Type             Description
487 --
488 -- p_asgn_creation_mode                  VARCHAR2         Indicates whether the assignment creation is FULL or
489 --                                                          PARTIAL. Defaults to 'FULL'
490 -- p_role_name            	  X      VARCHAR2         Required if p_project_role_id is null.
491 -- p_assignment_type              Y      VARCHAR2         Indicates the type of the object for which status is shown.
492 --                                                          'OPEN_ASSIGNMENT'   => Requirement
493 --                                                          'STAFFED_ASSIGNMENT'=> Assignment/Project Assignment
494 --                                                          'STAFFED_ADMIN_ASSIGNMENT' => Administrative Assignment
495 -- p_multiple_status_flag         Y      VARCHAR2         Indicates whether the underlying schedule for the Assignment
496 --                                                          have more than one statuses. For requirement, use 'N'
497 -- p_project_id                   X      NUMBER           The identifier of the project to which this record belongs
498 --                                                          This is mandatory if p_project_number is null.
499 -- p_project_name                 X      VARCHAR2         Required if p_project_number and p_project_id are null.
500 -- p_project_number               X      VARCHAR2         Required if p_project_id and p_project_name are null.
501 -- p_project_role_id              X      NUMBER           Identifier of the project role for the record.
502 --                                                          This is mandatory if p_role_name is null.
503 -- p_resource_id                         NUMBER           Identifier of the project resource.
504 -- p_project_party_id                    NUMBER           The identifier of the project party on an assignment.
505 -- p_start_date                   Y      DATE             Start date of the requirement/assignment
506 -- p_end_date                     Y      DATE             End date of the requirement/assignment.
507 -- p_resource_name                X      VARCHAR2         Required for an assignment and if p_resource_source_id is null
508 -- p_resource_source_id           X      NUMBER           Person ID used by HR, used to staff an assignment.
509 --                                                          Required for an assignment
510 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
511 --							  'F' => append to exisiting message stack
512 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
513 --							  'T' => This API does the database commit
514 -- p_validate_only                       VARCHAR2         'T' => perform validation only
515 --                                                        'F' => perform validation and DML
516 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
517 --                                                           be put on the message stack.
518 --Out Parameters:
519 --
520 --   The api will set the following out parameters:
521 --
522 --   Name                           Type     Description
523 --
524 -- x_new_assignment_id              NUMBER   System generated id of the requirement/assignment
525 -- x_assignment_number              NUMBER   System generated number of the requirement/assignment
526 -- x_assignment_row_id              ROWID    requirement/assignment row id
527 -- x_resource_id                    NUMBER   Identifier of the Project resource, it is null for a requirement
528 -- x_wf_type                        VARCHAR2 Type of the workflow that can be launched during an assignment
529 -- x_wf_item_type                   VARCHAR2 Item Type of the workflow during an assignment
530 -- x_wf_process                     VARCHAR2 Workflow process during an assignment
531 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
532 --                                                          'E' => Error occured.
533 --                                                          'U' => Unexpected error occured.
534 -- x_msg_count                      NUMBER   Number of error count.
535 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
536 --
537 -- Access Status:
538 --   Public.
539 --
540 -- {End Of Comments}
541 --
542 PROCEDURE Exec_Create_Assign_With_Def
543 ( p_asgn_creation_mode          IN    VARCHAR2                                                := 'FULL'
544  ,p_role_name                   IN    pa_project_role_types.meaning%TYPE                      := FND_API.G_MISS_CHAR
548  ,p_project_name                IN    pa_projects_all.name%TYPE                               := FND_API.G_MISS_CHAR
545  ,p_assignment_type             IN    pa_project_assignments.assignment_type%TYPE             := FND_API.G_MISS_CHAR
546  ,p_multiple_status_flag        IN    pa_project_assignments.multiple_status_flag%TYPE        := 'N'
547  ,p_project_id                  IN    pa_project_assignments.project_id%TYPE                  := FND_API.G_MISS_NUM
549  ,p_project_number              IN    pa_projects_all.segment1%TYPE                           := FND_API.G_MISS_CHAR
550  ,p_project_role_id             IN    pa_project_assignments.project_role_id%TYPE             := FND_API.G_MISS_NUM
551  ,p_resource_id                 IN    pa_resources.resource_id%TYPE                           := FND_API.G_MISS_NUM
552  ,p_project_party_id            IN    pa_project_assignments.project_party_id%TYPE            := FND_API.G_MISS_NUM
553  ,p_start_date                  IN    pa_project_assignments.start_date%TYPE                  := FND_API.G_MISS_DATE
554  ,p_end_date                    IN    pa_project_assignments.end_date%TYPE                    := FND_API.G_MISS_DATE
555  ,p_resource_name               IN    pa_resources.name%TYPE                                  := FND_API.G_MISS_CHAR
556  ,p_resource_source_id          IN    per_all_people_f.person_id%TYPE                          := FND_API.G_MISS_NUM
557  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_FALSE
558  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
559  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
560  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
561  ,x_new_assignment_id           OUT   NOCOPY pa_project_assignments.assignment_id%TYPE --File.Sql.39 bug 4440895
562  ,x_assignment_number           OUT   NOCOPY pa_project_assignments.assignment_number%TYPE --File.Sql.39 bug 4440895
563  ,x_assignment_row_id           OUT   NOCOPY ROWID --File.Sql.39 bug 4440895
564 -- ,x_wf_type                     OUT   VARCHAR2
565 -- ,x_wf_item_type                OUT   VARCHAR2
566 -- ,x_wf_process                  OUT   VARCHAR2
567  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
568  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
569  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
570 );
571 
572 
573 -- ----------------------------------------------------------------------------
574 -- |----------------------------< Create_Assign_With_Def>----------------------|
575 -- ----------------------------------------------------------------------------
576 --
577 -- {Start Of Comments}
578 --
579 -- Description:
580 -- 	 Create a requirement or an assignment using the composite record passed in which contains role defaults and
581 --       additional scalar values.
582 -- Prerequisites:
583 --
584 -- In Parameters:
585 --   Name                         Reqd Type               Description
586 -- p_assignment_rec               Y    Assignment_Rec_Type A record type defined in this package, use to hold
587 --                                                           information concerning the requirment/assignment to be
588 --							     created.
589 -- p_role_name            	  X      VARCHAR2         Required if p_project_role_id is null.
590 -- p_asgn_creation_mode                  VARCHAR2         Indicates whether the assignment creation is FULL or
591 --                                                          PARTIAL. Defaults to 'FULL'
592 -- p_project_name                 X      VARCHAR2         Required if p_project_number and p_project_id are null.
593 -- p_project_number               X      VARCHAR2         Required if p_project_id and p_project_name are null.
594 -- p_resource_name                X      VARCHAR2         Required for an assignment and if p_resource_source_id is null
595 -- p_resource_source_id           X      NUMBER           Person ID used by HR, used to staff an assignment.
596 --                                                          Required for an assignment
597 -- p_api_version                         VARCHAR2         A NO Null field, defaults to '1.0'
598 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
599 --							  'F' => append to exisiting message stack
600 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
601 --							  'T' => This API does the database commit
602 -- p_validate_only                       VARCHAR2         'T' => perform validation only
603 --                                                        'F' => perform validation and DML
604 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
605 --                                                           be put on the message stack.
606 --Out Parameters:
607 --
608 --   The api will set the following out parameters:
609 --
610 --   Name                           Type     Description
611 --
612 -- x_new_assignment_id              NUMBER   System generated id of the requirement/assignment
613 -- x_assignment_number              NUMBER   System generated number of the requirement/assignment
614 -- x_assignment_row_id              ROWID    requirement/assignment row id
615 -- x_resource_id                    NUMBER   Identifier of the Project resource, it is null for a requirement
616 -- x_wf_type                        VARCHAR2 Type of the workflow that can be launched during an assignment
617 -- x_wf_item_type                   VARCHAR2 Item Type of the workflow during an assignment
618 -- x_wf_process                     VARCHAR2 Workflow process during an assignment
619 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
620 --                                                          'E' => Error occured.
621 --                                                          'U' => Unexpected error occured.
625 -- Access Status:
622 -- x_msg_count                      NUMBER   Number of error count.
623 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
624 --
626 --   Public.
627 --
628 -- {End Of Comments}
629 --
630 PROCEDURE Create_Assign_With_Def
631 ( p_assignment_rec              IN     PA_ASSIGNMENTS_PUB.Assignment_Rec_Type
632  ,p_role_name                   IN     pa_project_role_types.meaning%TYPE              := FND_API.G_MISS_CHAR
633  ,p_asgn_creation_mode          IN     VARCHAR2                                        := 'FULL'
634  ,p_project_name                IN     pa_projects_all.name%TYPE                       := FND_API.G_MISS_CHAR
635  ,p_project_number              IN     pa_projects_all.segment1%TYPE                   := FND_API.G_MISS_CHAR
636  ,p_resource_name               IN     pa_resources.name%TYPE                          := FND_API.G_MISS_CHAR
637  ,p_resource_source_id          IN     per_all_people_f.person_id%TYPE                 := FND_API.G_MISS_NUM
638  ,p_api_version                 IN     NUMBER                                          := 1.0
639  ,p_init_msg_list               IN     VARCHAR2                                        := FND_API.G_FALSE
640  ,p_commit                      IN     VARCHAR2                                        := FND_API.G_FALSE
641  ,p_validate_only               IN     VARCHAR2                                        := FND_API.G_TRUE
642  ,p_max_msg_count               IN     NUMBER                                          := FND_API.G_MISS_NUM
643  ,x_new_assignment_id           OUT    NOCOPY pa_project_assignments.assignment_id%TYPE --File.Sql.39 bug 4440895
644  ,x_assignment_number           OUT    NOCOPY pa_project_assignments.assignment_number%TYPE --File.Sql.39 bug 4440895
645  ,x_assignment_row_id           OUT    NOCOPY ROWID --File.Sql.39 bug 4440895
646 -- ,x_new_unfilled_assignment_id OUT    pa_project_assignments.assignment_id%TYPE
647 -- ,x_wf_type                     OUT    VARCHAR2
648 -- ,x_wf_item_type                OUT    VARCHAR2
649 -- ,x_wf_process                  OUT    VARCHAR2
650  ,x_return_status               OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
651  ,x_msg_count                   OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
652  ,x_msg_data                    OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
653  );
654 
655 -- ----------------------------------------------------------------------------
656 -- |---------------------<Execute_Staff_Assign_From_Open>----------------------|
657 -- ----------------------------------------------------------------------------
658 --
659 -- {Start Of Comments}
660 --
661 -- Description:
662 -- 	Create an assignment on top of a requirement by assigning resource to the requirement. Staff_Assign_From_Open
663 --        is called to create the new assignment using defaults from the exisiting requirement and additional scalar
664 --        values (such as resource being assigned, start date and end date).
665 --
666 -- Prerequisites:
667 --
668 -- In Parameters:
669 --   Name                         Reqd   Type             Description
670 -- p_asgn_creation_mode                  VARCHAR2         Indicates whether the assignment creation is FULL or
671 --                                                          PARTIAL.
672 -- p_record_version_number        Y      NUMBER		  A number used to keep track how many updates have been done
673 --                                                          on this record.  Used to avoid overwrite the latest version
674 --                                                          of the record.
675 -- p_multiple_status_flag         Y      VARCHAR2         Indicates whether the underlying schedule for the Assignment
676 --                                                          have more than one statuses. For requirement, use 'N'
677 -- p_assignment_status_code       X      VARCHAR2         Status code for the assignment,required if status_name is null
678 -- p_assignment_status_name       X      VARCHAR2         Status name for the assignment,required if status_code is null
679 -- p_unfilled_assign_status_code         VARCHAR2         In the case of an partial assignment, this is the status code
680 --                                                          for the newly created requirement of the remaining duration.
681 -- p_unfilled_assign_status_name         VARCHAR2         Can be used in place of p_unfilled_assign_status_code.
682 -- p_resource_id                         NUMBER           Identifier of the project resource.
683 -- p_project_party_id                    NUMBER           The identifier of the project party on an assignment.
684 -- p_start_date                   Y      DATE             Start date of the requirement/assignment
685 -- p_end_date                     Y      DATE             End date of the requirement/assignment.
686 -- p_source_assignment_id         Y      NUMBER           The identifier of the source requirement where the resource is
687 --                                                          being assigned to.
688 -- p_resource_name                X      VARCHAR2         Required for an assignment and if p_resource_source_id is null
689 -- p_resource_source_id           X      NUMBER           Person ID used by HR, used to staff an assignment.
690 --                                                          Required for an assignment
691 -- p_api_version                         VARCHAR2         A NO Null field, defaults to '1.0'
692 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
693 --							  'F' => append to exisiting message stack
694 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
695 --							  'T' => This API does the database commit
696 -- p_validate_only                       VARCHAR2         'T' => perform validation only
697 --                                                        'F' => perform validation and DML
698 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
702 --   The api will set the following out parameters:
699 --                                                           be put on the message stack.
700 --Out Parameters:
701 --
703 --
704 --   Name                           Type     Description
705 --
706 -- x_new_assignment_id              NUMBER   System generated id of the requirement/assignment
707 -- x_assignment_number              NUMBER   System generated number of the requirement/assignment
708 -- x_assignment_row_id              ROWID    requirement/assignment row id
709 -- x_resource_id                    NUMBER   Identifier of the Project resource, it is null for a requirement
710 -- x_wf_type                        VARCHAR2 Type of the workflow that can be launched during an assignment
711 -- x_wf_item_type                   VARCHAR2 Item Type of the workflow during an assignment
712 -- x_wf_process                     VARCHAR2 Workflow process during an assignment
713 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
714 --                                                          'E' => Error occured.
715 --                                                          'U' => Unexpected error occured.
716 -- x_msg_count                      NUMBER   Number of error count.
717 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
718 --
719 -- Access Status:
720 --   Public.
721 --
722 -- {End Of Comments}
723 --
724 PROCEDURE Execute_Staff_Assign_From_Open
725 ( p_asgn_creation_mode          IN    VARCHAR2                                                := 'FULL'
726  ,p_record_version_number       IN    NUMBER                                                  := FND_API.G_MISS_NUM
727  ,p_multiple_status_flag        IN    pa_project_assignments.multiple_status_flag%TYPE        := FND_API.G_MISS_CHAR
728  ,p_assignment_status_code      IN    pa_project_statuses.project_status_code%TYPE            := FND_API.G_MISS_CHAR
729  ,p_assignment_status_name      IN    pa_project_statuses.project_status_name%TYPE            := FND_API.G_MISS_CHAR
730  ,p_unfilled_assign_status_code  IN    pa_project_statuses.project_status_code%TYPE            := FND_API.G_MISS_CHAR
731  ,p_unfilled_assign_status_name  IN    pa_project_statuses.project_status_name%TYPE       := FND_API.G_MISS_CHAR
732  ,p_remaining_candidate_code    IN    pa_lookups.lookup_code%TYPE                             := FND_API.G_MISS_CHAR
733  ,p_change_reason_code          IN    pa_lookups.lookup_code%TYPE                             := FND_API.G_MISS_CHAR
734  ,p_resource_id                 IN    pa_resources.resource_id%TYPE                           := FND_API.G_MISS_NUM
735  ,p_project_party_id            IN    pa_project_assignments.project_party_id%TYPE            := FND_API.G_MISS_NUM
736  ,p_start_date                  IN    pa_project_assignments.start_date%TYPE                  := FND_API.G_MISS_DATE
737  ,p_end_date                    IN    pa_project_assignments.end_date%TYPE                    := FND_API.G_MISS_DATE
738  ,p_source_assignment_id        IN    pa_project_assignments.source_assignment_id%TYPE        := FND_API.G_MISS_NUM
739  ,p_resource_name               IN    pa_resources.name%TYPE                                  := FND_API.G_MISS_CHAR
740  ,p_resource_source_id          IN    NUMBER                                                  := FND_API.G_MISS_NUM
741  ,p_api_version                 IN    NUMBER                                                  := 1.0
742  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_FALSE
743  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
744  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
745  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
746  ,x_new_assignment_id           OUT   NOCOPY pa_project_assignments.assignment_id%TYPE --File.Sql.39 bug 4440895
747  ,x_assignment_number           OUT   NOCOPY pa_project_assignments.assignment_number%TYPE --File.Sql.39 bug 4440895
748  ,x_assignment_row_id           OUT   NOCOPY ROWID --File.Sql.39 bug 4440895
749  ,x_resource_id                 OUT   NOCOPY pa_resources.resource_id%TYPE --File.Sql.39 bug 4440895
750 -- ,x_wf_type                     OUT   VARCHAR2
751 -- ,x_wf_item_type                OUT   VARCHAR2
752 -- ,x_wf_process                  OUT   VARCHAR2
753  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
754  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
755  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
756 );
757 
758 
759 -- ----------------------------------------------------------------------------
760 -- |----------------------------<Staff_Assign_From_Open>----------------------|
761 -- ----------------------------------------------------------------------------
762 --
763 -- {Start Of Comments}
764 --
765 -- Description:
766 -- 	Create an assignment on top of an requirement by assigning a resource to the requirement. If it is an partial
767 --	  assignment, Create_Assignment is called to create a new requirement for the remaining duration if status code/
768 --	  name is given for the unfilled duration.
769 -- Prerequisites:
770 --
771 -- In Parameters:
772 --   Name                         Reqd   Type             Description
773 -- p_assignment_rec               Y    Assignment_Rec_Type A record type defined in this package, use to hold
774 --                                                           information concerning the requirment/assignment to be
775 --							     created.
776 -- p_asgn_creation_mode                  VARCHAR2         Indicates whether the assignment creation is FULL or
777 --                                                          PARTIAL.
778 -- p_unfilled_assign_status_code         VARCHAR2         In the case of an partial assignment, this is the status code
779 --                                                          for the newly created requirement of the remaining duration.
783 --                                                          Required for an assignment
780 -- p_unfilled_assign_status_name         VARCHAR2         Can be used in place of p_unfilled_assign_status_code.
781 -- p_resource_name                X      VARCHAR2         Required for an assignment and if p_resource_source_id is null
782 -- p_resource_source_id           X      NUMBER           Person ID used by HR, used to staff an assignment.
784 -- p_assignment_status_name       X      VARCHAR2         Status name for the assignment,required if status_code is null
785 -- p_api_version                         VARCHAR2         A NO Null field, defaults to '1.0'
786 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
787 --							  'F' => append to exisiting message stack
788 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
789 --							  'T' => This API does the database commit
790 -- p_validate_only                       VARCHAR2         'T' => perform validation only
791 --                                                        'F' => perform validation and DML
792 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
793 --                                                           be put on the message stack.
794 --Out Parameters:
795 --
796 --   The api will set the following out parameters:
797 --
798 --   Name                           Type     Description
799 --
800 -- x_new_assignment_id              NUMBER   System generated id of the requirement/assignment
801 -- x_assignment_number              NUMBER   System generated number of the requirement/assignment
802 -- x_assignment_row_id              ROWID    requirement/assignment row id
803 -- x_resource_id                    NUMBER   Identifier of the Project resource, it is null for a requirement
804 -- x_wf_type                        VARCHAR2 Type of the workflow that can be launched during an assignment
805 -- x_wf_item_type                   VARCHAR2 Item Type of the workflow during an assignment
806 -- x_wf_process                     VARCHAR2 Workflow process during an assignment
807 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
808 --                                                          'E' => Error occured.
809 --                                                          'U' => Unexpected error occured.
810 -- x_msg_count                      NUMBER   Number of error count.
811 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
812 --
813 -- Access Status:
814 --   Public.
815 --
816 -- {End Of Comments}
817 --
818 PROCEDURE Staff_Assign_From_Open
819 ( p_assignment_rec              IN     PA_ASSIGNMENTS_PUB.Assignment_Rec_Type
820  ,p_asgn_creation_mode          IN     VARCHAR2                                        := 'FULL'
821  ,p_unfilled_assign_status_code  IN pa_project_statuses.project_status_code%TYPE       := FND_API.G_MISS_CHAR
822  ,p_unfilled_assign_status_name  IN  pa_project_statuses.project_status_name%TYPE      := FND_API.G_MISS_CHAR
823  ,p_remaining_candidate_code    IN    pa_lookups.lookup_code%TYPE                      := FND_API.G_MISS_CHAR
824  ,p_change_reason_code          IN    pa_lookups.lookup_code%TYPE                      := FND_API.G_MISS_CHAR
825  ,p_resource_name               IN     pa_resources.name%TYPE                          := FND_API.G_MISS_CHAR
826  ,p_resource_source_id          IN     NUMBER                                          := FND_API.G_MISS_NUM
827  ,p_assignment_status_name         IN     pa_project_statuses.project_status_name%TYPE := FND_API.G_MISS_CHAR
828  ,p_api_version                 IN     NUMBER                                          := 1.0
829  ,p_init_msg_list               IN     VARCHAR2                                        := FND_API.G_FALSE
830  ,p_commit                      IN     VARCHAR2                                        := FND_API.G_FALSE
831  ,p_validate_only               IN     VARCHAR2                                        := FND_API.G_TRUE
832  ,p_max_msg_count               IN     NUMBER                                          := FND_API.G_MISS_NUM
833  ,x_new_assignment_id           OUT    NOCOPY pa_project_assignments.assignment_id%TYPE --File.Sql.39 bug 4440895
834  ,x_assignment_number           OUT    NOCOPY pa_project_assignments.assignment_number%TYPE --File.Sql.39 bug 4440895
835  ,x_assignment_row_id           OUT    NOCOPY ROWID --File.Sql.39 bug 4440895
836 --,x_new_unfilled_assignment_id OUT    pa_project_assignments.assignment_id%TYPE
837  ,x_resource_id                 OUT    NOCOPY pa_resources.resource_id%TYPE --File.Sql.39 bug 4440895
838 -- ,x_wf_type                     OUT    VARCHAR2
839 -- ,x_wf_item_type                OUT    VARCHAR2
840 -- ,x_wf_process                  OUT    VARCHAR2
841  ,x_return_status               OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
842  ,x_msg_count                   OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
843  ,x_msg_data                    OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
844  );
845 
846 -- ----------------------------------------------------------------------------
847 -- |--------------------------<Execute_Update_Assignment>----------------------|
848 -- ----------------------------------------------------------------------------
849 --
850 -- {Start Of Comments}
851 --
852 -- Description:
853 -- 	This API updates a requirement or an assignment from the scalar values passed to it. It loads the composite
854 --      record with scalar values and calls Update_Assignment.
855 -- Prerequisites:
856 --
857 -- In Parameters:
858 --   Name                           Reqd Type             Description
859 -- p_assignment_row_id                   ROWID            Record row_id
860 -- p_assignment_id                  X    NUMBER           System generated number that uniquely identifiers the
861 --  							    requirement/assignment. Required if p_assignment_name is
862 --                                                          null.
866 -- p_assignment_type                Y    VARCHAR2         Indicates the type of the object for which status is shown.
863 -- p_record_version_number          Y    NUMBER           System generated version of row.  Increments by one with each
864 --                                                          update.
865 -- p_assignment_name                X    VARCHAR2         Required if p_assignment_id is null.
867 --                                                          'OPEN_ASSIGNMENT'   => Requirement
868 --                                                          'STAFFED_ASSIGNMENT'=> Assignment/Project Assignment
869 --                                                          'STAFFED_ADMIN_ASSIGNMENT' => Administrative Assignment
870 -- p_multiple_status_flag           Y    VARCHAR2         Indicates whether the underlying schedule for the Assignment
871 --                                                          have more than one statuses. For requirement, use 'N'
872 -- p_project_id                     X    NUMBER           The identifier of the project to which this record belongs
873 --                                                          This is mandatory if p_project_number is null.
874 -- p_project_role_id                     NUMBER           Identifier of the project role for the record.
875 --                                                          This is mandatory if project_role_name is null.
876 -- p_resource_id                         NUMBER           Identifier of the project resource.
877 -- p_project_party_id                    NUMBER           The identifier of the project party on an assignment.
878 -- p_project_subteam_id                  NUMBER           The identifier for the project subteam to which this
879 --							     requirement/assignment belongs.
880 -- p_project_subteam_party_id            NUMBER           The identifier for the intermediate project subteam party
881 --                                                           that connects between the project subteam and the
882 --                                                           requirement/assignment.
883 -- p_description                         VARCHAR2         The free text description of the record.
884 -- p_assignment_effort                   NUMBER		  Total number of hours of the requirement/assignment
885 -- p_extension_possible                  VARCHAR2         Indicates whether it is possible to extend the
886 --       						    requirement/assignment.
887 -- p_source_assignment_id                NUMBER           Identifies the assignment from which this assignment record
888 --                                                          is originated.
889 -- p_min_resource_job_level              NUMBER           Indicates the minimum acceptable job level for a requirement.
890 -- p_max_resource_job_level	         NUMBER           Indidates the maximum acceptable job level for a requirement.
891 -- p_assignment_number                   NUMBER           A reference number that uniquely identifies a requirement.
892 -- p_additional_information              VARCHAR2         Free text for additional information on a record.
893 -- p_work_type_id                        NUMBER           Identifies the type of work being carried out. Gets defaulted
894 --                                                          from project setup for open assignment and from staffed
895 --                                                          assignments not created from an open assignment.Mandatory
896 --                                                          if work_type_name is null
897 -- p_location_id                         NUMBER           Identifier of the location of the assignment. For new
898 --                                                          assignments this column gets default value from the project
899 --                                                          setup.
900 -- p_revenue_currency_code               VARCHAR2         Currency code of the revenue
901 -- p_revenue_bill_rate                   NUMBER           Bill rate of the revenue
902 -- p_expense_owner                       VARCHAR2         Owner of the expense
903 -- p_expense_limit                       NUMBER           The maximum amount that expense owner is willing to pay.
904 -- p_expense_limit_currency_code         VARCHAR2         Currency code of the expense limit.
905 -- p_fcst_tp_amount_type		 VARCHAR2
906 -- p_fcst_job_id                         NUMBER
907 -- p_project_number               X      VARCHAR2         Required if p_project_id is null.
908 -- p_resource_name                       VARCHAR2         Required for an assignment and if p_resource_source_id is null
909 -- p_resource_source_id                  NUMBER           Person ID used by HR, used to staff an assignment.
910 --                                                          Required for an assignment
911 -- p_resource_id                         NUMBER           Identifier of the project resource.
912 -- p_project_subteam_name                VARCHAR2
913 -- p_project_role_name                   VARCHAR2         Required if p_project_role_id is null.
914 -- p_location_city                       VARCHAR2
915 -- p_location_region                     VARCHAR2
916 -- p_location_country_name               VARCHAR2
917 -- p_location_country_code               VARCHAR2
918 -- p_work_type_name                      VARCHAR2         Required if p_work_type_id is null.
919 -- p_attribute_category                  VARCHAR2	  Descriptive flexfield context field
920 -- p_attribute1                  	 VARCHAR2	  Descriptive flexfield segment
921 -- p_attribute2                  	 VARCHAR2
922 -- p_attribute3                 	 VARCHAR2
923 -- p_attribute4                		 VARCHAR2
924 -- p_attribute5                		 VARCHAR2
925 -- p_attribute6                   	 VARCHAR2
926 -- p_attribute7                 	 VARCHAR2
927 -- p_attribute8                  	 VARCHAR2
928 -- p_attribute9                 	 VARCHAR2
929 -- p_attribute10                 	 VARCHAR2
930 -- p_attribute11                 	 VARCHAR2
931 -- p_attribute12                  	 VARCHAR2
932 -- p_attribute13                	 VARCHAR2
933 -- p_attribute14                	 VARCHAR2
934 -- p_attribute15                 	 VARCHAR2
938 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
935 -- p_api_version                         VARCHAR2         A NO Null field, defaults to '1.0'
936 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
937 --							  'F' => append to exisiting message stack
939 --							  'T' => This API does the database commit
940 -- p_validate_only                       VARCHAR2         'T' => perform validation only
941 --                                                        'F' => perform validation and DML
942 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
943 --                                                           be put on the message stack.
944 -- Out Parameters:
945 --
946 --   The api will set the following out parameters:
947 --
948 --   Name                           Type     Description
949 --
950 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
951 --                                                          'E' => Error occured.
952 --                                                          'U' => Unexpected error occured.
953 -- x_msg_count                      NUMBER   Number of error count.
954 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
955 --
956 -- Access Status:
957 --   Public.
958 --
959 -- {End Of Comments}
960 --
961 PROCEDURE Execute_Update_Assignment
962 ( p_asgn_update_mode            IN    VARCHAR2                                                := FND_API.G_MISS_CHAR
963  ,p_assignment_row_id           IN    ROWID                                                   := NULL
964  ,p_assignment_id               IN    pa_project_assignments.assignment_id%TYPE               := FND_API.G_MISS_NUM
965  ,p_record_version_number       IN    NUMBER                                                  := FND_API.G_MISS_NUM
966  ,p_assignment_name             IN    pa_project_assignments.assignment_name%TYPE             := FND_API.G_MISS_CHAR
967  ,p_assignment_type             IN    pa_project_assignments.assignment_type%TYPE             := FND_API.G_MISS_CHAR
968  ,p_multiple_status_flag        IN    pa_project_assignments.multiple_status_flag%TYPE        := FND_API.G_MISS_CHAR
969  ,p_project_status_name         IN    pa_project_statuses.project_status_name%TYPE            := FND_API.G_MISS_CHAR
970  ,p_status_code                 IN    pa_project_assignments.status_code%TYPE                 := FND_API.G_MISS_CHAR
971  ,p_start_date                  IN    pa_project_assignments.start_date%TYPE                  := FND_API.G_MISS_DATE
972  ,p_end_date                    IN    pa_project_assignments.end_date%TYPE                    := FND_API.G_MISS_DATE
973  ,p_staffing_priority_code      IN    pa_project_assignments.staffing_priority_code%TYPE      := FND_API.G_MISS_CHAR
974  ,p_project_id                  IN    pa_project_assignments.project_id%TYPE                  := FND_API.G_MISS_NUM
975  ,p_assignment_template_id      IN    pa_project_assignments.assignment_template_id%TYPE      := FND_API.G_MISS_NUM
976  ,p_project_role_id             IN    pa_project_assignments.project_role_id%TYPE             := FND_API.G_MISS_NUM
977  ,p_project_party_id            IN    pa_project_assignments.project_party_id%TYPE            := FND_API.G_MISS_NUM
978  ,p_project_subteam_id          IN    pa_project_subteams.project_subteam_id%TYPE             := FND_API.G_MISS_NUM
979  ,p_project_subteam_party_id    IN    pa_project_subteam_parties.project_subteam_party_id%TYPE    := FND_API.G_MISS_NUM
980  ,p_description                 IN    pa_project_assignments.description%TYPE                 := FND_API.G_MISS_CHAR
981  ,p_assignment_effort           IN    pa_project_assignments.assignment_effort%TYPE           := FND_API.G_MISS_NUM
982  ,p_extension_possible          IN    pa_project_assignments.extension_possible%TYPE          := FND_API.G_MISS_CHAR
983  ,p_source_assignment_id        IN    pa_project_assignments.source_assignment_id%TYPE        := FND_API.G_MISS_NUM
984  ,p_min_resource_job_level      IN    pa_project_assignments.min_resource_job_level%TYPE      := FND_API.G_MISS_NUM
985  ,p_max_resource_job_level	IN    pa_project_assignments.max_resource_job_level%TYPE      := FND_API.G_MISS_NUM
986  ,p_assignment_number           IN    pa_project_assignments.assignment_number%TYPE           := FND_API.G_MISS_NUM
987  ,p_additional_information      IN    pa_project_assignments.additional_information%TYPE      := FND_API.G_MISS_CHAR
988  ,p_location_id                 IN    pa_project_assignments.location_id%TYPE                 := FND_API.G_MISS_NUM
989  ,p_work_type_id                IN    pa_project_assignments.work_type_id%TYPE                := FND_API.G_MISS_NUM
990  ,p_revenue_currency_code       IN    pa_project_assignments.revenue_currency_code%TYPE       := FND_API.G_MISS_CHAR
991  ,p_revenue_bill_rate           IN    pa_project_assignments.revenue_bill_rate%TYPE           := FND_API.G_MISS_NUM
992  ,p_markup_percent              IN    pa_project_assignments.markup_percent%TYPE              := FND_API.G_MISS_NUM
993  ,p_expense_owner               IN    pa_project_assignments.expense_owner%TYPE               := FND_API.G_MISS_CHAR
994  ,p_expense_limit               IN    pa_project_assignments.expense_limit%TYPE               := FND_API.G_MISS_NUM
995  ,p_expense_limit_currency_code IN    pa_project_assignments.expense_limit_currency_code%TYPE := FND_API.G_MISS_CHAR
996  ,p_fcst_tp_amount_type         IN    pa_project_assignments.fcst_tp_amount_type%TYPE         := FND_API.G_MISS_CHAR
997  ,p_fcst_job_id                 IN    pa_project_assignments.fcst_job_id%TYPE                 := FND_API.G_MISS_NUM
998  ,p_fcst_job_group_id           IN    pa_project_assignments.fcst_job_group_id%TYPE           := FND_API.G_MISS_NUM
999  ,p_expenditure_org_id          IN    pa_project_assignments.expenditure_org_id%TYPE          := FND_API.G_MISS_NUM
1000  ,p_expenditure_organization_id IN    pa_project_assignments.expenditure_organization_id%TYPE := FND_API.G_MISS_NUM
1001  ,p_expenditure_type_class      IN    pa_project_assignments.expenditure_type_class%TYPE      := FND_API.G_MISS_CHAR
1005  ,p_resource_source_id          IN    NUMBER                                                  := FND_API.G_MISS_NUM
1002  ,p_expenditure_type            IN    pa_project_assignments.expenditure_type%TYPE            := FND_API.G_MISS_CHAR
1003  ,p_project_number              IN    pa_projects_all.segment1%TYPE                           := FND_API.G_MISS_CHAR/*2386679*/
1004  ,p_resource_name               IN    pa_resources.name%TYPE                                  := FND_API.G_MISS_CHAR
1006  ,p_resource_id                 IN    pa_resources.resource_id%TYPE                           := FND_API.G_MISS_NUM
1007  ,p_project_subteam_name        IN    pa_project_subteams.name%TYPE                           := FND_API.G_MISS_CHAR
1008  ,p_staffing_priority_name      IN    pa_lookups.meaning%TYPE                                 := FND_API.G_MISS_CHAR
1009  ,p_project_role_name           IN    pa_project_role_types.meaning%TYPE                      := FND_API.G_MISS_CHAR
1010  ,p_location_city               IN    pa_locations.city%TYPE                                  := FND_API.G_MISS_CHAR
1011  ,p_location_region             IN    pa_locations.region%TYPE                                := FND_API.G_MISS_CHAR
1012  ,p_location_country_name       IN    fnd_territories_tl.territory_short_name%TYPE            := FND_API.G_MISS_CHAR
1013  ,p_location_country_code       IN    pa_locations.country_code%TYPE                          := FND_API.G_MISS_CHAR
1014  ,p_calendar_name               IN    jtf_calendars_tl.calendar_name%TYPE                     := FND_API.G_MISS_CHAR
1015  ,p_calendar_id                 IN    jtf_calendars_tl.calendar_id%TYPE                       := FND_API.G_MISS_NUM
1016  ,p_work_type_name              IN    pa_work_types_vl.name%TYPE                              := FND_API.G_MISS_CHAR
1017  ,p_fcst_job_name               IN    per_jobs.name%TYPE                                      := FND_API.G_MISS_CHAR
1018  ,p_fcst_job_group_name         IN    per_job_groups.displayed_name%TYPE                      := FND_API.G_MISS_CHAR
1019  ,p_expenditure_org_name        IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1020  ,p_exp_organization_name       IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1021  ,p_comp_match_weighting        IN    pa_project_assignments.competence_match_weighting%TYPE    := FND_API.G_MISS_NUM
1022  ,p_avail_match_weighting       IN    pa_project_assignments.availability_match_weighting%TYPE  := FND_API.G_MISS_NUM
1023  ,p_job_level_match_weighting   IN    pa_project_assignments.job_level_match_weighting%TYPE     := FND_API.G_MISS_NUM
1024  ,p_search_min_availability     IN    pa_project_assignments.search_min_availability%TYPE       := FND_API.G_MISS_NUM
1025  ,p_search_country_code         IN    pa_project_assignments.search_country_code%TYPE           := FND_API.G_MISS_CHAR
1026  ,p_search_country_name         IN    fnd_territories_vl.territory_short_name%TYPE              := FND_API.G_MISS_CHAR
1027  ,p_search_exp_org_struct_ver_id IN   pa_project_assignments.search_exp_org_struct_ver_id%TYPE  := FND_API.G_MISS_NUM
1028  ,p_search_exp_org_hier_name    IN  per_organization_structures.name%TYPE                       := FND_API.G_MISS_CHAR
1029  ,p_search_exp_start_org_id      IN   pa_project_assignments.search_exp_start_org_id%TYPE       := FND_API.G_MISS_NUM
1030  ,p_search_exp_start_org_name    IN   hr_organization_units.name%TYPE                           := FND_API.G_MISS_CHAR
1031  ,p_search_min_candidate_score   IN   pa_project_assignments.search_min_candidate_score%TYPE    := FND_API.G_MISS_NUM
1032  ,p_enable_auto_cand_nom_flag    IN  pa_project_assignments.enable_auto_cand_nom_flag%TYPE  := FND_API.G_MISS_CHAR
1033  ,p_bill_rate_override           IN  pa_project_assignments.bill_rate_override%TYPE            := FND_API.G_MISS_NUM
1034  ,p_bill_rate_curr_override      IN  pa_project_assignments.bill_rate_curr_override%TYPE       := FND_API.G_MISS_CHAR
1035  ,p_markup_percent_override      IN  pa_project_assignments.markup_percent_override%TYPE       := FND_API.G_MISS_NUM
1036  ,p_discount_percentage          IN  pa_project_assignments.discount_percentage%TYPE           := FND_API.G_MISS_NUM -- Bug 2531267
1037  ,p_rate_disc_reason_code        IN  pa_project_assignments.rate_disc_reason_code%TYPE         := FND_API.G_MISS_CHAR -- Bug 2531267
1038  ,p_tp_rate_override             IN  pa_project_assignments.tp_rate_override%TYPE              := FND_API.G_MISS_NUM
1039  ,p_tp_currency_override         IN  pa_project_assignments.tp_currency_override%TYPE          := FND_API.G_MISS_CHAR
1040  ,p_tp_calc_base_code_override   IN  pa_project_assignments.tp_calc_base_code_override%TYPE    := FND_API.G_MISS_CHAR
1041  ,p_tp_percent_applied_override  IN  pa_project_assignments.tp_percent_applied_override%TYPE   := FND_API.G_MISS_NUM
1042  ,p_staffing_owner_person_id     IN  pa_project_assignments.staffing_owner_person_id%TYPE      := FND_API.G_MISS_NUM
1043  ,p_staffing_owner_name          IN  per_people_f.full_name%TYPE                               := FND_API.G_MISS_CHAR
1044  ,p_resource_list_member_id     IN  pa_project_assignments.resource_list_member_id%TYPE       := FND_API.G_MISS_NUM
1045  ,p_attribute_category          IN    pa_project_assignments.attribute_category%TYPE          := FND_API.G_MISS_CHAR
1046  ,p_attribute1                  IN    pa_project_assignments.attribute1%TYPE                  := FND_API.G_MISS_CHAR
1047  ,p_attribute2                  IN    pa_project_assignments.attribute2%TYPE                  := FND_API.G_MISS_CHAR
1048  ,p_attribute3                  IN    pa_project_assignments.attribute3%TYPE                  := FND_API.G_MISS_CHAR
1049  ,p_attribute4                  IN    pa_project_assignments.attribute4%TYPE                  := FND_API.G_MISS_CHAR
1050  ,p_attribute5                  IN    pa_project_assignments.attribute5%TYPE                  := FND_API.G_MISS_CHAR
1051  ,p_attribute6                  IN    pa_project_assignments.attribute6%TYPE                  := FND_API.G_MISS_CHAR
1052  ,p_attribute7                  IN    pa_project_assignments.attribute7%TYPE                  := FND_API.G_MISS_CHAR
1053  ,p_attribute8                  IN    pa_project_assignments.attribute8%TYPE                  := FND_API.G_MISS_CHAR
1054  ,p_attribute9                  IN    pa_project_assignments.attribute9%TYPE                  := FND_API.G_MISS_CHAR
1055  ,p_attribute10                 IN    pa_project_assignments.attribute10%TYPE                 := FND_API.G_MISS_CHAR
1059  ,p_attribute14                 IN    pa_project_assignments.attribute14%TYPE                 := FND_API.G_MISS_CHAR
1056  ,p_attribute11                 IN    pa_project_assignments.attribute11%TYPE                 := FND_API.G_MISS_CHAR
1057  ,p_attribute12                 IN    pa_project_assignments.attribute12%TYPE                 := FND_API.G_MISS_CHAR
1058  ,p_attribute13                 IN    pa_project_assignments.attribute13%TYPE                 := FND_API.G_MISS_CHAR
1060  ,p_attribute15                 IN    pa_project_assignments.attribute15%TYPE                 := FND_API.G_MISS_CHAR
1061  ,p_api_version                 IN    NUMBER                                                  := 1.0
1062  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_FALSE
1063  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
1064  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
1065  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
1066  ,p_context                     IN    VARCHAR2                                                := FND_API.G_MISS_CHAR -- Added for GSI PJR Enhancement bug 7693634
1067  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1068  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
1069  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1070 );
1071 
1072 
1073 
1074 -- Bug 8233045
1075 -- procedure     : update_schedule
1076 -- Purpose       : Same Procedure as above but invoked in bulk mode
1077 --
1078 PROCEDURE Execute_Update_Assignment_bulk (
1079   p_asgn_update_mode_tbl            IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1080  ,p_assignment_id_tbl               IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1081  ,p_record_version_number_tbl       IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1082  ,p_assignment_name_tbl             IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1083  ,p_assignment_type_tbl             IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1084  ,p_multiple_status_flag_tbl        IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1085  ,p_status_code_tbl                 IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1086  ,p_start_date_tbl                  IN    SYSTEM.PA_DATE_TBL_TYPE             := NULL
1087  ,p_end_date_tbl                    IN    SYSTEM.PA_DATE_TBL_TYPE             := NULL
1088  ,p_staffing_priority_code_tbl      IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1089  ,p_project_id_tbl                  IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1090  ,p_assignment_template_id_tbl      IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1091  ,p_project_subteam_id_tbl          IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1092  ,p_project_subteam_party_id_tbl    IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1093  ,p_description_tbl                 IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1094  ,p_extension_possible_tbl          IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1095  ,p_min_resource_job_level_tbl      IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1096  ,p_max_resource_job_level_tbl      IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1097  ,p_additional_information_tbl      IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1098  ,p_work_type_id_tbl                IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1099  ,p_project_role_id_tbl             IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL --Bug#9108007
1100  ,p_expense_owner_tbl               IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1101  ,p_expense_limit_tbl               IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1102  ,p_fcst_tp_amount_type_tbl         IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1103  ,p_fcst_job_id_tbl                 IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1104  ,p_fcst_job_group_id_tbl           IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1105  ,p_expenditure_org_id_tbl          IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1106  ,p_exp_organization_id_tbl         IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1107  ,p_expenditure_type_class_tbl      IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1108  ,p_expenditure_type_tbl            IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1109  ,p_project_subteam_name_tbl        IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1110  ,p_location_city_tbl               IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1111  ,p_location_region_tbl             IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1112  ,p_location_country_name_tbl       IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1113  ,p_calendar_name_tbl               IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1114  ,p_calendar_id_tbl                 IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1115  ,p_fcst_job_name_tbl               IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1116  ,p_fcst_job_group_name_tbl         IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1117  ,p_expenditure_org_name_tbl        IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1118  ,p_exp_organization_name_tbl       IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1119  ,p_comp_match_weighting_tbl        IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1120  ,p_avail_match_weighting_tbl       IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1121  ,p_job_level_match_weight_tbl      IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1122  ,p_search_min_availability_tbl     IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1123  ,p_search_country_code_tbl         IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1124  ,p_search_country_name_tbl         IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1125  ,p_search_exp_org_st_ver_id_tbl    IN   SYSTEM.PA_NUM_TBL_TYPE               := NULL
1126  ,p_search_exp_org_hier_name_tbl    IN   SYSTEM.PA_VARCHAR2_2000_TBL_TYPE     := NULL
1127  ,p_search_exp_start_org_id_tbl     IN   SYSTEM.PA_NUM_TBL_TYPE               := NULL
1128  ,p_search_exp_start_org_tbl        IN   SYSTEM.PA_VARCHAR2_2000_TBL_TYPE     := NULL
1132  ,p_bill_rate_curr_override_tbl      IN  SYSTEM.PA_VARCHAR2_2000_TBL_TYPE     := NULL
1129  ,p_search_min_candidate_sc_tbl     IN   SYSTEM.PA_NUM_TBL_TYPE               := NULL
1130  ,p_enable_auto_cand_nom_flg_tbl    IN  SYSTEM.PA_VARCHAR2_2000_TBL_TYPE      := NULL
1131  ,p_bill_rate_override_tbl           IN  SYSTEM.PA_NUM_TBL_TYPE               := NULL
1133  ,p_markup_percent_override_tbl      IN  SYSTEM.PA_NUM_TBL_TYPE               := NULL
1134  ,p_discount_percentage_tbl          IN  SYSTEM.PA_NUM_TBL_TYPE               := NULL
1135  ,p_rate_disc_reason_code_tbl        IN  SYSTEM.PA_VARCHAR2_2000_TBL_TYPE     := NULL
1136  ,p_tp_rate_override_tbl             IN  SYSTEM.PA_NUM_TBL_TYPE               := NULL
1137  ,p_tp_currency_override_tbl         IN  SYSTEM.PA_VARCHAR2_2000_TBL_TYPE     := NULL
1138  ,p_staffing_owner_person_id_tbl     IN  SYSTEM.PA_NUM_TBL_TYPE               := NULL
1139  ,p_staffing_owner_name_tbl          IN  SYSTEM.PA_VARCHAR2_2000_TBL_TYPE     := NULL
1140  ,p_resource_list_member_id_tbl      IN  SYSTEM.PA_NUM_TBL_TYPE               := NULL --Bug#9108007
1141  ,p_attribute_category_tbl          IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1142  ,p_attribute1_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1143  ,p_attribute2_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1144  ,p_attribute3_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1145  ,p_attribute4_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1146  ,p_attribute5_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1147  ,p_attribute6_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1148  ,p_attribute7_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1149  ,p_attribute8_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1150  ,p_attribute9_tbl                  IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1151  ,p_attribute10_tbl                 IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1152  ,p_attribute11_tbl                 IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1153  ,p_attribute12_tbl                 IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1154  ,p_attribute13_tbl                 IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1155  ,p_attribute14_tbl                 IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1156  ,p_attribute15_tbl                 IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1157  ,p_api_version_tbl                 IN    SYSTEM.PA_NUM_TBL_TYPE              := NULL
1158  ,p_init_msg_list_tbl               IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1159  ,p_commit_tbl                      IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1160  ,p_validate_only_tbl               IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1161  ,p_context_tbl                     IN    SYSTEM.PA_VARCHAR2_2000_TBL_TYPE    := NULL
1162  ,x_return_status_tbl               OUT   NOCOPY SYSTEM.PA_VARCHAR2_2000_TBL_TYPE
1163  ,x_msg_count_tbl                   OUT   NOCOPY SYSTEM.PA_NUM_TBL_TYPE
1164  ,x_msg_data_tbl                    OUT   NOCOPY SYSTEM.PA_VARCHAR2_2000_TBL_TYPE
1165  ,p_bulk_context                    IN    varchar2 := 'N'
1166 );
1167 
1168 
1169 -- ----------------------------------------------------------------------------
1170 -- |-------------------------------<Update_Assignment>-------------------------|
1171 -- ----------------------------------------------------------------------------
1172 --
1173 -- {Start Of Comments}
1174 --
1175 -- Description:
1176 -- 	Updates a requirement/assignment with the scalar values and a given composite record containing information for
1177 --         the update.
1178 --
1179 --
1180 -- Prerequisites:
1181 --
1182 -- In Parameters:
1183 --   Name                         Reqd   Type             Description
1184 -- p_assignment_rec               Y    Assignment_Rec_Type A record type defined in this package, use to hold
1185 --                                                           information concerning the requirment/assignment to be
1186 --							     created.
1187 
1188 -- p_project_number               X      VARCHAR2         Required if project_id is null.
1189 -- p_resource_name                       VARCHAR2         Required for an assignment and if p_resource_source_id is null
1190 -- p_resource_source_id                  NUMBER           Person ID used by HR, used to staff an assignment.
1191 --                                                          Required for an assignment
1192 -- p_resource_id                         NUMBER           Identifier of the project resource.
1193 -- p_project_subteam_id                  NUMBER           The identifier for the project subteam to which this
1194 --							     requirement/assignment belongs.
1195 -- p_project_subteam_party_id            NUMBER           The identifier for the intermediate project subteam party
1196 --                                                           that connects between the project subteam and the
1197 --                                                           requirement/assignment.
1198 -- p_project_subteam_name                VARCHAR2
1199 -- p_project_role_name                   VARCHAR2
1200 -- p_location_city                       VARCHAR2
1201 -- p_location_region                     VARCHAR2
1202 -- p_location_country_name               VARCHAR2
1203 -- p_location_country_code               VARCHAR2
1204 -- p_work_type_name                      VARCHAR2
1205 -- p_api_version                         VARCHAR2         A NO Null field, defaults to '1.0'
1206 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
1207 --							  'F' => append to exisiting message stack
1208 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
1209 --							  'T' => This API does the database commit
1210 -- p_validate_only                       VARCHAR2         'T' => perform validation only
1211 --                                                        'F' => perform validation and DML
1215 --
1212 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
1213 --                                                           be put on the message stack.
1214 -- Out Parameters:
1216 --   The api will set the following out parameters:
1217 --
1218 --   Name                           Type     Description
1219 --
1220 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
1221 --                                                          'E' => Error occured.
1222 --                                                          'U' => Unexpected error occured.
1223 -- x_msg_count                      NUMBER   Number of error count.
1224 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
1225 --
1226 -- Access Status:
1227 --   Public.
1228 --
1229 -- {End Of Comments}
1230 --
1231 PROCEDURE Update_Assignment
1232 ( p_assignment_rec              IN     PA_ASSIGNMENTS_PUB.Assignment_Rec_Type
1233  ,p_asgn_update_mode            IN     VARCHAR2                                        := FND_API.G_MISS_CHAR
1234  ,p_project_number              IN     pa_projects_all.segment1%TYPE                   := FND_API.G_MISS_CHAR/*bug2386679*/
1235  ,p_resource_name               IN     pa_resources.name%TYPE                          := FND_API.G_MISS_CHAR
1236  ,p_resource_source_id          IN     NUMBER                                          := FND_API.G_MISS_NUM
1237  ,p_resource_id                 IN     pa_resources.resource_id%TYPE                   := FND_API.G_MISS_NUM
1238  ,p_calendar_name               IN     jtf_calendars_tl.calendar_name%TYPE             := FND_API.G_MISS_CHAR
1239  ,p_project_status_name         IN     pa_project_statuses.project_status_name%TYPE    := FND_API.G_MISS_CHAR
1240  ,p_project_subteam_id          IN     pa_project_subteams.project_subteam_id%TYPE     := FND_API.G_MISS_NUM
1241  ,p_project_subteam_party_id    IN     pa_project_subteam_parties.project_subteam_party_id%TYPE  := FND_API.G_MISS_NUM
1242  ,p_project_subteam_name        IN     pa_project_subteams.name%TYPE                   := FND_API.G_MISS_CHAR
1243  ,p_staffing_priority_name      IN     pa_lookups.meaning%TYPE                         := FND_API.G_MISS_CHAR
1244  ,p_project_role_name           IN     pa_project_role_types.meaning%TYPE              := FND_API.G_MISS_CHAR
1245  ,p_location_city               IN     pa_locations.city%TYPE                          := FND_API.G_MISS_CHAR
1246  ,p_location_region             IN     pa_locations.region%TYPE                        := FND_API.G_MISS_CHAR
1247  ,p_location_country_name       IN     fnd_territories_tl.territory_short_name%TYPE    := FND_API.G_MISS_CHAR
1248  ,p_location_country_code       IN     pa_locations.country_code%TYPE                  := FND_API.G_MISS_CHAR
1249  ,p_work_type_name              IN     pa_work_types_vl.name%TYPE                      := FND_API.G_MISS_CHAR
1250  ,p_fcst_job_name               IN     per_jobs.name%TYPE                              := FND_API.G_MISS_CHAR
1251  ,p_fcst_job_group_name         IN     per_job_groups.displayed_name%TYPE              := FND_API.G_MISS_CHAR
1252  ,p_expenditure_org_name        IN     per_organization_units.name%TYPE                := FND_API.G_MISS_CHAR
1253  ,p_exp_organization_name       IN     per_organization_units.name%TYPE                := FND_API.G_MISS_CHAR
1254  ,p_search_country_name         IN     fnd_territories_vl.territory_short_name%TYPE    := FND_API.G_MISS_CHAR
1255  ,p_search_exp_org_hier_name    IN   per_organization_structures.name%TYPE           := FND_API.G_MISS_CHAR
1256  ,p_search_exp_start_org_name   IN     hr_organization_units.name%TYPE                 := FND_API.G_MISS_CHAR
1257  ,p_staffing_owner_name         IN     per_people_f.full_name%TYPE                     := FND_API.G_MISS_CHAR
1258  ,p_api_version                 IN     NUMBER                                          := 1
1259  ,p_init_msg_list               IN     VARCHAR2                                        := FND_API.G_FALSE
1260  ,p_commit                      IN     VARCHAR2                                        := FND_API.G_FALSE
1261  ,p_validate_only               IN     VARCHAR2                                        := FND_API.G_TRUE
1262  ,p_max_msg_count               IN     NUMBER                                          := FND_API.G_MISS_NUM
1263  ,p_context                     IN     VARCHAR2                                        := FND_API.G_MISS_CHAR -- Added for GSI PJR Enhancement bug 7693634
1264  ,x_return_status               OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1265  ,x_msg_count                   OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
1266  ,x_msg_data                    OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1267 );
1268 
1269 -- ----------------------------------------------------------------------------
1270 -- |--------------------------<Delete_Assignment>----------------------|
1271 -- ----------------------------------------------------------------------------
1272 --
1273 -- {Start Of Comments}
1274 --
1275 -- Description:
1276 -- 	This API updates a requirement or an assignment from the scalar values passed to it. It loads the composite
1277 --      record with scalar values and calls Update_Assignment.
1278 -- Prerequisites:
1279 --
1280 -- In Parameters:
1281 --   Name                           Reqd Type             Description
1282 -- p_assignment_row_id                   ROWID            Record row_id
1283 -- p_assignment_id                  X    NUMBER           System generated number that uniquely identifiers the
1284 --  							    requirement/assignment. Required if p_assignment_name is
1285 --                                                          null.
1286 -- p_record_version_number          Y    NUMBER           System generated version of row.  Increments by one with each
1287 --                                                          update.
1288 -- p_assignment_type                Y    VARCHAR2         Indicates the type of the object for which status is shown.
1289 --                                                          'OPEN_ASSIGNMENT'   => Requirement
1293 -- p_calling_module                      VARCHAR2         Indicates which module is calling this delete requirement or
1290 --                                                          'STAFFED_ASSIGNMENT'=> Assignment/Project Assignment
1291 --                                                          'STAFFED_ADMIN_ASSIGNMENT' => Administrative Assignment
1292 -- p_assignment_number                   NUMBER           A reference number that uniquely identifies a requirement.
1294 --                                                          assignment procedure.
1295 -- p_api_version                         VARCHAR2         A NO Null field, defaults to '1.0'
1296 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
1297 --							  'F' => append to exisiting message stack
1298 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
1299 --							  'T' => This API does the database commit
1300 -- p_validate_only                       VARCHAR2         'T' => perform validation only
1301 --                                                        'F' => perform validation and DML
1302 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
1303 --                                                           be put on the message stack.
1304 -- Out Parameters:
1305 --
1306 --   The api will set the following out parameters:
1307 --
1308 --   Name                           Type     Description
1309 --
1310 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
1311 --                                                          'E' => Error occured.
1312 --                                                          'U' => Unexpected error occured.
1313 -- x_msg_count                      NUMBER   Number of error count.
1314 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
1315 --
1316 -- Access Status:
1317 --   Public.
1318 --
1319 -- {End Of Comments}
1320 --
1321 PROCEDURE Delete_Assignment
1322 ( p_assignment_row_id           IN     ROWID                                           := NULL
1323  ,p_assignment_id               IN     pa_project_assignments.assignment_id%TYPE       := FND_API.G_MISS_NUM
1324  ,p_record_version_number       IN     NUMBER                                          := FND_API.G_MISS_NUM
1325  ,p_assignment_type             IN     pa_project_assignments.assignment_type%TYPE     := FND_API.G_MISS_CHAR
1326  ,p_assignment_number           IN     pa_project_assignments.assignment_number%TYPE   := FND_API.G_MISS_NUM
1327  ,p_calling_module              IN     VARCHAR2                                        := FND_API.G_MISS_CHAR
1328  ,p_api_version                 IN     NUMBER                                          := 1.0
1329  ,p_init_msg_list               IN     VARCHAR2                                        := FND_API.G_FALSE
1330  ,p_commit                      IN     VARCHAR2                                        := FND_API.G_FALSE
1331  ,p_validate_only               IN     VARCHAR2                                        := FND_API.G_TRUE
1332  ,p_max_msg_count               IN     NUMBER                                          := FND_API.G_MISS_NUM
1333  ,x_return_status               OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1334  ,x_msg_count                   OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
1335  ,x_msg_data                    OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1336 );
1337 
1338 -- ----------------------------------------------------------------------------
1339 -- |--------------------------<Copy_Team_Role>----------------------|
1340 -- ----------------------------------------------------------------------------
1341 --
1342 -- {Start Of Comments}
1343 --
1344 -- Description:
1345 -- 	This API creates a new requirement from an existing requirement or assignment.
1346 -- Prerequisites:
1347 --
1348 -- In Parameters:
1349 --   Name                           Reqd Type             Description
1350 -- p_assignment_id                  X    NUMBER           System generated number that uniquely identifiers the
1351 --  							    requirement/assignment.
1352 --                                                          assignment procedure.
1353 -- p_api_version                         VARCHAR2         A NOT Null field, defaults to '1.0'
1354 -- p_init_msg_list                       VARCHAR2         'T' => Initialize message stack
1355 --							  'F' => append to exisiting message stack
1356 -- p_commit                              VARCHAR2         'F' => calling program does the database commit.
1357 --							  'T' => This API does the database commit
1358 -- p_validate_only                       VARCHAR2         'T' => perform validation only
1359 --                                                        'F' => perform validation and DML
1360 -- p_max_msg_count                       NUMBER            Optional. Indicates the maximum number of messages that can
1361 --                                                           be put on the message stack.
1362 -- Out Parameters:
1363 --
1364 --   The api will set the following out parameters:
1365 --
1366 --   Name                           Type     Description
1367 --
1368 -- x_new_assignment_id              NUMBER   System generated id of the requirement/assignment
1369 -- x_assignment_number              NUMBER   System generated number of the requirement/assignment
1370 -- x_assignment_row_id              ROWID    requirement/assignment row id
1371 -- x_return_status                  VARCHAR2 Return Status: 'S' => Successful
1372 --                                                          'E' => Error occured.
1373 --                                                          'U' => Unexpected error occured.
1374 -- x_msg_count                      NUMBER   Number of error count.
1375 -- x_msg_data                       VARCHAR2 If only one error occurs, this parameter will contain the error message.
1376 --
1377 -- Access Status:
1378 --   Public.
1379 --
1380 -- {End Of Comments}
1381 --
1382 
1386  ,p_api_version                 IN     NUMBER                                          := 1.0 /*bug2386679*/
1383 PROCEDURE Copy_Team_Role
1384  (p_assignment_id               IN     pa_project_assignments.assignment_id%TYPE
1385  ,p_asgn_creation_mode          IN     VARCHAR2                                        := 'COPY'
1387  ,p_init_msg_list               IN     VARCHAR2                                        := FND_API.G_FALSE
1388  ,p_commit                      IN     VARCHAR2                                        := FND_API.G_FALSE
1389  ,p_validate_only               IN     VARCHAR2                                        := FND_API.G_FALSE
1390  ,p_max_msg_count               IN     NUMBER                                          := FND_API.G_MISS_NUM
1391  ,x_new_assignment_id           OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
1392  ,x_assignment_number           OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
1393  ,x_assignment_row_id           OUT    NOCOPY ROWID --File.Sql.39 bug 4440895
1394  ,x_return_status               OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1395  ,x_msg_count                   OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
1396  ,x_msg_data                    OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1397  );
1398 
1399 PROCEDURE Mass_Exec_Create_Assignments
1400 ( p_asgn_creation_mode          IN    VARCHAR2
1401  ,p_unfilled_assignment_status  IN    pa_project_assignments.status_code%TYPE                 := FND_API.G_MISS_CHAR
1402  ,p_assignment_name             IN    pa_project_assignments.assignment_name%TYPE             := FND_API.G_MISS_CHAR
1403  ,p_assignment_type             IN    pa_project_assignments.assignment_type%TYPE             := FND_API.G_MISS_CHAR
1404  ,p_multiple_status_flag        IN    pa_project_assignments.multiple_status_flag%TYPE        := FND_API.G_MISS_CHAR
1405  ,p_status_code                 IN    pa_project_assignments.status_code%TYPE                 := FND_API.G_MISS_CHAR
1406  ,p_staffing_priority_code      IN    pa_project_assignments.staffing_priority_code%TYPE      := FND_API.G_MISS_CHAR
1407  ,p_project_id                  IN    pa_project_assignments.project_id%TYPE                  := FND_API.G_MISS_NUM
1408  ,p_assignment_template_id      IN    pa_project_assignments.assignment_template_id%TYPE      := FND_API.G_MISS_NUM
1409  ,p_project_role_id             IN    pa_project_assignments.project_role_id%TYPE             := FND_API.G_MISS_NUM
1410  ,p_role_list_id                IN    pa_role_lists.role_list_id%TYPE                         := FND_API.G_MISS_NUM
1411  ,p_resource_id_tbl             IN    system.pa_num_tbl_type                                  := NULL
1412  ,p_resource_name_tbl           IN    system.pa_varchar2_240_tbl_type                         := NULL
1413  ,p_resource_source_id_tbl      IN    system.pa_num_tbl_type                                  := NULL
1414  ,p_project_subteam_id          IN    pa_project_subteams.project_subteam_id%TYPE             := FND_API.G_MISS_NUM
1415  ,p_description                 IN    pa_project_assignments.description%TYPE                 := FND_API.G_MISS_CHAR
1416  ,p_start_date                  IN    pa_project_assignments.start_date%TYPE                  := FND_API.G_MISS_DATE
1417  ,p_end_date                    IN    pa_project_assignments.end_date%TYPE                    := FND_API.G_MISS_DATE
1418  ,p_assignment_effort           IN    pa_project_assignments.assignment_effort%TYPE           := FND_API.G_MISS_NUM
1419  ,p_extension_possible          IN    pa_project_assignments.extension_possible%TYPE          := FND_API.G_MISS_CHAR
1420  ,p_source_assignment_id        IN    pa_project_assignments.source_assignment_id%TYPE        := FND_API.G_MISS_NUM
1421  ,p_min_resource_job_level      IN    pa_project_assignments.min_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1422  ,p_max_resource_job_level	IN    pa_project_assignments.max_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1423  ,p_additional_information      IN    pa_project_assignments.additional_information%TYPE      := FND_API.G_MISS_CHAR
1424  ,p_location_id                 IN    pa_project_assignments.location_id%TYPE                 := FND_API.G_MISS_NUM
1425  ,p_work_type_id                IN    pa_project_assignments.work_type_id%TYPE                := FND_API.G_MISS_NUM
1426  ,p_revenue_currency_code       IN    pa_project_assignments.revenue_currency_code%TYPE       := FND_API.G_MISS_CHAR
1427  ,p_revenue_bill_rate           IN    pa_project_assignments.revenue_bill_rate%TYPE           := FND_API.G_MISS_NUM
1428  ,p_markup_percent              IN    pa_project_assignments.markup_percent%TYPE              := FND_API.G_MISS_NUM
1429  ,p_expense_owner               IN    pa_project_assignments.expense_owner%TYPE               := FND_API.G_MISS_CHAR
1430  ,p_expense_limit               IN    pa_project_assignments.expense_limit%TYPE               := FND_API.G_MISS_NUM
1431  ,p_expense_limit_currency_code IN    pa_project_assignments.expense_limit_currency_code%TYPE := FND_API.G_MISS_CHAR
1432  ,p_fcst_tp_amount_type         IN    pa_project_assignments.fcst_tp_amount_type%TYPE         := FND_API.G_MISS_CHAR
1433  ,p_fcst_job_id                 IN    pa_project_assignments.fcst_job_id%TYPE                 := FND_API.G_MISS_NUM
1434  ,p_fcst_job_group_id           IN    pa_project_assignments.fcst_job_group_id%TYPE           := FND_API.G_MISS_NUM
1435  ,p_expenditure_org_id          IN    pa_project_assignments.expenditure_org_id%TYPE          := FND_API.G_MISS_NUM
1436  ,p_expenditure_organization_id IN    pa_project_assignments.expenditure_organization_id%TYPE := FND_API.G_MISS_NUM
1437  ,p_expenditure_type_class      IN    pa_project_assignments.expenditure_type_class%TYPE      := FND_API.G_MISS_CHAR
1438  ,p_expenditure_type            IN    pa_project_assignments.expenditure_type%TYPE            := FND_API.G_MISS_CHAR
1439  ,p_calendar_type               IN    pa_project_assignments.calendar_type%TYPE               := FND_API.G_MISS_CHAR
1440  ,p_calendar_id	                IN    pa_project_assignments.calendar_id%TYPE	              := FND_API.G_MISS_NUM
1441  ,p_resource_calendar_percent   IN    pa_project_assignments.resource_calendar_percent%TYPE   := FND_API.G_MISS_NUM
1442  ,p_project_name                IN    pa_projects_all.name%TYPE                               := FND_API.G_MISS_CHAR
1443  ,p_project_number              IN    pa_projects_all.segment1%TYPE                           := FND_API.G_MISS_CHAR
1447  ,p_project_role_name           IN    pa_project_role_types.meaning%TYPE                      := FND_API.G_MISS_CHAR
1444  ,p_project_subteam_name        IN    pa_project_subteams.name%TYPE                          := FND_API.G_MISS_CHAR
1445  ,p_project_status_name         IN    pa_project_statuses.project_status_name%TYPE            := FND_API.G_MISS_CHAR
1446  ,p_staffing_priority_name      IN    pa_lookups.meaning%TYPE                                 := FND_API.G_MISS_CHAR
1448  ,p_location_city               IN    pa_locations.city%TYPE                                  := FND_API.G_MISS_CHAR
1449  ,p_location_region             IN    pa_locations.region%TYPE                                := FND_API.G_MISS_CHAR
1450  ,p_location_country_name       IN    fnd_territories_tl.territory_short_name%TYPE            := FND_API.G_MISS_CHAR
1451  ,p_location_country_code       IN    pa_locations.country_code%TYPE                          := FND_API.G_MISS_CHAR
1452  ,p_calendar_name               IN    jtf_calendars_tl.calendar_name%TYPE                     := FND_API.G_MISS_CHAR
1453  ,p_work_type_name              IN    pa_work_types_vl.name%TYPE                                 := FND_API.G_MISS_CHAR
1454  ,p_fcst_job_name               IN    per_jobs.name%TYPE                                      := FND_API.G_MISS_CHAR
1455  ,p_fcst_job_group_name         IN    per_job_groups.displayed_name%TYPE                      := FND_API.G_MISS_CHAR
1456  ,p_expenditure_org_name        IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1457  ,p_exp_organization_name       IN    per_organization_units.name%TYPE                      := FND_API.G_MISS_CHAR
1458  ,p_attribute_category          IN    pa_project_assignments.attribute_category%TYPE          := FND_API.G_MISS_CHAR
1459  ,p_attribute1                  IN    pa_project_assignments.attribute1%TYPE                  := FND_API.G_MISS_CHAR
1460  ,p_attribute2                  IN    pa_project_assignments.attribute2%TYPE                  := FND_API.G_MISS_CHAR
1461  ,p_attribute3                  IN    pa_project_assignments.attribute3%TYPE                  := FND_API.G_MISS_CHAR
1462  ,p_attribute4                  IN    pa_project_assignments.attribute4%TYPE                  := FND_API.G_MISS_CHAR
1463  ,p_attribute5                  IN    pa_project_assignments.attribute5%TYPE                  := FND_API.G_MISS_CHAR
1464  ,p_attribute6                  IN    pa_project_assignments.attribute6%TYPE                  := FND_API.G_MISS_CHAR
1465  ,p_attribute7                  IN    pa_project_assignments.attribute7%TYPE                  := FND_API.G_MISS_CHAR
1466  ,p_attribute8                  IN    pa_project_assignments.attribute8%TYPE                  := FND_API.G_MISS_CHAR
1467  ,p_attribute9                  IN    pa_project_assignments.attribute9%TYPE                  := FND_API.G_MISS_CHAR
1468  ,p_attribute10                 IN    pa_project_assignments.attribute10%TYPE                 := FND_API.G_MISS_CHAR
1469  ,p_attribute11                 IN    pa_project_assignments.attribute11%TYPE                 := FND_API.G_MISS_CHAR
1470  ,p_attribute12                 IN    pa_project_assignments.attribute12%TYPE                 := FND_API.G_MISS_CHAR
1471  ,p_attribute13                 IN    pa_project_assignments.attribute13%TYPE                 := FND_API.G_MISS_CHAR
1472  ,p_attribute14                 IN    pa_project_assignments.attribute14%TYPE                 := FND_API.G_MISS_CHAR
1473  ,p_attribute15                 IN    pa_project_assignments.attribute15%TYPE                 := FND_API.G_MISS_CHAR
1474  ,p_number_of_requirements      IN    NUMBER                                                  := 1
1475  ,p_api_version                 IN    NUMBER                                                  := 1.0
1476  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_FALSE
1477  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
1478  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
1479  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
1480  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1481  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
1482  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1483 );
1484 
1485 
1486 PROCEDURE Mass_Create_Assignments
1487 ( p_asgn_creation_mode          IN    VARCHAR2
1488  ,p_unfilled_assignment_status  IN    pa_project_assignments.status_code%TYPE                 := FND_API.G_MISS_CHAR
1489  ,p_assignment_name             IN    pa_project_assignments.assignment_name%TYPE             := FND_API.G_MISS_CHAR
1490  ,p_assignment_type             IN    pa_project_assignments.assignment_type%TYPE             := FND_API.G_MISS_CHAR
1491  ,p_multiple_status_flag        IN    pa_project_assignments.multiple_status_flag%TYPE        := FND_API.G_MISS_CHAR
1492  ,p_status_code                 IN    pa_project_assignments.status_code%TYPE                 := FND_API.G_MISS_CHAR
1493  ,p_staffing_priority_code      IN    pa_project_assignments.staffing_priority_code%TYPE      := FND_API.G_MISS_CHAR
1494  ,p_project_id                  IN    pa_project_assignments.project_id%TYPE                  := FND_API.G_MISS_NUM
1495  ,p_assignment_template_id      IN    pa_project_assignments.assignment_template_id%TYPE      := FND_API.G_MISS_NUM
1496  ,p_project_role_id             IN    pa_project_assignments.project_role_id%TYPE             := FND_API.G_MISS_NUM
1497  ,p_role_list_id                IN    pa_role_lists.role_list_id%TYPE                         := FND_API.G_MISS_NUM
1498  ,p_resource_id_tbl             IN    system.pa_num_tbl_type
1499  ,p_project_subteam_id          IN    pa_project_subteams.project_subteam_id%TYPE             := FND_API.G_MISS_NUM
1500  ,p_description                 IN    pa_project_assignments.description%TYPE                 := FND_API.G_MISS_CHAR
1501  ,p_start_date                  IN    pa_project_assignments.start_date%TYPE                  := FND_API.G_MISS_DATE
1502  ,p_end_date                    IN    pa_project_assignments.end_date%TYPE                    := FND_API.G_MISS_DATE
1503  ,p_assignment_effort           IN    pa_project_assignments.assignment_effort%TYPE           := FND_API.G_MISS_NUM
1507  ,p_max_resource_job_level	IN    pa_project_assignments.max_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1504  ,p_extension_possible          IN    pa_project_assignments.extension_possible%TYPE          := FND_API.G_MISS_CHAR
1505  ,p_source_assignment_id        IN    pa_project_assignments.source_assignment_id%TYPE        := FND_API.G_MISS_NUM
1506  ,p_min_resource_job_level      IN    pa_project_assignments.min_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1508  ,p_additional_information      IN    pa_project_assignments.additional_information%TYPE      := FND_API.G_MISS_CHAR
1509  ,p_location_id                 IN    pa_project_assignments.location_id%TYPE                 := FND_API.G_MISS_NUM
1510  ,p_work_type_id                IN    pa_project_assignments.work_type_id%TYPE                := FND_API.G_MISS_NUM
1511  ,p_revenue_currency_code       IN    pa_project_assignments.revenue_currency_code%TYPE       := FND_API.G_MISS_CHAR
1512  ,p_revenue_bill_rate           IN    pa_project_assignments.revenue_bill_rate%TYPE           := FND_API.G_MISS_NUM
1513  ,p_markup_percent              IN    pa_project_assignments.markup_percent%TYPE              := FND_API.G_MISS_NUM
1514  ,p_expense_owner               IN    pa_project_assignments.expense_owner%TYPE               := FND_API.G_MISS_CHAR
1515  ,p_expense_limit               IN    pa_project_assignments.expense_limit%TYPE               := FND_API.G_MISS_NUM
1516  ,p_expense_limit_currency_code IN    pa_project_assignments.expense_limit_currency_code%TYPE := FND_API.G_MISS_CHAR
1517  ,p_fcst_tp_amount_type         IN    pa_project_assignments.fcst_tp_amount_type%TYPE         := FND_API.G_MISS_CHAR
1518  ,p_fcst_job_id                 IN    pa_project_assignments.fcst_job_id%TYPE                 := FND_API.G_MISS_NUM
1519  ,p_fcst_job_group_id           IN    pa_project_assignments.fcst_job_group_id%TYPE           := FND_API.G_MISS_NUM
1520  ,p_expenditure_org_id          IN    pa_project_assignments.expenditure_org_id%TYPE          := FND_API.G_MISS_NUM
1521  ,p_expenditure_organization_id IN    pa_project_assignments.expenditure_organization_id%TYPE := FND_API.G_MISS_NUM
1522  ,p_expenditure_type_class      IN    pa_project_assignments.expenditure_type_class%TYPE      := FND_API.G_MISS_CHAR
1523  ,p_expenditure_type            IN    pa_project_assignments.expenditure_type%TYPE            := FND_API.G_MISS_CHAR
1524  ,p_calendar_type               IN    pa_project_assignments.calendar_type%TYPE               := FND_API.G_MISS_CHAR
1525  ,p_calendar_id	                IN    pa_project_assignments.calendar_id%TYPE	              := FND_API.G_MISS_NUM
1526  ,p_resource_calendar_percent   IN    pa_project_assignments.resource_calendar_percent%TYPE   := FND_API.G_MISS_NUM
1527  ,p_project_name                IN    pa_projects_all.name%TYPE                               := FND_API.G_MISS_CHAR
1528  ,p_project_number              IN    pa_projects_all.segment1%TYPE                           := FND_API.G_MISS_CHAR
1529  ,p_project_subteam_name        IN    pa_project_subteams.name%TYPE                          := FND_API.G_MISS_CHAR
1530  ,p_project_status_name         IN    pa_project_statuses.project_status_name%TYPE            := FND_API.G_MISS_CHAR
1531  ,p_staffing_priority_name      IN    pa_lookups.meaning%TYPE                                 := FND_API.G_MISS_CHAR
1532  ,p_project_role_name           IN    pa_project_role_types.meaning%TYPE                      := FND_API.G_MISS_CHAR
1533  ,p_location_city               IN    pa_locations.city%TYPE                                  := FND_API.G_MISS_CHAR
1534  ,p_location_region             IN    pa_locations.region%TYPE                                := FND_API.G_MISS_CHAR
1535  ,p_location_country_name       IN    fnd_territories_tl.territory_short_name%TYPE            := FND_API.G_MISS_CHAR
1536  ,p_location_country_code       IN    pa_locations.country_code%TYPE                          := FND_API.G_MISS_CHAR
1537  ,p_calendar_name               IN    jtf_calendars_tl.calendar_name%TYPE                     := FND_API.G_MISS_CHAR
1538  ,p_work_type_name              IN    pa_work_types_vl.name%TYPE                                 := FND_API.G_MISS_CHAR
1539  ,p_fcst_job_name               IN    per_jobs.name%TYPE                                      := FND_API.G_MISS_CHAR
1540  ,p_fcst_job_group_name         IN    per_job_groups.displayed_name%TYPE                      := FND_API.G_MISS_CHAR
1541  ,p_expenditure_org_name        IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1542  ,p_exp_organization_name       IN    per_organization_units.name%TYPE                      := FND_API.G_MISS_CHAR
1543  ,p_attribute_category          IN    pa_project_assignments.attribute_category%TYPE          := FND_API.G_MISS_CHAR
1544  ,p_attribute1                  IN    pa_project_assignments.attribute1%TYPE                  := FND_API.G_MISS_CHAR
1545  ,p_attribute2                  IN    pa_project_assignments.attribute2%TYPE                  := FND_API.G_MISS_CHAR
1546  ,p_attribute3                  IN    pa_project_assignments.attribute3%TYPE                  := FND_API.G_MISS_CHAR
1547  ,p_attribute4                  IN    pa_project_assignments.attribute4%TYPE                  := FND_API.G_MISS_CHAR
1548  ,p_attribute5                  IN    pa_project_assignments.attribute5%TYPE                  := FND_API.G_MISS_CHAR
1549  ,p_attribute6                  IN    pa_project_assignments.attribute6%TYPE                  := FND_API.G_MISS_CHAR
1550  ,p_attribute7                  IN    pa_project_assignments.attribute7%TYPE                  := FND_API.G_MISS_CHAR
1551  ,p_attribute8                  IN    pa_project_assignments.attribute8%TYPE                  := FND_API.G_MISS_CHAR
1552  ,p_attribute9                  IN    pa_project_assignments.attribute9%TYPE                  := FND_API.G_MISS_CHAR
1553  ,p_attribute10                 IN    pa_project_assignments.attribute10%TYPE                 := FND_API.G_MISS_CHAR
1554  ,p_attribute11                 IN    pa_project_assignments.attribute11%TYPE                 := FND_API.G_MISS_CHAR
1555  ,p_attribute12                 IN    pa_project_assignments.attribute12%TYPE                 := FND_API.G_MISS_CHAR
1556  ,p_attribute13                 IN    pa_project_assignments.attribute13%TYPE                 := FND_API.G_MISS_CHAR
1557  ,p_attribute14                 IN    pa_project_assignments.attribute14%TYPE                 := FND_API.G_MISS_CHAR
1561  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_TRUE
1558  ,p_attribute15                 IN    pa_project_assignments.attribute15%TYPE                 := FND_API.G_MISS_CHAR
1559  ,p_number_of_requirements      IN    NUMBER                                                  := 1
1560  ,p_api_version                 IN    NUMBER                                                  := 1.0
1562  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
1563  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
1564  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
1565  ,x_success_assignment_id_tbl   OUT   NOCOPY system.pa_num_tbl_type  -- For 1159 mandate changes bug#2674619
1566  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1567  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
1568  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1569 );
1570 
1571 
1572 
1573 PROCEDURE Mass_Exec_Update_Assignments
1574 ( p_asgn_update_mode            IN    VARCHAR2                                                := FND_API.G_MISS_CHAR
1575  ,p_assignment_id_tbl           IN    system.pa_num_tbl_type
1576  ,p_assignment_type             IN    pa_project_assignments.assignment_type%TYPE      := FND_API.G_MISS_CHAR
1577  ,p_assignment_name             IN    pa_project_assignments.assignment_name%TYPE      := FND_API.G_MISS_CHAR
1578  ,p_staffing_priority_code      IN    pa_project_assignments.staffing_priority_code%TYPE      := FND_API.G_MISS_CHAR
1579  ,p_project_id                  IN    pa_project_assignments.project_id%TYPE                  := FND_API.G_MISS_NUM
1580  ,p_project_subteam_id          IN    pa_project_subteams.project_subteam_id%TYPE             := FND_API.G_MISS_NUM
1581  ,p_append_description_flag     IN    VARCHAR2                                                := 'N'
1582  ,p_description                 IN    pa_project_assignments.description%TYPE                 := FND_API.G_MISS_CHAR
1583  ,p_extension_possible          IN    pa_project_assignments.extension_possible%TYPE          := FND_API.G_MISS_CHAR
1584  ,p_min_resource_job_level      IN    pa_project_assignments.min_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1585  ,p_max_resource_job_level	IN    pa_project_assignments.max_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1586  ,p_append_information_flag     IN    VARCHAR2                                                := 'N'
1587  ,p_additional_information      IN    pa_project_assignments.additional_information%TYPE      := FND_API.G_MISS_CHAR
1588  ,p_location_id                 IN    pa_project_assignments.location_id%TYPE                 := FND_API.G_MISS_NUM
1589  ,p_work_type_id                IN    pa_project_assignments.work_type_id%TYPE                := FND_API.G_MISS_NUM
1590  ,p_expense_owner               IN    pa_project_assignments.expense_owner%TYPE               := FND_API.G_MISS_CHAR
1591  ,p_expense_limit               IN    pa_project_assignments.expense_limit%TYPE               := FND_API.G_MISS_NUM
1592  ,p_expense_limit_currency_code IN    pa_project_assignments.expense_limit_currency_code%TYPE := FND_API.G_MISS_CHAR
1593  ,p_fcst_tp_amount_type         IN    pa_project_assignments.fcst_tp_amount_type%TYPE         := FND_API.G_MISS_CHAR
1594  ,p_fcst_job_id                 IN    pa_project_assignments.fcst_job_id%TYPE                 := FND_API.G_MISS_NUM
1595  ,p_fcst_job_group_id           IN    pa_project_assignments.fcst_job_group_id%TYPE           := FND_API.G_MISS_NUM
1596  ,p_expenditure_org_id          IN    pa_project_assignments.expenditure_org_id%TYPE          := FND_API.G_MISS_NUM
1597  ,p_expenditure_organization_id IN    pa_project_assignments.expenditure_organization_id%TYPE := FND_API.G_MISS_NUM
1598  ,p_expenditure_type_class      IN    pa_project_assignments.expenditure_type_class%TYPE      := FND_API.G_MISS_CHAR
1599  ,p_expenditure_type            IN    pa_project_assignments.expenditure_type%TYPE            := FND_API.G_MISS_CHAR
1600  ,p_project_subteam_name        IN    pa_project_subteams.name%TYPE                           := FND_API.G_MISS_CHAR
1601  ,p_staffing_priority_name      IN    pa_lookups.meaning%TYPE                                 := FND_API.G_MISS_CHAR
1602  ,p_location_city               IN    pa_locations.city%TYPE                                  := FND_API.G_MISS_CHAR
1603  ,p_location_region             IN    pa_locations.region%TYPE                                := FND_API.G_MISS_CHAR
1604  ,p_location_country_name       IN    fnd_territories_tl.territory_short_name%TYPE            := FND_API.G_MISS_CHAR
1605  ,p_location_country_code       IN    pa_locations.country_code%TYPE                          := FND_API.G_MISS_CHAR
1606  ,p_work_type_name              IN    pa_work_types_vl.name%TYPE                              := FND_API.G_MISS_CHAR
1607  ,p_fcst_job_name               IN    per_jobs.name%TYPE                                      := FND_API.G_MISS_CHAR
1608  ,p_fcst_job_group_name         IN    per_job_groups.displayed_name%TYPE                      := FND_API.G_MISS_CHAR
1609  ,p_expenditure_org_name        IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1610  ,p_exp_organization_name       IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1611  ,p_comp_match_weighting        IN    pa_project_assignments.competence_match_weighting%TYPE    := FND_API.G_MISS_NUM
1612  ,p_avail_match_weighting       IN    pa_project_assignments.availability_match_weighting%TYPE  := FND_API.G_MISS_NUM
1613  ,p_job_level_match_weighting   IN    pa_project_assignments.job_level_match_weighting%TYPE     := FND_API.G_MISS_NUM
1614  ,p_search_min_availability     IN    pa_project_assignments.search_min_availability%TYPE       := FND_API.G_MISS_NUM
1615  ,p_search_country_code         IN    pa_project_assignments.search_country_code%TYPE           := FND_API.G_MISS_CHAR
1616  ,p_search_country_name         IN    fnd_territories_vl.territory_short_name%TYPE              := FND_API.G_MISS_CHAR
1617  ,p_search_exp_org_struct_ver_id IN   pa_project_assignments.search_exp_org_struct_ver_id%TYPE  := FND_API.G_MISS_NUM
1621  ,p_search_min_candidate_score   IN   pa_project_assignments.search_min_candidate_score%TYPE    := FND_API.G_MISS_NUM
1618  ,p_search_exp_org_hier_name    IN  per_organization_structures.name%TYPE                       := FND_API.G_MISS_CHAR
1619  ,p_search_exp_start_org_id      IN   pa_project_assignments.search_exp_start_org_id%TYPE       := FND_API.G_MISS_NUM
1620  ,p_search_exp_start_org_name    IN   hr_organization_units.name%TYPE                           := FND_API.G_MISS_CHAR
1622  ,p_enable_auto_cand_nom_flag     IN  pa_project_assignments.enable_auto_cand_nom_flag%TYPE  := FND_API.G_MISS_CHAR
1623  ,p_staffing_owner_person_id     IN  pa_project_assignments.staffing_owner_person_id%TYPE      := FND_API.G_MISS_NUM
1624  ,p_staffing_owner_name          IN  per_people_f.full_name%TYPE                               := FND_API.G_MISS_CHAR
1625  ,p_attribute_category          IN    pa_project_assignments.attribute_category%TYPE          := FND_API.G_MISS_CHAR
1626  ,p_attribute1                  IN    pa_project_assignments.attribute1%TYPE                  := FND_API.G_MISS_CHAR
1627  ,p_attribute2                  IN    pa_project_assignments.attribute2%TYPE                  := FND_API.G_MISS_CHAR
1628  ,p_attribute3                  IN    pa_project_assignments.attribute3%TYPE                  := FND_API.G_MISS_CHAR
1629  ,p_attribute4                  IN    pa_project_assignments.attribute4%TYPE                  := FND_API.G_MISS_CHAR
1630  ,p_attribute5                  IN    pa_project_assignments.attribute5%TYPE                  := FND_API.G_MISS_CHAR
1631  ,p_attribute6                  IN    pa_project_assignments.attribute6%TYPE                  := FND_API.G_MISS_CHAR
1632  ,p_attribute7                  IN    pa_project_assignments.attribute7%TYPE                  := FND_API.G_MISS_CHAR
1633  ,p_attribute8                  IN    pa_project_assignments.attribute8%TYPE                  := FND_API.G_MISS_CHAR
1634  ,p_attribute9                  IN    pa_project_assignments.attribute9%TYPE                  := FND_API.G_MISS_CHAR
1635  ,p_attribute10                 IN    pa_project_assignments.attribute10%TYPE                 := FND_API.G_MISS_CHAR
1636  ,p_attribute11                 IN    pa_project_assignments.attribute11%TYPE                 := FND_API.G_MISS_CHAR
1637  ,p_attribute12                 IN    pa_project_assignments.attribute12%TYPE                 := FND_API.G_MISS_CHAR
1638  ,p_attribute13                 IN    pa_project_assignments.attribute13%TYPE                 := FND_API.G_MISS_CHAR
1639  ,p_attribute14                 IN    pa_project_assignments.attribute14%TYPE                 := FND_API.G_MISS_CHAR
1640  ,p_attribute15                 IN    pa_project_assignments.attribute15%TYPE                 := FND_API.G_MISS_CHAR
1641  ,p_api_version                 IN    NUMBER                                                  := 1.0
1642  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_FALSE
1643  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
1644  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
1645  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
1646  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1647  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
1648  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1649 );
1650 
1651 
1652 
1653 PROCEDURE Mass_Update_Assignments
1654 ( p_update_mode                 IN    VARCHAR2                                                := FND_API.G_MISS_CHAR
1655  ,p_assignment_id_tbl           IN    system.pa_num_tbl_type
1656  ,p_assignment_type             IN    pa_project_assignments.assignment_type%TYPE             := FND_API.G_MISS_CHAR
1657  ,p_assignment_name             IN    pa_project_assignments.assignment_name%TYPE             := FND_API.G_MISS_CHAR
1658  ,p_staffing_priority_code      IN    pa_project_assignments.staffing_priority_code%TYPE      := FND_API.G_MISS_CHAR
1659  ,p_project_id                  IN    pa_project_assignments.project_id%TYPE                  := FND_API.G_MISS_NUM
1660  ,p_project_subteam_id          IN    pa_project_subteams.project_subteam_id%TYPE             := FND_API.G_MISS_NUM
1661  ,p_append_description_flag     IN    VARCHAR2                                                := 'N'
1662  ,p_description                 IN    pa_project_assignments.description%TYPE                 := FND_API.G_MISS_CHAR
1663  ,p_extension_possible          IN    pa_project_assignments.extension_possible%TYPE          := FND_API.G_MISS_CHAR
1664  ,p_min_resource_job_level      IN    pa_project_assignments.min_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1665  ,p_max_resource_job_level	IN    pa_project_assignments.max_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1666  ,p_append_information_flag     IN    VARCHAR2                                                := 'N'
1667  ,p_additional_information      IN    pa_project_assignments.additional_information%TYPE      := FND_API.G_MISS_CHAR
1668  ,p_location_id                 IN    pa_project_assignments.location_id%TYPE                 := FND_API.G_MISS_NUM
1669  ,p_work_type_id                IN    pa_project_assignments.work_type_id%TYPE                := FND_API.G_MISS_NUM
1670  ,p_expense_owner               IN    pa_project_assignments.expense_owner%TYPE               := FND_API.G_MISS_CHAR
1671  ,p_expense_limit               IN    pa_project_assignments.expense_limit%TYPE               := FND_API.G_MISS_NUM
1672  ,p_expense_limit_currency_code IN    pa_project_assignments.expense_limit_currency_code%TYPE := FND_API.G_MISS_CHAR
1673  ,p_fcst_tp_amount_type         IN    pa_project_assignments.fcst_tp_amount_type%TYPE         := FND_API.G_MISS_CHAR
1674  ,p_fcst_job_id                 IN    pa_project_assignments.fcst_job_id%TYPE                 := FND_API.G_MISS_NUM
1675  ,p_fcst_job_group_id           IN    pa_project_assignments.fcst_job_group_id%TYPE           := FND_API.G_MISS_NUM
1676  ,p_expenditure_org_id          IN    pa_project_assignments.expenditure_org_id%TYPE          := FND_API.G_MISS_NUM
1677  ,p_expenditure_organization_id IN    pa_project_assignments.expenditure_organization_id%TYPE := FND_API.G_MISS_NUM
1681  ,p_staffing_priority_name      IN    pa_lookups.meaning%TYPE                                 := FND_API.G_MISS_CHAR
1678  ,p_expenditure_type_class      IN    pa_project_assignments.expenditure_type_class%TYPE      := FND_API.G_MISS_CHAR
1679  ,p_expenditure_type            IN    pa_project_assignments.expenditure_type%TYPE            := FND_API.G_MISS_CHAR
1680  ,p_project_subteam_name        IN    pa_project_subteams.name%TYPE                           := FND_API.G_MISS_CHAR
1682  ,p_location_city               IN    pa_locations.city%TYPE                                  := FND_API.G_MISS_CHAR
1683  ,p_location_region             IN    pa_locations.region%TYPE                                := FND_API.G_MISS_CHAR
1684  ,p_location_country_name       IN    fnd_territories_tl.territory_short_name%TYPE            := FND_API.G_MISS_CHAR
1685  ,p_location_country_code       IN    pa_locations.country_code%TYPE                          := FND_API.G_MISS_CHAR
1686  ,p_work_type_name              IN    pa_work_types_vl.name%TYPE                              := FND_API.G_MISS_CHAR
1687  ,p_fcst_job_name               IN    per_jobs.name%TYPE                                      := FND_API.G_MISS_CHAR
1688  ,p_fcst_job_group_name         IN    per_job_groups.displayed_name%TYPE                      := FND_API.G_MISS_CHAR
1689  ,p_expenditure_org_name        IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1690  ,p_exp_organization_name       IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1691  ,p_comp_match_weighting        IN    pa_project_assignments.competence_match_weighting%TYPE    := FND_API.G_MISS_NUM
1692  ,p_avail_match_weighting       IN    pa_project_assignments.availability_match_weighting%TYPE  := FND_API.G_MISS_NUM
1693  ,p_job_level_match_weighting   IN    pa_project_assignments.job_level_match_weighting%TYPE     := FND_API.G_MISS_NUM
1694  ,p_search_min_availability     IN    pa_project_assignments.search_min_availability%TYPE       := FND_API.G_MISS_NUM
1695  ,p_search_country_code         IN    pa_project_assignments.search_country_code%TYPE           := FND_API.G_MISS_CHAR
1696  ,p_search_country_name         IN    fnd_territories_vl.territory_short_name%TYPE              := FND_API.G_MISS_CHAR
1697  ,p_search_exp_org_struct_ver_id IN   pa_project_assignments.search_exp_org_struct_ver_id%TYPE  := FND_API.G_MISS_NUM
1698  ,p_search_exp_org_hier_name    IN  per_organization_structures.name%TYPE                       := FND_API.G_MISS_CHAR
1699  ,p_search_exp_start_org_id      IN   pa_project_assignments.search_exp_start_org_id%TYPE       := FND_API.G_MISS_NUM
1700  ,p_search_exp_start_org_name    IN   hr_organization_units.name%TYPE                           := FND_API.G_MISS_CHAR
1701  ,p_search_min_candidate_score   IN   pa_project_assignments.search_min_candidate_score%TYPE    := FND_API.G_MISS_NUM
1702  ,p_enable_auto_cand_nom_flag     IN  pa_project_assignments.enable_auto_cand_nom_flag%TYPE  := FND_API.G_MISS_CHAR
1703  ,p_staffing_owner_person_id     IN  pa_project_assignments.staffing_owner_person_id%TYPE      := FND_API.G_MISS_NUM       --FP.L Development
1704  ,p_staffing_owner_name          IN  per_people_f.full_name%TYPE                               := FND_API.G_MISS_CHAR      --FP.L Development
1705  ,p_attribute_category          IN    pa_project_assignments.attribute_category%TYPE          := FND_API.G_MISS_CHAR
1706  ,p_attribute1                  IN    pa_project_assignments.attribute1%TYPE                  := FND_API.G_MISS_CHAR
1707  ,p_attribute2                  IN    pa_project_assignments.attribute2%TYPE                  := FND_API.G_MISS_CHAR
1708  ,p_attribute3                  IN    pa_project_assignments.attribute3%TYPE                  := FND_API.G_MISS_CHAR
1709  ,p_attribute4                  IN    pa_project_assignments.attribute4%TYPE                  := FND_API.G_MISS_CHAR
1710  ,p_attribute5                  IN    pa_project_assignments.attribute5%TYPE                  := FND_API.G_MISS_CHAR
1711  ,p_attribute6                  IN    pa_project_assignments.attribute6%TYPE                  := FND_API.G_MISS_CHAR
1712  ,p_attribute7                  IN    pa_project_assignments.attribute7%TYPE                  := FND_API.G_MISS_CHAR
1713  ,p_attribute8                  IN    pa_project_assignments.attribute8%TYPE                  := FND_API.G_MISS_CHAR
1714  ,p_attribute9                  IN    pa_project_assignments.attribute9%TYPE                  := FND_API.G_MISS_CHAR
1715  ,p_attribute10                 IN    pa_project_assignments.attribute10%TYPE                 := FND_API.G_MISS_CHAR
1716  ,p_attribute11                 IN    pa_project_assignments.attribute11%TYPE                 := FND_API.G_MISS_CHAR
1717  ,p_attribute12                 IN    pa_project_assignments.attribute12%TYPE                 := FND_API.G_MISS_CHAR
1718  ,p_attribute13                 IN    pa_project_assignments.attribute13%TYPE                 := FND_API.G_MISS_CHAR
1719  ,p_attribute14                 IN    pa_project_assignments.attribute14%TYPE                 := FND_API.G_MISS_CHAR
1720  ,p_attribute15                 IN    pa_project_assignments.attribute15%TYPE                 := FND_API.G_MISS_CHAR
1721  ,p_api_version                 IN    NUMBER                                                  := 1.0
1722  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_TRUE
1723  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
1724  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
1725  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
1726  ,x_success_assignment_id_tbl   OUT   NOCOPY system.pa_num_tbl_type  -- For 1159 mandate changes bug#2674619
1727  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1728  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
1729  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1730 );
1731 
1732 
1733 PROCEDURE Execute_Update_Requirement
1734 ( p_asgn_update_mode            IN    VARCHAR2                                                := FND_API.G_MISS_CHAR
1735  ,p_assignment_row_id           IN    ROWID                                                   := NULL
1739  ,p_assignment_type             IN    pa_project_assignments.assignment_type%TYPE             := FND_API.G_MISS_CHAR
1736  ,p_assignment_id               IN    pa_project_assignments.assignment_id%TYPE               := FND_API.G_MISS_NUM
1737  ,p_record_version_number       IN    NUMBER                                                  := FND_API.G_MISS_NUM
1738  ,p_assignment_name             IN    pa_project_assignments.assignment_name%TYPE             := FND_API.G_MISS_CHAR
1740  ,p_multiple_status_flag        IN    pa_project_assignments.multiple_status_flag%TYPE        := FND_API.G_MISS_CHAR
1741  ,p_project_status_name         IN    pa_project_statuses.project_status_name%TYPE            := FND_API.G_MISS_CHAR
1742  ,p_status_code                 IN    pa_project_assignments.status_code%TYPE                 := FND_API.G_MISS_CHAR
1743  ,p_start_date                  IN    pa_project_assignments.start_date%TYPE                  := FND_API.G_MISS_DATE
1744  ,p_end_date                    IN    pa_project_assignments.end_date%TYPE                    := FND_API.G_MISS_DATE
1745  ,p_staffing_priority_code      IN    pa_project_assignments.staffing_priority_code%TYPE      := FND_API.G_MISS_CHAR
1746  ,p_project_id                  IN    pa_project_assignments.project_id%TYPE                  := FND_API.G_MISS_NUM
1747  ,p_assignment_template_id      IN    pa_project_assignments.assignment_template_id%TYPE      := FND_API.G_MISS_NUM
1748  ,p_project_role_id             IN    pa_project_assignments.project_role_id%TYPE             := FND_API.G_MISS_NUM
1749  ,p_project_party_id            IN    pa_project_assignments.project_party_id%TYPE            := FND_API.G_MISS_NUM
1750  ,p_project_subteam_id          IN    pa_project_subteams.project_subteam_id%TYPE             := FND_API.G_MISS_NUM
1751  ,p_project_subteam_party_id    IN    pa_project_subteam_parties.project_subteam_party_id%TYPE    := FND_API.G_MISS_NUM
1752  ,p_description                 IN    pa_project_assignments.description%TYPE                 := FND_API.G_MISS_CHAR
1753  ,p_assignment_effort           IN    pa_project_assignments.assignment_effort%TYPE           := FND_API.G_MISS_NUM
1754  ,p_extension_possible          IN    pa_project_assignments.extension_possible%TYPE          := FND_API.G_MISS_CHAR
1755  ,p_source_assignment_id        IN    pa_project_assignments.source_assignment_id%TYPE        := FND_API.G_MISS_NUM
1756  ,p_min_resource_job_level      IN    pa_project_assignments.min_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1757  ,p_max_resource_job_level	IN    pa_project_assignments.max_resource_job_level%TYPE      := FND_API.G_MISS_NUM
1758  ,p_assignment_number           IN    pa_project_assignments.assignment_number%TYPE           := FND_API.G_MISS_NUM
1759  ,p_additional_information      IN    pa_project_assignments.additional_information%TYPE      := FND_API.G_MISS_CHAR
1760  ,p_location_id                 IN    pa_project_assignments.location_id%TYPE                 := FND_API.G_MISS_NUM
1761  ,p_work_type_id                IN    pa_project_assignments.work_type_id%TYPE                := FND_API.G_MISS_NUM
1762  ,p_revenue_currency_code       IN    pa_project_assignments.revenue_currency_code%TYPE       := FND_API.G_MISS_CHAR
1763  ,p_revenue_bill_rate           IN    pa_project_assignments.revenue_bill_rate%TYPE           := FND_API.G_MISS_NUM
1764  ,p_markup_percent              IN    pa_project_assignments.markup_percent%TYPE              := FND_API.G_MISS_NUM
1765  ,p_expense_owner               IN    pa_project_assignments.expense_owner%TYPE               := FND_API.G_MISS_CHAR
1766  ,p_expense_limit               IN    pa_project_assignments.expense_limit%TYPE               := FND_API.G_MISS_NUM
1767  ,p_expense_limit_currency_code IN    pa_project_assignments.expense_limit_currency_code%TYPE := FND_API.G_MISS_CHAR
1768  ,p_fcst_tp_amount_type         IN    pa_project_assignments.fcst_tp_amount_type%TYPE         := FND_API.G_MISS_CHAR
1769  ,p_fcst_job_id                 IN    pa_project_assignments.fcst_job_id%TYPE                 := FND_API.G_MISS_NUM
1770  ,p_fcst_job_group_id           IN    pa_project_assignments.fcst_job_group_id%TYPE           := FND_API.G_MISS_NUM
1771  ,p_expenditure_org_id          IN    pa_project_assignments.expenditure_org_id%TYPE          := FND_API.G_MISS_NUM
1772  ,p_expenditure_organization_id IN    pa_project_assignments.expenditure_organization_id%TYPE := FND_API.G_MISS_NUM
1773  ,p_expenditure_type_class      IN    pa_project_assignments.expenditure_type_class%TYPE      := FND_API.G_MISS_CHAR
1774  ,p_expenditure_type            IN    pa_project_assignments.expenditure_type%TYPE            := FND_API.G_MISS_CHAR
1775  ,p_project_number              IN    pa_projects_all.segment1%TYPE                           := FND_API.G_MISS_CHAR /* Bug 1851096 */
1776  ,p_resource_name               IN    pa_resources.name%TYPE                                  := FND_API.G_MISS_CHAR
1777  ,p_resource_source_id          IN    NUMBER                                                  := FND_API.G_MISS_NUM
1778  ,p_resource_id                 IN    pa_resources.resource_id%TYPE                           := FND_API.G_MISS_NUM
1779  ,p_project_subteam_name        IN    pa_project_subteams.name%TYPE                           := FND_API.G_MISS_CHAR
1780  ,p_staffing_priority_name      IN    pa_lookups.meaning%TYPE                                 := FND_API.G_MISS_CHAR
1781  ,p_project_role_name           IN    pa_project_role_types.meaning%TYPE                      := FND_API.G_MISS_CHAR
1782  ,p_location_city               IN    pa_locations.city%TYPE                                  := FND_API.G_MISS_CHAR
1783  ,p_location_region             IN    pa_locations.region%TYPE                                := FND_API.G_MISS_CHAR
1784  ,p_location_country_name       IN    fnd_territories_tl.territory_short_name%TYPE            := FND_API.G_MISS_CHAR
1785  ,p_location_country_code       IN    pa_locations.country_code%TYPE                          := FND_API.G_MISS_CHAR
1786  ,p_calendar_name               IN    jtf_calendars_tl.calendar_name%TYPE                     := FND_API.G_MISS_CHAR
1787  ,p_calendar_id                 IN    jtf_calendars_tl.calendar_id%TYPE                       := FND_API.G_MISS_NUM
1788  ,p_work_type_name              IN    pa_work_types_vl.name%TYPE                              := FND_API.G_MISS_CHAR
1789  ,p_fcst_job_name               IN    per_jobs.name%TYPE                                      := FND_API.G_MISS_CHAR
1793  ,p_comp_match_weighting        IN    pa_project_assignments.competence_match_weighting%TYPE    := FND_API.G_MISS_NUM
1790  ,p_fcst_job_group_name         IN    per_job_groups.displayed_name%TYPE                      := FND_API.G_MISS_CHAR
1791  ,p_expenditure_org_name        IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1792  ,p_exp_organization_name       IN    per_organization_units.name%TYPE                        := FND_API.G_MISS_CHAR
1794  ,p_avail_match_weighting       IN    pa_project_assignments.availability_match_weighting%TYPE  := FND_API.G_MISS_NUM
1795  ,p_job_level_match_weighting   IN    pa_project_assignments.job_level_match_weighting%TYPE     := FND_API.G_MISS_NUM
1796  ,p_search_min_availability     IN    pa_project_assignments.search_min_availability%TYPE       := FND_API.G_MISS_NUM
1797  ,p_search_country_code         IN    pa_project_assignments.search_country_code%TYPE           := FND_API.G_MISS_CHAR
1798  ,p_search_country_name         IN    fnd_territories_vl.territory_short_name%TYPE              := FND_API.G_MISS_CHAR
1799  ,p_search_exp_org_struct_ver_id IN   pa_project_assignments.search_exp_org_struct_ver_id%TYPE  := FND_API.G_MISS_NUM
1800  ,p_search_exp_org_hier_name    IN  per_organization_structures.name%TYPE                     := FND_API.G_MISS_CHAR
1801  ,p_search_exp_start_org_id     IN   pa_project_assignments.search_exp_start_org_id%TYPE       := FND_API.G_MISS_NUM
1802  ,p_search_exp_start_org_name   IN   hr_organization_units.name%TYPE                           := FND_API.G_MISS_CHAR
1803  ,p_search_min_candidate_score  IN   pa_project_assignments.search_min_candidate_score%TYPE    := FND_API.G_MISS_NUM
1804  ,p_enable_auto_cand_nom_flag    IN  pa_project_assignments.enable_auto_cand_nom_flag%TYPE := FND_API.G_MISS_CHAR
1805  ,p_bill_rate_override           IN  pa_project_assignments.bill_rate_override%TYPE            := FND_API.G_MISS_NUM
1806  ,p_bill_rate_curr_override      IN  pa_project_assignments.bill_rate_curr_override%TYPE       := FND_API.G_MISS_CHAR
1807  ,p_markup_percent_override      IN  pa_project_assignments.markup_percent_override%TYPE       := FND_API.G_MISS_NUM
1808  ,p_discount_percentage          IN  pa_project_assignments.discount_percentage%TYPE           := FND_API.G_MISS_NUM -- Bug 2590938
1809  ,p_rate_disc_reason_code        IN  pa_project_assignments.rate_disc_reason_code%TYPE         := FND_API.G_MISS_CHAR -- Bug 2590938
1810  ,p_tp_rate_override             IN  pa_project_assignments.tp_rate_override%TYPE              := FND_API.G_MISS_NUM
1811  ,p_tp_currency_override         IN  pa_project_assignments.tp_currency_override%TYPE          := FND_API.G_MISS_CHAR
1812  ,p_tp_calc_base_code_override   IN  pa_project_assignments.tp_calc_base_code_override%TYPE    := FND_API.G_MISS_CHAR
1813  ,p_tp_percent_applied_override  IN  pa_project_assignments.tp_percent_applied_override%TYPE   := FND_API.G_MISS_NUM
1814  ,p_staffing_owner_person_id     IN  pa_project_assignments.staffing_owner_person_id%TYPE      := FND_API.G_MISS_NUM
1815  ,p_staffing_owner_name          IN  per_people_f.full_name%TYPE                               := FND_API.G_MISS_CHAR
1816  ,p_attribute_category          IN    pa_project_assignments.attribute_category%TYPE          := FND_API.G_MISS_CHAR
1817  ,p_attribute1                  IN    pa_project_assignments.attribute1%TYPE                  := FND_API.G_MISS_CHAR
1818  ,p_attribute2                  IN    pa_project_assignments.attribute2%TYPE                  := FND_API.G_MISS_CHAR
1819  ,p_attribute3                  IN    pa_project_assignments.attribute3%TYPE                  := FND_API.G_MISS_CHAR
1820  ,p_attribute4                  IN    pa_project_assignments.attribute4%TYPE                  := FND_API.G_MISS_CHAR
1821  ,p_attribute5                  IN    pa_project_assignments.attribute5%TYPE                  := FND_API.G_MISS_CHAR
1822  ,p_attribute6                  IN    pa_project_assignments.attribute6%TYPE                  := FND_API.G_MISS_CHAR
1823  ,p_attribute7                  IN    pa_project_assignments.attribute7%TYPE                  := FND_API.G_MISS_CHAR
1824  ,p_attribute8                  IN    pa_project_assignments.attribute8%TYPE                  := FND_API.G_MISS_CHAR
1825  ,p_attribute9                  IN    pa_project_assignments.attribute9%TYPE                  := FND_API.G_MISS_CHAR
1826  ,p_attribute10                 IN    pa_project_assignments.attribute10%TYPE                 := FND_API.G_MISS_CHAR
1827  ,p_attribute11                 IN    pa_project_assignments.attribute11%TYPE                 := FND_API.G_MISS_CHAR
1828  ,p_attribute12                 IN    pa_project_assignments.attribute12%TYPE                 := FND_API.G_MISS_CHAR
1829  ,p_attribute13                 IN    pa_project_assignments.attribute13%TYPE                 := FND_API.G_MISS_CHAR
1830  ,p_attribute14                 IN    pa_project_assignments.attribute14%TYPE                 := FND_API.G_MISS_CHAR
1831  ,p_attribute15                 IN    pa_project_assignments.attribute15%TYPE                 := FND_API.G_MISS_CHAR
1832  ,p_api_version                 IN    NUMBER                                                  := 1.0
1833  ,p_init_msg_list               IN    VARCHAR2                                                := FND_API.G_FALSE
1834  ,p_commit                      IN    VARCHAR2                                                := FND_API.G_FALSE
1835  ,p_validate_only               IN    VARCHAR2                                                := FND_API.G_TRUE
1836  ,p_max_msg_count               IN    NUMBER                                                  := FND_API.G_MISS_NUM
1837  ,x_return_status               OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1838  ,x_msg_count                   OUT   NOCOPY NUMBER --File.Sql.39 bug 4440895
1839  ,x_msg_data                    OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1840 );
1841 
1842 
1843 PROCEDURE DELETE_PJR_TXNS
1844  (p_project_id                  IN    pa_project_assignments.project_id%TYPE
1845     := FND_API.G_MISS_NUM
1846  ,p_calling_module              IN     VARCHAR2
1847     := FND_API.G_MISS_CHAR
1848  ,p_api_version                 IN     NUMBER
1849     := 1.0
1850  ,p_init_msg_list               IN     VARCHAR2
1851     := FND_API.G_FALSE
1852  ,p_commit                      IN     VARCHAR2
1853     := FND_API.G_FALSE
1854  ,p_validate_only               IN     VARCHAR2
1855     := FND_API.G_TRUE
1859  ,x_msg_count                   OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
1856  ,p_max_msg_count               IN     NUMBER
1857     := FND_API.G_MISS_NUM
1858  ,x_return_status               OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1860  ,x_msg_data                    OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1861  );
1862 
1863  /* Added the procedure for bug 8557453 */
1864 PROCEDURE VALIDATE_PROJECT_ROLE(
1865        p_assignment_id IN NUMBER,
1866        x_return_status OUT NOCOPY NUMBER);
1867 
1868 END pa_assignments_pub;