1 PACKAGE pa_schedule_pub AUTHID CURRENT_USER as
2 /* $Header: PARGPUBS.pls 120.3.12010000.8 2010/05/02 22:16:21 nisinha ship $ */
3
4 --EmptyNumTbl PA_SCHEDULE_GLOB.NumTblType;
5 --EmptyNumTbl(1) : = NULL;
6
7 -- Unilog Enhancement BEGIN
8
9 TYPE WORK_PATTERN_REC_TYPE
10 IS RECORD (
11 l_PROJECT_ID PA_WORK_PATTERN_TEMP_TABLE.project_id%TYPE ,
12 l_PROJECT_NAME PA_WORK_PATTERN_TEMP_TABLE.project_name%TYPE ,
13 l_ASSIGNMENT_NAME PA_WORK_PATTERN_TEMP_TABLE.assignment_name%TYPE ,
14 l_START_DATE PA_WORK_PATTERN_TEMP_TABLE.start_date%TYPE ,
15 l_END_DATE PA_WORK_PATTERN_TEMP_TABLE.end_date%TYPE ,
16 l_STATUS_NAME PA_WORK_PATTERN_TEMP_TABLE.status_name%TYPE ,
17 l_ASSIGNMENT_ID PA_WORK_PATTERN_TEMP_TABLE.assignment_id%TYPE ,
18 l_RESOURCE_ID PA_WORK_PATTERN_TEMP_TABLE.resource_id%TYPE ,
19 l_STATUS_CODE PA_WORK_PATTERN_TEMP_TABLE.status_code%TYPE ,
20 l_RECORD_VERSION_NUMBER PA_WORK_PATTERN_TEMP_TABLE.record_version_number%TYPE ,
21 l_ASSIGNMENT_TYPE PA_WORK_PATTERN_TEMP_TABLE.assignment_type%TYPE ,
22 l_CALENDAR_ID PA_WORK_PATTERN_TEMP_TABLE.calendar_id%TYPE ,
23 l_CALENDAR_TYPE PA_WORK_PATTERN_TEMP_TABLE.calendar_type%TYPE ,
24 l_PROJECT_ROLE_NAME PA_WORK_PATTERN_TEMP_TABLE.project_role_name%TYPE ,
25 l_APPRVL_STATUS_NAME PA_WORK_PATTERN_TEMP_TABLE.apprvl_status_name%TYPE ,
26 l_ASSIGNMENT_EFFORT PA_WORK_PATTERN_TEMP_TABLE.assignment_effort%TYPE ,
27 l_ASSIGNMENT_DURATION PA_WORK_PATTERN_TEMP_TABLE.assignment_duration%TYPE ,
28 l_PROJECT_SYSTEM_STATUS_CODE PA_WORK_PATTERN_TEMP_TABLE.PROJECT_SYSTEM_STATUS_CODE%TYPE ,
29 l_QTY1 PA_WORK_PATTERN_TEMP_TABLE.QTY1%TYPE ,
30 l_QTY2 PA_WORK_PATTERN_TEMP_TABLE.QTY2%TYPE ,
31 l_QTY3 PA_WORK_PATTERN_TEMP_TABLE.QTY3%TYPE ,
32 l_QTY4 PA_WORK_PATTERN_TEMP_TABLE.QTY4%TYPE ,
33 l_QTY5 PA_WORK_PATTERN_TEMP_TABLE.QTY5%TYPE ,
34 l_QTY6 PA_WORK_PATTERN_TEMP_TABLE.QTY6%TYPE ,
35 l_QTY7 PA_WORK_PATTERN_TEMP_TABLE.QTY7%TYPE ,
36 l_QTY8 PA_WORK_PATTERN_TEMP_TABLE.QTY8%TYPE ,
37 l_QTY9 PA_WORK_PATTERN_TEMP_TABLE.QTY9%TYPE ,
38 l_QTY10 PA_WORK_PATTERN_TEMP_TABLE.QTY10%TYPE ,
39 l_QTY11 PA_WORK_PATTERN_TEMP_TABLE.QTY11%TYPE ,
40 l_QTY12 PA_WORK_PATTERN_TEMP_TABLE.QTY12%TYPE ,
41 l_QTY13 PA_WORK_PATTERN_TEMP_TABLE.QTY13%TYPE ,
42 l_QTY14 PA_WORK_PATTERN_TEMP_TABLE.QTY14%TYPE ,
43 l_DAY1 PA_WORK_PATTERN_TEMP_TABLE.day1%TYPE ,
44 l_DAY2 PA_WORK_PATTERN_TEMP_TABLE.day2%TYPE ,
45 l_DAY3 PA_WORK_PATTERN_TEMP_TABLE.day3%TYPE ,
46 l_DAY4 PA_WORK_PATTERN_TEMP_TABLE.day4%TYPE ,
47 l_DAY5 PA_WORK_PATTERN_TEMP_TABLE.day5%TYPE ,
48 l_DAY6 PA_WORK_PATTERN_TEMP_TABLE.day6%TYPE ,
49 l_DAY7 PA_WORK_PATTERN_TEMP_TABLE.day7%TYPE ,
50 l_DAY8 PA_WORK_PATTERN_TEMP_TABLE.day8%TYPE ,
51 l_DAY9 PA_WORK_PATTERN_TEMP_TABLE.day9%TYPE ,
52 l_DAY10 PA_WORK_PATTERN_TEMP_TABLE.day10%TYPE ,
53 l_DAY11 PA_WORK_PATTERN_TEMP_TABLE.day11%TYPE ,
54 l_DAY12 PA_WORK_PATTERN_TEMP_TABLE.day12%TYPE ,
55 l_DAY13 PA_WORK_PATTERN_TEMP_TABLE.day13%TYPE ,
56 l_DAY14 PA_WORK_PATTERN_TEMP_TABLE.day14%TYPE ,
57 l_row_type_code PA_WORK_PATTERN_TEMP_TABLE.row_type_code%TYPE ,
58 l_read_only_flag PA_WORK_PATTERN_TEMP_TABLE.read_only_flag%TYPE
59 );
60
61 TYPE WORK_PATTERN_TAB_TYPE IS TABLE OF WORK_PATTERN_REC_TYPE
62 INDEX BY BINARY_INTEGER;
63
64 /* 7693634 start */
65 TYPE PA_DATE_TBL_TBL_TYPE IS TABLE OF SYSTEM.PA_DATE_TBL_TYPE INDEX BY BINARY_INTEGER;
66 TYPE PA_NUM_TBL_TBL_TYPE IS TABLE OF SYSTEM.PA_NUM_TBL_TYPE INDEX BY BINARY_INTEGER;
67 /* 7693634 end */
68
69 G_update_schedule_bulk_call varchar2(1) := 'N'; -- Bug 8233045
70
71 -- Procedure : change_work_pattern_duration
72 -- Purpose : This procedure is called from self service for changing duration and work pattern.
73 -- : It uses existing change_work_pattern and change_duration procedures to do the job.
74 -- : While calling change_duartion and change_work_pattern, it passes newly introduced
75 -- : parameter p_generate_timeline_flag as N, so that they do not call timeline API.
76 -- : Typically this API will get called for a set of assignments of a resource
77 -- : (in a loop or from VORowImpl). So it takes two parameters p_prev_call_timeline_st_date
78 -- : and p_prev_call_timeline_end_date. For first assignment in the loop it will be null.
79 -- : So x_call_timeline_st_date and x_call_timeline_end_date will have the required date ranges
80 -- : for which timeline has to be regenerated. For the second assignment p_prev_call_timeline_st_date
81 -- : and p_prev_call_timeline_end_date will have the first assighnmenmt's x_call_timeline_st_date
82 -- : and x_call_timeline_end_date correspondingly. Then it will again calculate the timeline start date
83 -- : and timeline end date for the second assignment. Then it will compare it with
84 -- : p_prev_call_timeline_st_date and p_prev_call_timeline_end_date and will take
85 -- : min(new timeline start date, p_prev_call_timeline_st_date) and
86 -- : max(new timeline end date, p_prev_call_timeline_end_date). Similarly for other assignments....
87 -- : After this API is called for a set of assignments, you need to call PA_FORECASTITEM_PVT.Create_Forecast_Item
88 -- : with person_id as paremetrer and with the returned dates x_call_timeline_st_date
89 -- : and x_call_timeline_end_date
90 -- Parameters :
91 -- Note : Note that the p_hours_table should have hours quantity starting at p_start_date and
92 -- : ending at p_end_date.
93
94
95 PROCEDURE change_work_pattern_duration(
96 p_record_version_number IN NUMBER ,
97 p_project_id IN NUMBER ,
98 p_calendar_id IN NUMBER ,
99 p_assignment_id IN NUMBER ,
100 p_resource_id IN NUMBER ,
101 p_assignment_type IN VARCHAR2 ,
102 p_asgn_start_date IN DATE := NULL ,
103 p_asgn_end_date IN DATE := NULL ,
104 p_start_date IN DATE := NULL ,
105 -- p_end_date IN DATE := NULL ,
106 p_assignment_status_code IN VARCHAR2 := NULL ,
107 p_hours_table IN SYSTEM.PA_NUM_TBL_TYPE ,
108 p_prev_call_timeline_st_date IN DATE ,
109 p_prev_call_timeline_end_date IN DATE ,
110 x_call_timeline_st_date OUT NOCOPY DATE , --File.Sql.39 bug 4440895
111 x_call_timeline_end_date OUT NOCOPY DATE , --File.Sql.39 bug 4440895
112 -- x_person_id OUT NUMBER ,
113 x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
114 x_msg_count OUT NOCOPY NUMBER , --File.Sql.39 bug 4440895
115 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
116
117
118
119 -- Procedure : populate_work_pattern_table
120 -- Purpose : This procedure is called from self service for populating the global temp table
121 -- : pa_work_pattern_temp_table for the given assignment start date and assignment
122 -- : end date. The data will be populated for 14 days starting with Global week start day
123 -- : <= p_display_start_date. p_status_code is optional, if it is not given then it will
124 -- : fetch all the assignments irrespective of the assignment schedule status.
125 -- : Finally it returns the actual start date depending on the global week start date
126 -- Parameters :
127 --
128
129 PROCEDURE populate_work_pattern_table(
130 p_resource_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE ,
131 p_assgn_range_start_date IN DATE := NULL ,
132 p_assgn_range_end_date IN DATE := NULL ,
133 p_display_start_date IN DATE ,
134 p_status_code IN VARCHAR2 := NULL ,
135 p_delete_flag IN VARCHAR2 := 'Y' ,
136 x_show_start_date OUT NOCOPY DATE , --File.Sql.39 bug 4440895
137 x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
138 x_msg_count OUT NOCOPY NUMBER , --File.Sql.39 bug 4440895
139 x_msg_data OUT NOCOPY VARCHAR2); --File.Sql.39 bug 4440895
140
141 -- Unilog Enhancement : END
142
143 -- procedure : update_schedule
144 -- Purpose : This procedure will change the schedule records of the assignments passed in.
145 -- It can accept either one assignment ID or an assignment ID array.
146 --
147 PROCEDURE update_schedule
148 ( p_project_id IN NUMBER
149 ,p_mass_update_flag IN VARCHAR2 := FND_API.G_FALSE
150 ,p_exception_type_code IN VARCHAR2
151 ,p_record_version_number IN NUMBER := NULL
152 ,p_assignment_id IN NUMBER := NULL
153 ,p_assignment_id_array IN SYSTEM.PA_NUM_TBL_TYPE := NULL
154 ,p_change_start_date IN DATE := NULL
155 ,p_change_end_date IN DATE := NULL
156 ,p_requirement_status_code IN VARCHAR2 := NULL
157 ,p_assignment_status_code IN VARCHAR2 := NULL
158 ,p_monday_hours IN NUMBER := NULL
159 ,p_tuesday_hours IN NUMBER := NULL
160 ,p_wednesday_hours IN NUMBER := NULL
161 ,p_thursday_hours IN NUMBER := NULL
162 ,p_friday_hours IN NUMBER := NULL
163 ,p_saturday_hours IN NUMBER := NULL
164 ,p_sunday_hours IN NUMBER := NULL
165 ,p_non_working_day_flag IN VARCHAR2 := 'N'
166 ,p_change_hours_type_code IN VARCHAR2 := NULL
167 ,p_hrs_per_day IN NUMBER := NULL
168 ,p_calendar_percent IN NUMBER := NULL
169 ,p_change_calendar_type_code IN VARCHAR2 := NULL
170 ,p_change_calendar_name IN VARCHAR2 := NULL
171 ,p_change_calendar_id IN NUMBER := NULL
172 ,p_duration_shift_type_code IN VARCHAR2 := NULL
173 ,p_duration_shift_unit_code IN VARCHAR2 := NULL
174 ,p_number_of_shift IN NUMBER := NULL
175 ,p_last_row_flag IN VARCHAR2 := 'Y'
176 ,p_change_start_date_tbl IN SYSTEM.PA_DATE_TBL_TYPE := NULL
177 ,p_change_end_date_tbl IN SYSTEM.PA_DATE_TBL_TYPE := NULL
178 ,p_monday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
179 ,p_tuesday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
180 ,p_wednesday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
181 ,p_thursday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
182 ,p_friday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
183 ,p_saturday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
184 ,p_sunday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
185 ,p_commit IN VARCHAR2 := FND_API.G_FALSE
186 ,p_validate_only IN VARCHAR2 := FND_API.G_TRUE
187 ,p_called_by_proj_party IN VARCHAR2 := 'N' -- Added for Bug 6631033
188 ,x_return_status OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
189 ,x_msg_count OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
190 ,x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
191
192 -- Bug 7693634
193 -- procedure : update_schedule
194 -- Purpose : Same Procedure as above bu invoked in bulk mode
195 --
196 PROCEDURE update_schedule_bulk
197 ( p_project_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE
198 ,p_mass_update_flag_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE -- := FND_API.G_FALSE
199 ,p_exception_type_code_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE
200 ,p_record_version_number_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
201 ,p_assignment_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
202 -- ,p_assignment_id_array_tbl IN PA_NUM_TBL_TBL_TYPE --:= NULL
203 ,p_change_start_date_tbl IN SYSTEM.PA_DATE_TBL_TYPE := NULL
204 ,p_change_end_date_tbl IN SYSTEM.PA_DATE_TBL_TYPE := NULL
205 ,p_requirement_status_code_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE := NULL
206 ,p_assignment_status_code_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE := NULL
207 ,p_last_row_flag_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE -- := 'Y'
208 ,p_commit_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE -- := FND_API.G_FALSE
209 ,p_validate_only_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE -- := FND_API.G_TRUE
210 ,p_msg_data_in_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE
211 ,x_return_status_tbl OUT NOCOPY SYSTEM.PA_VARCHAR2_2000_TBL_TYPE --File.Sql.39 bug 4440895
212 ,x_msg_count_tbl OUT NOCOPY SYSTEM.PA_NUM_TBL_TYPE --File.Sql.39 bug 4440895
213 ,x_msg_data_tbl OUT NOCOPY SYSTEM.PA_VARCHAR2_2000_TBL_TYPE );
214
215
216
217
218 PROCEDURE update_new_schedule_bulk
219 ( p_project_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE
220 ,p_mass_update_flag_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE -- := FND_API.G_FALSE
221 ,p_exception_type_code_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE
222 ,p_record_version_number_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
223 ,p_assignment_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
224 -- ,p_assignment_id_array_tbl IN PA_NUM_TBL_TBL_TYPE --:= NULL
225 ,p_change_start_date_tbl IN SYSTEM.PA_DATE_TBL_TYPE := NULL
226 ,p_change_end_date_tbl IN SYSTEM.PA_DATE_TBL_TYPE := NULL
227 ,p_requirement_status_code_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE := NULL
228 ,p_assignment_status_code_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE := NULL
229 ,p_last_row_flag_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE -- := 'Y'
230 ,p_commit_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE -- := FND_API.G_FALSE
231 ,p_validate_only_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE -- := FND_API.G_TRUE
232 ,p_msg_data_in_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE
233 ,p_change_hours_type_code_tbl IN SYSTEM.PA_VARCHAR2_2000_TBL_TYPE := NULL
234 ,p_calendar_percent_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
235 ,p_change_calendar_id_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
236 ,x_return_status_tbl OUT NOCOPY SYSTEM.PA_VARCHAR2_2000_TBL_TYPE --File.Sql.39 bug 4440895
237 ,x_msg_count_tbl OUT NOCOPY SYSTEM.PA_NUM_TBL_TYPE --File.Sql.39 bug 4440895
238 ,x_msg_data_tbl OUT NOCOPY SYSTEM.PA_VARCHAR2_2000_TBL_TYPE
239
240
241 );
242
243
244
245 -- procedure : single_update_schedule
246 -- Purpose : This procedure will change the schedule records of a single assignment.
247 --
248 PROCEDURE single_update_schedule
249 ( p_project_id IN NUMBER
250 ,p_exception_type_code IN VARCHAR2
251 ,p_record_version_number IN NUMBER := NULL
252 ,p_assignment_id IN NUMBER := NULL
253 ,p_change_start_date IN DATE := NULL
254 ,p_change_end_date IN DATE := NULL
255 ,p_assignment_status_code IN VARCHAR2 := NULL
256 ,p_monday_hours IN NUMBER := NULL
257 ,p_tuesday_hours IN NUMBER := NULL
258 ,p_wednesday_hours IN NUMBER := NULL
259 ,p_thursday_hours IN NUMBER := NULL
260 ,p_friday_hours IN NUMBER := NULL
264 ,p_change_hours_type_code IN VARCHAR2 := NULL
261 ,p_saturday_hours IN NUMBER := NULL
262 ,p_sunday_hours IN NUMBER := NULL
263 ,p_non_working_day_flag IN VARCHAR2 := 'N'
265 ,p_hrs_per_day IN NUMBER := NULL
266 ,p_calendar_percent IN NUMBER := NULL
267 ,p_change_calendar_type_code IN VARCHAR2 := NULL
268 --,p_change_calendar_name IN VARCHAR2 := NULL
269 ,p_change_calendar_id IN NUMBER := NULL
270 ,p_duration_shift_type_code IN VARCHAR2 := NULL
271 ,p_duration_shift_unit_code IN VARCHAR2 := NULL
272 ,p_number_of_shift IN NUMBER := NULL
273 ,p_last_row_flag IN VARCHAR2 := 'Y'
274 ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
275 ,p_commit IN VARCHAR2 := FND_API.G_FALSE
276 ,p_called_by_proj_party IN VARCHAR2 := 'N' -- Added for Bug 6631033
277 ,x_return_status OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
278 ,x_msg_count OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
279 ,x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
280
281
282
283 -- procedure : mass_update_schedule
284 -- Purpose : This procedure will change the schedule records of the assignments passed in.
285 -- Currently, this procedure will only be called by the Mass Transaction Workflow API.
286 --
287 PROCEDURE mass_update_schedule
288 ( p_project_id IN NUMBER
289 ,p_exception_type_code IN VARCHAR2
290 ,p_assignment_id_array IN SYSTEM.PA_NUM_TBL_TYPE
291 ,p_change_start_date IN DATE := NULL
292 ,p_change_end_date IN DATE := NULL
293 ,p_change_rqmt_status_code IN VARCHAR2 := NULL
294 ,p_change_asgmt_status_code IN VARCHAR2 := NULL
295 ,p_change_start_date_tbl IN SYSTEM.PA_DATE_TBL_TYPE := NULL
296 ,p_change_end_date_tbl IN SYSTEM.PA_DATE_TBL_TYPE := NULL
297 ,p_monday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
298 ,p_tuesday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
299 ,p_wednesday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
300 ,p_thursday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
301 ,p_friday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
302 ,p_saturday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
303 ,p_sunday_hours_tbl IN SYSTEM.PA_NUM_TBL_TYPE := NULL
304 ,p_non_working_day_flag IN VARCHAR2 := 'N'
305 ,p_change_hours_type_code IN VARCHAR2 := NULL
306 ,p_hrs_per_day IN NUMBER := NULL
307 ,p_calendar_percent IN NUMBER := NULL
308 ,p_change_calendar_type_code IN VARCHAR2 := NULL
309 ,p_change_calendar_name IN VARCHAR2 := NULL
310 ,p_change_calendar_id IN NUMBER := NULL
311 ,p_duration_shift_type_code IN VARCHAR2 := NULL
312 ,p_duration_shift_unit_code IN VARCHAR2 := NULL
313 ,p_number_of_shift IN NUMBER := NULL
314 ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
315 ,p_validate_only IN VARCHAR2 := FND_API.G_TRUE
316 ,p_commit IN VARCHAR2 := FND_API.G_FALSE
317 ,x_success_assignment_id_tbl OUT NOCOPY SYSTEM.PA_NUM_TBL_TYPE /* Added NOCOPY for bug#2674619 */
318 ,x_return_status OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
319 ,x_msg_count OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
320 ,x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
321
322
323 --
324 -- Procedure : change_duration
325 -- Purpose : Insert record into PA_SCHEDULE_EXCEPTIONS table.
326 -- Parameters :
327 --
328 PROCEDURE change_duration
329 (
330 p_record_version_number IN Number ,
331 p_exception_type_code IN Varchar2 ,
332 p_project_id IN Number ,
333 p_calendar_id IN Number ,
334 p_assignment_id IN Number ,
335 p_assignment_type IN Varchar2 ,
336 p_start_date IN date := NULL,
337 p_end_date IN date := NULL,
338 p_assignment_status_code IN varchar2 := NULL,
339 p_asgn_start_date IN DATE := NULL,
340 p_asgn_end_date IN DATE := NULL,
341 p_duration_shift_type_code IN Varchar2 := NULL,
342 p_duration_shift_unit_code IN VARCHAR2 := NULL,
343 p_number_of_shift IN Varchar2 := NULL,
344 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
345 p_generate_timeline_flag IN VARCHAR2 := 'Y', --Unilog
346 p_called_by_proj_party IN VARCHAR2 := 'N', -- Added for Bug 6631033
347 x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
348 x_msg_count OUT NOCOPY NUMBER , --File.Sql.39 bug 4440895
349 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
350
351
352 --
353 -- Procedure : change_hours
354 -- Purpose : Insert records into PA_SCHEDULE_EXCEPTIONS table.
358 (
355 -- Parameters :
356 --
357 PROCEDURE change_hours
359 p_record_version_number IN Number ,
360 p_project_id IN Number ,
361 p_calendar_id IN Number ,
362 p_assignment_id IN Number ,
363 p_assignment_type IN Varchar2 ,
364 p_start_date IN date ,
365 p_end_date IN date ,
366 p_non_working_day_flag IN varchar2 := 'N' , /* bug#2463257 */
367 p_assignment_status_code IN Varchar2 ,
368 p_change_hours_type_code IN varchar2 ,
369 p_hrs_per_day IN Number ,
370 p_calendar_percent IN Number ,
371 p_change_calendar_type_code IN VARCHAR2 ,
372 -- p_change_calendar_name IN VARCHAR2 ,
373 p_change_calendar_id IN VARCHAR2 ,
374 p_asgn_start_date IN DATE ,
375 p_asgn_end_date IN DATE ,
376 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
377 x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
378 x_msg_count OUT NOCOPY NUMBER , --File.Sql.39 bug 4440895
379 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
380
381
382 --
383 -- Procedure : change_work_pattern
384 -- Purpose : Insert records into PA_SCHEDULE_EXCEPTIONS table.
385 -- Parameters :
386 --
387 PROCEDURE change_work_pattern
388 (
389 p_record_version_number IN Number ,
390 p_project_id IN Number ,
391 p_calendar_id IN Number ,
392 p_assignment_id IN Number ,
393 p_assignment_type IN Varchar2 ,
394 p_start_date IN date ,
395 p_end_date IN date ,
396 p_monday_hours IN Number := NULL,
397 p_tuesday_hours IN Number := NULL,
398 p_wednesday_hours IN Number := NULL,
399 p_thursday_hours IN Number := NULL,
400 p_friday_hours IN Number := NULL,
401 p_saturday_hours IN Number := NULL,
402 p_sunday_hours IN Number := NULL,
403 p_asgn_start_date IN DATE ,
404 p_asgn_end_date IN DATE ,
405 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
406 p_remove_conflict_flag IN VARCHAR2 := 'N',
407 p_last_row_flag IN VARCHAR2 := 'Y',
408 p_generate_timeline_flag IN VARCHAR2 := 'Y', --Unilog
409 x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
410 x_msg_count OUT NOCOPY NUMBER , --File.Sql.39 bug 4440895
411 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
412
413
414 --
415 -- Procedure : change_status
416 -- Purpose : Insert records into PA_SCHEDULE_EXCEPTIONS table.
417 -- Parameters :
418 --
419 PROCEDURE change_status
420 (
421 p_record_version_number IN Number ,
422 p_project_id IN Number ,
423 p_calendar_id IN Number ,
424 p_assignment_id IN Number ,
425 p_assignment_type IN Varchar2 ,
426 p_status_type IN Varchar2 ,
427 p_start_date IN date ,
428 p_end_date IN date ,
429 p_assignment_status_code IN Varchar2 ,
430 p_asgn_start_date IN DATE ,
431 p_asgn_end_date IN DATE ,
432 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
433 p_save_to_hist IN VARCHAR2 := FND_API.G_TRUE,
434 x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
435 x_msg_count OUT NOCOPY NUMBER , --File.Sql.39 bug 4440895
436 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
437
438 --
439 -- Procedure : change_calendar
440 -- Purpose : Insert records into PA_SCHEDULE_EXCEPTIONS table.
441 -- Parameters :
442 --
443 PROCEDURE change_calendar
444 (
445 p_record_version_number IN Number ,
446 p_project_id IN Number ,
447 p_calendar_id IN Number ,
448 p_calendar_name IN Varchar2 ,
449 p_assignment_id IN Number ,
450 p_assignment_type IN Varchar2 ,
451 p_start_date IN date ,
452 p_end_date IN date ,
453 p_asgn_start_date IN DATE ,
454 p_asgn_end_date IN DATE ,
455 x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
456 x_msg_count OUT NOCOPY NUMBER , --File.Sql.39 bug 4440895
457 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
458
459
463 );
460 PROCEDURE change_schedule(x_return_status OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
461 x_msg_count OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
462 x_msg_data OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
464
465 -- Procedure : change_schedule
466 -- Purpose : This procedure is called from periodic process to apply the
467 -- the exceptions on schedule.
468
469
470 PROCEDURE change_asgn_schedule(
471 p_record_version_number IN Number,
472 p_assignment_id IN NUMBER,
473 p_project_id IN NUMBER,
474 p_exception_id IN NUMBER,
475 p_save_to_hist IN VARCHAR2 := FND_API.G_TRUE,
476 p_remove_conflict_flag IN VARCHAR2 := 'N',
477 p_generate_timeline_flag IN VARCHAR2 := 'Y', --Unilog
478 p_called_by_proj_party IN VARCHAR2 := 'N', -- Added for Bug 6631033
479 x_return_status OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
480 x_msg_count OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
481 x_msg_data OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
482 );
483
484 -- Procedure : change_asgn_schedule
485 -- Purpose : This procedure will be called from each schedule change page via
486 -- workflow. This procedure will apply the exceptions for the team role
487 -- on the team role schedules.
488 -- array processing. This overloaded function.
489
490
491 PROCEDURE create_calendar_schedule ( p_calendar_id IN NUMBER,
492 x_return_status OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
493 x_msg_count OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
494 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
495
496 -- Procedure : create_calendar_schedule
497 -- Purpose : This procedure is called from periodic process for creating calendar schedule
498 -- in array processing.
499 -- Parameters :
500 --
501
502 PROCEDURE get_proj_calendar_default ( p_proj_organization IN NUMBER,
503 p_project_id IN NUMBER,
504 x_calendar_id OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
505 x_calendar_name OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
506 x_return_status OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
507 x_msg_count OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
508 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
509
510 -- Procedure : get_proj_calendar_default
511 -- Purpose : This procedure gets the calendar on the basis of organization id or project id
512 -- Parameters :
513 --
514
515 PROCEDURE create_new_cal_schedules ( p_start_calendar_name IN VARCHAR2,
516 p_end_calendar_name IN VARCHAR2,
517 x_return_status OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
518 x_msg_count OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
522 -- Purpose : This procedure is called from periodic process for creating schedule for new calendars
519 x_msg_data OUT NOCOPY VARCHAR2 ); --File.Sql.39 bug 4440895
520
521 -- Procedure : create_new_cal_schedules
523 -- in array processing.
524 -- Parameters :
525 --
526
527 END PA_SCHEDULE_PUB;