1 PACKAGE amv_perspective_pvt AS
2 /* $Header: amvvpsps.pls 120.1 2005/06/30 13:09:01 appldev ship $ */
3 --
4 -- Start of Comments
5 --
6 -- NAME
7 -- AMV_PERSPECTIVE_PVT
8 --
9 -- PURPOSE
10 -- This package is a private API managing perspectives
11 -- and their related attributes in AMV. It defines global variables.
12 -- It is part of the Item Block API
13 --
14 -- PROCEDURES:
15 --
16 -- Add_Perspective;
17 -- Delete_Perspective;
18 -- Update_Perspective;
19 -- Get_Perspective;
20 -- Find_Perspectives;
21 -- --with item
22 -- Add_ItemPersps;
23 -- Delete_ItemPersps;
24 -- Get_ItemPersps;
25 --
26 -- NOTES
27 --
28 --
29 -- HISTORY
30 -- 07/19/1999 PWU created
31 -- End of Comments
32 --
33 --
34 -- The following constants are to be finalized.
35 --
36 G_VERSION CONSTANT NUMBER := 1.0;
37 --
38 --Type definitions
39
40 TYPE AMV_NUMBER_VARRAY_TYPE IS TABLE OF NUMBER;
41 --INDEX BY BINARY_INTEGER;
42
43 TYPE amv_return_obj_type IS RECORD(
44 returned_record_count NUMBER,
45 next_record_position NUMBER,
46 total_record_count NUMBER
47 );
48
49 TYPE amv_request_obj_type IS RECORD(
50 records_requested NUMBER,
51 start_record_position NUMBER,
52 return_total_count_flag VARCHAR2(1)
53 );
54
55 TYPE amv_perspective_obj_type IS RECORD(
56 perspective_id NUMBER,
57 object_version_number NUMBER,
58 perspective_name VARCHAR2(80),
59 description VARCHAR2(2000),
60 language VARCHAR2(4),
61 source_lang VARCHAR2(4),
62 creation_date DATE,
63 created_by NUMBER,
64 last_update_date DATE,
65 last_updated_by NUMBER,
66 last_update_login NUMBER
67 );
68
69 TYPE amv_perspective_obj_varray IS TABLE of amv_perspective_obj_type;
70 --INDEX BY BINARY_INTEGER;
71
72 --
73 -- This package contains the following procedure
74 --
75 --------------------------------------------------------------------------------
76 -- Start of comments
77 -- API name : Add_Perspective
78 -- Type : Private
79 -- Pre-reqs : None
80 -- Function : Create a new perspective in MES,
81 -- given the passed perspective information.
82 -- Parameters :
83 -- IN p_api_version NUMBER Required
84 -- p_init_msg_list VARCHAR2 Optional
85 -- Default = FND_API.G_FALSE
86 -- p_commit VARCHAR2 Optional
87 -- Default = FND_API.G_FALSE
88 -- p_validation_level NUMBER Optional
89 -- Default = FND_API.G_VALID_LEVEL_FULL
90 -- p_check_login_user VARCHAR2 Optional
91 -- Default = FND_API.G_TRUE
92 -- Flag for checking user privilege and if user is login.
93 -- p_perspective_name VARCHAR2 Required
94 -- Perspective_name are required to be unique.
95 -- p_persp_description VARCHAR2 Optional
96 -- Default = FND_API.G_MISS_CHAR
97 -- The description of perspective
98 -- OUT : x_return_status VARCHAR2
99 -- x_msg_count NUMBER
100 -- x_msg_data VARCHAR2
101 -- x_perspective_id NUMBER
102 -- perspective id will be generated from sequence number.
103 -- Notes :
104 --
105 -- End of comments
106 --
107 PROCEDURE Add_Perspective
108 (
109 p_api_version IN NUMBER,
110 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
111 p_commit IN VARCHAR2 := FND_API.G_FALSE,
112 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
113 x_return_status OUT NOCOPY VARCHAR2,
114 x_msg_count OUT NOCOPY NUMBER,
115 x_msg_data OUT NOCOPY VARCHAR2,
116 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
117 p_perspective_name IN VARCHAR2,
118 p_persp_description IN VARCHAR2 := FND_API.G_MISS_CHAR,
119 x_perspective_id OUT NOCOPY NUMBER
120 );
121 --
122 -- Algorithm:
123 -- BEGIN
124 -- Verify API version compatibility
125 -- Check that login user's status is active
126 -- IF user not active THEN
127 -- Return error 'user account currently suspended'
128 -- ENDIF
129 -- Check that user has administrative privileges
130 -- IF user not privileged THEN
131 -- Return error 'Administrative privileges required to perform'
132 -- ENDIF
133 -- check if this perspective name has been used in MES
134 -- IF so THEN
135 -- return error 'duplicated perspective name';
136 -- ELSE
137 -- Set rollback SAVEPOINT
138 -- call perspective handler to insert a new perspective record.
139 -- Commit transaction if requested
140 -- ENDIF
141 -- END
142 --
143 --------------------------------------------------------------------------------
144 -- Start of comments
145 -- API name : Delete_Perspective
146 -- Type : Private
147 -- Pre-reqs : None
148 -- Function : Delete the perspective specified by its id or name
149 -- Parameters :
150 -- IN p_api_version NUMBER Required
151 -- p_init_msg_list VARCHAR2 Optional
152 -- Default = FND_API.G_FALSE
153 -- p_commit VARCHAR2 Optional
154 -- Default = FND_API.G_FALSE
155 -- p_validation_level NUMBER Optional
156 -- Default = FND_API.G_VALID_LEVEL_FULL
157 -- p_check_login_user VARCHAR2 Optional
158 -- Default = FND_API.G_TRUE
159 -- Flag for checking user privilege and if user is login.
160 -- p_perspective_id NUMBER Optional
161 -- p_perspective_name VARCHAR2 Optional
162 -- Either pass the perspective id (preferred) or
163 -- perspective name to identify the perspective.
164 -- OUT : x_return_status VARCHAR2
165 -- x_msg_count NUMBER
166 -- x_msg_data VARCHAR2
167 -- Notes :
168 --
169 -- End of comments
170 --
171 PROCEDURE Delete_Perspective
172 (
173 p_api_version IN NUMBER,
174 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
175 p_commit IN VARCHAR2 := FND_API.G_FALSE,
176 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
177 x_return_status OUT NOCOPY VARCHAR2,
178 x_msg_count OUT NOCOPY NUMBER,
179 x_msg_data OUT NOCOPY VARCHAR2,
180 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
181 p_perspective_id IN NUMBER := FND_API.G_MISS_NUM,
182 p_perspective_name IN VARCHAR2 := FND_API.G_MISS_CHAR
183 );
184 --
185 -- Algorithm:
186 -- BEGIN
187 -- Verify API version compatibility
188 -- Check that login user's status is active
189 -- IF user not active THEN
190 -- Return error 'user account currently suspended'
191 -- ENDIF
192 -- Check that user has administrative privileges
193 -- IF user not privileged THEN
194 -- Return error 'Administrative privileges required to perform'
195 -- ENDIF
196 -- check if this perspective id (if passed) is in MES
197 -- IF not THEN
198 -- return error 'invalid perspective id';
199 -- END IF
200 -- check if this perspective name (if passed) is in MES
201 -- IF not THEN
202 -- return error 'invalid perspective name';
203 -- ELSE
204 -- Set rollback SAVEPOINT
205 -- Delete all other table records which refers this perspective record.
206 -- Call perspective handler to delete the perspective record.
207 -- Commit transaction if requested
208 -- ENDIF
209 -- END
210 --
211 --------------------------------------------------------------------------------
212 -- Start of comments
213 -- API name : Update_Perspective
214 -- Type : Private
215 -- Pre-reqs : None
216 -- Function : Change the perspective name
217 -- Parameters :
218 -- IN p_api_version NUMBER Required
219 -- p_init_msg_list VARCHAR2 Optional
220 -- Default = FND_API.G_FALSE
221 -- p_commit VARCHAR2 Optional
222 -- Default = FND_API.G_FALSE
223 -- p_validation_level NUMBER Optional
224 -- Default = FND_API.G_VALID_LEVEL_FULL
225 -- p_check_login_user VARCHAR2 Optional
226 -- Default = FND_API.G_TRUE
227 -- Flag for checking user privilege and if user is login.
228 -- p_perspective_id NUMBER Optional
229 -- Default = FND_API.G_MISS_NUM
230 -- p_perspective_name VARCHAR2 Optional
231 -- Default = FND_API.G_MISS_CHAR
232 -- Either pass the perspective id (preferred) or
233 -- perspective name to identify the perspective.
234 -- p_perspective_new_name VARCHAR2 Optional
235 -- Default = FND_API.G_MISS_CHAR
236 -- p_persp_description VARCHAR2 Optional
237 -- Default = FND_API.G_MISS_CHAR
238 -- OUT : x_return_status VARCHAR2
239 -- x_msg_count NUMBER
240 -- x_msg_data VARCHAR2
241 -- Notes :
242 --
243 -- End of comments
244 --
245 PROCEDURE Update_Perspective
246 (
247 p_api_version IN NUMBER,
248 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
249 p_commit IN VARCHAR2 := FND_API.G_FALSE,
250 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
251 x_return_status OUT NOCOPY VARCHAR2,
252 x_msg_count OUT NOCOPY NUMBER,
253 x_msg_data OUT NOCOPY VARCHAR2,
254 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
255 p_perspective_id IN NUMBER := FND_API.G_MISS_NUM,
256 p_perspective_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
257 p_perspective_new_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
258 p_persp_description IN VARCHAR2 := FND_API.G_MISS_CHAR
259 );
260 --
261 --
262 -- Algorithm:
263 -- BEGIN
264 -- Verify API version compatibility
265 -- Check that login user's status is active
266 -- IF user not active THEN
267 -- Return error 'user account currently suspended'
268 -- ENDIF
269 -- Check that user has administrative privileges
270 -- IF user not privileged THEN
271 -- Return error 'Administrative privileges required to perform'
272 -- ENDIF
273 -- check if this perspective id (if passed) is in MES
274 -- IF not THEN
275 -- return error 'invalid perspective id';
276 -- END IF
277 -- check if this perspective name (if passed) is in MES
278 -- IF not THEN
279 -- return error 'invalid perspective name';
280 -- ELSE
281 -- Set rollback SAVEPOINT
282 -- Call perspective handler to update the perspective record.
283 -- Commit transaction if requested
284 -- ENDIF
285 -- END
286 --
287 --------------------------------------------------------------------------------
288 -- Start of comments
289 -- API name : Get_Perspective
290 -- Type : Private
291 -- Pre-reqs : None
292 -- Function : Get perspective record based on its id (preferred) or name.
293 -- Parameters :
294 -- IN p_api_version NUMBER Required
295 -- p_init_msg_list VARCHAR2 Optional
296 -- Default = FND_API.G_FALSE
297 -- p_validation_level NUMBER Optional
298 -- Default = FND_API.G_VALID_LEVEL_FULL
299 -- p_check_login_user VARCHAR2 Optional
300 -- Default = FND_API.G_TRUE
301 -- Flag for checking user privilege and if user is login.
302 -- p_perspective_id NUMBER Optional
303 -- p_perspective_name VARCHAR2 Optional
304 -- Either pass the perspective id (preferred) or
305 -- perspective name to identify the perspective.
306 -- OUT : x_return_status VARCHAR2
307 -- x_msg_count NUMBER
308 -- x_msg_data VARCHAR2
309 -- x_perspective_obj AMV_PERSPECTIVE_OBJ_TYPE
310 -- The requested perspective obj.
311 -- Notes : Should we add an option of locking?
312 --
313 -- End of comments
314 --
315 PROCEDURE Get_Perspective
316 (
317 p_api_version IN NUMBER,
318 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
319 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
320 x_return_status OUT NOCOPY VARCHAR2,
321 x_msg_count OUT NOCOPY NUMBER,
322 x_msg_data OUT NOCOPY VARCHAR2,
323 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
324 p_perspective_id IN NUMBER := FND_API.G_MISS_NUM,
325 p_perspective_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
326 x_perspective_obj OUT NOCOPY AMV_PERSPECTIVE_OBJ_TYPE
327 );
328 -- Algorithm:
329 -- BEGIN
330 -- Verify API version compatibility
331 -- Check that login user's status is active
332 -- IF user not active THEN
336 -- IF not THEN
333 -- Return error 'user account currently suspended'
334 -- ENDIF
335 -- check if this perspective id (if passed) is in MES
337 -- return error 'invalid perspective id';
338 -- END IF
339 -- check if this perspective name (if passed) is in MES
340 -- Query and return the perspective record.
341 -- ENDIF
342 -- END
343 --
344 --------------------------------------------------------------------------------
345 -- Start of comments
346 -- API name : Find_Perspective
347 -- Type : Private
348 -- Pre-reqs : None
349 -- Function : Find perspective records based on its id (preferred) or name.
350 -- Parameters :
351 -- IN p_api_version NUMBER Required
352 -- p_init_msg_list VARCHAR2 Optional
353 -- Default = FND_API.G_FALSE
354 -- p_validation_level NUMBER Optional
355 -- Default = FND_API.G_VALID_LEVEL_FULL
356 -- p_check_login_user VARCHAR2 Optional
357 -- Default = FND_API.G_TRUE
358 -- Flag for checking user privilege and if user is login.
359 -- p_perspective_name VARCHAR2 Optional
360 -- The search criteria on perspective name
361 -- Default = FND_API.G_MISS_CHAR
362 -- p_perspective_name VARCHAR2 Optional
363 -- The search criteria on perspective name
364 -- Default = FND_API.G_MISS_CHAR
365 -- p_persp_description VARCHAR2 Optional
366 -- The search criteria on perspective description
367 -- Default = FND_API.G_MISS_CHAR
368 -- p_subset_request_obj AMV_REQUEST_OBJ_TYPE,
369 -- Required.
370 -- OUT : x_return_status VARCHAR2
371 -- x_msg_count NUMBER
372 -- x_msg_data VARCHAR2
373 -- x_subset_return_obj AMV_RETURN_OBJ_TYPE,
374 -- x_perspective_obj_varray AMV_PERSPECTIVE_OBJ_VARRAY
375 -- The varray of found perspective records.
376 -- Notes :
377 --
378 -- End of comments
379 --
380 PROCEDURE Find_Perspective
381 (
382 p_api_version IN NUMBER,
383 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
384 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
385 x_return_status OUT NOCOPY VARCHAR2,
386 x_msg_count OUT NOCOPY NUMBER,
387 x_msg_data OUT NOCOPY VARCHAR2,
388 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
389 p_perspective_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
390 p_persp_description IN VARCHAR2 := FND_API.G_MISS_CHAR,
391 p_subset_request_obj IN AMV_REQUEST_OBJ_TYPE,
392 x_subset_return_obj OUT NOCOPY AMV_RETURN_OBJ_TYPE,
393 x_perspective_obj_varray OUT NOCOPY AMV_PERSPECTIVE_OBJ_VARRAY
394 );
395 -- Algorithm:
396 -- BEGIN
397 -- Verify API version compatibility
398 -- Check that login user's status is active
399 -- IF user not active THEN
400 -- Return error 'user account currently suspended'
401 -- ENDIF
402 -- Base on the search critiria (perspective name or description),
403 -- create sql statement and execute it to get the results.
404 -- END
405 --
406 --------------------------------------------------------------------------------
407 -- Start of comments
408 -- API name : Add_ItemPersps
409 -- Type : Private
410 -- Pre-reqs : None
411 -- Function : Add the perspectives passed in the array to the specified
412 -- item.
413 -- Parameters :
414 -- IN p_api_version NUMBER Required
415 -- p_init_msg_list VARCHAR2 Optional
416 -- Default = FND_API.G_FALSE
417 -- p_commit VARCHAR2 Optional
418 -- Default = FND_API.G_FALSE
419 -- p_validation_level NUMBER Optional
420 -- Default = FND_API.G_VALID_LEVEL_FULL
421 -- p_check_login_user VARCHAR2 Optional
422 -- Default = FND_API.G_TRUE
423 -- Flag for checking user privilege and if user is login.
424 -- p_item_id NUMBER Required
425 -- The item id to be add the perspectives.
426 -- p_perspective_array AMV_NUMBER_VARRAY_TYPE
427 -- Required
428 -- The perspective id array
429 -- OUT : x_return_status VARCHAR2
430 -- x_msg_count NUMBER
431 -- x_msg_data VARCHAR2
432 -- Notes :
433 --
434 -- End of comments
435 --
436 PROCEDURE Add_ItemPersps
437 (
438 p_api_version IN NUMBER,
439 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
440 p_commit IN VARCHAR2 := FND_API.G_FALSE,
444 x_msg_data OUT NOCOPY VARCHAR2,
441 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
442 x_return_status OUT NOCOPY VARCHAR2,
443 x_msg_count OUT NOCOPY NUMBER,
445 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
446 p_item_id IN NUMBER,
447 p_perspective_array IN AMV_NUMBER_VARRAY_TYPE
448 );
449 --
450 -- Algorithm:
451 -- BEGIN
452 -- Verify API version compatibility
453 -- Check that login user's status is active
454 -- IF user not active THEN
455 -- Return error 'user account currently suspended'
456 -- ENDIF
457 -- Check that user has administrative privileges
458 -- IF user not privileged THEN
459 -- Return error 'Administrative privileges required to perform'
460 -- ENDIF
461 -- check if this item id is in MES
462 -- IF not THEN
463 -- return error 'invalid item id';
464 -- END IF
465 -- Set rollback SAVEPOINT
466 -- Loop for each perspective id in the passed array
467 -- check if the perspective id is valid.
468 -- check if the perspective id is already in the item.
469 -- add the perspective to the item.
470 -- Commit transaction if requested
471 --
472 --------------------------------------------------------------------------------
473 -- Start of comments
474 -- API name : Add_ItemPersps
475 -- Type : Private
476 -- Pre-reqs : None
477 -- Function : Add the specified perspective to the specified item.
478 -- Parameters :
479 -- IN p_api_version NUMBER Required
480 -- p_init_msg_list VARCHAR2 Optional
481 -- Default = FND_API.G_FALSE
482 -- p_commit VARCHAR2 Optional
483 -- Default = FND_API.G_FALSE
484 -- p_validation_level NUMBER Optional
485 -- Default = FND_API.G_VALID_LEVEL_FULL
486 -- p_check_login_user VARCHAR2 Optional
487 -- Default = FND_API.G_TRUE
488 -- Flag for checking user privilege and if user is login.
489 -- p_item_id NUMBER Required
490 -- The item id to be add the perspectives.
491 -- p_perspective_id NUMBER Required
492 -- The perspective id.
493 -- OUT NOCOPY : x_return_status VARCHAR2
494 -- x_msg_count NUMBER
495 -- x_msg_data VARCHAR2
496 -- Notes : This overloaded procedures only add one perspective to
497 -- an item.
498 --
499 -- End of comments
500 --
501 PROCEDURE Add_ItemPersps
502 (
503 p_api_version IN NUMBER,
504 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
505 p_commit IN VARCHAR2 := FND_API.G_FALSE,
506 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
507 x_return_status OUT NOCOPY VARCHAR2,
508 x_msg_count OUT NOCOPY NUMBER,
509 x_msg_data OUT NOCOPY VARCHAR2,
510 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
511 p_item_id IN NUMBER,
512 p_perspective_id IN NUMBER
513 );
514 --
515 -- Algorithm:
516 -- BEGIN
517 -- Verify API version compatibility
518 -- Check that login user's status is active
519 -- IF user not active THEN
520 -- Return error 'user account currently suspended'
521 -- ENDIF
522 -- Check that user has administrative privileges
523 -- IF user not privileged THEN
524 -- Return error 'Administrative privileges required to perform'
525 -- ENDIF
526 -- check if this item id is in MES
527 -- IF not THEN
528 -- return error 'invalid item id';
529 -- END IF
530 -- check if the perspective id is valid.
531 -- IF not THEN
532 -- return error 'invalid perspective id';
533 -- END IF
534 -- check if the perspective id is already in the item.
535 -- IF so THEN
536 -- return error 'the item already has the perspective.';
537 -- END IF
538 -- Add the perspective to the item.
539 -- Commit transaction if requested
540 --
541 --------------------------------------------------------------------------------
542 -- Start of comments
543 -- API name : Delete_ItemPersps
544 -- Type : Private
545 -- Pre-reqs : None
546 -- Function : Delete the perspectives passed in the array
547 -- from the specified item.
548 -- Parameters :
549 -- IN p_api_version NUMBER Required
550 -- p_init_msg_list VARCHAR2 Optional
551 -- Default = FND_API.G_FALSE
552 -- p_commit VARCHAR2 Optional
553 -- Default = FND_API.G_FALSE
554 -- p_validation_level NUMBER Optional
555 -- Default = FND_API.G_VALID_LEVEL_FULL
556 -- p_check_login_user VARCHAR2 Optional
557 -- Default = FND_API.G_TRUE
558 -- Flag for checking user privilege and if user is login.
562 -- Required
559 -- p_item_id NUMBER Required
560 -- The item id to be add the perspectives.
561 -- p_perspective_array AMV_NUMBER_VARRAY_TYPE
563 -- The perspective id array
564 -- OUT : x_return_status VARCHAR2
565 -- x_msg_count NUMBER
566 -- x_msg_data VARCHAR2
567 -- Notes : This overloaded procedures only add one perspective to
568 -- an item.
569 --
570 -- End of comments
571 --
572 PROCEDURE Delete_ItemPersps
573 (
574 p_api_version IN NUMBER,
575 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
576 p_commit IN VARCHAR2 := FND_API.G_FALSE,
577 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
578 x_return_status OUT NOCOPY VARCHAR2,
579 x_msg_count OUT NOCOPY NUMBER,
580 x_msg_data OUT NOCOPY VARCHAR2,
581 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
582 p_item_id IN NUMBER,
583 p_perspective_array IN AMV_NUMBER_VARRAY_TYPE
584 );
585 --
586 -- Algorithm:
587 -- BEGIN
588 -- Verify API version compatibility
589 -- Check that login user's status is active
590 -- IF user not active THEN
591 -- Return error 'user account currently suspended'
592 -- ENDIF
593 -- Check that user has administrative privileges
594 -- IF user not privileged THEN
595 -- Return error 'Administrative privileges required to perform'
596 -- ENDIF
597 -- check if this item id is in MES
598 -- IF not THEN
599 -- return error 'invalid item id';
600 -- END IF
601 -- Set rollback SAVEPOINT
602 -- Loop for each perspective id in the passed array
603 -- check if the perspective id is valid.
604 -- IF not THEN
605 -- return error 'invalid perspective id';
606 -- END IF
607 -- check if the perspective id is in the item.
608 -- IF not THEN
609 -- return error 'the item does not have the perspective.';
610 -- END IF
611 -- remove the perspective from the item.
612 -- Commit transaction if requested
613 -- END
614 --------------------------------------------------------------------------------
615 -- Start of comments
616 -- API name : Delete_ItemPersps
617 -- Type : Private
618 -- Pre-reqs : None
619 -- Function : Delete the specified perspective from the specified item.
620 -- Parameters :
621 -- IN p_api_version NUMBER Required
622 -- p_init_msg_list VARCHAR2 Optional
623 -- Default = FND_API.G_FALSE
624 -- p_commit VARCHAR2 Optional
625 -- Default = FND_API.G_FALSE
626 -- p_validation_level NUMBER Optional
627 -- Default = FND_API.G_VALID_LEVEL_FULL
628 -- p_check_login_user VARCHAR2 Optional
629 -- Default = FND_API.G_TRUE
630 -- Flag for checking user privilege and if user is login.
631 -- p_item_id NUMBER Required
632 -- The item id to be add the perspectives.
633 -- p_perspective_id NUMBER Optional
634 -- The perspective id. If missing, caller want to delete
635 -- all the perspectives of the item.
636 -- OUT : x_return_status VARCHAR2
637 -- x_msg_count NUMBER
638 -- x_msg_data VARCHAR2
639 -- Notes :
640 --
641 -- End of comments
642 --
643 PROCEDURE Delete_ItemPersps
644 (
645 p_api_version IN NUMBER,
646 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
647 p_commit IN VARCHAR2 := FND_API.G_FALSE,
648 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
649 x_return_status OUT NOCOPY VARCHAR2,
650 x_msg_count OUT NOCOPY NUMBER,
651 x_msg_data OUT NOCOPY VARCHAR2,
652 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
653 p_item_id IN NUMBER,
654 p_perspective_id IN NUMBER := FND_API.G_MISS_NUM
655 );
656 --
657 -- Algorithm:
658 -- BEGIN
659 -- Verify API version compatibility
660 -- Check that login user's status is active
661 -- IF user not active THEN
662 -- Return error 'user account currently suspended'
663 -- ENDIF
664 -- Check that user has administrative privileges
665 -- IF user not privileged THEN
666 -- Return error 'Administrative privileges required to perform'
667 -- ENDIF
668 -- check if this item id is in MES
669 -- IF not THEN
670 -- return error 'invalid item id';
671 -- END IF
672 -- check if the perspective id is valid.
673 -- IF not THEN
674 -- return error 'invalid perspective id';
675 -- END IF
676 -- check if the perspective id is in the item.
677 -- IF not THEN
678 -- return error 'the item does not have the perspective.';
682 --
679 -- END IF
680 -- Remove the perspective from the item.
681 -- Commit transaction if requested
683 --------------------------------------------------------------------------------
684 -- Start of comments
685 -- API name : Update_ItemPersps
686 -- Type : Private
687 -- Pre-reqs : None
688 -- Function : Set the perspectives of the specified item
689 -- to the perspectives passed in the array
690 -- Effectively, this delete all the orignal perspectives
691 -- and add the passed perspectives to the item.
692 -- Parameters :
693 -- IN p_api_version NUMBER Required
694 -- p_init_msg_list VARCHAR2 Optional
695 -- Default = FND_API.G_FALSE
696 -- p_commit VARCHAR2 Optional
697 -- Default = FND_API.G_FALSE
698 -- p_validation_level NUMBER Optional
699 -- Default = FND_API.G_VALID_LEVEL_FULL
700 -- p_check_login_user VARCHAR2 Optional
701 -- Default = FND_API.G_TRUE
702 -- Flag for checking user privilege and if user is login.
703 -- p_item_id NUMBER Required
704 -- The item id to be add the perspectives.
705 -- p_perspective_array AMV_NUMBER_VARRAY_TYPE
706 -- Required
707 -- The perspective id array
708 -- OUT : x_return_status VARCHAR2
709 -- x_msg_count NUMBER
710 -- x_msg_data VARCHAR2
711 -- Notes :
712 --
713 -- End of comments
714 --
715 PROCEDURE Update_ItemPersps
716 (
717 p_api_version IN NUMBER,
718 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
719 p_commit IN VARCHAR2 := FND_API.G_FALSE,
720 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
721 x_return_status OUT NOCOPY VARCHAR2,
722 x_msg_count OUT NOCOPY NUMBER,
723 x_msg_data OUT NOCOPY VARCHAR2,
724 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
725 p_item_id IN NUMBER,
726 p_perspective_array IN AMV_NUMBER_VARRAY_TYPE
727 );
728 --
729 -- Algorithm:
730 -- BEGIN
731 -- Call delete_ItemPersp to delete all the original perspectives
732 -- Then call Add_ItemPersp to add the perspectives to the item.
733 -- END
734 --------------------------------------------------------------------------------
735 -- Start of comments
736 -- API name : Get_ItemPersps
737 -- Type : Private
738 -- Pre-reqs : None
739 -- Function : Get all the perspectives for the specified item.
740 -- Parameters :
741 -- IN p_api_version NUMBER Required
742 -- p_init_msg_list VARCHAR2 Optional
743 -- Default = FND_API.G_FALSE
744 -- p_validation_level NUMBER Optional
745 -- Default = FND_API.G_VALID_LEVEL_FULL
746 -- p_check_login_user VARCHAR2 Optional
747 -- Default = FND_API.G_TRUE
748 -- Flag for checking user privilege and if user is login.
749 -- p_item_id NUMBER Required
750 -- The item id to be add the perspectives.
751 -- OUT : x_return_status VARCHAR2
752 -- x_msg_count NUMBER
753 -- x_msg_data VARCHAR2
754 -- x_perspective_obj_varray AMV_PERSPECTIVE_OBJ_VARRAY
755 -- The returned perspective object array
756 -- Notes :
757 --
758 -- End of comments
759 --
760 PROCEDURE Get_ItemPersps
761 (
762 p_api_version IN NUMBER,
763 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
764 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
765 x_return_status OUT NOCOPY VARCHAR2,
766 x_msg_count OUT NOCOPY NUMBER,
767 x_msg_data OUT NOCOPY VARCHAR2,
768 p_check_login_user IN VARCHAR2 := FND_API.G_TRUE,
769 p_item_id IN NUMBER,
770 x_perspective_obj_varray OUT NOCOPY AMV_PERSPECTIVE_OBJ_VARRAY
771 );
772 --
773 -- Algorithm:
774 -- BEGIN
775 -- Verify API version compatibility
776 -- Check that login user's status is active
777 -- IF user not active THEN
778 -- Return error 'user account currently suspended'
779 -- ENDIF
780 -- check if this item id is in MES
781 -- IF not THEN
782 -- return error 'invalid item id';
783 -- END IF
784 -- Query all the perspectives belonged to the specified item
785 -- And return the results in the output array.
786 --
787 --------------------------------------------------------------------------------
788 --
789 END amv_perspective_pvt;