DBA Data[Home] [Help]

PACKAGE: APPS.CSI_ITEM_INSTANCE_VLD_PVT

Source


1 PACKAGE csi_Item_Instance_Vld_pvt AUTHID CURRENT_USER AS
2 /* $Header: csiviivs.pls 120.13.12020000.8 2013/03/22 10:19:01 mvaradam ship $ */
3 
4 /*----------------------------------------------------*/
5 /* Procedure name: Check_Reqd_Param_num               */
6 /* Description : To Check if the reqd parameter       */
7 /*----------------------------------------------------*/
8 
9 PROCEDURE Check_Reqd_Param_num
10 (
11         p_number                IN      NUMBER,
12         p_param_name            IN      VARCHAR2,
13         p_api_name              IN      VARCHAR2
14 );
15 
16 /*----------------------------------------------------*/
17 /* Procedure name: Check_Reqd_Param_Char              */
18 /* Description : To Check if the reqd parameter       */
19 /*----------------------------------------------------*/
20 
21 PROCEDURE Check_Reqd_Param_char
22 (
23         p_variable              IN      VARCHAR2,
24         p_param_name            IN      VARCHAR2,
25         p_api_name              IN      VARCHAR2
26 );
27 
28 /*----------------------------------------------------*/
29 /* Procedure name: Check_Reqd_Param_Date              */
30 /* Description : To Check if the reqd parameter       */
31 /*----------------------------------------------------*/
32 
33 PROCEDURE Check_Reqd_Param_date
34 (
35         p_date                  IN      DATE,
36         p_param_name            IN      VARCHAR2,
37         p_api_name              IN      VARCHAR2
38 );
39 
40 /*----------------------------------------------------*/
41 /*  Validates the item instance ID                    */
42 /*----------------------------------------------------*/
43 
44 FUNCTION InstanceExists
45  (
46    p_item_instance_id  IN  NUMBER,
47    p_stack_err_msg     IN  BOOLEAN DEFAULT TRUE
48  )
49 RETURN BOOLEAN;
50 
51 /*-----------------------------------------------------*/
52 /*  Validates the termination status                   */
53 /*-----------------------------------------------------*/
54 
55 FUNCTION termination_status
56 ( p_instance_status_id     IN      NUMBER
57  )
58 RETURN BOOLEAN;
59 
60 /*----------------------------------------------------*/
61 /*  Validates the item instance Number                */
62 /*----------------------------------------------------*/
63 
64 
65 FUNCTION Is_InstanceNum_Valid
66 (   p_item_instance_id           IN      NUMBER,
67     p_instance_number            IN      VARCHAR2,
68     p_mode                       IN      VARCHAR2,
69     p_stack_err_msg              IN      BOOLEAN DEFAULT TRUE
70  ) RETURN BOOLEAN;
71 
72 /*----------------------------------------------------*/
73 /*  This function verifies that the item is a valid   */
74 /*  inventory item and is marked as 'Trackable'       */
75 /*----------------------------------------------------*/
76 
77 FUNCTION Is_Trackable
78  (
79    p_inv_item_id       IN  NUMBER,
80    p_org_id            IN  NUMBER,
81    p_trackable_flag    IN  VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
82    p_stack_err_msg     IN  BOOLEAN DEFAULT TRUE
83  )
84 RETURN BOOLEAN;
85 
86 /*----------------------------------------------------*/
87 /*  This Procedure verifies validity of serial number */
88 /*  ,lot number and revision when vld_organization_id */
89 /*  is changing.                                      */
90 /*----------------------------------------------------*/
91 
92 PROCEDURE Validate_org_dependent_params
93  (
94    p_instance_rec           IN OUT NOCOPY csi_datastructures_pub.instance_rec,
95    p_txn_rec                IN     csi_datastructures_pub.transaction_rec,
96    l_return_value           IN OUT NOCOPY BOOLEAN
97 );
98 
99 /*----------------------------------------------------*/
100 /*  This Procedure verifies that the item revision is */
101 /*  valid by looking into the mtl revision table      */
102 /*----------------------------------------------------*/
103 
104 PROCEDURE Validate_Revision
105  (
106    p_inv_item_id            IN     NUMBER,
107    p_inv_org_id             IN     NUMBER,
108    p_revision               IN     VARCHAR2,
109    p_creation_complete_flag IN OUT NOCOPY VARCHAR2,
110    l_return_value           IN OUT NOCOPY BOOLEAN,
111    p_rev_control_code       IN     NUMBER DEFAULT FND_API.G_MISS_NUM
112 );
113 
114 PROCEDURE Update_Revision
115  (
116    p_inv_item_id            IN     NUMBER,
117    p_inv_org_id             IN     NUMBER,
118    p_revision               IN     VARCHAR2,
119    l_return_value           IN OUT NOCOPY BOOLEAN,
120    p_rev_control_code       IN     NUMBER DEFAULT FND_API.G_MISS_NUM
121 );
122 
123 /*------------------------------------------------------*/
124 /*  This Procedure is called when creating a serial #s  */
125 /*  in mtl_serial_numbers for manually created CPs      */
126 /*------------------------------------------------------*/
127 --
128 PROCEDURE Create_Serial
129  (
130    p_inv_org_id         IN     NUMBER,
131    p_inv_item_id        IN     NUMBER,
132    p_serial_number      IN     VARCHAR2,
133    p_mfg_srl_num_flag   IN OUT NOCOPY VARCHAR2,
134    p_location_type_code IN     VARCHAR2,
135    p_ins_flag           OUT NOCOPY VARCHAR2,
136    p_lot_number         IN     VARCHAR2,
137    p_gen_object_id      OUT NOCOPY NUMBER,
138    l_return_value       IN OUT NOCOPY BOOLEAN
139  );
140 --
141 /*----------------------------------------------------*/
142 /*  This function verifies that the item              */
143 /*  is under serial control or not                    */
144 /*----------------------------------------------------*/
145 
146 FUNCTION Is_treated_serialized
147 ( p_serial_control_code  IN      NUMBER  ,
148   p_location_type_code   IN      VARCHAR2,
149   p_transaction_type_id  IN      NUMBER DEFAULT FND_API.G_MISS_NUM
150  )
151 RETURN BOOLEAN;
152 
153 /*----------------------------------------------------*/
154 /*  This function verifies that the item serial number*/
155 /*  is valid by looking into the mtl serial #s table  */
156 /*----------------------------------------------------*/
157 
158 PROCEDURE Validate_Serial_Number
159  (
160    p_inv_org_id                 IN     NUMBER,
161    p_inv_item_id                IN     NUMBER,
162    p_serial_number              IN     VARCHAR2,
163    P_mfg_serial_number_flag     IN     VARCHAR2,
164    p_txn_rec                    IN     csi_datastructures_pub.transaction_rec,
165    p_creation_complete_flag     IN OUT NOCOPY VARCHAR2,
166    p_location_type_code         IN     VARCHAR2, -- Added by sk on 09/13/01
167    p_srl_control_code           IN     NUMBER DEFAULT FND_API.G_MISS_NUM,
168    p_instance_id                IN     NUMBER DEFAULT FND_API.G_MISS_NUM,
169    p_instance_usage_code        IN     VARCHAR2,
170    l_return_value               IN OUT NOCOPY BOOLEAN
171  );
172 
173 /*----------------------------------------------------*/
174 /*  This procedure verifies that the serial number    */
175 /*  uniqueness                                        */
176 /*----------------------------------------------------*/
177 
178 PROCEDURE Validate_ser_uniqueness
179  (
180    p_inv_org_id                 IN     NUMBER,
181    p_inv_item_id                IN     NUMBER,
182    p_serial_number              IN     VARCHAR2,
183    p_instance_id                IN     NUMBER DEFAULT FND_API.G_MISS_NUM,
184    l_return_value               IN OUT NOCOPY BOOLEAN
185  ) ;
186 
187 /*---------------------------------------------------*/
188 /*  Validates the lot uniqueness and creates lot     */
189 /*  numbers in MLNs for manually created Instances   */
190 /*  Bug# 4011408                                     */
191 /*---------------------------------------------------*/
192 
193 PROCEDURE Create_Lot
194  (
195    p_inv_org_id                 IN     NUMBER,
196    p_inv_item_id                IN     NUMBER,
197    p_lot_number                 IN     VARCHAR2,
198    p_shelf_life_code            IN     NUMBER,
199    p_instance_id                IN     NUMBER,
200    l_return_value               IN OUT NOCOPY BOOLEAN
201  );
202 
203 /*----------------------------------------------------*/
204 /*  This procedure verifies that the item lot number  */
205 /*  is valid by looking into the mtl lot #s table     */
206 /*----------------------------------------------------*/
207 
208 PROCEDURE Validate_Lot_Number
209  (
210    p_inv_org_id             IN     NUMBER,
211    p_inv_item_id            IN     NUMBER,
212    p_lot_number             IN     VARCHAR2,
213    p_mfg_serial_number_flag IN     VARCHAR2,
214    p_txn_rec                IN     csi_datastructures_pub.transaction_rec,
215    p_creation_complete_flag IN OUT NOCOPY VARCHAR2,
216    p_lot_control_code       IN     NUMBER DEFAULT FND_API.G_MISS_NUM,
217    l_return_value           IN OUT NOCOPY BOOLEAN
218 );
219 
220 /*----------------------------------------------------*/
221 /*  This function verifies that the quantity is not<0 */
222 /*  and also checks for serialized items              */
223 /*----------------------------------------------------*/
224 
225 FUNCTION Is_Quantity_Valid
226 ( p_instance_id         IN      NUMBER  ,
227   p_inv_organization_id IN      NUMBER  ,
228   p_quantity            IN      NUMBER  ,
229   p_serial_control_code IN      NUMBER  ,
230   p_location_type_code  IN      VARCHAR2,
231   p_flag                IN      VARCHAR2,
232   p_csi_txn_type_id     IN      NUMBER DEFAULT -999,
233   p_current_qty         IN      NUMBER DEFAULT 0,
234   p_stack_err_msg       IN BOOLEAN DEFAULT TRUE
235 )
236 RETURN BOOLEAN;
237 
238 /*------------------------------------------------------------*/
239 /*  This function validates the uniqueness of config key      */
240 /*------------------------------------------------------------*/
241 
242 FUNCTION Is_unique_config_key
243 ( p_config_inst_hdr_id  IN      NUMBER  ,
244   p_config_inst_item_id IN      NUMBER  ,
245   p_instance_id         IN      NUMBER  ,
246   p_validation_mode     IN      VARCHAR2
247 )
248 RETURN BOOLEAN;
249 
250 /*----------------------------------------------------*/
251 /*  This function verifies that the UOM code is       */
252 /*  valid by looking into the mtl units of measure    */
253 /*  Also converts the entered uom into base uom       */
254 /*----------------------------------------------------*/
255 
256 Procedure Is_Valid_Uom
257 (
258     p_inv_org_id                IN      NUMBER,
259     p_inv_item_id               IN      NUMBER,
260     p_uom_code                  IN OUT NOCOPY  VARCHAR2,
261     p_quantity                  IN OUT NOCOPY  NUMBER,
262     p_creation_complete_flag    IN OUT NOCOPY  VARCHAR2,
263     l_return_value              IN OUT NOCOPY  BOOLEAN);
264 
265 /*----------------------------------------------------*/
266 /*  This function validates the item condition by     */
267 /*  looking through the MTL Material Statuses         */
268 /*----------------------------------------------------*/
269 
270 PROCEDURE Is_Valid_Condition
271  (
272    p_instance_condition_id  IN     NUMBER,
273    p_creation_complete_flag IN OUT NOCOPY VARCHAR2,
274    l_return_value           IN OUT NOCOPY BOOLEAN
275 );
276 /*----------------------------------------------------*/
277 /*  This function validates the item status by        */
278 /*  looking into the IB status tables                 */
279 /*----------------------------------------------------*/
280 
281 PROCEDURE Is_Valid_Status
282 (
283    p_instance_status_id     IN     NUMBER,
284    p_creation_complete_flag IN OUT NOCOPY VARCHAR2,
285    l_return_value           IN OUT NOCOPY BOOLEAN
286  );
287 
288 /*----------------------------------------------------*/
289 /*  This function validates the system id bu looking  */
290 /*  into the CSI systems lookup table                 */
291 /*----------------------------------------------------*/
292 
293 FUNCTION Is_Valid_System_id
294  (
295    p_system_id          IN  NUMBER,
296    p_stack_err_msg      IN  BOOLEAN DEFAULT TRUE
297  )
298 RETURN BOOLEAN;
299 
300 /*----------------------------------------------------*/
301 /*  This function checks for the instance type code   */
302 /*  by looking through the CSI lookups                */
303 /*----------------------------------------------------*/
304 
305 FUNCTION Is_Valid_Instance_Type
306  (
307    p_instance_type_code IN  VARCHAR2,
308    p_stack_err_msg      IN  BOOLEAN DEFAULT TRUE
309  )
310 RETURN BOOLEAN;
311 
312 /*-----------------------------------------------------*/
313 /*  This function checks for the instance usage code   */
314 /*  by looking through the CSI lookups                 */
315 /*-----------------------------------------------------*/
316 
317 FUNCTION Valid_Inst_Usage_Code
318 (
319    p_inst_usage_code    IN  VARCHAR2,
320    p_stack_err_msg      IN  BOOLEAN DEFAULT TRUE
321  )
322 RETURN BOOLEAN;
323 
324 /*----------------------------------------------------*/
325 /*  This function checks for the active start date    */
326 /*  by looking through the CSI Instances table        */
327 /*----------------------------------------------------*/
328 
329 FUNCTION Is_StartDate_Valid
330 (   p_start_date            IN  DATE,
331     p_end_date              IN  DATE,
332     p_stack_err_msg         IN  BOOLEAN DEFAULT TRUE
333 ) RETURN BOOLEAN;
334 
335 /*----------------------------------------------------*/
336 /*  This function checks for the active start date    */
337 /*  by looking through the CSI Instances table        */
338 /*----------------------------------------------------*/
339 
340 FUNCTION Is_EndDate_Valid
341 (
342         p_start_date            IN   DATE,
343     p_end_date              IN   DATE,
344         p_stack_err_msg         IN   BOOLEAN DEFAULT TRUE
345 ) RETURN BOOLEAN;
346 
347 /*----------------------------------------------------*/
348 /*  This function checks for the location type code   */
349 /*  by looking through the CSI lookups                */
350 /*----------------------------------------------------*/
351 
352 FUNCTION Is_Valid_Location_Source
353  (
354    p_loc_source_table   IN  VARCHAR2,
355    p_stack_err_msg      IN  BOOLEAN DEFAULT TRUE
356  )
357 RETURN BOOLEAN;
358 
359 /*-----------------------------------------------------*/
360 /*  This procedure is used to validate the values      */
361 /*  passed to the update_item_instance                 */
362 /*-----------------------------------------------------*/
363 
364 PROCEDURE get_merge_rec
365 (
366    p_instance_rec      IN OUT NOCOPY   csi_datastructures_pub.instance_rec,
367    l_curr_instance_rec IN       csi_datastructures_pub.instance_rec,
368    l_get_instance_rec  OUT NOCOPY      csi_datastructures_pub.instance_rec
369 );
370 
371 /*----------------------------------------------------*/
372 /* Function Name :  Get_instance_id                   */
373 /*                                                    */
374 /* Description  :  This function generates            */
375 /*                 instance_ids using a sequence      */
376 /*----------------------------------------------------*/
377 
378 FUNCTION Get_instance_id
379         ( p_stack_err_msg IN      BOOLEAN DEFAULT TRUE
380                            )
381 RETURN NUMBER;
382 
383 /*----------------------------------------------------*/
384 /* Function Name :  get_cis_item_instance_h_id        */
385 /*                                                    */
386 /* Description  :  This function generates            */
387 /*                 cis_item_instance_h_id using a seq.*/
388 /*----------------------------------------------------*/
389 
390 FUNCTION get_csi_item_instance_h_id
391         ( p_stack_err_msg IN      BOOLEAN DEFAULT TRUE
392                            )
393 RETURN NUMBER;
394 
395 /*----------------------------------------------------*/
396 /* Procedure name: Is_Instance_creation_complete      */
397 /* Description :   Check if the instance creation is  */
398 /*                 complete                           */
399 /*----------------------------------------------------*/
400 
401 FUNCTION Is_Inst_creation_complete
402 (       p_instance_id           IN      NUMBER,
403         p_stack_err_msg IN      BOOLEAN DEFAULT TRUE
404  ) RETURN BOOLEAN;
405 
406 /*----------------------------------------------------*/
407 /* Procedure name: Is_Instance_parent                 */
408 /* Description : Check for the parent in csi rel's    */
409 /*                                                    */
410 /*----------------------------------------------------*/
411 
412 FUNCTION Instance_has_Parent
413 ( p_instance_id          IN      NUMBER,
414   p_stack_err_msg        IN      BOOLEAN DEFAULT TRUE
415  ) RETURN BOOLEAN;
416 
417 /*----------------------------------------------------*/
418 /* This function verifies that the item serial number */
419 /* is valid by looking into the mtl serial #s table   */
420 /*----------------------------------------------------*/
421 
422 PROCEDURE Validate_srl_num_for_Inst_Upd
423  (
424    p_inv_org_id                 IN     NUMBER,
425    p_inv_item_id                IN     NUMBER,
426    p_serial_number              IN     VARCHAR2,
427    P_mfg_serial_number_flag     IN     VARCHAR2,
428    p_txn_rec                    IN     csi_datastructures_pub.transaction_rec,
429    p_location_type_code         IN     VARCHAR2, -- Added by sk on 09/13/01
430    p_srl_control_code           IN     NUMBER DEFAULT FND_API.G_MISS_NUM,
431    p_instance_usage_code        IN     VARCHAR2,
432    p_instance_id                IN     NUMBER DEFAULT FND_API.G_MISS_NUM,
433    l_return_value               IN OUT NOCOPY BOOLEAN
434  );
435 
436 /*----------------------------------------------------*/
437 /*  This function verifies that the quantity is not<0 */
438 /*  and also checks for serialized items              */
439 /*----------------------------------------------------*/
440 /*
441 FUNCTION Update_Quantity
442 (
443   p_instance_id         IN      NUMBER  ,
444   p_inv_organization_id IN      NUMBER  ,
445   p_quantity            IN      NUMBER  ,
446 --p_serial_number       IN      VARCHAR2,
447   p_serial_control_code IN      NUMBER  ,
448   p_location_type_code  IN      VARCHAR2,
449   p_stack_err_msg       IN      BOOLEAN DEFAULT TRUE
450 )
451 RETURN BOOLEAN;
452 */
453 /*----------------------------------------------------*/
454 /*  This Procedure validates the accounting class code*/
455 /*                                                    */
456 /*----------------------------------------------------*/
457 
458 PROCEDURE get_valid_acct_class
459 ( p_instance_id            IN      NUMBER
460  ,p_curr_acct_class_code   IN      VARCHAR2
461  ,p_loc_type_code          IN      VARCHAR2
462  ,x_acct_class_code        OUT NOCOPY     VARCHAR2
463 );
464 
465 /*----------------------------------------------------*/
466 /*  Validates the item instance ID                    */
467 /*----------------------------------------------------*/
468 
469 FUNCTION Is_InstanceID_Valid
470 (
471  p_instance_id          IN      NUMBER,
472  p_stack_err_msg        IN      BOOLEAN DEFAULT TRUE
473 ) RETURN BOOLEAN;
474 
475 /*----------------------------------------------------*/
476 /*  This function checks for the active end date      */
477 /*  by looking through the CSI Instances table        */
478 /*----------------------------------------------------*/
479 
480 FUNCTION EndDate_Valid
481 (
482         p_start_date            IN   DATE,
483     p_end_date              IN   DATE,
484     p_instance_id           IN NUMBER,
485 	p_transaction_id           IN NUMBER,  -- Bug 9081875
486         p_stack_err_msg IN      BOOLEAN DEFAULT TRUE
487 ) RETURN BOOLEAN;
488 
489 /*----------------------------------------------------*/
490 /*  This function checks for the uniqueness of        */
491 /*  the party owner                                   */
492 /*----------------------------------------------------*/
493 
494 FUNCTION validate_uniqueness
495 (   p_instance_rec       csi_datastructures_pub.instance_rec,
496     p_party_rec          csi_datastructures_pub.party_rec,
497     p_srl_control_code   NUMBER DEFAULT FND_API.G_MISS_NUM,
498     p_csi_txn_type_id    NUMBER DEFAULT FND_API.G_MISS_NUM
499 )
500 RETURN BOOLEAN;
501 
502 /*----------------------------------------------------*/
503 /*  Validates the item instance ID                    */
504 /*  Used exclusively by copy item instance            */
505 /*----------------------------------------------------*/
506 
507 FUNCTION Val_and_get_inst_rec
508  (
509    p_item_instance_id  IN       NUMBER,
510    p_instance_rec         OUT NOCOPY   csi_datastructures_pub.instance_rec,
511    p_stack_err_msg     IN       BOOLEAN DEFAULT TRUE
512  )
513 RETURN BOOLEAN;
514 
515 /*----------------------------------------------------*/
516 /*  Function : To get extended attrib level           */
517 /*  Used exclusively by copy item instance            */
518 /*----------------------------------------------------*/
519 
520 
521 FUNCTION get_ext_attrib_level
522 ( p_ATTRIBUTE_ID       IN          NUMBER,
523   p_ATTRIBUTE_LEVEL        OUT NOCOPY     VARCHAR2,
524   p_stack_err_msg      IN          BOOLEAN DEFAULT TRUE
525  ) RETURN BOOLEAN;
526 
527 /*----------------------------------------------------*/
528 /*  Function : val_bom_org                            */
529 /*  Function : To validate item and org               */
530 /*----------------------------------------------------*/
531 
532 FUNCTION val_item_org
533 ( p_INVENTORY_ITEM_ID       IN          NUMBER,
534   p_ORGANIZATION_ID         IN          VARCHAR2,
535   p_stack_err_msg           IN          BOOLEAN DEFAULT TRUE
536  ) RETURN BOOLEAN;
537 
538 /*-----------------------------------------------------*/
539 /*  Function : val_bom_org                             */
540 /*             To validate bom and org                 */
541 /*-----------------------------------------------------*/
542 
543 FUNCTION val_bom_org
544 ( p_INVENTORY_ITEM_ID       IN          NUMBER,
545   p_ORGANIZATION_ID         IN          VARCHAR2,
546   p_stack_err_msg           IN          BOOLEAN DEFAULT TRUE
547  ) RETURN BOOLEAN;
548 
549 
550 /*-----------------------------------------------------*/
551 /*  Function : val_inst_ter_flag                       */
552 /*             To validate instances with statuses     */
553 /*              having termination_flag set to 'Y'     */
554 /*              has a end_date                         */
555 /*-----------------------------------------------------*/
556 
557 FUNCTION val_inst_ter_flag
558 ( p_status_id        IN          NUMBER,
559   p_stack_err_msg    IN          BOOLEAN DEFAULT TRUE
560  ) RETURN BOOLEAN;
561 
562 /*-----------------------------------------------------*/
563 /*  Function : Is_config_exploded                      */
564 /*             To check if the configuration for       */
565 /*              the item has been exploded ever        */
566 /*              before in Istalled Base                */
567 /*-----------------------------------------------------*/
568 
569 FUNCTION Is_config_exploded
570 ( p_instance_id      IN          NUMBER,
571   p_stack_err_msg    IN          BOOLEAN DEFAULT TRUE
572  ) RETURN BOOLEAN;
573 
574 
575 /*-----------------------------------------------------------*/
576 /* Procedure name: Is_EndDate_Valid                          */
577 /* Description : Check if version labels active end date     */
578 /*         is valid                                          */
579 /*-----------------------------------------------------------*/
580 
581 FUNCTION Is_Ver_EndDate_Valid
582 (
583     p_start_date            IN   DATE,
584     p_end_date              IN   DATE,
585     p_instance_id           IN NUMBER,
586 	p_stack_err_msg IN      BOOLEAN DEFAULT TRUE
587 ) RETURN BOOLEAN;
588 --
589 /*-----------------------------------------------------------*/
590 /* Function name: Is_Valid_Location_ID                       */
591 /* Description : Check if the Location_ID and Location_Type  */
592 /*               are valid                                   */
593 /*-----------------------------------------------------------*/
594 FUNCTION Is_Valid_Location_ID
595    (
596      p_location_source_table              IN  VARCHAR2,
597      p_location_id                        IN  NUMBER
598    ) RETURN BOOLEAN;
599 --
600 /*-----------------------------------------------------------*/
601 /* Function name: Validate_Related_Loc_Params                */
602 /* Description : Check the Related Location Parameters for   */
603 /*               the give Location Type code and Location ID */
604 /*-----------------------------------------------------------*/
605 FUNCTION Validate_Related_Loc_Params
606  (
607    p_location_source_table              IN  VARCHAR2,
608    p_location_id                        IN  NUMBER,
609    p_organization_id                    IN  NUMBER,
610    p_subinventory                       IN  VARCHAR2,
611    p_locator_id                         IN  NUMBER,
612    p_project_id                         IN  NUMBER,
613    p_task_id                            IN  NUMBER,
614    p_sales_ord_line_id                  IN  NUMBER,
615    p_wip_job_id                         IN  NUMBER,
616    p_po_line_id                         IN  NUMBER,
617    p_inst_usage_code                    IN  VARCHAR2
618  ) RETURN BOOLEAN;
619 
620 -- Added by sguthiva for att enhancements
621 
622 /*-----------------------------------------------------------*/
623 /* Procedure name: get_link_locations                        */
624 /* Description : Retreive the Location Parameters from       */
625 /*               associated instances of an instance of      */
626 /*               instance item class link                    */
627 /*-----------------------------------------------------------*/
628  PROCEDURE get_link_locations
629  (p_instance_header_tbl         IN OUT NOCOPY  csi_datastructures_pub.instance_header_tbl,
630   x_return_status               OUT NOCOPY     VARCHAR2
631   );
632 
633 /*-----------------------------------------------------------*/
634 /* Procedure name: Call_batch_validate                       */
635 /* Description   : Call the batch validate                   */
636 /*-----------------------------------------------------------*/
637 PROCEDURE Call_batch_validate
638 ( p_instance_rec        IN  csi_datastructures_pub.instance_rec
639  ,p_config_hdr_id       IN  NUMBER
640  ,p_config_rev_nbr      IN  NUMBER
641  ,x_config_hdr_id       OUT NOCOPY NUMBER
642  ,x_config_rev_nbr      OUT NOCOPY NUMBER
643  ,x_return_status       OUT NOCOPY VARCHAR2);
644 
645 /*-----------------------------------------------------------*/
646 /* Procedure name: Create_hdr_xml                            */
647 /* Description   : Build xml message to pass it to cz api    */
648 /*-----------------------------------------------------------*/
649 
650 PROCEDURE Create_hdr_xml
651 ( p_config_hdr_id       IN  NUMBER
652 , p_config_rev_nbr      IN  NUMBER
653 , p_config_inst_hdr_id  IN  NUMBER
654 , x_xml_hdr             OUT NOCOPY VARCHAR2 -- this needs to be passed to Send_input_xml
655 , x_return_status       OUT NOCOPY VARCHAR2 );
656 
657 /*-----------------------------------------------------------*/
658 /* Procedure name: Send_input_xml                            */
659 /* Description   : Make the actual call to cz api            */
660 /*-----------------------------------------------------------*/
661 PROCEDURE Send_input_xml
662 ( p_xml_hdr             IN   VARCHAR2 -- Value passed from Create_hdr_xml
663 , x_out_xml_msg         OUT NOCOPY  LONG
664 , x_return_status       OUT NOCOPY VARCHAR2);
665 
666 PROCEDURE  Parse_output_xml
667 (  p_xml                IN  LONG
668   ,x_config_hdr_id      OUT NOCOPY NUMBER
669   ,x_config_rev_nbr     OUT NOCOPY NUMBER
670   ,x_return_status      OUT NOCOPY VARCHAR2 );
671 -- End addition by sguthiva for att enhancements
672 
673 /*-----------------------------------------------------------*/
674 /* Procedure name: Is_Ver_StartDate_Valid                    */
675 /* Description : Check if Version Label's active start       */
676 /*    date is valid                                          */
677 /*-----------------------------------------------------------*/
678 
679 FUNCTION Is_Ver_StartDate_Valid
680 (   p_start_date            IN   DATE,
681     p_end_date              IN   DATE,
682     p_instance_id           IN   NUMBER,
683     p_stack_err_msg         IN   BOOLEAN DEFAULT TRUE
684 ) RETURN BOOLEAN;
685 --
686 /*-----------------------------------------------------------*/
687 /* Procedure name: Check_Prior_Txn                           */
688 /* Description : Check if there is any transactions pending  */
689 /*               this Item Instance prior to the current Txn */
690 /*-----------------------------------------------------------*/
691 
692 PROCEDURE Check_Prior_Txn
693    ( p_instance_rec           IN  csi_datastructures_pub.instance_rec
694     ,p_txn_rec                IN  csi_datastructures_pub.transaction_rec
695     ,p_prior_txn_id           OUT NOCOPY NUMBER
696     ,p_mode                   IN  VARCHAR2
697     ,x_return_status          OUT NOCOPY VARCHAR2
698    );
699    --
700 /*-----------------------------------------------------------*/
701 /* Procedure name: Is_Forward_Synch                          */
702 /* Description : Check if for the instance, forward synch is */
703 /*               not done after error correction.            */
704 /*-----------------------------------------------------------*/
705 
706 FUNCTION Is_Forward_Synch
707     ( p_instance_id  IN NUMBER,
708       p_stop_all_txn IN VARCHAR2,
709       p_mtl_txn_id   IN NUMBER )
710  RETURN BOOLEAN;
711 --
712 /*-----------------------------------------------------------*/
713 /* Function name: Is_Valid_Master_Org                        */
714 /* Description : Check validity of the Master Organization   */
715 /*-----------------------------------------------------------*/
716 
717 FUNCTION Is_Valid_Master_Org
718    ( p_master_org_id  IN NUMBER )
719   RETURN BOOLEAN;
720 --
721 
722 /*-----------------------------------------------------------*/
723 /* Function name: Check_for_eam_item                         */
724 /* Description  : Check for eam item                         */
725 /*-----------------------------------------------------------*/
726 FUNCTION Check_for_eam_item
727 (p_inventory_item_id   IN NUMBER,
728  p_organization_id     IN NUMBER,
729  p_eam_item_type       IN NUMBER DEFAULT FND_API.G_MISS_NUM
730  )
731   RETURN BOOLEAN;
732 
733   PROCEDURE validate_serial_for_upd(
734     p_instance_rec       IN csi_datastructures_pub.instance_rec,
735     p_txn_rec            IN csi_datastructures_pub.transaction_rec,
736     p_old_serial_number  IN varchar2,
737     x_return_status      OUT nocopy varchar2);
738 
739 /*---------------------------------------------------------*/
740 /*  This function checks for the operational status code   */
741 /*  by looking through the CSI lookups                     */
742 /*---------------------------------------------------------*/
743 
744 FUNCTION Valid_operational_status
745 (
746    p_operational_status    IN  VARCHAR2
747  )
748 RETURN BOOLEAN;
749 
750 /*---------------------------------------------------------*/
751 /*  This function checks for the currency code             */
752 /*  by looking through the fnd_currencies                  */
753 /*---------------------------------------------------------*/
754 FUNCTION Valid_currency_code
755 (
756    p_currency_code    IN  VARCHAR2
757  )
758 RETURN BOOLEAN;
759 
760 /*---------------------------------------------------------*/
761 /*  This function checks if status is updateable           */
762 /*  by looking through the csi_instance_statuses           */
763 /*---------------------------------------------------------*/
764 FUNCTION is_status_updateable
765 (
766    p_instance_status    IN  NUMBER,
767    p_current_status     IN  NUMBER
768  )
769 RETURN BOOLEAN;
770 --
771 /*-----------------------------------------------------------*/
772 /*  This function gets the version label of an item instance */
773 /*  based on the time stamp passed.                          */
774 /*---------------------------------------------------------*/
775 FUNCTION Get_Version_label
776 (
777    p_instance_id        IN  NUMBER,
778    p_time_stamp         IN  DATE
779  )
780 RETURN VARCHAR2;
781 --
782 --modified for bug#14835893
783 PROCEDURE get_mtl_txn_for_srl
784 (
785      p_transaction_id    IN number, --Added for Bug : 14835893
786 	p_inventory_item_id IN number,
787      p_serial_number     IN varchar2,
788 	  x_mtl_txn_tbl       OUT nocopy csi_datastructures_pub.mtl_txn_tbl
789 );
790 
791 
792 END csi_Item_Instance_Vld_pvt;