DBA Data[Home] [Help]

PACKAGE: APPS.CSI_ITEM_INSTANCE_PVT

Source


1 PACKAGE CSI_ITEM_INSTANCE_PVT  AS
2 /* $Header: csiviis.pls 120.7.12010000.1 2008/07/25 08:15:58 appldev ship $ */
3 
4 /*------------------------------------------------------*/
5 /* Declare the PL/SQL tables used by the validation API */
6 /*------------------------------------------------------*/
7 TYPE ITEM_ATTRIBUTE_REC IS RECORD
8   (
9     inventory_item_id           NUMBER      := FND_API.G_MISS_NUM
10    ,organization_id	            NUMBER      := FND_API.G_MISS_NUM
11    ,master_organization_id      NUMBER      := FND_API.G_MISS_NUM
12    ,serial_number_control_code  NUMBER      := FND_API.G_MISS_NUM
13    ,lot_control_code            NUMBER      := FND_API.G_MISS_NUM
14    ,revision_control_code       NUMBER      := FND_API.G_MISS_NUM
15    ,Uom_code                    VARCHAR2(3) := FND_API.G_MISS_CHAR
16    ,Trackable_flag              VARCHAR2(1) := FND_API.G_MISS_CHAR
17    ,shelf_life_code             NUMBER      := FND_API.G_MISS_NUM
18    ,valid_flag                  VARCHAR2(1) := FND_API.G_MISS_CHAR
19    ,eam_item_type               NUMBER      := FND_API.G_MISS_NUM
20    ,equipment_type              NUMBER      := FND_API.G_MISS_NUM
21   );
22 
23 TYPE ITEM_ATTRIBUTE_TBL IS TABLE OF ITEM_ATTRIBUTE_REC INDEX BY BINARY_INTEGER;
24 --
25 TYPE GENERIC_ID_REC IS RECORD
26   (
27      generic_id 	NUMBER	     := FND_API.G_MISS_NUM
28     ,id_type		VARCHAR2(30) := FND_API.G_MISS_CHAR
29     ,terminated_flag    VARCHAR2(30) := FND_API.G_MISS_CHAR
30     ,valid_flag         VARCHAR2(1)  := FND_API.G_MISS_CHAR
31   );
32 
33 TYPE GENERIC_ID_TBL IS TABLE OF GENERIC_ID_REC INDEX BY BINARY_INTEGER;
34 --
35 TYPE LOOKUP_REC IS RECORD
36   (
37     lookup_code		VARCHAR2(30)	:= FND_API.G_MISS_CHAR
38    ,lookup_type		VARCHAR2(30)	:= FND_API.G_MISS_CHAR
39    ,valid_flag		VARCHAR2(1)	:= FND_API.G_MISS_CHAR
40   );
41 
42 TYPE LOOKUP_TBL IS TABLE OF LOOKUP_REC INDEX BY BINARY_INTEGER;
43 --
44 TYPE LOCATION_REC IS RECORD
45    (
46      location_type_code	VARCHAR2(30)		:= FND_API.G_MISS_CHAR
47     ,location_id 	NUMBER			:= FND_API.G_MISS_NUM
48     ,valid_flag		VARCHAR2(1)		:= FND_API.G_MISS_CHAR
49    );
50 TYPE LOCATION_TBL IS TABLE OF LOCATION_REC INDEX BY BINARY_INTEGER;
51 --
52 TYPE INS_COUNT_REC IS RECORD
53   (
54      inv_count         	NUMBER   	:= FND_API.G_MISS_NUM
55     ,generic_count 	NUMBER       	:= FND_API.G_MISS_NUM
56     ,location_count	NUMBER       	:= FND_API.G_MISS_NUM
57     ,lookup_count	NUMBER       	:= FND_API.G_MISS_NUM
58   );
59 -- PL/SQL tables used by Explode_BOM API.
60 --
61 TYPE PARENT_CHILD_REC IS RECORD
62    (
63      parent_sort_order        VARCHAR2(2000)
64     ,child_sort_order         VARCHAR2(2000)
65    );
66 TYPE PARENT_CHILD_TBL IS TABLE OF PARENT_CHILD_REC INDEX BY BINARY_INTEGER;
67 --
68 TYPE BOM_SORT_ORDER_REC IS RECORD
69    (
70      parent_sort_order    VARCHAR2(2000),
71      child_sort_order     VARCHAR2(2000),
72      mark_flag            VARCHAR2(1),
73      child_occurance      NUMBER
74    );
75 --
76 TYPE BOM_SORT_ORDER_TBL IS TABLE OF BOM_SORT_ORDER_REC INDEX BY BINARY_INTEGER;
77 --
78 FUNCTION Is_Parent(
79 		    p_child_sort_order   VARCHAR2
80 		   ,p_parent_child_tbl   csi_item_instance_pvt.parent_child_tbl
81 		  )
82 RETURN BOOLEAN;
83 --
84 PROCEDURE Get_parent_sort_order
85    (
86      p_parent_sort_order   IN OUT NOCOPY VARCHAR2
87     ,p_parent_child_tbl    IN csi_item_instance_pvt.parent_child_tbl
88     ,p_bom_sort_order_tbl  IN csi_item_instance_pvt.bom_sort_order_tbl
89    );
90 --
91 FUNCTION Has_Trackable_Component
92    (
93      p_inventory_item_id   IN NUMBER
94     ,p_organization_id     IN NUMBER
95     ,p_explosion_level     IN NUMBER
96    ) RETURN BOOLEAN;
97 --
98 TYPE MAP_INST_REC IS RECORD
99    (
100      old_instance_id        NUMBER
101     ,new_instance_id        NUMBER
102    );
103 TYPE MAP_INST_TBL IS TABLE OF MAP_INST_REC INDEX BY BINARY_INTEGER;
104 --
105 TYPE OWNER_PTY_ACCT_REC IS RECORD
106    ( instance_id            NUMBER
107     ,party_source_table     VARCHAR2(30)
108     ,party_id               NUMBER
109     ,account_id             NUMBER
110     ,vld_organization_id    NUMBER
111    );
112 TYPE OWNER_PTY_ACCT_TBL IS TABLE OF OWNER_PTY_ACCT_REC INDEX BY BINARY_INTEGER;
113 --
114 TYPE T_NUM IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
115 TYPE T_V30 IS TABLE OF VARCHAR2(30) INDEX BY BINARY_INTEGER;
116 --
117 TYPE OWNER_PTY_ACCT_REC_TAB IS RECORD
118    (
119      instance_id             T_NUM
120     ,party_source_table      T_V30
121     ,party_id                T_NUM
122     ,account_id              T_NUM
123    );
124 --
125 /*--------------------------------------------------*/
126 /* procedure name: create_item_instance             */
127 /* description :   procedure used to                */
128 /*                 create item instances            */
129 /*                                                  */
130 /*--------------------------------------------------*/
131 
132 TYPE lock_instances_rec IS RECORD
133   (
134      instance_id             NUMBER  := fnd_api.g_miss_num
135     ,root_instance_id        NUMBER  := fnd_api.g_miss_num
136     ,lock_id                 NUMBER  := fnd_api.g_miss_num
137     ,lock_status             NUMBER  := fnd_api.g_miss_num
138     ,source_application_id   NUMBER  := fnd_api.g_miss_num
139     ,source_txn_header_ref   VARCHAR2(30) := fnd_api.g_miss_char
140     ,source_txn_line_ref1    VARCHAR2(30) := fnd_api.g_miss_char
141     ,source_txn_line_ref2    VARCHAR2(30) := fnd_api.g_miss_char
142     ,source_txn_line_ref3    VARCHAR2(30) := fnd_api.g_miss_char
143     ,config_inst_hdr_id      NUMBER := fnd_api.g_miss_num
144     ,config_inst_item_id     NUMBER := fnd_api.g_miss_num
145     ,config_inst_rev_num     NUMBER := fnd_api.g_miss_num
146     ,root_config_inst_hdr_id NUMBER := fnd_api.g_miss_num
147     ,root_config_inst_item_id NUMBER := fnd_api.g_miss_num
148     ,root_config_inst_rev_num NUMBER := fnd_api.g_miss_num
149   );
150 
151 TYPE lock_instances_tbl IS TABLE OF lock_instances_rec INDEX BY BINARY_INTEGER;
152 
153 TYPE lock_config_rec IS RECORD
154   (
155      config_inst_hdr_id      NUMBER := fnd_api.g_miss_num
156     ,config_inst_item_id     NUMBER := fnd_api.g_miss_num
157     ,config_inst_rev_num     NUMBER := fnd_api.g_miss_num
158   );
159 
160 FUNCTION check_item_instance_lock
161 (    p_instance_id         IN      NUMBER :=fnd_api.g_miss_num,
162      p_config_inst_hdr_id  IN      NUMBER :=fnd_api.g_miss_num,
163      p_config_inst_item_id IN      NUMBER :=fnd_api.g_miss_num,
164      p_config_inst_rev_num IN      NUMBER :=fnd_api.g_miss_num
165 ) RETURN BOOLEAN;
166 
167 PROCEDURE get_instance_lock_status
168 (    p_instance_id         IN   NUMBER ,
169      p_lock_status         OUT  NOCOPY NUMBER
170 );
171 PROCEDURE lock_item_instances
172  (
173      p_api_version           IN   NUMBER
174     ,p_commit                IN   VARCHAR2 := fnd_api.g_false
175     ,p_init_msg_list         IN   VARCHAR2 := fnd_api.g_false
176     ,p_validation_level      IN   NUMBER := fnd_api.g_valid_level_full
177     ,px_config_tbl           IN   OUT NOCOPY csi_cz_int.config_tbl
178 --    ,p_txn_rec               IN   OUT NOCOPY csi_datastructures_pub.transaction_rec
179     ,x_return_status         OUT  NOCOPY VARCHAR2
180     ,x_msg_count             OUT  NOCOPY NUMBER
181     ,x_msg_data              OUT  NOCOPY VARCHAR2
182  );
183 
184 PROCEDURE unlock_item_instances
185  (
186      p_api_version           IN   NUMBER
187     ,p_commit                IN   VARCHAR2 := fnd_api.g_false
188     ,p_init_msg_list         IN   VARCHAR2 := fnd_api.g_false
189     ,p_validation_level      IN   NUMBER := fnd_api.g_valid_level_full
190     ,p_config_tbl            IN   csi_cz_int.config_tbl
191     ,p_unlock_all            IN   VARCHAR2 :=fnd_api.g_false
192 --    ,p_txn_rec               IN   OUT NOCOPY csi_datastructures_pub.transaction_rec
193     ,x_return_status         OUT  NOCOPY VARCHAR2
194     ,x_msg_count             OUT  NOCOPY NUMBER
195     ,x_msg_data              OUT  NOCOPY VARCHAR2
196  );
197 
198 PROCEDURE create_item_instance
199  (
200      p_api_version           IN     NUMBER
201     ,p_commit                IN     VARCHAR2 := fnd_api.g_false
202     ,p_init_msg_list         IN     VARCHAR2 := fnd_api.g_false
203     ,p_validation_level      IN     NUMBER   := fnd_api.g_valid_level_full
204     ,p_instance_rec          IN OUT NOCOPY csi_datastructures_pub.instance_rec
205     ,p_txn_rec               IN OUT NOCOPY csi_datastructures_pub.transaction_rec
206     ,p_party_tbl             IN OUT NOCOPY csi_datastructures_pub.party_tbl
207     ,p_asset_tbl             IN OUT NOCOPY csi_datastructures_pub.instance_asset_tbl
208     ,x_return_status         OUT    NOCOPY VARCHAR2
209     ,x_msg_count             OUT    NOCOPY NUMBER
210     ,x_msg_data              OUT    NOCOPY VARCHAR2
211     ,p_item_attribute_tbl    IN OUT NOCOPY csi_item_instance_pvt.item_attribute_tbl
212     ,p_location_tbl          IN OUT NOCOPY csi_item_instance_pvt.location_tbl
213     ,p_generic_id_tbl        IN OUT NOCOPY csi_item_instance_pvt.generic_id_tbl
214     ,p_lookup_tbl            IN OUT NOCOPY csi_item_instance_pvt.lookup_tbl
215     ,p_ins_count_rec         IN OUT NOCOPY csi_item_instance_pvt.ins_count_rec
216     ,p_called_from_grp       IN     VARCHAR2 DEFAULT fnd_api.g_false
217     ,p_internal_party_id     IN     NUMBER DEFAULT -9999
218  );
219 
220 /*---------------------------------------------------*/
221 /* Procedure name: update_item_instance              */
222 /* Description :   procedure used to update an Item  */
223 /*                 Instance                          */
224 /*---------------------------------------------------*/
225 
226 PROCEDURE update_item_instance
227  (
228       p_api_version         IN      NUMBER
229      ,p_commit              IN      VARCHAR2 := fnd_api.g_false
230      ,p_init_msg_list       IN      VARCHAR2 := fnd_api.g_false
231      ,p_validation_level    IN      NUMBER   := fnd_api.g_valid_level_full
232      ,p_instance_rec        IN OUT  NOCOPY csi_datastructures_pub.instance_rec
233      ,p_txn_rec             IN OUT  NOCOPY csi_datastructures_pub.transaction_rec
234 
235      ,x_instance_id_lst     OUT     NOCOPY csi_datastructures_pub.id_tbl
236      ,x_return_status       OUT     NOCOPY VARCHAR2
237      ,x_msg_count           OUT     NOCOPY NUMBER
238      ,x_msg_data            OUT     NOCOPY VARCHAR2
239      ,p_item_attribute_tbl  IN OUT NOCOPY csi_item_instance_pvt.item_attribute_tbl
240 
241      ,p_location_tbl        IN OUT NOCOPY csi_item_instance_pvt.location_tbl
242      ,p_generic_id_tbl      IN OUT NOCOPY csi_item_instance_pvt.generic_id_tbl
243      ,p_lookup_tbl          IN OUT NOCOPY csi_item_instance_pvt.lookup_tbl
244      ,p_ins_count_rec       IN OUT NOCOPY csi_item_instance_pvt.ins_count_rec
245      ,p_called_from_rel     IN     VARCHAR2 DEFAULT fnd_api.g_false
246      ,p_validation_mode     IN     VARCHAR2 DEFAULT 'A'
247      ,p_oks_txn_inst_tbl    IN OUT NOCOPY oks_ibint_pub.txn_instance_tbl
248      ,p_child_inst_tbl      IN OUT NOCOPY csi_item_instance_grp.child_inst_tbl
249  );
250 
251 /*---------------------------------------------------*/
252 /* Procedure name: expire_item_instance              */
253 /* Description :   procedure for                     */
254 /*                 Expiring an Item Instance         */
255 /*---------------------------------------------------*/
256 
257 PROCEDURE expire_item_instance
258  (
259       p_api_version         IN      NUMBER
260      ,p_commit              IN      VARCHAR2 := fnd_api.g_false
261      ,p_init_msg_list       IN      VARCHAR2 := fnd_api.g_false
262      ,p_validation_level    IN      NUMBER   := fnd_api.g_valid_level_full
263      ,p_instance_rec        IN      csi_datastructures_pub.instance_rec
264      ,p_expire_children     IN      VARCHAR2 := fnd_api.g_false
265      ,p_txn_rec             IN OUT  NOCOPY csi_datastructures_pub.transaction_rec
266      ,x_instance_id_lst     OUT     NOCOPY csi_datastructures_pub.id_tbl
267      ,p_oks_txn_inst_tbl    IN OUT NOCOPY oks_ibint_pub.txn_instance_tbl
268      ,x_return_status       OUT     NOCOPY VARCHAR2
269      ,x_msg_count           OUT     NOCOPY NUMBER
270      ,x_msg_data            OUT     NOCOPY VARCHAR2
271  );
272 
273 /*---------------------------------------------------*/
274 /* Procedure name:  Get_Inst_Column_Values           */
275 /* Description   :  This procedure gets the column   */
276 /*                  values for the Dynamic SQL       */
277 /*---------------------------------------------------*/
278 
279 PROCEDURE Get_Inst_Column_Values
280 (
281     p_get_inst_cursor_id      IN   NUMBER,
282     x_instance_id             OUT  NOCOPY NUMBER  );
283 
284 /*---------------------------------------------------*/
285 /* Procedure name:  Initialize_inst_rec              */
286 /* Description :    This procudure recontructs the   */
287 /*                  record from the history          */
288 /*---------------------------------------------------*/
289 
290 PROCEDURE Initialize_inst_rec
291 (
292   x_instance_rec                IN OUT NOCOPY csi_datastructures_pub.instance_header_rec,
293   p_instance_hist_id            IN     NUMBER ,
294   x_nearest_full_dump           IN OUT NOCOPY DATE  ) ;
295 
296 /*---------------------------------------------------*/
297 /* Procedure name:  Construct_inst_from_hist         */
298 /* Description :    This procudure recontructs the   */
299 /*                  record from the history          */
300 /*---------------------------------------------------*/
301 
302 PROCEDURE Construct_inst_from_hist
303 (
304   x_instance_rec           IN OUT NOCOPY csi_datastructures_pub.instance_header_rec,
305   p_time_stamp             IN     DATE                                      ) ;
306 
307 /*---------------------------------------------------*/
308 /* Procedure name:  Construct_inst_header_rec        */
309 /* Description   :  This procedure defines the       */
310 /*                  columns for the Dynamic SQL      */
311 /*---------------------------------------------------*/
312 
313 PROCEDURE Construct_inst_header_rec
314 (
315   p_inst_id                 IN   NUMBER,
316   x_instance_header_tbl     IN OUT NOCOPY  csi_datastructures_pub.instance_header_tbl );
317 
318 /*----------------------------------------------------------*/
319 /* Procedure name:  Resolve_Id_Columns                      */
320 /* Description   :  This procedure gets the column values   */
321 /*                  for the Dynamic SQL                     */
322 /*----------------------------------------------------------*/
323 
324 PROCEDURE Resolve_id_columns
325            (p_instance_header_tbl  IN OUT NOCOPY csi_datastructures_pub.instance_header_tbl);
326 
327 /*---------------------------------------------------*/
328 /* Procedure name:  Define_Inst_Columns              */
329 /* Description   :  This procedure defines the       */
330 /*                  columns for the Dynamic SQL      */
331 /*---------------------------------------------------*/
332 
333 PROCEDURE Define_Inst_Columns
334 (
335   p_get_inst_cursor_id      IN   NUMBER,
336   p_instance_query_rec      IN   csi_datastructures_pub.instance_query_rec );
337 
338 /*---------------------------------------------------*/
339 /* Procedure name:  Bind_Inst_variable               */
340 /* Description :    Procedure used to generate the   */
341 /*                  where clause for the Dynamic SQL */
342 /*---------------------------------------------------*/
343 
344 PROCEDURE Bind_Inst_variable
345 (
346     p_instance_query_rec        IN   csi_datastructures_pub.instance_query_rec,
347     p_party_query_rec           IN   csi_datastructures_pub.party_query_rec,
348     p_pty_acct_query_rec        IN   csi_datastructures_pub.party_account_query_rec,
349     p_transaction_id            IN   NUMBER,
350     p_cur_get_inst_rel          IN   NUMBER
351 );
352 
353 /*---------------------------------------------------*/
354 /* Procedure name:  Gen_Inst_Where_Clause            */
355 /* Description :    Procedure used to  build the     */
356 /*                  where clause  Dynamic SQL        */
357 /*---------------------------------------------------*/
358 
359 PROCEDURE Gen_Inst_Where_Clause
360 (
361     p_instance_query_rec    IN      csi_datastructures_pub.instance_query_rec,
362     p_party_query_rec       IN      csi_datastructures_pub.party_query_rec,
363     p_pty_acct_query_rec    IN      csi_datastructures_pub.party_account_query_rec,
364     p_transaction_id        IN      NUMBER,
365     x_select_stmt           OUT     NOCOPY VARCHAR2,
366     p_active_instance_only  IN      VARCHAR2
367 );
368 
369 /*---------------------------------------------------*/
370 /* Procedure name:  Get_Instance_Column_Values       */
371 /* Description   :  This procedure gets the column   */
372 /*                  values for the Dynamic SQL       */
373 /*---------------------------------------------------*/
374 
375 PROCEDURE Get_Instance_Col_Values
376 (
377     p_get_instance_cur_id      IN       NUMBER,
378     x_instance_rec             IN OUT   NOCOPY csi_datastructures_pub.instance_header_rec
379 );
380 
381 /*---------------------------------------------------*/
382 /* Procedure name:  Define_Instance_Columns          */
383 /* Description   :  This procedure defines the       */
384 /*                  columns for the Dynamic SQL      */
385 /*---------------------------------------------------*/
386 
387 PROCEDURE Define_Instance_Columns
388 (
389   p_get_instance_cur_id      IN   NUMBER
390 );
391 
392 /*---------------------------------------------------*/
393 /* Procedure name:  Anything_To_Update               */
394 /* Description   :  This function  checks if any of  */
395 /*                  the columns related to instance  */
396 /*                  are changing                     */
397 /*---------------------------------------------------*/
398 
399 FUNCTION Anything_To_Update
400 (
401  p_instance_rec    csi_datastructures_pub.instance_rec
402 )
403 RETURN BOOLEAN;
404 
405 /*----------------------------------------------------*/
406 /*  This Procedure validates the accounting class code*/
407 /*  depending upon the location type code             */
408 /*----------------------------------------------------*/
409 
410 PROCEDURE get_and_update_acct_class
411 ( p_api_version          IN      NUMBER
412  ,p_commit               IN      VARCHAR2 := fnd_api.g_false
413  ,p_init_msg_list        IN      VARCHAR2 := fnd_api.g_false
414  ,p_validation_level     IN      NUMBER   := fnd_api.g_valid_level_full
415  ,p_instance_id          IN      NUMBER
416  ,p_instance_expiry_flag IN      VARCHAR2 :=  fnd_api.g_true
417  ,p_txn_rec              IN OUT  NOCOPY csi_datastructures_pub.transaction_rec
418  ,x_acct_class_code      OUT     NOCOPY VARCHAR2
419  ,x_return_status        OUT     NOCOPY VARCHAR2
420  ,x_msg_count            OUT     NOCOPY NUMBER
421  ,x_msg_data             OUT     NOCOPY VARCHAR2
422 );
423 
424 /*---------------------------------------------------*/
425 /* Procedure name:  Bind_Instance_variable           */
426 /* Description :    Procedure used to generate the   */
427 /*                  where clause for Item Instances  */
428 /*---------------------------------------------------*/
429 
430 PROCEDURE Bind_Instance_variable
431 (
432     p_instance_rec              IN   csi_datastructures_pub.instance_header_rec,
433     p_cur_get_instance_rel      IN   NUMBER
434 );
435 
436 /*---------------------------------------------------*/
437 /* Procedure name:  Split_Item_Instance              */
438 /* Description   :  This procedure is used to create */
439 /*                  split lines for instance         */
440 /*---------------------------------------------------*/
441 
442 PROCEDURE Split_Item_Instance
443  (
444    p_api_version                  IN      NUMBER
445   ,p_commit                       IN      VARCHAR2 := fnd_api.g_false
446   ,p_init_msg_list                IN      VARCHAR2 := fnd_api.g_false
447   ,p_validation_level             IN      NUMBER   := fnd_api.g_valid_level_full
448   ,p_source_instance_rec          IN OUT  NOCOPY csi_datastructures_pub.instance_rec
449   ,p_quantity1                    IN      NUMBER
450   ,p_quantity2                    IN      NUMBER
451   ,p_copy_ext_attribs             IN      VARCHAR2 := fnd_api.g_true
452   ,p_copy_org_assignments         IN      VARCHAR2 := fnd_api.g_true
453   ,p_copy_parties                 IN      VARCHAR2 := fnd_api.g_true
454 --  ,p_copy_contacts                IN      VARCHAR2 := fnd_api.g_true
455   ,p_copy_accounts                IN      VARCHAR2 := fnd_api.g_true
456   ,p_copy_asset_assignments       IN      VARCHAR2 := fnd_api.g_true
457   ,p_copy_pricing_attribs         IN      VARCHAR2 := fnd_api.g_true
458   ,p_txn_rec                      IN OUT  NOCOPY csi_datastructures_pub.transaction_rec
459   ,x_new_instance_rec             OUT     NOCOPY csi_datastructures_pub.instance_rec
460   ,x_return_status                OUT     NOCOPY VARCHAR2
461   ,x_msg_count                    OUT     NOCOPY NUMBER
462   ,x_msg_data                     OUT     NOCOPY VARCHAR2
463  );
464 
465 /*---------------------------------------------------*/
466 /* Procedure name:  Split_Item_Instance_lines        */
467 /* Description   :  This procedure is used to create */
468 /*                  split lines for instance         */
469 /*---------------------------------------------------*/
470  PROCEDURE Split_Item_Instance_Lines
471  (
472    p_api_version                 IN      NUMBER
473   ,p_commit                      IN      VARCHAR2 := fnd_api.g_false
474   ,p_init_msg_list               IN      VARCHAR2 := fnd_api.g_false
475   ,p_validation_level            IN      NUMBER   := fnd_api.g_valid_level_full
476   ,p_source_instance_rec         IN OUT  NOCOPY csi_datastructures_pub.instance_rec
477   ,p_copy_ext_attribs            IN      VARCHAR2 := fnd_api.g_true
478   ,p_copy_org_assignments        IN      VARCHAR2 := fnd_api.g_true
479   ,p_copy_parties                IN      VARCHAR2 := fnd_api.g_true
480 --  ,p_copy_contacts               IN      VARCHAR2 := fnd_api.g_true
481   ,p_copy_accounts               IN      VARCHAR2 := fnd_api.g_true
482   ,p_copy_asset_assignments      IN      VARCHAR2 := fnd_api.g_true
483   ,p_copy_pricing_attribs        IN      VARCHAR2 := fnd_api.g_true
484   ,p_txn_rec                     IN OUT  NOCOPY csi_datastructures_pub.transaction_rec
485   ,x_new_instance_tbl            OUT     NOCOPY csi_datastructures_pub.instance_tbl
486   ,x_return_status               OUT     NOCOPY VARCHAR2
487   ,x_msg_count                   OUT     NOCOPY NUMBER
488   ,x_msg_data                    OUT     NOCOPY VARCHAR2
489  );
490 
491 /*----------------------------------------------------------*/
492 /* Procedure name:  Initialize_ver_rec_no_dump              */
493 /* Description : This procedure initializes the first       */
494 /*                 record from the history                  */
495 /*----------------------------------------------------------*/
496 
497 PROCEDURE Initialize_ver_rec_no_dump
498 (
499   x_version_label_rec      IN OUT NOCOPY csi_datastructures_pub.version_label_rec,
500   p_version_label_id       IN NUMBER ,
501   x_no_dump                IN OUT NOCOPY DATE
502   );
503 
504 /*---------------------------------------------------*/
505 /* Procedure name:  Initialize_ver_rec               */
506 /* Description :    This procudure recontructs the   */
507 /*                  record from the history          */
508 /*---------------------------------------------------*/
509 
510 PROCEDURE Initialize_ver_rec
511 (
512   x_version_label_rec           IN OUT NOCOPY csi_datastructures_pub.version_label_rec,
513   p_version_label_hist_id       IN     NUMBER ,
514   x_nearest_full_dump           IN OUT NOCOPY DATE  ) ;
515 
516 /*---------------------------------------------------*/
517 /* Procedure name:  Construct_ver_from_hist          */
518 /* Description :    This procudure recontructs the   */
519 /*                  record from the history          */
520 /*---------------------------------------------------*/
521 
522 PROCEDURE Construct_ver_from_hist
523 (
524   x_version_label_tbl      IN OUT NOCOPY csi_datastructures_pub.version_label_tbl,
525   p_time_stamp             IN     DATE                                ) ;
526 
527 /*---------------------------------------------------*/
528 /* Procedure name:  Get_Ver_Column_Values            */
529 /* Description :    This procudure gets the column   */
530 /*                  values for the Dynamic SQL       */
531 /*---------------------------------------------------*/
532 
533 PROCEDURE Get_Ver_Column_Values
534 (
535     p_get_ver_cursor_id    IN   NUMBER      ,
536     x_ver_label_query_rec  OUT  NOCOPY csi_datastructures_pub.version_label_rec );
537 
538 /*---------------------------------------------------*/
539 /* Procedure name:  Define_Ver_Columns               */
540 /* Description :    This procudure defines the       */
541 /*                  columns for the Dynamic SQL      */
542 /*---------------------------------------------------*/
543 
544 PROCEDURE Define_Ver_Columns
545 (
546     p_get_ver_cursor_id      IN   NUMBER             ) ;
547 
548 /*---------------------------------------------------*/
549 /* Procedure name:Bind_Ver_variable                  */
550 /* Description : Procedure used to  generate the     */
551 /*               where clause for Party relationship */
552 /*---------------------------------------------------*/
553 
554 PROCEDURE Bind_Ver_variable
555 (
556     p_ver_label_query_rec  IN    csi_datastructures_pub.version_label_query_rec,
557     p_get_ver_cursor_id    IN    NUMBER             );
558 
559 /*---------------------------------------------------*/
560 /* Procedure name:Gen_Ver_Where_Clause               */
561 /* Description : Procedure used to  generate the     */
562 /*               where cluase for Party relationship */
563 /*---------------------------------------------------*/
564 
565 PROCEDURE Gen_Ver_Where_Clause
566 (   p_ver_label_query_rec      IN    csi_datastructures_pub.version_label_query_rec
567    ,x_where_clause             OUT   NOCOPY VARCHAR2           );
568 
569 /*---------------------------------------------------*/
570 /* Pocedure name:  Create_version_label              */
571 /* Description :   procedure for creating            */
572 /*                 version label for                 */
573 /*                 an Item Instance                  */
574 /*---------------------------------------------------*/
575 
576 PROCEDURE create_version_label
577  (    p_api_version         IN      NUMBER
578      ,p_commit              IN      VARCHAR2 := fnd_api.g_false
579      ,p_init_msg_list       IN      VARCHAR2 := fnd_api.g_false
580      ,p_validation_level    IN      NUMBER   := fnd_api.g_valid_level_full
581      ,p_version_label_rec   IN OUT  NOCOPY csi_datastructures_pub.version_label_rec
582      ,p_txn_rec             IN OUT  NOCOPY csi_datastructures_pub.transaction_rec
583      ,x_return_status       OUT     NOCOPY VARCHAR2
584      ,x_msg_count           OUT     NOCOPY NUMBER
585      ,x_msg_data            OUT     NOCOPY VARCHAR2         );
586 
587 /*---------------------------------------------------*/
588 /* Procedure name: Update_version_label              */
589 /* Description :   procedure for Update              */
590 /*                 version label for                 */
591 /*                 an Item Instance                  */
592 /*---------------------------------------------------*/
593 
594 PROCEDURE update_version_label
595  (    p_api_version                 IN      NUMBER
596      ,p_commit                      IN      VARCHAR2 := fnd_api.g_false
597      ,p_init_msg_list               IN      VARCHAR2 := fnd_api.g_false
598      ,p_validation_level            IN      NUMBER   := fnd_api.g_valid_level_full
599      ,p_version_label_rec           IN      csi_datastructures_pub.version_label_rec
600      ,p_txn_rec                     IN OUT  NOCOPY csi_datastructures_pub.transaction_rec
601      ,p_call_transaction            IN      VARCHAR2 := fnd_api.g_true
602      ,x_return_status               OUT     NOCOPY VARCHAR2
603      ,x_msg_count                   OUT     NOCOPY NUMBER
604      ,x_msg_data                    OUT     NOCOPY VARCHAR2    );
605 
606 /*---------------------------------------------------*/
607 /* Procedure name: expire_version_label              */
608 /* Description :   procedure for expire              */
609 /*                 version label for                 */
610 /*                 an Item Instance                  */
611 /*---------------------------------------------------*/
612 
613 PROCEDURE expire_version_label
614  (    p_api_version                 IN      NUMBER
615      ,p_commit                      IN      VARCHAR2 := fnd_api.g_false
616      ,p_init_msg_list               IN      VARCHAR2 := fnd_api.g_false
617      ,p_validation_level            IN      NUMBER   := fnd_api.g_valid_level_full
618      ,p_version_label_rec           IN      csi_datastructures_pub.version_label_rec
619      ,p_txn_rec                     IN OUT  NOCOPY csi_datastructures_pub.transaction_rec
620      ,x_return_status               OUT     NOCOPY VARCHAR2
621      ,x_msg_count                   OUT     NOCOPY NUMBER
622      ,x_msg_data                    OUT     NOCOPY VARCHAR2    );
623 
624 --
625 TYPE EXT_COUNT_REC IS RECORD
626   (
627      ext_count         NUMBER   	:= FND_API.G_MISS_NUM
628     ,ext_attr_count    NUMBER       := FND_API.G_MISS_NUM
629     ,ext_cat_count     NUMBER       := FND_API.G_MISS_NUM
630   );
631 --
632 TYPE EXT_ID_REC IS RECORD
633   (
634      instance_id	   NUMBER	    := FND_API.G_MISS_NUM
635     ,inv_item_id       NUMBER       := FND_API.G_MISS_NUM
636     ,inv_mast_org_id   NUMBER       := FND_API.G_MISS_NUM
637     ,valid_flag		   VARCHAR2(1)	:= FND_API.G_MISS_CHAR
638   );
639 TYPE EXT_ID_TBL IS TABLE OF EXT_ID_REC INDEX BY BINARY_INTEGER;
640 --
641 TYPE EXT_ATTR_REC IS RECORD
642   (
643      instance_id	   NUMBER	    := FND_API.G_MISS_NUM
644     ,inv_item_id       NUMBER       := FND_API.G_MISS_NUM
645     ,inv_mast_org_id   NUMBER       := FND_API.G_MISS_NUM
646     ,attribute_id      NUMBER       := FND_API.G_MISS_NUM
647     ,attribute_level   VARCHAR2(15) := FND_API.G_MISS_CHAR
648     ,item_category_id  NUMBER       := FND_API.G_MISS_NUM
649     ,valid_flag		   VARCHAR2(1)	:= FND_API.G_MISS_CHAR
650   );
651 TYPE EXT_ATTR_TBL IS TABLE OF EXT_ATTR_REC INDEX BY BINARY_INTEGER;
652 --
653 TYPE EXT_CAT_REC IS RECORD
654   (
655      inv_item_id       NUMBER      := FND_API.G_MISS_NUM
656     ,inv_mast_org_id   NUMBER      := FND_API.G_MISS_NUM
657     ,item_cat_id       NUMBER      := FND_API.G_MISS_NUM
658     ,valid_flag        VARCHAR2(1) := FND_API.G_MISS_CHAR
659   );
660 TYPE EXT_CAT_TBL IS TABLE OF EXT_CAT_REC INDEX BY BINARY_INTEGER;
661 --
662 
663 /*----------------------------------------------------------*/
664 /* Procedure name:  Initialize_ext_rec_no_dump              */
665 /* Description : This procedure initialises the first       */
666 /*                  record from the history                 */
667 /*----------------------------------------------------------*/
668 
669 PROCEDURE Initialize_ext_rec_no_dump
670 (
671  x_ext_rec               IN OUT  NOCOPY csi_datastructures_pub.extend_attrib_values_rec,
672  p_ext_id              IN      NUMBER,
673  x_no_dump     IN OUT  NOCOPY DATE
674 );
675 
676 /*---------------------------------------------------*/
677 /* Procedure name:  Initialize_ext_rec               */
678 /* Description : This procudure recontructs the      */
679 /*               record from the history             */
680 /*---------------------------------------------------*/
681 
682 PROCEDURE Initialize_ext_rec
683 (x_ext_rec            IN OUT  NOCOPY csi_datastructures_pub.extend_attrib_values_rec,
684  p_ext_h_id           IN      NUMBER,
685 x_nearest_full_dump   IN OUT  NOCOPY DATE
686 );
687 
688 /*---------------------------------------------------*/
689 /* Procedure name:  Construct_ext_from_hist          */
690 /* Description : This procudure recontructs the      */
691 /*               record from the history             */
692 /*---------------------------------------------------*/
693 
694 PROCEDURE Construct_ext_from_hist
695 ( x_ext_tbl      IN OUT   NOCOPY csi_datastructures_pub.extend_attrib_values_tbl,
696   p_time_stamp   IN       DATE
697  );
698 
699 /*---------------------------------------------------*/
700 /* Procedure name:  Define_ext_Columns               */
701 /* Description : This procudure defines the columns  */
702 /*                        for the Dynamic SQL        */
703 /*---------------------------------------------------*/
704 
705 PROCEDURE Define_ext_Columns
706 (  p_get_ext_cursor_id      IN   NUMBER);
707 
708 /*---------------------------------------------------*/
709 /* Procedure name:  Get_ext_Column_Values            */
710 /* Description : This procudure gets the column      */
711 /*               values for the Dynamic SQL          */
712 /*---------------------------------------------------*/
713 
714 PROCEDURE Get_ext_Column_Values
715    ( p_get_ext_cursor_id   IN       NUMBER,
716      x_ext_rec                OUT  NOCOPY csi_datastructures_pub.extend_attrib_values_rec
717     );
718 
719 /*---------------------------------------------------*/
720 /* Procedure name:  Bind_ext_variable                */
721 /* Description : This procudure binds the column     */
722 /*               values for the Dynamic SQL          */
723 /*---------------------------------------------------*/
724 
725 PROCEDURE Bind_ext_variable
726   ( p_ext_query_rec    IN    csi_datastructures_pub.extend_attrib_query_rec,
727     p_cur_get_ext      IN    NUMBER
728    );
729 
730 /*---------------------------------------------------*/
731 /* Procedure name:  Gen_ext_Where_Clause             */
732 /* Description : Procedure used to generate the      */
733 /*               where clause for Extended           */
734 /*               Attribute units                     */
735 /*---------------------------------------------------*/
736 
737 PROCEDURE Gen_ext_Where_Clause
738  (  p_ext_query_rec   IN   csi_datastructures_pub.extend_attrib_query_rec
739    ,x_where_clause    OUT  NOCOPY VARCHAR2
740   );
741 
742 /*---------------------------------------------------*/
743 /* procedure name: create_extended_attrib_values     */
744 /* description :  Associates extended attributes to  */
745 /*                an item instance                   */
746 /*                                                   */
747 /*---------------------------------------------------*/
748 
749 PROCEDURE create_extended_attrib_values
750  (    p_api_version        IN     NUMBER
751      ,p_commit             IN     VARCHAR2 := fnd_api.g_false
752      ,p_init_msg_list      IN     VARCHAR2 := fnd_api.g_false
753      ,p_validation_level   IN     NUMBER   := fnd_api.g_valid_level_full
754      ,p_ext_attrib_rec     IN OUT NOCOPY csi_datastructures_pub.extend_attrib_values_rec
755      ,p_txn_rec            IN OUT NOCOPY csi_datastructures_pub.transaction_rec
756      ,x_return_status         OUT NOCOPY VARCHAR2
757      ,x_msg_count             OUT NOCOPY NUMBER
758      ,x_msg_data              OUT NOCOPY VARCHAR2
759      ,p_ext_id_tbl         IN OUT NOCOPY csi_item_instance_pvt.ext_id_tbl
760      ,p_ext_count_rec      IN OUT NOCOPY csi_item_instance_pvt.ext_count_rec
761      ,p_ext_attr_tbl       IN OUT NOCOPY csi_item_instance_pvt.ext_attr_tbl
762      ,p_ext_cat_tbl        IN OUT NOCOPY csi_item_instance_pvt.ext_cat_tbl
763      ,p_called_from_grp    IN     VARCHAR2 DEFAULT fnd_api.g_false
764  );
765 
766 /*---------------------------------------------------*/
767 /* procedure name: update_extended_attrib_values     */
768 /* description :  Updates the existing extended      */
769 /*                attributes for an item instance    */
770 /*                                                   */
771 /*---------------------------------------------------*/
772 
773 PROCEDURE update_extended_attrib_values
774  (    p_api_version        IN       NUMBER
775      ,p_commit             IN       VARCHAR2 := fnd_api.g_false
776      ,p_init_msg_list      IN       VARCHAR2 := fnd_api.g_false
777      ,p_validation_level   IN       NUMBER   := fnd_api.g_valid_level_full
778      ,p_ext_attrib_rec     IN       csi_datastructures_pub.extend_attrib_values_rec
779      ,p_txn_rec            IN   OUT NOCOPY csi_datastructures_pub.transaction_rec
780      ,x_return_status           OUT NOCOPY VARCHAR2
781      ,x_msg_count               OUT NOCOPY NUMBER
782      ,x_msg_data                OUT NOCOPY VARCHAR2
783  );
784 
785 /*---------------------------------------------------*/
786 /* procedure name: expire_extended_attrib_values     */
787 /* description :  Expires the existing extended      */
788 /*                attributes for an item instance    */
789 /*                                                   */
790 /*---------------------------------------------------*/
791 
792 PROCEDURE expire_extended_attrib_values
793  (    p_api_version        IN       NUMBER
794      ,p_commit             IN       VARCHAR2 := fnd_api.g_false
795      ,p_init_msg_list      IN       VARCHAR2 := fnd_api.g_false
796      ,p_validation_level   IN       NUMBER   := fnd_api.g_valid_level_full
797      ,p_ext_attrib_rec     IN       csi_datastructures_pub.extend_attrib_values_rec
798      ,p_txn_rec            IN   OUT NOCOPY csi_datastructures_pub.transaction_rec
799      ,x_return_status           OUT NOCOPY VARCHAR2
800      ,x_msg_count               OUT NOCOPY NUMBER
801      ,x_msg_data                OUT NOCOPY VARCHAR2
802  );
803 
804 /*---------------------------------------------------*/
805 /* procedure name: copy_item_instance_old            */
806 /* description :  Copies an instace from an instance */
807 /*                                                   */
808 /*---------------------------------------------------*/
809 
810 PROCEDURE copy_single_item_instance
811  (
812    p_api_version            IN         NUMBER
813   ,p_commit                 IN         VARCHAR2 := fnd_api.g_false
814   ,p_init_msg_list          IN         VARCHAR2 := fnd_api.g_false
815   ,p_validation_level       IN         NUMBER   := fnd_api.g_valid_level_full
816   ,p_source_instance_rec    IN         csi_datastructures_pub.instance_rec
817   ,p_copy_ext_attribs       IN         VARCHAR2 := fnd_api.g_false
818   ,p_copy_org_assignments   IN         VARCHAR2 := fnd_api.g_false
819   ,p_copy_parties           IN         VARCHAR2 := fnd_api.g_false
820   ,p_copy_contacts          IN         VARCHAR2 := fnd_api.g_false
821   ,p_copy_accounts          IN         VARCHAR2 := fnd_api.g_false
822   ,p_copy_asset_assignments IN         VARCHAR2 := fnd_api.g_false
823   ,p_copy_pricing_attribs   IN         VARCHAR2 := fnd_api.g_false
824   ,p_call_from_split        IN         VARCHAR2 := fnd_api.g_false
825   ,p_call_from_bom_expl     IN         VARCHAR2 DEFAULT fnd_api.g_false -- should be passed only from Explode BOM
826   ,p_txn_rec                IN  OUT    NOCOPY csi_datastructures_pub.transaction_rec
827   ,x_new_instance_tbl           OUT    NOCOPY csi_datastructures_pub.instance_tbl
828   ,x_return_status              OUT    NOCOPY VARCHAR2
829   ,x_msg_count                  OUT    NOCOPY NUMBER
830   ,x_msg_data                   OUT    NOCOPY VARCHAR2
831  );
832 
833 /*-------------------------------------------------------------*/
834 /* Procedure name:  Explode_Bom                                */
835 /* Description :    This procudure explodes the BOM and        */
836 /*                  creates instances and relationships        */
837 /*                  The parameter p_create_instance determines */
838 /*                  whether to create instances or not.        */
839 /* Author      :    Srinivasan Ramakrishnan                    */
840 /*-------------------------------------------------------------*/
841 
842 PROCEDURE Explode_Bom
843  (
844    p_api_version            IN     NUMBER
845   ,p_commit                 IN     VARCHAR2 := fnd_api.g_false
846   ,p_init_msg_list          IN     VARCHAR2 := fnd_api.g_false
847   ,p_validation_level       IN     NUMBER   := fnd_api.g_valid_level_full
848   ,p_source_instance_rec    IN     csi_datastructures_pub.instance_rec
849   ,p_explosion_level        IN     NUMBER
850   ,p_item_tbl               OUT    NOCOPY csi_datastructures_pub.instance_tbl
851   ,p_item_relation_tbl      OUT    NOCOPY csi_datastructures_pub.ii_relationship_tbl
852   ,p_create_instance        IN     VARCHAR2 DEFAULT FND_API.G_FALSE
853   ,p_txn_rec                IN OUT NOCOPY csi_datastructures_pub.transaction_rec
854   ,x_return_status          OUT    NOCOPY VARCHAR2
855   ,x_msg_count              OUT    NOCOPY NUMBER
856   ,x_msg_data               OUT    NOCOPY VARCHAR2
857  );
858 
859 /*---------------------------------------------------*/
860 /* procedure name: get_instance_hist                 */
861 /* description   : Retreive history transactions     */
862 /*                 for an instance                   */
863 /*---------------------------------------------------*/
864 
865 PROCEDURE get_instance_hist
866 ( p_api_version           IN  NUMBER
867  ,p_commit                IN  VARCHAR2 := fnd_api.g_false
868  ,p_init_msg_list         IN  VARCHAR2 := fnd_api.g_false
869  ,p_validation_level      IN  NUMBER   := fnd_api.g_valid_level_full
870  ,p_transaction_id        IN  NUMBER
871  ,x_instance_history_tbl  OUT NOCOPY csi_datastructures_pub.instance_history_tbl
872  ,x_return_status         OUT NOCOPY VARCHAR2
873  ,x_msg_count             OUT NOCOPY NUMBER
874  ,x_msg_data              OUT NOCOPY VARCHAR2
875  );
876 
877 /*---------------------------------------------------*/
878 /* procedure name: call_to_contracts                 */
879 /* description   : call_to_contracts                 */
880 /*                                                   */
881 /*---------------------------------------------------*/
882 
883 
884 PROCEDURE Call_to_Contracts
885 (  p_transaction_type         IN   VARCHAR2
886   ,p_instance_id              IN   NUMBER
887   ,p_new_instance_id          IN   NUMBER
888   ,p_vld_org_id               IN   NUMBER
889   ,p_quantity                 IN   NUMBER
890   ,p_party_account_id1        IN   NUMBER
891   ,p_party_account_id2        IN   NUMBER
892   ,p_transaction_date         IN   DATE   := fnd_api.g_miss_date
893   ,p_source_transaction_date  IN   DATE   := fnd_api.g_miss_date  -- Added by jpwilson
894   ,p_transaction_id           IN   NUMBER := fnd_api.g_miss_num  -- Added by sguthiva for TRF(HTML)
895   ,p_grp_call_contracts       IN   VARCHAR2 DEFAULT fnd_api.g_false
896   ,p_txn_type_id              IN   NUMBER DEFAULT fnd_api.g_miss_num
897   ,p_system_id                IN   NUMBER DEFAULT fnd_api.g_miss_num -- OKS Enhancement
898   ,p_order_line_id            IN   NUMBER DEFAULT fnd_api.g_miss_num -- should be passed only when un-expiring an Instance
899   ,p_call_from_bom_expl       IN   VARCHAR2 DEFAULT fnd_api.g_false
900   ,p_oks_txn_inst_tbl         IN OUT NOCOPY oks_ibint_pub.txn_instance_tbl
901   ,x_return_status            OUT  NOCOPY VARCHAR2
902   ,x_msg_count                OUT  NOCOPY NUMBER
903   ,x_msg_data                 OUT  NOCOPY VARCHAR2
904   );
905 
906 /*---------------------------------------------------*/
907 /* procedure name: get_ext_attrib_val_hist           */
908 /* description   : Retreive history transactions     */
909 /*                 for extended attribute values     */
910 /*---------------------------------------------------*/
911 
912 PROCEDURE get_ext_attrib_val_hist
913 ( p_api_version             IN  NUMBER
914  ,p_commit                  IN  VARCHAR2 := fnd_api.g_false
915  ,p_init_msg_list           IN  VARCHAR2 := fnd_api.g_false
916  ,p_validation_level        IN  NUMBER   := fnd_api.g_valid_level_full
917  ,p_transaction_id          IN  NUMBER
918  ,x_ext_attrib_val_hist_tbl OUT NOCOPY csi_datastructures_pub.ext_attrib_val_history_tbl
919  ,x_return_status           OUT NOCOPY VARCHAR2
920  ,x_msg_count               OUT NOCOPY NUMBER
921  ,x_msg_data                OUT NOCOPY VARCHAR2
922  );
923 
924 /*------------------------------------------------------*/
925 /* procedure name: copy_item_instance                   */
926 /* description :  Copies an instace from an instance.   */
927 /*                It has the configuration parameter    */
928 /*------------------------------------------------------*/
929 
930 
931 PROCEDURE copy_item_instance
932  ( p_api_version            IN         NUMBER
933   ,p_commit                 IN         VARCHAR2 := fnd_api.g_false
934   ,p_init_msg_list          IN         VARCHAR2 := fnd_api.g_false
935   ,p_validation_level       IN         NUMBER   := fnd_api.g_valid_level_full
936   ,p_source_instance_rec    IN         csi_datastructures_pub.instance_rec
937   ,p_copy_ext_attribs       IN         VARCHAR2 := fnd_api.g_false
938   ,p_copy_org_assignments   IN         VARCHAR2 := fnd_api.g_false
939   ,p_copy_parties           IN         VARCHAR2 := fnd_api.g_false
940   ,p_copy_contacts          IN         VARCHAR2 := fnd_api.g_false
941   ,p_copy_accounts          IN         VARCHAR2 := fnd_api.g_false
942   ,p_copy_asset_assignments IN         VARCHAR2 := fnd_api.g_false
943   ,p_copy_pricing_attribs   IN         VARCHAR2 := fnd_api.g_false
944   ,p_copy_inst_children     IN         VARCHAR2 := fnd_api.g_false
945   ,p_call_from_split        IN         VARCHAR2 := fnd_api.g_false
946   ,p_txn_rec                IN  OUT    NOCOPY csi_datastructures_pub.transaction_rec
947   ,x_new_instance_tbl           OUT    NOCOPY csi_datastructures_pub.instance_tbl
948   ,x_return_status              OUT    NOCOPY VARCHAR2
949   ,x_msg_count                  OUT    NOCOPY NUMBER
950   ,x_msg_data                   OUT    NOCOPY VARCHAR2
951  );
952 
953 
954 
955 /*------------------------------------------------------------*/
956 /* Procedure name:   get_version_label_history                */
957 /* Description :     Procedure used to  get version lables    */
958 /*                   from history given a transaction_id      */
959 /*------------------------------------------------------------*/
960 
961 PROCEDURE get_version_label_history
962  (    p_api_version             IN  NUMBER
963      ,p_commit                  IN  VARCHAR2 := fnd_api.g_false
964      ,p_init_msg_list           IN  VARCHAR2 := fnd_api.g_false
965      ,p_validation_level        IN  NUMBER   := fnd_api.g_valid_level_full
966      ,p_transaction_id          IN  NUMBER
967      ,x_version_label_hist_tbl  OUT NOCOPY csi_datastructures_pub.version_label_history_tbl
968      ,x_return_status           OUT NOCOPY VARCHAR2
969      ,x_msg_count               OUT NOCOPY NUMBER
970      ,x_msg_data                OUT NOCOPY VARCHAR2
971     );
972 
973 /*----------------------------------------------------*/
974 /* Procedure name: get_instance_link_locations        */
975 /* Description :   procedure to                       */
976 /*                 get an Item Instance               */
977 /*----------------------------------------------------*/
978 
979 PROCEDURE get_instance_link_locations
980  (
981       p_api_version          IN  NUMBER
982      ,p_commit               IN  VARCHAR2 := fnd_api.g_false
983      ,p_init_msg_list        IN  VARCHAR2 := fnd_api.g_false
984      ,p_validation_level     IN  NUMBER   := fnd_api.g_valid_level_full
985      ,p_instance_id          IN  NUMBER
986      ,x_instance_link_rec    OUT NOCOPY csi_datastructures_pub.instance_link_rec
987      ,x_return_status        OUT NOCOPY VARCHAR2
988      ,x_msg_count            OUT NOCOPY NUMBER
989      ,x_msg_data             OUT NOCOPY VARCHAR2
990     );
991 
992 PROCEDURE Update_version_time
993  (
994      p_api_version           IN     NUMBER
995     ,p_commit                IN     VARCHAR2 := fnd_api.g_false
996     ,p_init_msg_list         IN     VARCHAR2 := fnd_api.g_false
997     ,p_validation_level      IN     NUMBER   := fnd_api.g_valid_level_full
998     ,p_txn_rec               IN OUT NOCOPY csi_datastructures_pub.transaction_rec
999     ,x_return_status         OUT NOCOPY   VARCHAR2
1000     ,x_msg_count             OUT NOCOPY   NUMBER
1001     ,x_msg_data              OUT NOCOPY   VARCHAR2);
1002 
1003 END CSI_ITEM_INSTANCE_PVT;