DBA Data[Home] [Help]

PACKAGE: APPS.WMS_CONTAINER_PUB

Source


1 PACKAGE WMS_Container_PUB AUTHID CURRENT_USER AS
2 /* $Header: WMSCONTS.pls 120.8.12020000.2 2013/03/14 06:57:26 raminoch ship $ */
3 /*#
4 * This object handles the creation and updating license plate numbers
5 * @rep:scope public
6 * @rep:product WMS
7 * @rep:lifecycle active
8 * @rep:displayname License Plate Number APIs for WMS
9 * @rep:category BUSINESS_ENTITY WMS_CONTAINER
10 */
11 
12 /* Defined ROW Type variable for WMS_LICENSE_PLATE_NUMBERS entity */
13 
14 
15 /*----------------------------------------------------------------*
16  *  Global constants representing all possible LPN context values
17  *----------------------------------------------------------------*/
18 -- Resides in Inventory
19 LPN_CONTEXT_INV CONSTANT NUMBER := 1;
20 -- Resides in WIP
21 LPN_CONTEXT_WIP CONSTANT NUMBER := 2;
22 -- Resides in Receiving
23 LPN_CONTEXT_RCV CONSTANT NUMBER := 3;
24 -- Issued out of Stores
25 LPN_CONTEXT_STORES CONSTANT NUMBER := 4;
26 -- Pre-generated
27 LPN_CONTEXT_PREGENERATED CONSTANT NUMBER := 5;
28 -- Resides in intransit
29 LPN_CONTEXT_INTRANSIT CONSTANT NUMBER := 6;
30 -- Resides at vendor site
31 LPN_CONTEXT_VENDOR  CONSTANT NUMBER := 7;
32 -- Packing context, used as a temporary context value
33 -- when the user wants to reassociate the LPN with a
34 -- different license plate number and/or container item ID
35 LPN_CONTEXT_PACKING CONSTANT NUMBER := 8;
36 -- Loaded for shipment
37 LPN_LOADED_FOR_SHIPMENT CONSTANT NUMBER := 9;
38 -- Prepack of WIP
39 LPN_PREPACK_FOR_WIP CONSTANT NUMBER := 10;
40 -- LPN Picked
41 LPN_CONTEXT_PICKED CONSTANT NUMBER := 11;
42 -- Temporary context for staged (picked) LPNs
43 LPN_LOADED_IN_STAGE CONSTANT NUMBER := 12;
44 
45 /*----------------------------------------------------------------*
46  *  Global data structures
47  *----------------------------------------------------------------*/
48 
49 SUBTYPE LPN IS WMS_LICENSE_PLATE_NUMBERS%ROWTYPE;
50 
51 TYPE ChangeWeightVolumeRecType is RECORD
52         (       lpn_id                                          NUMBER,
53                 gross_weight_change             NUMBER,
54                 content_volume_change   NUMBER  );
55 
56 TYPE ChangedWtVolTabType IS TABLE OF ChangeWeightVolumeRecType
57         INDEX BY BINARY_INTEGER;
58 
59 G_LPN_WT_VOL_CHANGES ChangedWtVolTabType;
60 
61 
62 /*#
63 * This api is used to generate LPN numbers, either individually or in a sequence.
64 *
65 * @ param p_api_version API version number (current version is 1.0)
66 * @ paraminfo {@rep:required}
67 * @ param p_init_msg_list  default FND_API.G_FALSE) Valid values: FND_API.G_FALSE or FND_API.G_TRUE. if set to FND_API.G_TRUE initialize error message list if set to FND_API.G_FALSE - not initialize error message list
68 * @ paraminfo {@rep:required}
69 * @ param p_commit         default FND_API.G_FALSE whether or not to commit the changes to database
70 * @ paraminfo {@rep:required}
71 * @ param p_validation_level determines if full validation or no validation will be performed defaults to FND_API.G_VALID_LEVEL_FULL; FND_API.G_VALID_LEVEL_NONE is the other value
72 * @ paraminfo {@rep:required}
73 * @ param p_organization_id Organization Id
74 * @ paraminfo {@rep:required}
75 * @ param p_container_item_id Container Item Id - Defaults to NULL
76 * @ paraminfo {@rep:optional}
77 * @ param p_revision              Revision - Defaults to NULL
78 * @ paraminfo {@rep:optional}
79 * @ param p_lot_number            Lot Number - Defaults to NULL
80 * @ paraminfo {@rep:optional}
81 * @ param p_from_serial_number    Starting Serial Number   - Defaults to NULL
82 * @ paraminfo {@rep:optional}
83 * @ param p_to_serial_number      Ending Serial Number     - Defaults to NULL
84 * @ paraminfo {@rep:optional}
85 * @ param p_subinventory          Subinventory - Defaults to NULL
86 * @ paraminfo {@rep:optional}
87 * @ param p_locator_id            Locator Id - Defaults to NULL
88 * @ paraminfo {@rep:optional}
89 * @ param p_lpn_prefix            Prefix Value of an LPN - Defaults to NULL
90 * @ paraminfo {@rep:optional}
91 * @ param p_lpn_suffix            Suffix Value of an LPN - Defaults to NULL
92 * @ paraminfo {@rep:optional}
93 * @ param p_starting_num          Starting Number of an LPN - Defaults to NULL
94 * @ paraminfo {@rep:optional}
95 * @ param p_quantity              No of LPNs to be generated - Default Value is 1
96 * @ paraminfo {@rep:required}
97 * @ param p_source                LPN Context 1=INV, 2=WIP, 3=REC, etc.. Defaults to 5. Indicates the source where the LPN is generated
98 * @ paraminfo {@rep:required}
99 * @ param p_cost_group_id         Cost Group Id - Defaults to NULL
100 * @ paraminfo {@rep:optional}
101 * @ param p_source_type_id        Source type ID for the source transaction
102 * @ paraminfo {@rep:optional}
103 * @ param p_source_header_id      Source header ID for the source transaction
104 * @ paraminfo {@rep:optional}
105 * @ param p_source_name           Source name for the source transaction
106 * @ paraminfo {@rep:optional}
107 * @ param p_source_line_id        Source line ID for the source transaction
108 * @ paraminfo {@rep:optional}
109 * @ param p_source_line_detail_id Source line detail ID for the source transaction
110 * @ paraminfo {@rep:optional}
111 * @ param p_total_length          Specify the total length of LPN, pad with 0 numeric portion of LPN
112 * @ paraminfo {@rep:optional}
113 * @ param p_ucc_128_suffix_flag   Use a UCC128 suffix on LPNs or not 'Y'/'N'
114 * @ paraminfo {@rep:optional}
115 * @ param x_return_status if the Generate_LPN API succeeds, the value is fnd_api.g_ret_sts_success; if there is an expected error, the value is fnd_api.g_ret_sts_error; if there is an unexpected error, the value is fnd_api.g_ret_sts_unexp_error;
116 * @ paraminfo {@rep:required}
117 * @ param x_msg_count  if there is one or more errors, the number of error messages in the buffer
118 * @ paraminfo {@rep:required}
119 * @ param x_msg_data   if there is one and only one error, the error message
120 * @ paraminfo {@rep:required}
121 * @ param p_lpn_id_out Outputs the generated LPN ID if only one LPN is requested to be generated
122 * @ paraminfo {@rep:required}
123 * @ param p_lpn_out    Outputs the generated license plate number if only one LPN is requested to be generated
124 * @ paraminfo {@rep:required}
125 * @ param p_process_id Process ID to identify the LPN's generated in the table WMS_LPN_PROCESS_TEMP
126 * @rep:scope public
127 * @rep:lifecycle active
128 * @rep:displayname Generate License Plate Numbers
129 * @rep:businessevent Generate_LPN
130 */
131 PROCEDURE Generate_LPN (
132   p_api_version            IN         NUMBER
133 , p_init_msg_list          IN         VARCHAR2 := fnd_api.g_false
134 , p_commit                 IN         VARCHAR2 := fnd_api.g_false
135 , p_validation_level       IN         NUMBER   := fnd_api.g_valid_level_full
136 , x_return_status          OUT NOCOPY VARCHAR2
137 , x_msg_count              OUT NOCOPY NUMBER
138 , x_msg_data               OUT NOCOPY VARCHAR2
139 , p_organization_id        IN         NUMBER
140 , p_container_item_id      IN         NUMBER   := NULL
141 , p_revision               IN         VARCHAR2 := NULL
142 , p_lot_number             IN         VARCHAR2 := NULL
143 , p_from_serial_number     IN         VARCHAR2 := NULL
144 , p_to_serial_number       IN         VARCHAR2 := NULL
145 , p_subinventory           IN         VARCHAR2 := NULL
146 , p_locator_id             IN         NUMBER   := NULL
147 , p_lpn_prefix             IN         VARCHAR2 := NULL
148 , p_lpn_suffix             IN         VARCHAR2 := NULL
149 , p_starting_num           IN         NUMBER   := NULL
150 , p_quantity               IN         NUMBER   := 1
151 , p_source                 IN         NUMBER   := LPN_CONTEXT_PREGENERATED
152 , p_cost_group_id          IN         NUMBER   := NULL
153 , p_source_type_id         IN         NUMBER   := NULL
154 , p_source_header_id       IN         NUMBER   := NULL
155 , p_source_name            IN         VARCHAR2 := NULL
156 , p_source_line_id         IN         NUMBER   := NULL
157 , p_source_line_detail_id  IN         NUMBER   := NULL
158 , p_total_length           IN         NUMBER   := NULL
159 , p_ucc_128_suffix_flag    IN         VARCHAR2 := NULL
160 , p_lpn_id_out             OUT NOCOPY NUMBER
161 , p_lpn_out                OUT NOCOPY VARCHAR2
162 , p_process_id             OUT NOCOPY NUMBER
163 );
164 
165 -- Overleaded the procedure for the WMS specific changes for LSP, bug 9087971
166 
167 PROCEDURE Generate_LPN (
168   p_api_version            IN         NUMBER
169 , p_init_msg_list          IN         VARCHAR2 := fnd_api.g_false
170 , p_commit                 IN         VARCHAR2 := fnd_api.g_false
171 , p_validation_level       IN         NUMBER   := fnd_api.g_valid_level_full
172 , x_return_status          OUT NOCOPY VARCHAR2
173 , x_msg_count              OUT NOCOPY NUMBER
174 , x_msg_data               OUT NOCOPY VARCHAR2
175 , p_organization_id        IN         NUMBER
176 , p_container_item_id      IN         NUMBER   := NULL
177 , p_revision               IN         VARCHAR2 := NULL
178 , p_lot_number             IN         VARCHAR2 := NULL
179 , p_from_serial_number     IN         VARCHAR2 := NULL
180 , p_to_serial_number       IN         VARCHAR2 := NULL
181 , p_subinventory           IN         VARCHAR2 := NULL
182 , p_locator_id             IN         NUMBER   := NULL
183 , p_lpn_prefix             IN         VARCHAR2 := NULL
184 , p_lpn_suffix             IN         VARCHAR2 := NULL
185 , p_starting_num           IN         NUMBER   := NULL
186 , p_quantity               IN         NUMBER   := 1
187 , p_source                 IN         NUMBER   := LPN_CONTEXT_PREGENERATED
188 , p_cost_group_id          IN         NUMBER   := NULL
189 , p_source_type_id         IN         NUMBER   := NULL
190 , p_source_header_id       IN         NUMBER   := NULL
191 , p_source_name            IN         VARCHAR2 := NULL
192 , p_source_line_id         IN         NUMBER   := NULL
193 , p_source_line_detail_id  IN         NUMBER   := NULL
194 , p_total_length           IN         NUMBER   := NULL
195 , p_ucc_128_suffix_flag    IN         VARCHAR2 := NULL
196 , p_lpn_id_out             OUT NOCOPY NUMBER
197 , p_lpn_out                OUT NOCOPY VARCHAR2
198 , p_process_id             OUT NOCOPY NUMBER
199 , p_client_code	           IN         VARCHAR2 -- Adding for LSP, bug 9087971
200 
201 );
202 
203 
204 /*---------------------------------------------------------------------*/
205 -- Name
206 --   PROCEDURE Associate_LPN
207 /*---------------------------------------------------------------------*/
208 -- Purpose
209 --    Associate an LPN to a specific instance of a container
210 --
211 -- Input Parameters
212 --   p_api_version
213 --      API version number (current version is 1.0)
214 --   p_init_msg_list (optional, default FND_API.G_FALSE)
215 --      Valid values: FND_API.G_FALSE or FND_API.G_TRUE.
216 --                           if set to FND_API.G_TRUE
217 --                                   initialize error message list
218 --                           if set to FND_API.G_FALSE - not initialize error
219 --                                   message list
220 --   p_commit (optional, default FND_API.G_FALSE)
221 --              whether or not to commit the changes to database
222 --   p_validation_level         (optional), determines if full validation or
223 --                              no validation will be performed
224 --                              defaults to FND_API.G_VALID_LEVEL_FULL
225 --                              FND_API.G_VALID_LEVEL_NONE is the other value
226 --   p_lpn_id                   License Plate Number Identifier - Required Value
227 --   p_container_item_id        Container Item Id - Required Value
228 --   p_lot_number               Lot Number - Defaults to NULL
229 --   p_revision                 Revision - Defaults to NULL
230 --   p_serial_number            Serial Number - Defaults to NULL
231 --   p_organization_id          Organization Id - Required Value
232 --   p_subinventory             Subinventory - Defaults to NULL
233 --   p_locator_id               Locator Id - Defaults to NULL
234 --   p_cost_group_id            Cost Group Id - Defaults to NULL
235 --   p_source_type_id           Source type ID for the source transaction
236 --   p_source_header_id         Source header ID for the source transaction
237 --   p_source_name              Source name for the source transaction
238 --   p_source_line_id           Source line ID for the source transaction
239 --   p_source_line_detail_id    Source line detail ID for the source transaction
240 --
241 --
242 -- Output Parameters
243 --   x_return_status
244 --       if the Associate_LPN API succeeds, the value is
245 --              fnd_api.g_ret_sts_success;
246 --       if there is an expected error, the value is
247 --              fnd_api.g_ret_sts_error;
248 --       if there is an unexpected error, the value is
249 --              fnd_api.g_ret_sts_unexp_error;
250 --   x_msg_count
251 --       if there is one or more errors, the number of error messages
252 --           in the buffer
253 --   x_msg_data
254 --       if there is one and only one error, the error message
255 /***********************************************************************/
256 /* WARNING Starting with patch set 11i.X This API will become obsolete */
257 /* Patch set J is the last patch set in which this API will exist in   */
258 /* this package all references will need to be removed by X            */
259 /***********************************************************************/
260 
261 PROCEDURE Associate_LPN
262 (  p_api_version            IN      NUMBER                          ,
263    p_init_msg_list          IN      VARCHAR2 := fnd_api.g_false     ,
264    p_commit                 IN      VARCHAR2 := fnd_api.g_false     ,
265    p_validation_level       IN      NUMBER   := fnd_api.g_valid_level_full  ,
266    x_return_status          OUT     NOCOPY VARCHAR2                        ,
267    x_msg_count              OUT     NOCOPY NUMBER                          ,
268    x_msg_data               OUT     NOCOPY VARCHAR2                        ,
269    p_lpn_id                 IN      NUMBER                          ,
270    p_container_item_id      IN      NUMBER                          ,
271    p_lot_number             IN      VARCHAR2 := NULL                ,
272    p_revision               IN      VARCHAR2 := NULL                ,
273    p_serial_number          IN      VARCHAR2 := NULL                ,
274    p_organization_id        IN      NUMBER                          ,
275    p_subinventory           IN      VARCHAR2 := NULL                ,
276    p_locator_id             IN      NUMBER   := NULL                ,
277    p_cost_group_id          IN      NUMBER   := NULL                ,
278    p_source_type_id         IN      NUMBER   := NULL                ,
279    p_source_header_id       IN      NUMBER   := NULL                ,
280    p_source_name            IN      VARCHAR2 := NULL                ,
281    p_source_line_id         IN      NUMBER   := NULL                ,
282    p_source_line_detail_id  IN      NUMBER   := NULL
283 );
284 
285 /*#
286 * This api takes in a brand new container name (License Plate Number) and will create an entry for it in
287 * the WMS_LICENSE_PLATE_NUMBERS table returning to the caller a uniquely generated LPN_ID.
288 *
289 * @ param p_api_version API version number (current version is 1.0)
290 * @ paraminfo {@rep:required}
291 * @ param p_init_msg_list   default FND_API.G_FALSE Valid values: FND_API.G_FALSE or FND_API.G_TRUE. if set to FND_API.G_TRUE initialize error message list if set to FND_API.G_FALSE - not initialize error message list
292 * @ paraminfo {@rep:required}
293 * @ param p_commit          default FND_API.G_FALSE whether or not to commit the changes to database
294 * @ paraminfo {@rep:required}
295 * @ param p_validation_level determines if full validation or no validation will be performed defaults to FND_API.G_VALID_LEVEL_FULL FND_API.G_VALID_LEVEL_NONE is the other value
296 * @ paraminfo {@rep:required}
297 * @ param p_lpn License Plate Number Identifier - Required Value
298 * @ paraminfo {@rep:required}
299 * @ param p_organization_id Organization Id - Required Value
300 * @ paraminfo {@rep:required}
301 * @ param p_container_item_id   Container Item Id - Defaults to NULL
302 * @ paraminfo {@rep:optional}
303 * @ param p_revision Revision - Defaults to NULL
304 * @ paraminfo {@rep:optional}
308 * @ paraminfo {@rep:optional}
305 * @ param p_lot_number Lot Number - Defaults to NULL
306 * @ paraminfo {@rep:optional}
307 * @ param p_serial_number Serial Number - Defaults to NULL
309 * @ param p_subinventory Subinventory - Defaults to NULL
310 * @ paraminfo {@rep:optional}
311 * @ param p_locator_id Locator Id - Defaults to NULL
312 * @ paraminfo {@rep:optional}
313 * @ param p_source LPN Context. 1=INV, 2=WIP, or =REC, etc..Defaults to 5.
314 * @ paraminfo {@rep:required}
315 * @ param p_cost_group_id Cost Group Id - Defaults to NULL
316 * @ paraminfo {@rep:optional}
317 * @ param p_parent_lpn_id Parent LPN Id - Defaults to NULL
318 * @ paraminfo {@rep:optional}
319 * @ param p_source_type_id Source type ID for the source transaction
320 * @ paraminfo {@rep:optional}
321 * @ param p_source_header_id Source header ID for the source transaction
322 * @ paraminfo {@rep:optional}
323 * @ param p_source_name Source name for the source transaction
324 * @ paraminfo {@rep:optional}
325 * @ param p_source_line_id Source line ID for the source transaction
326 * @ paraminfo {@rep:optional}
327 * @ param p_source_line_detail_id Source line detail ID for the source transaction
328 * @ paraminfo {@rep:optional}
329 * @ param x_return_status if the Create_LPN API succeeds, the value is fnd_api.g_ret_sts_success; if there is an expected error, the value is fnd_api.g_ret_sts_error; if there is an unexpected error, the value is fnd_api.g_ret_sts_unexp_error;
330 * @ paraminfo {@rep:required}
331 * @ param x_msg_count if there is one or more errors, the number of error messages in the buffer
332 * @ paraminfo {@rep:required}
333 * @ param x_msg_data if there is one and only one error, the error message
334 * @ paraminfo {@rep:required}
335 * @ param x_lpn_id The LPN ID for the new LPN record entry
336 * @ paraminfo {@rep:required}
337 * @rep:scope public
338 * @rep:lifecycle active
339 * @rep:displayname Create License Plate Numbers
340 * @rep:businessevent Create_LPN
341 */
342 PROCEDURE Create_LPN (
343   p_api_version            IN         NUMBER
344 , p_init_msg_list          IN         VARCHAR2 := fnd_api.g_false
345 , p_commit                 IN         VARCHAR2 := fnd_api.g_false
346 , p_validation_level       IN         NUMBER   := fnd_api.g_valid_level_full
347 , x_return_status          OUT NOCOPY VARCHAR2
348 , x_msg_count              OUT NOCOPY NUMBER
349 , x_msg_data               OUT NOCOPY VARCHAR2
350 , p_lpn                    IN         VARCHAR2
351 , p_organization_id        IN         NUMBER
352 , p_container_item_id      IN         NUMBER   := NULL
353 , p_lot_number             IN         VARCHAR2 := NULL
354 , p_revision               IN         VARCHAR2 := NULL
355 , p_serial_number          IN         VARCHAR2 := NULL
356 , p_subinventory           IN         VARCHAR2 := NULL
357 , p_locator_id             IN         NUMBER   := NULL
358 , p_source                 IN         NUMBER   := LPN_CONTEXT_PREGENERATED
359 , p_cost_group_id          IN         NUMBER   := NULL
360 , p_parent_lpn_id          IN         NUMBER   := NULL
361 , p_source_type_id         IN         NUMBER   := NULL
362 , p_source_header_id       IN         NUMBER   := NULL
363 , p_source_name            IN         VARCHAR2 := NULL
364 , p_source_line_id         IN         NUMBER   := NULL
365 , p_source_line_detail_id  IN         NUMBER   := NULL
366 , x_lpn_id                 OUT NOCOPY NUMBER
367 );
368 
369 /*---------------------------------------------------------------------*/
370 -- Name
371 --   PROCEDURE Modify_LPN and Modify_LPN_Wrapper
372 /*---------------------------------------------------------------------*/
373 -- Purpose
374 --     Used to update the attributes of a specific container instance (LPN).
375 --     Modify_LPN_Wrapper just calls Modify_LPN but it doesn't take in a
376 --     record type as an input.  This is used for the java calls to this
377 --     procedure in the mobile transactions.
378 --        Fields that can be modified include:
379 --            *  all the gross weight and content volume related fields
380 --            *  status_id, lpn_context, sealed_status
381 --            *  org, sub, and loc information
382 --            *  All of the extra Attribute related columns for future usages
383 --
384 -- Input Parameters
385 --   p_api_version
386 --      API version number (current version is 1.0)
387 --   p_init_msg_list (optional, default FND_API.G_FALSE)
388 --      Valid values: FND_API.G_FALSE or FND_API.G_TRUE.
389 --                           if set to FND_API.G_TRUE
390 --                                   initialize error message list
391 --                           if set to FND_API.G_FALSE - not initialize error
392 --                                   message list
393 --   p_commit (optional, default FND_API.G_FALSE)
394 --      whether or not to commit the changes to database
395 --   p_validation_level         (optional), determines if full validation or
396 --                              no validation will be performed
397 --                              defaults to FND_API.G_VALID_LEVEL_FULL
398 --                              FND_API.G_VALID_LEVEL_NONE is the other value
399 --   p_lpn              WMS_LICENSE_PLATE_NUMBERS%ROWTYPE - Required Value
400 --                       Stores the information for the fields of the LPN record that
401 --                       the user desires to modify
402 --   p_source_type_id           Source type ID for the source transaction
403 --   p_source_header_id         Source header ID for the source transaction
404 --   p_source_name              Source name for the source transaction
405 --   p_source_line_id           Source line ID for the source transaction
406 --   p_source_line_detail_id    Source line detail ID for the source transaction
407 --
408 --
409 -- Output Parameters
410 --   x_return_status
411 --       if the Modify_LPN API succeeds, the value is
412 --              fnd_api.g_ret_sts_success;
413 --       if there is an expected error, the value is
417 --   x_msg_count
414 --              fnd_api.g_ret_sts_error;
415 --       if there is an unexpected error, the value is
416 --              fnd_api.g_ret_sts_unexp_error;
418 --       if there is one or more errors, the number of error messages
419 --           in the buffer
420 --   x_msg_data
421 --       if there is one and only one error, the error message
422 
423 PROCEDURE Modify_LPN
424 (  p_api_version            IN      NUMBER                          ,
425    p_init_msg_list          IN      VARCHAR2 := fnd_api.g_false     ,
426    p_commit                 IN      VARCHAR2 := fnd_api.g_false     ,
427    p_validation_level       IN      NUMBER   := fnd_api.g_valid_level_full  ,
428    x_return_status          OUT     NOCOPY VARCHAR2                        ,
429    x_msg_count              OUT     NOCOPY NUMBER                          ,
430    x_msg_data               OUT     NOCOPY VARCHAR2                        ,
431    p_lpn                    IN      LPN                             ,
432    p_source_type_id         IN      NUMBER   := NULL                ,
433    p_source_header_id       IN      NUMBER   := NULL                ,
434    p_source_name            IN      VARCHAR2 := NULL                ,
435    p_source_line_id         IN      NUMBER   := NULL                ,
436    p_source_line_detail_id  IN      NUMBER   := NULL
437 );
438 
439 /***********************************************************************/
440 /* WARNING Starting with patch set 11i.X This API will become obsolete */
441 /* Patch set J is the last patch set in which this API will exist in   */
442 /* this package all references will need to be removed by X            */
443 /***********************************************************************/
444 
445 PROCEDURE Modify_LPN_Wrapper
446 (  p_api_version            IN      NUMBER                             ,
447    p_init_msg_list          IN      VARCHAR2 := fnd_api.g_false        ,
448    p_commit                 IN      VARCHAR2 := fnd_api.g_false        ,
449    p_validation_level       IN      NUMBER   := fnd_api.g_valid_level_full  ,
450    x_return_status          OUT     NOCOPY VARCHAR2                           ,
451    x_msg_count              OUT     NOCOPY NUMBER                             ,
452    x_msg_data               OUT     NOCOPY VARCHAR2                           ,
453    p_lpn_id                 IN      NUMBER                             ,
454    p_license_plate_number   IN      VARCHAR2 := NULL                   ,
455    p_inventory_item_id      IN      NUMBER   := NULL                   ,
456    p_weight_uom_code        IN      VARCHAR2 := NULL                   ,
457    p_gross_weight           IN      NUMBER   := NULL                   ,
458    p_volume_uom_code        IN      VARCHAR2 := NULL                   ,
459    p_content_volume         IN      NUMBER   := NULL                   ,
460    p_status_id              IN      NUMBER   := NULL                   ,
461    p_lpn_context            IN      NUMBER   := NULL                   ,
462    p_sealed_status          IN      NUMBER   := NULL                   ,
463    p_organization_id        IN      NUMBER   := NULL                   ,
464    p_subinventory           IN      VARCHAR  := NULL                   ,
465    p_locator_id             IN      NUMBER   := NULL                   ,
466    p_source_type_id         IN      NUMBER   := NULL                   ,
467    p_source_header_id       IN      NUMBER   := NULL                   ,
468    p_source_name            IN      VARCHAR2 := NULL                   ,
469    p_source_line_id         IN      NUMBER   := NULL                   ,
470    p_source_line_detail_id  IN      NUMBER   := NULL
471   );
472 
473 /*---------------------------------------------------------------------*/
474 -- Name
475 --   PROCEDURE PackUnpack_Container
476 /*---------------------------------------------------------------------*/
477 -- Purpose
478 --     Allows the caller to pack or unpack contents from a container instance or LPN.
479 --               This API does not update onhand, so should not be used directly for packing
480 --               items in inventory.  For inventory packs the transaction manager should be used.
481 --
482 -- Input Parameters
483 --   p_api_version
484 --      API version number (current version is 1.0)
485 --   p_init_msg_list (optional, default FND_API.G_FALSE)
486 --      Valid values: FND_API.G_FALSE or FND_API.G_TRUE.
487 --                           if set to FND_API.G_TRUE
488 --                                   initialize error message list
489 --                           if set to FND_API.G_FALSE - not initialize error
490 --                                   message list
491 --   p_commit (optional, default FND_API.G_FALSE)
492 --                whether or not to commit the changes to database
493 --   p_validation_level         (optional), determines if full validation or
494 --                              no validation will be performed
495 --                              defaults to FND_API.G_VALID_LEVEL_FULL
496 --                              FND_API.G_VALID_LEVEL_NONE is the other value
497 --   p_lpn_id                   Parent License Plate Number Identifier - Required Value
498 --   p_content_lpn_id           Content LPN ID
499 --   p_content_item_id          Content Item ID          - Defaults to NULL
500 --   p_content_item_desc        Content Item Description - Defaults to NULL
501 --   p_revision                 Revision                 - Defaults to NULL
502 --   p_lot_number               Lot Number               - Defaults to NULL
503 --   p_from_serial_number       Starting Serial Number   - Defaults to NULL
504 --   p_to_serial_number         Ending Serial Number     - Defaults to NULL
505 --   p_quantity                 Content Quantity         - Defaults to NULL
506 --                                This value is not required if you are
507 --                                packing or unpacking an LPN or if you are
508 --                                packing or unpacking serialized items
509 --   p_uom                      Content Qty UOM          - Defaults to NULL
513 --                              destination subinventory if unpack operation
510 --   p_organization_id          Organization ID          - Required Value
511 --   p_subinventory             Subinventory             - Defaults to NULL
512 --                              Value is the source subinventory if pack,
514 --   p_locator_id               Locator Id               - Defaults to NULL
515 --                              Value is the source locator if pack,
516 --                              destination locator if unpack operation
517 --   p_enforce_wv_constraints   Weight and Volume Enforcement Flag
518 --                                  Defaults to 2 (= No), 1 = Yes
519 --
520 --   p_operation                Type of opertaion, Pack/Unpack      - Required Value
521 --                                  1 = Pack, 2 = Unpack
522 --   p_cost_group_id            Cost Group Id - Defaults to NULL
523 --   p_source_type_id           Source type ID for the source transaction
524 --   p_source_header_id         Source header ID for the source transaction
525 --   p_source_name              Source name for the source transaction
526 --   p_source_line_id           Source line ID for the source transaction
527 --   p_source_line_detail_id    Source line detail ID for the source transaction
528 --   p_homogeneous_container    Parameter signifying if different mixed
529 --                              items can be packed in the same container
530 --                                  1 = Yes, 2 = No   Defaults to 2 = No
531 --   p_match_locations          Parameter signifying if all of the items
532 --                              should be in the same location when packing
533 --                                  1 = Yes, 2 = No   Defaults to 2 = No
534 --   p_match_lpn_context        Parameter signifying if all of the LPNs
535 --                              should have the same LPN context when packing
536 --                                  1 = Yes, 2 = No   Defaults to 2 = No
537 --   p_match_lot                Parameter signifying if all of the items
538 --                              should have the same lot number when packing
539 --                                  1 = Yes, 2 = No   Defaults to 2 = No
540 --   p_match_cost_groups        Parameter signifying if all of the items
541 --                              should have the same cost group when packing
542 --                                  1 = Yes, 2 = No   Defaults to 2 = No
543 --   p_match_mtl_status         Parameter signifying if all of the items
544 --                              should have the same material status when packing
545 --                                  1 = Yes, 2 = No   Defaults to 2 = No
546 --   p_unpack_all               Parameter signifying if all of the contents
547 --                              in the LPN should be unpacked
548 --                                  1 = Yes, 2 = No   Defaults to 2 = No
549 --   p_trx_action_id            transaction header ID for the transaction
550 --        p_concurrent_pack     flag to indicate if a autonomous commit should be done
551 --                                                              for updating weight and volume of lpn.  This allows for
552 --                                                              multiple users to pack/unpack the same lpn at the same time
553 --                                                                              0 = non autonomous (default) 1 = autonomous
554 --
555 -- Output Parameters
556 --   x_return_status
557 --       if the PackUnpack_Container API succeeds, the value is
558 --              fnd_api.g_ret_sts_success;
559 --       if there is an expected error, the value is
560 --              fnd_api.g_ret_sts_error;
561 --       if there is an unexpected error, the value is
562 --              fnd_api.g_ret_sts_unexp_error;
563 --   x_msg_count
564 --       if there is one or more errors, the number of error messages
565 --           in the buffer
566 --   x_msg_data
567 --       if there is one and only one error, the error message
568 /***********************************************************************/
569 /* WARNING Starting with patch set 11i.X This API will become obsolete */
570 /* Patch set J is the last patch set in which this API will exist in   */
571 /* this package all references will need to be removed by X            */
572 /***********************************************************************/
573 
574   PROCEDURE PackUnpack_Container (
575     p_api_version              IN         NUMBER
576   , p_init_msg_list            IN         VARCHAR2 := fnd_api.g_false
577   , p_commit                   IN         VARCHAR2 := fnd_api.g_false
578   , p_validation_level         IN         NUMBER   := fnd_api.g_valid_level_full
579   , x_return_status            OUT NOCOPY VARCHAR2
580   , x_msg_count                OUT NOCOPY NUMBER
581   , x_msg_data                 OUT NOCOPY VARCHAR2
582   , p_lpn_id                   IN         NUMBER
583   , p_content_lpn_id           IN         NUMBER   := NULL
584   , p_content_item_id          IN         NUMBER   := NULL
585   , p_content_item_desc        IN         VARCHAR2 := NULL
586   , p_revision                 IN         VARCHAR2 := NULL
587   , p_lot_number               IN         VARCHAR2 := NULL
588   , p_from_serial_number       IN         VARCHAR2 := NULL
589   , p_to_serial_number         IN         VARCHAR2 := NULL
590   , p_quantity                 IN         NUMBER   := 1
591   , p_uom                      IN         VARCHAR2 := NULL
592   , p_sec_quantity             IN         NUMBER   := NULL --INVCONV kkillams
593   , p_sec_uom                  IN         VARCHAR2 := NULL --INVCONV kkillams
594   , p_organization_id          IN         NUMBER
595   , p_subinventory             IN         VARCHAR2 := NULL
596   , p_locator_id               IN         NUMBER   := NULL
597   , p_enforce_wv_constraints   IN         NUMBER   := 2
598   , p_operation                IN         NUMBER
599   , p_cost_group_id            IN         NUMBER   := NULL
600   , p_source_type_id           IN         NUMBER   := NULL
601   , p_source_header_id         IN         NUMBER   := NULL
605   , p_homogeneous_container    IN         NUMBER   := 2
602   , p_source_name              IN         VARCHAR2 := NULL
603   , p_source_line_id           IN         NUMBER   := NULL
604   , p_source_line_detail_id    IN         NUMBER   := NULL
606   , p_match_locations          IN         NUMBER   := 2
607   , p_match_lpn_context        IN         NUMBER   := 2
608   , p_match_lot                IN         NUMBER   := 2
609   , p_match_cost_groups        IN         NUMBER   := 2
610   , p_match_mtl_status         IN         NUMBER   := 2
611   , p_unpack_all               IN         NUMBER   := 2
612   , p_trx_action_id            IN         NUMBER   := NULL
613   , p_concurrent_pack          IN         NUMBER   := 0
614   , p_ignore_item_controls     IN         NUMBER   := 2
615 );
616 
617 /***********************************************************************/
618 /* WARNING Starting with patch set 11i.X This API will become obsolete */
619 /* Patch set J is the last patch set in which this API will exist in   */
620 /* this package all references will need to be removed by X            */
621 /***********************************************************************/
622 
623 PROCEDURE pack_prepack_container
624   (  p_api_version            IN      NUMBER                        ,
625      p_init_msg_list          IN      VARCHAR2 := fnd_api.g_false   ,
626      p_commit                 IN      VARCHAR2 := fnd_api.g_false   ,
627      p_validation_level       IN      NUMBER   := fnd_api.g_valid_level_full  ,
628      x_return_status          OUT     NOCOPY VARCHAR2                      ,
629      x_msg_count              OUT     NOCOPY NUMBER                        ,
630      x_msg_data               OUT     NOCOPY VARCHAR2                      ,
631      p_lpn_id                 IN      NUMBER                        ,
632      p_content_item_id        IN      NUMBER   := NULL              ,
633      p_revision               IN      VARCHAR2 := NULL              ,
634      p_lot_number             IN      VARCHAR2 := NULL              ,
635      p_from_serial_number     IN      VARCHAR2 := NULL              ,
636      p_to_serial_number       IN      VARCHAR2 := NULL              ,
637      p_quantity               IN      NUMBER   := 1                 ,
638      p_uom                    IN      VARCHAR2 := NULL              ,
639      p_organization_id        IN      NUMBER                        ,
640      p_operation              IN      NUMBER                        ,
641      p_source_type_id         IN      NUMBER   := NULL
642   );
643 
644 
645 /*---------------------------------------------------------------------*/
646 -- Name
647 --   PROCEDURE Explode_LPN
648 /*---------------------------------------------------------------------*/
649 -- Purpose
650 --    API returns a PL/SQL table of a containers contents.
651 --    User will pass in the LPN of
652 --    the container to be exploded and the level to explode to.
653 --
654 -- Input Parameters
655 --   p_api_version
656 --      API version number (current version is 1.0)
657 --   p_init_msg_list (optional, default FND_API.G_FALSE)
658 --      Valid values: FND_API.G_FALSE or FND_API.G_TRUE.
659 --                           if set to FND_API.G_TRUE
660 --                                   initialize error message list
661 --                           if set to FND_API.G_FALSE - not initialize error
662 --                                   message list
663 --   p_commit (optional, default FND_API.G_FALSE)
664 --      whether or not to commit the changes to database
665 --   p_lpn_id                 License Plate Number Identifier - Required Value
666 --   p_explosion_level        Explosion Level - Defaults to 0 (Explode to all levels)
667 --
668 --
669 -- Output Parameters
670 --   x_return_status
671 --       if the Explode_LPN API succeeds, the value is
672 --              fnd_api.g_ret_sts_success;
673 --       if there is an expected error, the value is
674 --              fnd_api.g_ret_sts_error;
675 --       if there is an unexpected error, the value is
676 --              fnd_api.g_ret_sts_unexp_error;
677 --   x_msg_count
678 --       if there is one or more errors, the number of error messages
679 --           in the buffer
680 --   x_msg_data
681 --       if there is one and only one error, the error message
682 
683 -- This is the contents of exploded table type
684 /***********************************************************************/
685 /* WARNING Starting with patch set 11i.X This API will become obsolete */
686 /* Patch set J is the last patch set in which this API will exist in   */
687 /* this package all references will need to be removed by X            */
688 /***********************************************************************/
689 
690 TYPE WMS_Container_Content_Rec_Type is RECORD
691 (  parent_lpn_id        NUMBER          ,
692    content_lpn_id       NUMBER          ,
693    content_item_id      NUMBER          ,
694    content_description  VARCHAR2(240)   ,
695    content_type         VARCHAR2(1)     ,
696    organization_id      NUMBER          ,
697    revision             VARCHAR2(3)     ,
698    lot_number           VARCHAR2(80)    , -- nsinghi bug#5764384. Changed size from 30 to 80
699    serial_number        VARCHAR2(30)    ,
700    quantity             NUMBER          ,
701    sec_quantity         NUMBER          , --INVCONV kkillams
702    uom                  VARCHAR2(3)     ,
703    sec_uom              VARCHAR2(3)     , --INVCONV kkillams
704    cost_group_id        NUMBER          ,
705    primary_quantity     NUMBER            -- 16445970
706 );
707 
708 TYPE WMS_Container_Tbl_Type is TABLE OF WMS_Container_Content_Rec_Type
709 INDEX BY BINARY_INTEGER;
710 
711 PROCEDURE Explode_LPN
712 (  p_api_version        IN      NUMBER                         ,
713    p_init_msg_list      IN      VARCHAR2 := fnd_api.g_false    ,
714    p_commit             IN      VARCHAR2 := fnd_api.g_false    ,
718    p_lpn_id             IN      NUMBER                         ,
715    x_return_status      OUT     NOCOPY VARCHAR2                       ,
716    x_msg_count          OUT     NOCOPY NUMBER                         ,
717    x_msg_data           OUT     NOCOPY VARCHAR2                       ,
719    p_explosion_level    IN      NUMBER   := 0                  ,
720    x_content_tbl        OUT     NOCOPY WMS_Container_Tbl_Type
721 );
722 
723 
724 /*---------------------------------------------------------------------*/
725 -- Name
726 --   FUNCTION Validate_LPN
727 /*---------------------------------------------------------------------*/
728 -- Purpose
729 --    This Function returns a row of WMS_Licese_Plate_Numbers entity
730 --
731 -- Input Parameters
732 --    p_lpn   License_Plate_Number entity Row type variable
733 -- Output Value - 1. Success  0. Failure
734 
735 /*-- Constant Return Values for Validation APIs */
736 T CONSTANT NUMBER := 1;
737 F CONSTANT NUMBER := 0;
738 
739 FUNCTION Validate_LPN(
740   p_lpn IN OUT nocopy LPN
741 , p_lock IN NUMBER := 2 )
742 RETURN NUMBER;
743 
744 
745 /*---------------------------------------------------------------------*/
746 -- Name
747 --   PROCEDURE Container_Required_Qty
748 /*---------------------------------------------------------------------*/
749 -- Purpose
750 --    Calculates the quantity of containers required to store
751 --    (source) the inventory item  or container specified.
752 --    If the destination container given, it will be calculated for
753 --    the given container item or it will be calculated as per the
754 --    item/container relationship definitions.
755 --
756 -- Input Parameters
757 --   p_api_version
758 --      API version number (current version is 1.0)
759 --   p_init_msg_list (optional, default FND_API.G_FALSE)
760 --      Valid values: FND_API.G_FALSE or FND_API.G_TRUE.
761 --                           if set to FND_API.G_TRUE
762 --                                   initialize error message list
763 --                           if set to FND_API.G_FALSE - not initialize error
764 --                                   message list
765 --   p_commit (optional, default FND_API.G_FALSE)
766 --      whether or not to commit the changes to database
767 --   p_source_item_id           Source Item id (can also be a container Item) - Required Value
768 --   p_source_qty               Source Item Qty        - Required Value
769 --   p_source_qty_uom           UOM of Source Item Qty - Required Value
770 --   p_qty_per_container        Qty per each container - Defaults to NULL
771 --   p_qty_per_container_uom    UOM of Qty per each container - Defaults to NULL
772 --   p_organization_id          Organization Id - Defaults to NULL
773 --   p_dest_cont_item_id        Destination container item id - IN OUT parameter
774 --
775 --
776 -- Output Parameters
777 --   x_return_status
778 --       if the Container_Required_Qty API succeeds, the value is
779 --              fnd_api.g_ret_sts_success;
780 --       if there is an expected error, the value is
781 --              fnd_api.g_ret_sts_error;
782 --       if there is an unexpected error, the value is
783 --              fnd_api.g_ret_sts_unexp_error;
784 --   x_msg_count
785 --       if there is one or more errors, the number of error messages
786 --           in the buffer
787 --   x_msg_data
788 --       if there is one and only one error, the error message
789 --   p_dest_cont_item_id        Destination container item id - IN OUT parameter
790 --   p_qty_required             Required Container Quantity
791 /***********************************************************************/
792 /* WARNING Starting with patch set 11i.X This API will become obsolete */
793 /* Patch set J is the last patch set in which this API will exist in   */
794 /* this package all references will need to be removed by X            */
795 /***********************************************************************/
796 
797 PROCEDURE Container_Required_Qty
798 (  p_api_version           IN     NUMBER                          ,
799    p_init_msg_list         IN     VARCHAR2 := fnd_api.g_false     ,
800    p_commit                IN     VARCHAR2 := fnd_api.g_false     ,
801    x_return_status         OUT    NOCOPY VARCHAR2                        ,
802    x_msg_count             OUT    NOCOPY NUMBER                          ,
803    x_msg_data              OUT    NOCOPY VARCHAR2                        ,
804    p_source_item_id        IN     NUMBER                          ,
805    p_source_qty            IN     NUMBER                          ,
806    p_source_qty_uom        IN     VARCHAR2                        ,
807    p_qty_per_cont          IN     NUMBER   := NULL                ,
808    p_qty_per_cont_uom      IN     VARCHAR2 := NULL                ,
809    p_organization_id       IN     NUMBER                          ,
810    p_dest_cont_item_id     IN OUT NOCOPY NUMBER                          ,
811    p_qty_required          OUT    NOCOPY NUMBER
812 );
813 
814 TYPE LPN_Table_Type IS TABLE OF WMS_LICENSE_PLATE_NUMBERS%ROWTYPE
815   INDEX BY BINARY_INTEGER;
816 
817 
818 /*---------------------------------------------------------------------*/
819 -- Name
820 --   PROCEDURE Prepack_LPN_CP
821 /*---------------------------------------------------------------------*/
822 -- Purpose
823 --   Allows the packing of items that are not yet in inventory.  LPN's are
824 --   pre-generated and associated with contents at the release of a WIP job.
825 --   The LPN's generated will have a state of "Resides in WIP" so that their
826 --   contents are not included in on hand inventory
827 --
828 --
829 -- Input Parameters
830 --   p_api_version
831 --      API version number (current version is 1.0)
832 --   p_init_msg_list (optional, default FND_API.G_FALSE)
833 --      Valid values: FND_API.G_FALSE or FND_API.G_TRUE.
837 --                                   message list
834 --                           if set to FND_API.G_TRUE
835 --                                   initialize error message list
836 --                           if set to FND_API.G_FALSE - do not initialize error
838 --   p_commit (optional, default FND_API.G_FALSE)
839 --      whether or not to commit the changes to database
840 --   p_organization_id          Organization of the LPN          - Required
841 --   p_subinventory             Subinventory - Defaults to NULL
842 --   p_locator_id               Locator Id - Defaults to NULL
843 --   p_inventory_item_id        Inventory ID number              - Required
844 --   p_revision                 Revision of the inventory item
845 --   p_lot_number               Lot number of the inventory item
846 --   p_quantity                 Quantity of item to be prepacked - Required
847 --   p_uom                      UOM of the quantity prepacked    - Required
848 --   p_source                   Source of information (WIP/REC)
849 --   p_serial_number_from       Starting serial number for inventory item
850 --   p_serial_number_to         Ending serial number for inventory item
851 --   p_container_item_id        Inventory item ID for a container item
852 --   p_cont_revision            Revision of the container item
853 --   p_cont_lot_number          Lot Number of the container item
854 --   p_cont_serial_number_from  From serial number of the container item
855 --   p_cont_serial_number_to    To serial number of the container item
856 --   p_lpn_sealed_flag          Flag to tell if LPN should be sealed or not
857 --   p_print_label              Should labels be printed afterwards
858 --   p_print_content_report     Should content reports be generated afterwards
859 --
860 --
861 -- Output Parameters
862 --   ERRBUF                     Concurrent program error buffer
863 --   RETCODE                    Concurrent program return code
864 --   x_return_status
865 --       if the Prepack_LPN API succeeds, the value is
866 --              fnd_api.g_ret_sts_success;
867 --       if there is an expected error, the value is
868 --              fnd_api.g_ret_sts_error;
869 --       if there is an unexpected error, the value is
870 --              fnd_api.g_ret_sts_unexp_error;
871 --   x_msg_count
872 --       if there is one or more errors, the number of error messages
873 --           in the buffer
874 --   x_msg_data
875 --       if there is one and only one error, the error message
876 --
877 /***********************************************************************/
878 /* WARNING Starting with patch set 11i.X This API will become obsolete */
879 /* Patch set J is the last patch set in which this API will exist in   */
880 /* this package all references will need to be removed by X            */
881 /***********************************************************************/
882 
883 PROCEDURE Prepack_LPN_CP
884 (  ERRBUF                     OUT     NOCOPY VARCHAR2                           ,
885    RETCODE                    OUT     NOCOPY NUMBER                             ,
886    p_api_version              IN      NUMBER                            ,
887    p_organization_id          IN      NUMBER                           ,
888    p_subinventory             IN      VARCHAR2 := NULL                 ,
889    p_locator_id               IN      NUMBER   := NULL                 ,
890    p_inventory_item_id        IN      NUMBER                           ,
891    p_revision                 IN      VARCHAR2 := NULL                 ,
892    p_lot_number               IN      VARCHAR2 := NULL                 ,
893    p_quantity                 IN      NUMBER                           ,
894    p_uom                      IN      VARCHAR2                         ,
895    p_source                   IN      NUMBER                           ,
896    p_serial_number_from       IN      VARCHAR2 := NULL                 ,
897    p_serial_number_to         IN      VARCHAR2 := NULL                 ,
898    p_container_item_id        IN      NUMBER   := NULL                 ,
899    p_cont_revision            IN      VARCHAR2 := NULL                 ,
900    p_cont_lot_number          IN      VARCHAR2 := NULL                 ,
901    p_cont_serial_number_from  IN      VARCHAR2 := NULL                 ,
902    p_cont_serial_number_to    IN      VARCHAR2 := NULL                 ,
903    p_lpn_sealed_flag          IN      NUMBER   := fnd_api.g_miss_num   ,
904    p_print_label              IN      NUMBER   := fnd_api.g_miss_num   ,
905    p_print_content_report     IN      NUMBER   := fnd_api.g_miss_num
906 );
907 
908 TYPE Transaction_History IS TABLE OF WMS_LPN_HISTORIES.lpn_history_id%TYPE
909   INDEX BY BINARY_INTEGER;
910 
911 /*---------------------------------------------------------------------*/
912 -- Name
913 --   PROCEDURE lpn_pack_complete
914 /*---------------------------------------------------------------------*/
915 -- Purpose
916 --   commit or revert changes made by autonomous pack/unpack
917 --
918 -- Input Parameters
919 --   p_revert        The process ID for the prepack transaction
920 --                                                      0 = complete 1 = revert changes
921 --
922 -- Output Parameters
923 --   None
924 --
925 /***********************************************************************/
926 /* WARNING Starting with patch set 11i.X This API will become obsolete */
927 /* Patch set J is the last patch set in which this API will exist in   */
928 /* this package all references will need to be removed by X            */
929 /***********************************************************************/
930 
931 FUNCTION lpn_pack_complete( p_revert NUMBER := 0 )RETURN BOOLEAN;
932 
933 -- Start of comments
934 --  API name: Merge_Up_LPN
935 --  Type    : Public
936 --  Pre-reqs: None.
937 --  Function: Creates and executes transactions in MTL_MATERIAL_TRANSACTIONS_TEMP
938 --            to consolidate contents of a nested LPN structure into the outermost
939 --            LPN
943 --             Item B Qty 4                 Item C Qty 5
940 --  Example: Before Merge Up
941 --
942 --             Item A Qty 3                 Item A Qty 2
944 --            -------------- Item C Qty 2  --------------
945 --                LPN3       Item D Qty 3       LPN2
946 --           ----------------------------------------------
947 --                                LPN 1
948 --           After Merge Up
949 --
950 --            Item A Qty 5
951 --            Item B Qty 4
952 --            Item C Qty 7
953 --            Item D Qty 3      Empty          Empty
954 --           -------------- -------------- --------------
955 --               LPN 1          LPN 2          LPN 3
956 --  Parameters:
957 --  IN: p_organization_id   IN NUMBER   Required
958 --        LPN organization id. Part of the unique key
959 --        that uniquely identifies an LPN record.
960 --      p_outermost_lpn_id  IN NUMBER   Required
961 --        Corresponds to the column lpn_id of the LPN to validate
962 --        This LPN must be the outermost LPN, i.e. cannot have any
963 --        parent LPN (nested)
964 --  Version : Current version 1.0
965 -- End of comments
966 
967 PROCEDURE Merge_Up_LPN (
968   p_api_version             IN         NUMBER
969 , p_init_msg_list           IN         VARCHAR2 := fnd_api.g_false
970 , p_commit                  IN         VARCHAR2 := fnd_api.g_false
971 , x_return_status           OUT NOCOPY VARCHAR2
972 , x_msg_count               OUT NOCOPY NUMBER
973 , x_msg_data                OUT NOCOPY VARCHAR2
974 , p_organization_id         IN         NUMBER
975 , p_outermost_lpn_id        IN         NUMBER
976 );
977 
978 -- Start of comments
979 --  API name: Break_Down_LPN
980 --  Type    : Public
981 --  Pre-reqs: None.
982 --  Function: Creates and executes transactions in MTL_MATERIAL_TRANSACTIONS_TEMP
983 --            to unnest LPN structure but leaving all contents in their original
984 --            LPNs
985 --  Example: Before Break Down
986 --
987 --             Item A Qty 3                 Item A Qty 2
988 --             Item B Qty 4                 Item C Qty 5
989 --            -------------- Item C Qty 2  --------------
990 --                LPN3       Item D Qty 3       LPN2
991 --           ----------------------------------------------
992 --                                LPN 1
993 --           After Break Down
994 --
995 --            Item C Qty 2   Item A Qty 2   Item A Qty 3
996 --            Item D Qty 3   Item C Qty 5   Item B Qty 4
997 --           -------------- -------------- --------------
998 --               LPN 1          LPN 2          LPN 3
999 --  Parameters:
1000 --  IN: p_organization_id   IN NUMBER   Required
1001 --        LPN organization id. Part of the unique key
1002 --        that uniquely identifies an LPN record.
1003 --      p_outermost_lpn_id  IN NUMBER   Required
1004 --        Corresponds to the column lpn_id of the LPN to validate
1005 --        This LPN must be the outermost LPN, i.e. cannot have any
1006 --        parent LPN (nested)
1007 --  Version : Current version 1.0
1008 -- End of comments
1009 
1010 PROCEDURE Break_Down_LPN (
1011   p_api_version             IN         NUMBER
1012 , p_init_msg_list           IN         VARCHAR2 := fnd_api.g_false
1013 , p_commit                  IN         VARCHAR2 := fnd_api.g_false
1014 , x_return_status           OUT NOCOPY VARCHAR2
1015 , x_msg_count               OUT NOCOPY NUMBER
1016 , x_msg_data                OUT NOCOPY VARCHAR2
1017 , p_organization_id         IN         NUMBER
1018 , p_outermost_lpn_id        IN         NUMBER
1019 );
1020 
1021 -- Start of comments
1022 --  API name: Initialize_LPN
1023 --  Type    : Public
1024 --  Pre-reqs: None.
1025 --  Function: Clears LPN of all contents and resets LPN to defined but not used
1026 --            (pregenerated) status, clearing subinventory and location information.
1027 --            If LPN is nested, all nested lpns will also be initialized
1028 --            API will only remove information from
1029 --  Parameters:
1030 --  IN: p_organization_id  IN NUMBER   Required
1031 --        LPN organization id. Part of the unique key
1032 --        that uniquely identifies an LPN record.
1033 --      p_outermost_lpn_id IN NUMBER   Required
1034 --        Corresponds to the column lpn_id of the LPN to Initialize
1035 --        This LPN must be the outermost LPN, i.e. cannot have any
1036 --        parent LPN (nested)
1037 --  Version : Current version 1.0
1038 -- End of comments
1039 
1040 PROCEDURE Initialize_LPN (
1041   p_api_version             IN         NUMBER
1042 , p_init_msg_list           IN         VARCHAR2 := fnd_api.g_false
1043 , p_commit                  IN         VARCHAR2 := fnd_api.g_false
1044 , x_return_status           OUT NOCOPY VARCHAR2
1045 , x_msg_count               OUT NOCOPY NUMBER
1046 , x_msg_data                OUT NOCOPY VARCHAR2
1047 , p_organization_id         IN         NUMBER
1048 , p_outermost_lpn_id        IN         NUMBER
1049 );
1050 
1051  -- For LPN reuse ER : 6845650
1052 PROCEDURE REUSE_LPNS (
1053                  p_api_version              IN         NUMBER
1054                , p_init_msg_list            IN         VARCHAR2 := fnd_api.g_false
1055                , p_commit                   IN         VARCHAR2 := fnd_api.g_false
1056                , p_validation_level         IN         NUMBER   := fnd_api.g_valid_level_full
1057                , x_return_status            OUT NOCOPY VARCHAR2
1058                , x_msg_count                OUT NOCOPY NUMBER
1059                , x_msg_data                 OUT NOCOPY VARCHAR2
1060                , p_lpn_id                   IN         NUMBER
1061                , p_clear_attributes         IN         VARCHAR2
1062                , p_new_org_id               IN         NUMBER
1063                , p_unpack_inner_lpns        IN         VARCHAR2
1064                , p_clear_containter_item_id IN         VARCHAR2
1065                );
1066 
1067 END WMS_CONTAINER_PUB;