DBA Data[Home] [Help]

PACKAGE: APPS.INV_TXN_VALIDATIONS

Source


1 PACKAGE INV_TXN_VALIDATIONS AS
2 /* $Header: INVMWAVS.pls 120.4.12010000.1 2008/07/24 01:40:29 appldev ship $ */
3 
4         TYPE t_genref IS REF CURSOR;
5 
6    TYPE t_Item_Out IS RECORD(
7 
8       Inventory_Item_Id               NUMBER,
9       Description                     VARCHAR2(240),
10       Revision_Qty_Control_Code       NUMBER,
11       Lot_Control_Code                NUMBER,
12       Serial_Number_Control_Code      NUMBER,
13       Restrict_Locators_Code          NUMBER,
14       Location_Control_Code            NUMBER,
15       Restrict_Subinventories_Code      NUMBER);
16 
17    TYPE t_SN_Out IS RECORD(
18       Current_Locator_Id             NUMBER,
19       Current_Subinventory_Code      VARCHAR2(10),
20       Revision           VARCHAR2(3),
21 -- Increased lot size to 80 Char - Mercy Thomas - B4625329
22       Lot_Number            VARCHAR2(80));
23 
24 
25 
26 
27    PROCEDURE VALIDATE_ITEM(x_Inventory_Item_Id            OUT NOCOPY NUMBER,
28             x_Description                  OUT NOCOPY VARCHAR2,
29             x_Revision_Qty_Control_Code    OUT NOCOPY NUMBER,
30             x_Lot_Control_Code             OUT NOCOPY NUMBER,
31             x_Serial_Number_Control_Code   OUT NOCOPY NUMBER,
32             x_Restrict_Locators_Code       OUT NOCOPY NUMBER,
33             x_Location_Control_Code        OUT NOCOPY NUMBER,
34             x_Restrict_Subinventories_Code OUT NOCOPY NUMBER,
35             x_Message                      OUT NOCOPY VARCHAR2,
36             x_Status                       OUT NOCOPY VARCHAR2,
37             p_Organization_Id              IN  NUMBER,
38             p_Concatenated_Segments        IN  VARCHAR2);
39 
40 
41 
42    PROCEDURE VALIDATE_SERIAL(x_Current_Locator_Id           OUT NOCOPY NUMBER,
43             x_Concatenated_Segments          OUT NOCOPY VARCHAR2, --Locator Name
44             x_Current_Subinventory_Code      OUT NOCOPY VARCHAR2,
45             x_Revision              OUT NOCOPY VARCHAR2,
46             x_Lot_Number          OUT NOCOPY VARCHAR2,
47             x_Expiration_Date                OUT NOCOPY DATE,
48             x_Message                         OUT NOCOPY VARCHAR2,
49             x_Status                          OUT NOCOPY VARCHAR2,
50             p_Inventory_Item_Id               IN  NUMBER,
51             p_Current_Organization_Id         IN  NUMBER,
52             p_Serial_Number          IN  VARCHAR2);
53 
54 
55 
56 -- This does not use cost_group id
57 -- Bug 5125915 Added variables demand_source_header and demand_source_line
58 PROCEDURE GET_AVAILABLE_QUANTITY(
59              x_return_status        OUT NOCOPY VARCHAR2,
60              p_tree_mode            IN  NUMBER,
61              p_organization_id      IN  NUMBER,
62              p_inventory_item_id    IN  NUMBER,
63              p_is_revision_control  IN  VARCHAR2,
64              p_is_lot_control       IN  VARCHAR2,
65              p_is_serial_control    IN  VARCHAR2,
66              p_demand_source_header_id IN NUMBER DEFAULT -9999,
67              p_demand_source_line_id IN NUMBER DEFAULT -9999,
68              p_revision             IN  VARCHAR2,
69              p_lot_number           IN  VARCHAR2,
70              p_lot_expiration_date  IN  DATE,
71              p_subinventory_code    IN  VARCHAR2,
72              p_locator_id           IN  NUMBER,
73              p_source_type_id       IN  NUMBER,
74              x_qoh                  OUT NOCOPY NUMBER,
75              x_att                  OUT NOCOPY NUMBER
76              );
77 
78 -- Bug# 3952081
79 -- New Overloaded Version of the previous procedure for OPM convergence
80 -- Additionally returns secondary qoh, secondary att
81 -- Additionally takes grade_code as an input param.
82 PROCEDURE GET_AVAILABLE_QUANTITY(
83              x_return_status        OUT NOCOPY VARCHAR2,
84              p_tree_mode            IN  NUMBER,
85              p_organization_id      IN  NUMBER,
86              p_inventory_item_id    IN  NUMBER,
87              p_is_revision_control  IN  VARCHAR2,
88              p_is_lot_control       IN  VARCHAR2,
89              p_is_serial_control    IN  VARCHAR2,
90              p_demand_source_header_id IN NUMBER DEFAULT -9999,
91              p_demand_source_line_id IN NUMBER DEFAULT -9999,
92              p_revision             IN  VARCHAR2,
93              p_lot_number           IN  VARCHAR2,
94              p_grade_code           IN  VARCHAR2,         -- inv converge
95              p_lot_expiration_date  IN  DATE,
96              p_subinventory_code    IN  VARCHAR2,
97              p_locator_id           IN  NUMBER,
98              p_source_type_id       IN  NUMBER,
99              x_qoh                  OUT NOCOPY NUMBER,
100              x_att                  OUT NOCOPY NUMBER,
101              x_sqoh                 OUT NOCOPY NUMBER,   -- inv converge
102              x_satt                 OUT NOCOPY NUMBER    -- inv converge
103              );
104 
105 
106 
107 -- This uses cost group id
108 PROCEDURE GET_AVAILABLE_QUANTITY(
109              x_return_status        OUT NOCOPY VARCHAR2,
110              p_tree_mode            IN  NUMBER,
111              p_organization_id      IN  NUMBER,
112              p_inventory_item_id    IN  NUMBER,
113              p_is_revision_control  IN  VARCHAR2,
114              p_is_lot_control       IN  VARCHAR2,
115              p_is_serial_control    IN  VARCHAR2,
116              p_revision             IN  VARCHAR2,
117              p_lot_number           IN  VARCHAR2,
118              p_lot_expiration_date  IN  DATE,
119              p_subinventory_code    IN  VARCHAR2,
120              p_locator_id           IN  NUMBER,
121              p_source_type_id       IN  NUMBER,
122              p_cost_group_id        IN  NUMBER,
123              x_qoh                  OUT NOCOPY NUMBER,
124              x_att                  OUT NOCOPY NUMBER
125              );
126 
127 -- Bug# 3952081
128 -- New Overloaded Version of the previous procedure for OPM convergence
129 -- Additionally returns secondary qoh, secondary att
130 -- Additionally takes grade_code as an input param.
131 PROCEDURE GET_AVAILABLE_QUANTITY(
132              x_return_status        OUT NOCOPY VARCHAR2,
133              p_tree_mode            IN  NUMBER,
134              p_organization_id      IN  NUMBER,
135              p_inventory_item_id    IN  NUMBER,
136              p_is_revision_control  IN  VARCHAR2,
137              p_is_lot_control       IN  VARCHAR2,
138              p_is_serial_control    IN  VARCHAR2,
139              p_revision             IN  VARCHAR2,
140              p_lot_number           IN  VARCHAR2,
141              p_grade_code           IN  VARCHAR2,         -- inv converge
142              p_lot_expiration_date  IN  DATE,
143              p_subinventory_code    IN  VARCHAR2,
144              p_locator_id           IN  NUMBER,
145              p_source_type_id       IN  NUMBER,
146              p_cost_group_id        IN  NUMBER,
147              x_qoh                  OUT NOCOPY NUMBER,
148              x_att                  OUT NOCOPY NUMBER,
149              x_sqoh                 OUT NOCOPY NUMBER,   -- inv converge
150              x_satt                 OUT NOCOPY NUMBER    -- inv converge
151              );
152 
153 -- Bug# 2358224
154 -- Overloaded version of the previous procedure
155 -- passing in the to/transfer subinventory
156 -- This uses cost group id and transfer subinventory
157 PROCEDURE GET_AVAILABLE_QUANTITY(
158              x_return_status         OUT NOCOPY VARCHAR2,
159              p_tree_mode             IN  NUMBER,
160              p_organization_id       IN  NUMBER,
161              p_inventory_item_id     IN  NUMBER,
162              p_is_revision_control   IN  VARCHAR2,
163              p_is_lot_control        IN  VARCHAR2,
164              p_is_serial_control     IN  VARCHAR2,
165              p_revision              IN  VARCHAR2,
166              p_lot_number            IN  VARCHAR2,
167              p_lot_expiration_date   IN  DATE,
168              p_subinventory_code     IN  VARCHAR2,
169              p_locator_id            IN  NUMBER,
170              p_source_type_id        IN  NUMBER,
171              p_cost_group_id         IN  NUMBER,
172              p_to_subinventory_code  IN  VARCHAR2,
173              x_qoh                   OUT NOCOPY NUMBER,
174              x_att                   OUT NOCOPY NUMBER
175              );
176 
177 -- Bug# 3952081
178 -- New Overloaded Version of the previous procedure for OPM convergence
179 -- Additionally returns secondary qoh, secondary att
180 -- Additionally takes grade_code as an input param.
181 PROCEDURE GET_AVAILABLE_QUANTITY(
182              x_return_status        OUT NOCOPY VARCHAR2,
183              p_tree_mode            IN NUMBER,
184              p_organization_id      IN NUMBER,
185              p_inventory_item_id    IN NUMBER,
186              p_is_revision_control  IN VARCHAR2,
187              p_is_lot_control       IN VARCHAR2,
188              p_is_serial_control    IN VARCHAR2,
189              p_revision             IN VARCHAR2,
190              p_lot_number           IN VARCHAR2,
191              p_grade_code           IN VARCHAR2,         -- inv converge
192              p_lot_expiration_date  IN DATE,
193              p_subinventory_code    IN VARCHAR2,
194              p_locator_id           IN NUMBER,
195              p_source_type_id       IN NUMBER,
196              p_cost_group_id        IN NUMBER,
197              p_to_subinventory_code IN VARCHAR2,
198              x_qoh                  OUT NOCOPY NUMBER,
199              x_att                  OUT NOCOPY NUMBER,
200              x_sqoh                 OUT NOCOPY NUMBER,   -- inv converge
201              x_satt                 OUT NOCOPY NUMBER    -- inv converge
202              );
203 
204 
205 -- This procedure calls INV_QUANTITY_TREE_PVT to return pqoh
206 PROCEDURE GET_AVAILABLE_QUANTITY(
207             x_return_status        OUT NOCOPY VARCHAR2,
208             p_tree_mode            IN  NUMBER,
209             p_organization_id      IN  NUMBER,
210             p_inventory_item_id    IN  NUMBER,
211             p_is_revision_control  IN  VARCHAR2,
212             p_is_lot_control       IN  VARCHAR2,
213             p_is_serial_control    IN  VARCHAR2,
214             p_revision             IN  VARCHAR2,
215             p_lot_number           IN  VARCHAR2,
216             p_lot_expiration_date  IN  DATE,
217             p_subinventory_code    IN  VARCHAR2,
218             p_locator_id           IN  NUMBER,
219             p_source_type_id       IN  NUMBER,
220             x_qoh                  OUT NOCOPY NUMBER,
221             x_att                  OUT NOCOPY NUMBER,
222             x_pqoh                 OUT NOCOPY NUMBER,
223             x_tqoh                 OUT NOCOPY NUMBER,
224             x_atpp1                OUT NOCOPY NUMBER,
225             x_qoh1                 OUT NOCOPY NUMBER
226             );
227 
228 -- Bug# 3952081
229 -- New Overloaded Version of the previous procedure for OPM convergence
230 -- Additionally returns secondary qoh, secondary att
231 -- Additionally takes grade_code as an input param.
232 PROCEDURE GET_AVAILABLE_QUANTITY(
233             x_return_status        OUT NOCOPY VARCHAR2,
234             p_tree_mode            IN  NUMBER,
235             p_organization_id      IN  NUMBER,
236             p_inventory_item_id    IN  NUMBER,
237             p_is_revision_control  IN  VARCHAR2,
238             p_is_lot_control       IN  VARCHAR2,
239             p_is_serial_control    IN  VARCHAR2,
240             p_revision             IN  VARCHAR2,
241             p_lot_number           IN  VARCHAR2,
242             p_grade_code           IN  VARCHAR2,
243             p_lot_expiration_date  IN  DATE,
244             p_subinventory_code    IN  VARCHAR2,
245             p_locator_id           IN  NUMBER,
246             p_source_type_id       IN  NUMBER,
247             x_qoh                  OUT NOCOPY NUMBER,
248             x_att                  OUT NOCOPY NUMBER,
249             x_pqoh                 OUT NOCOPY NUMBER,
250             x_tqoh                 OUT NOCOPY NUMBER,
251             x_atpp1                OUT NOCOPY NUMBER,
252             x_qoh1                 OUT NOCOPY NUMBER,
253             x_sqoh                  OUT NOCOPY NUMBER,
254             x_satt                  OUT NOCOPY NUMBER,
255             x_spqoh                 OUT NOCOPY NUMBER,
256             x_stqoh                 OUT NOCOPY NUMBER,
257             x_satpp1                OUT NOCOPY NUMBER,
258             x_sqoh1                 OUT NOCOPY NUMBER
259             );
260 
261 /* This Overloaded Procedure Calls INV_QUANTITY_TREE_PVT to return pqoh.
262 --This procedure takes in the cost group
263 */
264 
265 PROCEDURE GET_AVAILABLE_QUANTITY(
266             x_return_status         OUT NOCOPY VARCHAR2,
267             p_tree_mode             IN  NUMBER,
268             p_organization_id       IN  NUMBER,
269             p_inventory_item_id     IN  NUMBER,
270             p_is_revision_control   IN  VARCHAR2,
271             p_is_lot_control        IN  VARCHAR2,
272             p_is_serial_control     IN  VARCHAR2,
273             p_revision              IN  VARCHAR2,
274             p_lot_number            IN  VARCHAR2,
275             p_lot_expiration_date   IN  DATE,
276             p_subinventory_code     IN  VARCHAR2,
277             p_locator_id            IN  NUMBER,
278             p_source_type_id        IN  NUMBER,
279             x_qoh                   OUT NOCOPY NUMBER,
280             x_att                   OUT NOCOPY NUMBER,
281             x_pqoh                  OUT NOCOPY NUMBER,
282             x_tqoh                  OUT NOCOPY NUMBER,
283             x_atpp1                 OUT NOCOPY NUMBER,
284             x_qoh1                  OUT NOCOPY NUMBER,
285             p_cost_group_id         IN  NUMBER,
286             p_transfer_subinventory IN  VARCHAR2
287             );
288 
289 -- Bug# 3952081
290 -- New Overloaded Version of the previous procedure for OPM convergence
291 -- Additionally returns secondary qoh, secondary att
292 -- Additionally takes grade_code as an input param.
293 PROCEDURE GET_AVAILABLE_QUANTITY(
294             x_return_status         OUT NOCOPY VARCHAR2,
295             p_tree_mode             IN  NUMBER,
296             p_organization_id       IN  NUMBER,
297             p_inventory_item_id     IN  NUMBER,
298             p_is_revision_control   IN  VARCHAR2,
299             p_is_lot_control        IN  VARCHAR2,
300             p_is_serial_control     IN  VARCHAR2,
301             p_revision              IN  VARCHAR2,
302             p_lot_number            IN  VARCHAR2,
303             p_grade_code            IN  VARCHAR2,
304             p_lot_expiration_date   IN  DATE,
305             p_subinventory_code     IN  VARCHAR2,
306             p_locator_id            IN  NUMBER,
307             p_source_type_id        IN  NUMBER,
308             x_qoh                   OUT NOCOPY NUMBER,
309             x_att                   OUT NOCOPY NUMBER,
310             x_pqoh                  OUT NOCOPY NUMBER,
311             x_tqoh                  OUT NOCOPY NUMBER,
312             x_atpp1                 OUT NOCOPY NUMBER,
313             x_qoh1                  OUT NOCOPY NUMBER,
314             x_sqoh                   OUT NOCOPY NUMBER,
315             x_satt                   OUT NOCOPY NUMBER,
316             x_spqoh                  OUT NOCOPY NUMBER,
317             x_stqoh                  OUT NOCOPY NUMBER,
318             x_satpp1                 OUT NOCOPY NUMBER,
319             x_sqoh1                  OUT NOCOPY NUMBER,
320             p_cost_group_id         IN  NUMBER,
321             p_transfer_subinventory IN  VARCHAR2
322             );
323 
324 
325 
326 PROCEDURE CHECK_LOOSE_QUANTITY(
327                                 p_api_version_number    IN   NUMBER
328                               , p_init_msg_lst          IN   VARCHAR2 DEFAULT fnd_api.g_false
329                               , x_return_status         OUT  NOCOPY VARCHAR2
330                               , x_msg_count             OUT  NOCOPY NUMBER
331                               , x_msg_data              OUT  NOCOPY VARCHAR2
335                               , p_is_lot_control        IN   VARCHAR2
332                               , p_organization_id       IN   NUMBER
333                               , p_inventory_item_id     IN   NUMBER
334                               , p_is_revision_control   IN   VARCHAR2
336                               , p_is_serial_control     IN   VARCHAR2
337                               , p_revision              IN   VARCHAR2
338                               , p_lot_number            IN   VARCHAR2
339                               , p_transaction_quantity  IN   NUMBER
340                               , p_transaction_uom       IN   VARCHAR2
341                               , p_subinventory_code     IN   VARCHAR2
342                               , p_locator_id            IN   NUMBER
343                               , p_transaction_temp_id   IN   NUMBER
344                               , p_ok_to_process         OUT  NOCOPY VARCHAR2
345                               , p_transfer_subinventory IN   VARCHAR2);
346 
347 
348 PROCEDURE CHECK_WMS_INSTALL (x_return_status  OUT NOCOPY VARCHAR2,
349                                p_msg_count    OUT NOCOPY NUMBER,
350                                p_msg_data     OUT NOCOPY VARCHAR2,
351                                p_org          IN NUMBER
352                               );
353 
354 FUNCTION validate_lpn_status_quantity(
355                                       p_lpn_id IN NUMBER,
356                                       p_orgid IN NUMBER,
357                                       p_to_org_id IN NUMBER,
358                                       p_wms_installed IN VARCHAR2,
359                                       p_transaction_type_id IN NUMBER,
360                        p_source_type_id IN NUMBER,
361                        x_return_msg OUT NOCOPY VARCHAR2
362                                      )
363   RETURN VARCHAR2;
364 
365 -- Bug# 2358224
366 -- Overloaded version of the previous function passing in
367 -- the to/transfer subinventory
368 FUNCTION validate_lpn_status_quantity(
369                                       p_lpn_id                IN  NUMBER,
370                                       p_orgid                 IN  NUMBER,
371                                       p_to_org_id             IN  NUMBER,
372                                       p_wms_installed         IN  VARCHAR2,
373                                       p_transaction_type_id   IN  NUMBER,
374                        p_source_type_id        IN  NUMBER,
375                   p_to_subinventory_code  IN  VARCHAR2,
376                        x_return_msg            OUT NOCOPY VARCHAR2
377                                      )
378   RETURN VARCHAR2;
379 
380 
381 FUNCTION validate_lpn_status_quantity2(
382                                       p_lpn_id IN NUMBER,
383                                       p_orgid IN NUMBER,
384                                       p_to_org_id IN NUMBER,
385                                       p_wms_installed IN VARCHAR2,
386                                       p_transaction_type_id IN NUMBER,
387                        p_source_type_id IN NUMBER,
388                        x_return_msg OUT NOCOPY VARCHAR2
389                                      )
390   RETURN VARCHAR2;
391 
392 
393 FUNCTION orgxfer_lpn_check(
394                                       p_lpn_id IN NUMBER,
395                                       p_orgid IN NUMBER,
396                                       p_to_org_id IN NUMBER,
397                                       p_wms_installed IN VARCHAR2,
398                                       p_transaction_type_id IN NUMBER,
399                                       p_source_type_id IN NUMBER,
400                                       x_return_msg OUT NOCOPY VARCHAR2
401                                      )
402   RETURN VARCHAR2;
403 
404 
405 FUNCTION check_lpn_quantity(
406              p_lpn_id               IN NUMBER,
407              p_organization_id      IN  NUMBER,
408              p_source_type_id       IN  NUMBER,
409              p_transaction_type_id  IN NUMBER,
410              x_return_msg           OUT NOCOPY VARCHAR2)
411   RETURN VARCHAR2 ;
412 
413 
414 -- Bug# 2358224
415 -- Overloaded version of the previous function passing in
416 -- the to/transfer subinventory
417 -- Bug # 2433095 -- Changes to LPN reservations ported to the ovreloaded function
418 FUNCTION check_lpn_quantity(
419              p_lpn_id                IN  NUMBER,
420              p_organization_id       IN  NUMBER,
421              p_source_type_id        IN  NUMBER,
422              p_transaction_type_id   IN NUMBER,
423              p_to_subinventory_code  IN  VARCHAR2,
424              x_return_msg            OUT NOCOPY VARCHAR2)
425   RETURN VARCHAR2 ;
426 
427 
428 FUNCTION get_immediate_lpn_item_qty ( p_lpn_id     IN  NUMBER,
429              p_organization_id      IN  NUMBER,
430              p_source_type_id       IN  NUMBER,
431              p_inventory_item_id    IN  NUMBER,
432              p_revision             IN  VARCHAR2,
433              p_locator_id           IN  NUMBER,
434              p_subinventory_code    IN  VARCHAR2,
435              p_lot_number           IN  VARCHAR2,
436              p_is_revision_control  IN  VARCHAR2,
437              p_is_serial_control    IN  VARCHAR2,
438              p_is_lot_control       IN  VARCHAR2,
439              x_transactable_qty     OUT NOCOPY NUMBER,
440              x_qoh                  OUT NOCOPY NUMBER,
441              x_lpn_onhand           OUT NOCOPY NUMBER,
445 -- Gets the immediate quantity of an item in an LPN.
442              x_return_msg           OUT NOCOPY VARCHAR2)
443   RETURN VARCHAR2 ;
444 
446 -- Overloaded function with the following new output parameters (INVCONV):
447 --    x_transactable_sec_qty OUT NOCOPY NUMBER,
448 --    x_sqoh OUT NOCOPY NUMBER,
449 ---   x_lpn_sec_onhand OUT NOCOPY NUMBER,
450 
451 FUNCTION get_immediate_lpn_item_qty(p_lpn_id IN NUMBER,
452                                     p_organization_id IN NUMBER,
453                                     p_source_type_id IN NUMBER,
454                                     p_inventory_item_id IN NUMBER,
455                                     p_revision IN VARCHAR2,
456                                     p_locator_id IN NUMBER,
457                                     p_subinventory_code IN VARCHAR2,
458                                     p_lot_number IN VARCHAR2,
459                                     p_is_revision_control IN VARCHAR2,
460                                     p_is_serial_control IN VARCHAR2,
461                                     p_is_lot_control IN VARCHAR2,
462                                     x_transactable_qty OUT NOCOPY NUMBER,
463                                     x_qoh OUT NOCOPY NUMBER,
464                                     x_lpn_onhand OUT NOCOPY NUMBER,
465                                     x_transactable_sec_qty OUT NOCOPY NUMBER,
466                                     x_sqoh OUT NOCOPY NUMBER,
467                                     x_lpn_sec_onhand OUT NOCOPY NUMBER,
468                                     x_return_msg OUT NOCOPY VARCHAR2)
469 
470   RETURN VARCHAR2;
471 
472 FUNCTION get_unpacksplit_lpn_item_qty(p_lpn_id IN NUMBER,
473                                     p_organization_id IN NUMBER,
474                                     p_source_type_id IN NUMBER,
475                                     p_inventory_item_id IN NUMBER,
476                         p_revision IN VARCHAR2,
477                      p_locator_id IN NUMBER,
478                      p_subinventory_code IN VARCHAR2,
479                      p_lot_number IN VARCHAR2,
480                      p_is_revision_control IN VARCHAR2,
481                      p_is_serial_control IN VARCHAR2,
482                      p_is_lot_control IN VARCHAR2,
483                      p_transfer_subinventory_code IN VARCHAR2,
484                      p_transfer_locator_id        IN NUMBER,
485                      x_transactable_qty OUT NOCOPY NUMBER,
486                      x_qoh OUT NOCOPY NUMBER,
487                      x_lpn_onhand OUT NOCOPY NUMBER,
488                      x_return_msg OUT NOCOPY VARCHAR2)
489  RETURN VARCHAR2 ;
490 
491 
492 
493  FUNCTION  CHECK_SERIAL_UNPACKSPLIT( p_lpn_id     IN  NUMBER
494                                     ,p_org_id     IN  NUMBER
495                                     ,p_item_id    IN  NUMBER
496                                     ,p_rev        IN  VARCHAR2
497                                     ,p_lot        IN  VARCHAR2
498                                     ,p_serial     IN  VARCHAR2)
499 RETURN VARCHAR2;
500 
501 --"Returns"
502 PROCEDURE GET_RETURN_LOT_QUANTITIES(
503          x_lot_qty  OUT NOCOPY t_genref
504    ,     p_org_id   IN  NUMBER
505    ,     p_lpn_id   IN  NUMBER
506    ,     p_item_id  IN  NUMBER
507    ,     p_revision IN  VARCHAR2
508    ,     p_uom      IN  VARCHAR2);
509 
510 PROCEDURE GET_RETURN_TOTAL_QTY(
511          x_tot_qty  OUT NOCOPY t_genref
512    ,     p_org_id   IN  NUMBER
513    ,     p_lpn_id   IN  NUMBER
514    ,     p_item_id  IN  NUMBER
515    ,     p_revision IN  VARCHAR2
516    ,     p_uom      IN  VARCHAR2);
517 --"Returns"
518 
519 
520 
521 -- This procedure validates the serial number, to sub and to loc for a
522 -- serial triggered sub transfer. It also updates the quantity tree. It
523 -- sets the GROUP mark ID of the serial number to a non null value. It also
524 -- inserts into MMTT, MTLT and MSNT tables for the sub transfer transaction
525 PROCEDURE process_serial_subxfr(p_organization_id       IN  NUMBER,
526             p_serial_number         IN  VARCHAR2,
527             p_inventory_item_id     IN  NUMBER,
528             p_inventory_item        IN  VARCHAR2,
529             --I Development Bug 2634570
530             p_project_id      IN  NUMBER,
531             p_task_id      IN  NUMBER,
532 
533             p_revision              IN  VARCHAR2,
534             p_primary_uom_code      IN  VARCHAR2,
535             p_subinventory_code     IN  VARCHAR2,
536             p_locator_id            IN  NUMBER,
537             p_locator               IN  VARCHAR2,
538             p_to_subinventory_code  IN  VARCHAR2,
539             p_to_locator            IN  VARCHAR2,
540             p_to_locator_id         IN  NUMBER,
541             p_reason_id             IN  NUMBER,
542             p_lot_number            IN  VARCHAR2,
543             p_wms_installed         IN  VARCHAR2,
544             p_transaction_action_id IN  NUMBER,
545             p_transaction_type_id   IN  VARCHAR2,
546             p_source_type_id        IN  NUMBER,
547             p_user_id               IN  NUMBER,
548             p_transaction_header_id IN  NUMBER,
549             p_restrict_sub_code     IN  NUMBER,
550             p_restrict_loc_code     IN  NUMBER,
551             p_from_sub_asset_inv    IN  NUMBER,
552             p_serial_control_code   IN  NUMBER,
553             p_process_serial        IN  VARCHAR2,
554             x_serial_processed      OUT NOCOPY VARCHAR2,
555             x_transaction_header_id OUT NOCOPY NUMBER,
556             x_return_status         OUT NOCOPY VARCHAR2,
557             x_return_msg            OUT NOCOPY VARCHAR2);
558 
559 PROCEDURE check_loose_and_packed_qty
560   (p_api_version_number      IN   NUMBER
561    , p_init_msg_lst          IN   VARCHAR2 DEFAULT fnd_api.g_false
562    , x_return_status         OUT  NOCOPY VARCHAR2
563    , x_msg_count             OUT  NOCOPY NUMBER
564    , x_msg_data              OUT  NOCOPY VARCHAR2
565    , p_organization_id       IN   NUMBER
566    , p_inventory_item_id     IN   NUMBER
567    , p_is_revision_control   IN   VARCHAR2
568    , p_is_lot_control        IN   VARCHAR2
569    , p_is_serial_control     IN   VARCHAR2
570    , p_revision              IN   VARCHAR2
571    , p_lot_number            IN   VARCHAR2
572    , p_transaction_quantity  IN   NUMBER
573    , p_transaction_uom       IN   VARCHAR2
574    , p_subinventory_code     IN   VARCHAR2
575    , p_locator_id            IN   NUMBER
576    , p_transaction_temp_id   IN   NUMBER
577    , p_ok_to_process         OUT  NOCOPY VARCHAR2
578    , p_transfer_subinventory IN   VARCHAR2
579    );
580 
581 FUNCTION check_lpn_allocation(p_lpn_id IN NUMBER,
582                p_org_id IN NUMBER,
583                x_return_msg OUT NOCOPY VARCHAR2)
584   RETURN VARCHAR2;
585 
586 FUNCTION check_lpn_serial_allocation(p_lpn_id IN NUMBER,
587                  p_org_id IN NUMBER,
588                  x_return_msg OUT NOCOPY VARCHAR2)
589   RETURN VARCHAR2;
590 
591 /* Bug 4194323 Added Procedure to get available quantity
592     when Demand Information is provided for WIP Enhancement 4163405 */
593 PROCEDURE GET_AVBL_TO_TRANSACT_QTY(
594              x_return_status OUT NOCOPY VARCHAR2,
595              p_organization_id IN NUMBER,
596              p_inventory_item_id IN NUMBER,
597                                  p_is_revision_control IN VARCHAR2,
598                                  p_is_lot_control IN VARCHAR2,
599                                  p_is_serial_control  IN VARCHAR2,
600              p_demand_source_type_id IN NUMBER,
601              p_demand_source_header_id IN NUMBER,
602              p_demand_source_line_id IN NUMBER,
603              p_revision IN VARCHAR2,
604              p_lot_number IN VARCHAR2,
605              p_lot_expiration_date IN  DATE,
606              p_subinventory_code IN  VARCHAR2,
607              p_locator_id IN NUMBER,
608              x_att  OUT NOCOPY NUMBER
609              ) ;
610 --Bug#4446248.Added the following function to check any pending transaction
611 --for the LPN/inner LPNs .
612 FUNCTION check_lpn_pending_txns( p_lpn_id IN NUMBER,
613                p_org_id IN NUMBER,
614                x_return_msg OUT NOCOPY VARCHAR2)
615  RETURN VARCHAR2;
616 
617 
618 END INV_TXN_VALIDATIONS;