DBA Data[Home] [Help]

PACKAGE: APPS.WMS_WAVE_PLANNING_PVT

Source


1 PACKAGE wms_wave_planning_pvt
2 /* $Header: WMSWVPVS.pls 120.18.12020000.2 2013/03/03 21:39:13 ajunnikr ship $ */
3  as
4   -- PACKAGE TYPES
5   --
6     TYPE line_tbl_typ IS TABLE OF wms_wp_wave_lines%ROWTYPE INDEX BY BINARY_INTEGER;
7   TYPE action_tbl_typ IS TABLE OF varchar2(6) INDEX BY BINARY_INTEGER;
8 
9   --bug 11870443
10  type num_t is table of number;
11 
12   TYPE relRecTyp IS RECORD(
13     SOURCE_CODE                 VARCHAR2(30),
14     SOURCE_HEADER_ID            NUMBER,
15     SOURCE_LINE_ID              NUMBER,
16     SOURCE_HEADER_NUMBER        VARCHAR2(150),
17     SOURCE_LINE_NUMBER          VARCHAR2(150),
18     SOURCE_HEADER_TYPE_NAME     VARCHAR2(240),
19     SOURCE_HEADER_TYPE_ID       NUMBER,
20     SOURCE_DOCUMENT_TYPE_ID     NUMBER,
21     DELIVERY_DETAIL_ID          NUMBER,
22     RELEASED_STATUS             VARCHAR2(1),
23     ORGANIZATION_ID             NUMBER,
24     INVENTORY_ITEM_ID           NUMBER,
25     REQUESTED_QUANTITY          NUMBER,
26     REQUESTED_QUANTITY_UOM      VARCHAR2(3),
27     PRIMARY_QUANTITY            NUMBER,
28     PRIMARY_UOM_CODE            VARCHAR2(3),
29     MOVE_ORDER_LINE_ID          NUMBER,
30     SHIP_MODEL_COMPLETE_FLAG    VARCHAR2(1),
31     TOP_MODEL_LINE_ID           NUMBER,
32     SHIP_FROM_LOCATION_ID       NUMBER,
33     SHIP_TO_LOCATION_ID         NUMBER,
34     SHIP_METHOD_CODE            VARCHAR2(30),
35     SHIPMENT_PRIORITY_CODE      VARCHAR2(30),
36     SHIP_SET_ID                 NUMBER,
37     DATE_SCHEDULED              DATE,
38     PLANNED_DEPARTURE_DATE      DATE,
39     DELIVERY_ID                 NUMBER,
40     CUSTOMER_ID                 NUMBER,
41     CARRIER_ID                  NUMBER,
42     PREFERRED_GRADE             VARCHAR2(150),
43     REQUESTED_QUANTITY2         NUMBER,
44     REQUESTED_QUANTITY_UOM2     VARCHAR2(3),
45     PROJECT_ID                  NUMBER,
46     TASK_ID                     NUMBER,
47     FROM_SUBINVENTORY_CODE      VARCHAR2(10),
48     TO_SUBINVENTORY_CODE        VARCHAR2(10),
49     END_ITEM_UNIT_NUMBER        VARCHAR2(30),
50     RESERVABLE_TYPE             NUMBER,
51     DEMAND_SOURCE_HEADER_ID     NUMBER,
52     OUTSTANDING_ORDER_VALUE     NUMBER,
53     COUNT_ORDER_LINES           NUMBER,
54     NET_WEIGHT_UOM_CODE         VARCHAR2(3),
55     NET_WEIGHT                  NUMBER,
56     NET_WEIGHT_MAX_OL_UOM_CODE  NUMBER,
57     VOLUME_UOM_CODE             VARCHAR2(3),
58     VOLUME                      NUMBER,
59     VOLUME_MAX_OL_CUBE_UOM_CODE NUMBER,
60     NET_VALUE                   NUMBER,
61     DELIVER_SNAPSHOT_DATE       DATE);
62 
63   TYPE labor_plan_Record IS RECORD(
64     picking_subinventory   varchar2(4000),
65     SOURCE_SUBINVENTORY    varchar2(4000),
66     picking_uom            varchar2(4000),
67     conversion_rate        number,
68     att                    number,
69     demand_qty_picking_uom number default 0,
70     demand_quantity        number);
71 
72   TYPE labor_time_Record IS RECORD(
73     picking_subinventory     varchar2(4000),
74     destination_SUBINVENTORY varchar2(4000),
75     picking_uom              varchar2(4000),
76     demand_qty_picking_uom   number default 0,
77     operation_plan_id number,
78     inventory_item_id number,
79     standard_operation_id number);
80 
81   n1 number := 0;
82 
83   TYPE labor_plan_tbl IS TABLE OF labor_plan_Record INDEX BY BINARY_INTEGER;
84 
85   TYPE labor_time_tbl IS TABLE OF labor_time_record INDEX BY BINARY_INTEGER;
86 
87   x_labor_plan_tbl labor_plan_tbl;
88 
89   ideal_labor_plan_tbl labor_plan_tbl;
90 
91   x_labor_time_tbl labor_time_tbl;
92 
93   c_labor_time_tbl labor_time_tbl;
94 
95 
96 ----------  RESOURCE CAPACITY DETAILS ---------
97 TYPE resource_capacity_record IS RECORD(
98 resource_name VARCHAR2(100),
99 resource_type NUMBER,
100 total_capacity NUMBER default 0,
101 available_capacity NUMBER default 0,
102 planned_load NUMBER default 0,
103 current_load NUMBER default 0,
104 planned_tasks NUMBER default 0,
105 actual_tasks NUMBER default 0
106 );
107 
108 TYPE resource_capacity_tbl IS TABLE OF resource_capacity_record INDEX BY BINARY_INTEGER;
109 x_resource_capacity_tbl resource_capacity_tbl;
110 ----------  RESOURCE CAPACITY DETAILS ---------
111 
112 -- labor planning
113 
114 /*TYPE labor_details_record IS RECORD(
115       resource_name VARCHAR2(100),
116       source_subinventory VARCHAR2(100),
117       destination_subinventory VARCHAR2(100),
118       pick_uom VARCHAR2(25),
119       transaction_time number,
120       travel_time number,
121       resource_type number);
122 
123       type machine_details_record is record(
124       	resource_name varchar2(100),
125       	source_subinventory varchar2(100),
126       	destination_subinventory varchar2(100),
127       	pick_uom varchar2(25),
128       	resource_type number
129       	);
130 
131     TYPE labor_dtl_tbl IS TABLE OF labor_details_record INDEX BY BINARY_INTEGER;
132     	type machine_dtl_tbl is table of machine_details_record index by binary_integer;
133 
134     x_labor_dtl_tbl labor_dtl_tbl;
135     x_machine_dtl_tbl machine_dtl_tbl;
136 
137     TYPE labor_statistics_Record IS RECORD(
138       resource_name           varchar2(100),
139       total_time_per_Resource NUMBER DEFAULT 0,
140       planned_wave_load       NUMBER DEFAULT 0,
141       total_Capacity          NUMBER DEFAULT 0,
142       current_workload number default 0, -- sudheer
143       number_of_tasks  NUMBER DEFAULT 0,  -- sudheer
144       resource_type number, -- sudheer
145       available_capacity NUMBER DEFAULT 0, -- sudheer
146       number_of_planned_tasks NUMBER DEFAULT 0); -- sudheer
147 
148     TYPE labor_stats_tbl IS TABLE OF labor_statistics_Record INDEX BY BINARY_INTEGER;
149 
150     x_labor_stats_tbl labor_stats_tbl;
151     x_labor_stats_tbl_tmp labor_stats_tbl;
152     */
153 -- Labor Planning
154 
155       tbl_index number := 0;
156 
157   TYPE num_tab IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
158   TYPE uom_tab IS TABLE OF VARCHAR2(3) INDEX BY BINARY_INTEGER;
159   TYPE date_tab IS TABLE OF DATE INDEX BY BINARY_INTEGER;
160   TYPE char_tab IS TABLE OF VARCHAR2(30) INDEX BY BINARY_INTEGER;
161   TYPE char1_tab IS TABLE OF VARCHAR2(150) INDEX BY BINARY_INTEGER;
162   TYPE number_table_type IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
163   TYPE relRecTabTyp IS TABLE OF relRecTyp INDEX BY BINARY_INTEGER;
164 
165   TYPE query_type_table_type IS TABLE OF wms_saved_queries.query_type%TYPE INDEX BY BINARY_INTEGER;
166   TYPE field_name_table_type IS TABLE OF wms_saved_queries.field_name%TYPE INDEX BY BINARY_INTEGER;
167   TYPE field_value_table_type IS TABLE OF wms_saved_queries.field_value%TYPE INDEX BY BINARY_INTEGER;
168   TYPE organization_id_table_type IS TABLE OF wms_saved_queries.organization_id%TYPE INDEX BY BINARY_INTEGER;
169 
170   -- PUBLIC VARIABLES
171   --
172   release_table                relRecTabTyp;
173   g_application_id             NUMBER;
174   g_program_id                 NUMBER;
175   g_request_id                 NUMBER;
176   g_user_id                    NUMBER;
177   g_login_id                   NUMBER;
178   g_batch_name                 VARCHAR2(30);
179   g_to_request_date            DATE;
180   g_from_sched_ship_date       DATE;
181   g_to_sched_ship_date         DATE;
182   g_append_flag                VARCHAR2(1);
183   g_ship_set_smc_flag          VARCHAR2(1);
184   g_use_delivery_ps            VARCHAR2(1) := 'N';
185   g_allocation_method          VARCHAR2(1);
186   g_crossdock_criteria_id      NUMBER;
187   g_actual_departure_date      DATE;
188   g_credit_check_option        VARCHAR2(1) := NULL;
189   g_sql_stmt                   VARCHAR2(32767);
190   g_honor_pick_from            VARCHAR2(1) := 'Y';
191   g_dynamic_replenishment_flag VARCHAR2(1);
192   g_initialized                BOOLEAN := FALSE;
193   -- g_ordered_psr                   psrTabTyp;
194   --   g_use_order_ps                  VARCHAR2(1) := 'Y';
195   --   g_total_pick_criteria           NUMBER;
196   g_order_type_id           NUMBER;
197   g_order_line_id           NUMBER;
198   g_order_header_id         NUMBER;
199   g_backorders_flag         VARCHAR2(1);
200   g_include_planned_lines   VARCHAR2(1);
201   g_del_line_id             NUMBER;
202   g_del_lines_list          VARCHAR2(100);
203   g_customer_id             NUMBER;
204   g_from_request_date       DATE;
205   g_existing_rsvs_only_flag VARCHAR2(1);
206   g_inventory_item_id       NUMBER;
207   g_shipment_priority       VARCHAR2(30);
208   g_ship_method_code        VARCHAR2(30);
209   g_ship_set_number         NUMBER;
210   g_ship_to_loc_id          NUMBER;
211   g_ship_from_loc_id        NUMBER;
212   g_project_id              NUMBER;
213   g_task_id                 NUMBER;
214   g_doc_set_id              NUMBER;
215   g_Unreleased_SQL          VARCHAR(32000) := NULL;
216   g_Backordered_SQL         VARCHAR(4000) := NULL;
217   g_Cond_SQL                VARCHAR(4000) := NULL;
218   g_orderby_SQL             VARCHAR2(500) := NULL;
219   g_from_subinventory       VARCHAR2(10);
220   g_from_locator            VARCHAR2(10);
221   g_DELIVERY_ID             NUMBER;
222   g_trip_id                 number;
223   g_trip_stop_id            number;
224   g_pick_seq_rule_id        number;
225   g_pick_grouping_rule_id   number;
226   g_to_dock_appoint_date    date;
227   g_from_dock_appoint_date  date;
228   g_customer_class_id       varchar2(100);
229   g_carrier_id              NUMBER;
230   g_item_category_id        NUMBER;
231   g_add_lines               varchar2(1);
232   new_wave_type             WSH_PICKING_BATCHES_PUB.Batch_Info_Rec;
233 
234   --Variables and Tables for manage tasks
235 
236   TYPE transaction_temp_table_type IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
237   TYPE task_type_id_table_type IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
238   TYPE task_id_table_type IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
239   TYPE result_table_type IS TABLE OF VARCHAR2(1) INDEX BY BINARY_INTEGER;
240   TYPE message_table_type IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
241   g_task_updated   wms_wp_tasks_gtmp.error%TYPE;
242   g_plan_cancelled wms_wp_tasks_gtmp.error%TYPE;
243   g_task_saved     wms_wp_tasks_gtmp.error%TYPE;
244   TYPE lookup_meaning_table IS TABLE OF mfg_lookups.meaning%TYPE INDEX BY BINARY_INTEGER;
245   TYPE row_ids_table_type IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
246   TYPE lookup_meaning_table_type IS TABLE OF mfg_lookups.meaning%TYPE INDEX BY BINARY_INTEGER;
247 
248   g_task_types             lookup_meaning_table;
249   g_task_types_orig        lookup_meaning_table;
250   g_status_codes           lookup_meaning_table;
251   g_status_codes_orig      lookup_meaning_table;
252   g_plan_task_types        lookup_meaning_table;
253   g_plan_task_types_orig   lookup_meaning_table;
254   g_plan_status_codes      lookup_meaning_table;
255   g_plan_status_codes_orig lookup_meaning_table;
256 
257   g_task_type_pick      CONSTANT NUMBER := 1;
258   g_task_type_replenish CONSTANT NUMBER := 4;
259   g_planning_criteria_id number;
260 
261 
262  -- Rule based Planning
263 
264 
265 g_from_subinventory_plan varchar2(30);
266 g_staging_subinventory_plan VARCHAR2(30);
267 g_pick_subinventory VARCHAR2(30);
268 g_default_stage_subinventory VARCHAR2(30);
269 g_default_stage_locator_id NUMBER;
270 g_enforce_ship_set_and_smc VARCHAR2(1);
271 g_to_subinventory varchar(30);
272 g_to_locator NUMBER;
273  g_staging_subinventory VARCHAR2(30);
274 g_mo_header_id number;
275 g_request_number number;
276 
277 
278 
279   PROCEDURE launch_concurrent_CP(errbuf               OUT NOCOPY VARCHAR2,
280                                  retcode              OUT NOCOPY NUMBER,
281                                  p_wave_template_name in varchar2,
282                                  p_wave_header_id     in number,
283                                  p_org_id             in number);
284 
285   PROCEDURE submit_WP_conc_request(p_wave_header_id in number,
286                                    p_org_id         in number,
287                                    x_request_id     OUT NOCOPY number);
288 
289   procedure insert_wave_record(p_wave_header_id in OUT NOCOPY number);
290 
291   procedure set_global_variable(order_type_id          in number,
292                                 order_header_id        in number,
293                                 backorders_flag        in varchar2,
294                                 include_planned_lines  in varchar2,
295                                 customer_id            in number,
296                                 inventory_item_id      in number,
297                                 shipment_priority_code in varchar2,
298                                 ship_method_code       in varchar2,
299                                 ship_to_loc_id         in number,
300                                 project_id             in number,
301                                 task_id                in number,
302                                 delivery_id            in number,
303                                 trip_id                in number,
304                                 trip_stop_id           in number,
305                                 pick_seq_rule_id       in number,
306                                 pick_grouping_rule_id  number,
307                                 scheduled_days         in number,
308                                 scheduled_hrs          in number,
309                                 dock_days              in number,
310                                 dock_hours             in number,
311                                 customer_class_id      in VARCHAR2,
312                                 carrier_id             in number,
313                                 category_Set_id        in number,
314                                 add_lines              in varchar2 default 'N');
315 
316   -- Insert Wave Header requires jus the PL/SQL record wave_header_rec as IN parameter
317 
318   procedure insert_wave_header(x_return_status   OUT nocopy VARCHAR2,
319                                p_wave_header_rec in wms_wp_wave_headers_vl%ROWTYPE);
320 
321   procedure launch_online(x_return_status     OUT nocopy VARCHAR2,
322                           p_wave_header_id    IN NUMBER,
323                           v_orgid             in number,
324                           p_release_immediate in varchar2,
325                           p_plan_wave         in varchar2,
326                           p_request_id        OUT NOCOPY number,
327                           p_add_lines         in varchar2 default 'N');
328 
329   procedure create_batch_record(x_return_status  OUT nocopy varchar2,
330                                 p_wave_header_id in number);
331 
332   PROCEDURE Plan_Wave_CP(errbuf                 OUT NOCOPY VARCHAR2,
333                          retcode                OUT NOCOPY NUMBER,
334                          p_wave_header_id       in number,
335                          p_planning_criteria_id in number);
336 
337   PROCEDURE Call_Plan_Wave_CP(p_wave_header_id       in number,
338                               p_planning_criteria_id in number,
339                               p_request_id           OUT NOCOPY number);
340 
341   PROCEDURE Release_Batch_CP(errbuf           OUT NOCOPY VARCHAR2,
342                              retcode          OUT NOCOPY NUMBER,
343                              p_wave_header_id in number);
344 
345   procedure get_dynamic_sql(p_wave_header_id in number,
346                             org_id           in number,
347                             x_return_status  OUT NOCOPY varchar2);
348 
349   Procedure Init_Cursor(p_organization_id IN NUMBER,
350                         v_advanced_sql    in varchar2,
351                         v_WAVE_HEADER_ID  in NUMBER,
352                         x_api_status      OUT NOCOPY VARCHAR2);
353 
354   PROCEDURE Get_Lines(x_done_flag  OUT NOCOPY VARCHAR2,
355                       x_api_status OUT NOCOPY VARCHAR2);
356 
357   PROCEDURE Insert_RL_Row(x_api_status OUT NOCOPY VARCHAR2);
358   procedure Plan_Wave(p_wave_header_id       in number,
359                       p_planning_criteria_id in number,
360                       x_return_status        OUT NOCOPY varchar2);
361   PROCEDURE RELEASE_ONLINE(X_RETURN_STATUS  OUT NOCOPY VARCHAR2,
362                            P_WAVE_HEADER_ID IN NUMBER);
363 
364   procedure get_line_fill_rate(x_return_status  OUT NOCOPY varchar2,
365                                p_wave_header_id in number);
366 
367   procedure get_actual_fill_rate(x_return_status  OUT NOCOPY varchar2,
368                                  p_wave_header_id in number);
369 
370   procedure update_wave_header_status(x_return_status  OUT NOCOPY varchar2,
371                                       p_wave_header_id in number,
372                                       Status           in varchar2,
373 									  p_batch_id in number DEFAULT NULL);
374 
375   PROCEDURE update_task(p_transaction_temp_id   IN WMS_WAVE_PLANNING_PVT.transaction_temp_table_type,
376                         p_task_type_id          IN WMS_WAVE_PLANNING_PVT.task_type_id_table_type,
377                         p_employee              IN VARCHAR2,
378                         p_employee_id           IN NUMBER,
379                         p_user_task_type        IN VARCHAR2,
380                         p_user_task_type_id     IN NUMBER,
381                         p_effective_start_date  IN DATE,
382                         p_effective_end_date    IN DATE,
383                         p_person_resource_id    IN NUMBER,
384                         p_person_resource_code  IN VARCHAR2,
385                         p_force_employee_change IN BOOLEAN,
386                         p_to_status             IN VARCHAR2,
387                         p_to_status_id          IN NUMBER,
388                         p_priority_type         IN varchar2 DEFAULT 'S', --mitgupta
389                         p_priority              IN NUMBER,
390                         p_clear_priority        IN VARCHAR2,
391                         x_result                OUT NOCOPY WMS_WAVE_PLANNING_PVT.result_table_type,
392                         x_message               OUT NOCOPY WMS_WAVE_PLANNING_PVT.message_table_type,
393                         x_task_id               OUT NOCOPY WMS_WAVE_PLANNING_PVT.task_id_table_type,
394                         x_return_status         OUT NOCOPY VARCHAR2,
395                         x_return_msg            OUT NOCOPY VARCHAR2,
396                         x_msg_count             OUT NOCOPY NUMBER);
397 
398   PROCEDURE save_tasks(p_commit        BOOLEAN,
399                        p_user_id       NUMBER,
400                        p_login_id      NUMBER,
401                        x_save_count    OUT NOCOPY NUMBER,
402                        x_return_status OUT NOCOPY VARCHAR2,
403                        x_msg_data      OUT NOCOPY VARCHAR2,
404                        x_msg_count     OUT NOCOPY NUMBER);
405   -- Sudheer
406   FUNCTION getforcesignonflagvalue(p_transaction_temp_id IN mtl_material_transactions_temp.transaction_temp_id%TYPE,
407                                    p_device_id           OUT NOCOPY NUMBER)
408     RETURN VARCHAR2;
409   PROCEDURE set_num_of_child_tasks;
410 
411   PROCEDURE Update_Completion_Status_CP(errbuf  OUT NOCOPY VARCHAR2,
412                                         retcode OUT NOCOPY NUMBER);
413   procedure get_pick_fill_rate(x_return_status OUT NOCOPY varchar2);
414 
415   procedure labor_planning(p_wave_header_id       in number,
416                            p_planning_criteria_id in number,
417                            x_return_status        OUT NOCOPY varchar2);
418 
419   FUNCTION get_conversion_rate(p_item_id       IN NUMBER,
420                                p_from_uom_code IN VARCHAR2,
421                                p_to_uom_code   IN VARCHAR2) RETURN NUMBER;
422 
423   FUNCTION get_att_for_subinventory(p_sub     IN VARCHAR2,
424                                     p_item_id IN NUMBER,
425                                     p_org_id  IN NUMBER) RETURN NUMBER;
426 
427   procedure get_ideal_pick_scenario(p_requested_qty in number,
428                                     x_return_status OUT NOCOPY varchar2);
429 
430   function get_source_subinventory(p_item_id      in number,
431                                    p_subinventory in varchar2)
432     return varchar2;
433 
434   procedure synchronize_labor_plan_tables(x_return_status            OUT NOCOPY varchar2,
435                                           p_replenishment_Required   in varchar2,
436                                           v_Destination_subinventory in varchar2);
437 
438   procedure update_bulk_labor_record(x_labor_plan_tbl           in OUT NOCOPY labor_plan_tbl,
439                                      v_replenishment_required   in varchar2,
440                                      v_destination_subinventory in varchar2,
441                                      p_demand_qty               in OUT NOCOPY number,
442                                      x_return_status            OUT NOCOPY varchar2);
443 
444   procedure Check_wave_closed_status(x_return_status OUT NOCOPY varchar2);
445 
446   function get_loaded_status(p_Delivery_Detail_id in number) return number;
447 
448   function get_order_weight(p_source_header_id in number,
449                             p_orgid            in number) return number;
450 
451   function get_order_volume(p_source_header_id in number,
452                             p_orgid            in number) return number;
453 
454   procedure get_net_weight_volume(p_wave_header_id in number,
455                                   p_orgid          in number,
456                                   x_weight         OUT NOCOPY varchar2,
457                                   x_volume         OUT NOCOPY varchar2);
458   -- Name
459   --   FUNCTION Outstanding_Order_Value
460   --
461   -- Purpose
462   --   This functions calculates the value of the order, which
463   --   is used in the order by clause for releasing lines.
464   --
465   -- Arguments
466   --   p_header_id ,p_line_id
467   --
468   -- Return Values
469   --   - value of order
470   --   - 0 if failure
471   --
472   -- Notes
473 
474   FUNCTION Outstanding_Order_Value(p_header_id IN BINARY_INTEGER,
475                                    p_line_id   IN BINARY_INTEGER)
476     RETURN BINARY_INTEGER;
477 
478   PROCEDURE print_debug(p_err_msg VARCHAR2, p_debug NUMBER);
479 
480   PROCEDURE print_form_messages(p_err_msg VARCHAR2);
481 
482   PROCEDURE SET_QUERY_TASKS_PARAMETERS(p_field_name_table      IN wms_wave_planning_pvt.field_name_table_type,
483                                        p_field_value_table     IN wms_wave_planning_pvt.field_value_table_type,
484                                        p_organization_id_table IN wms_wave_planning_pvt.organization_id_table_type,
485                                        p_query_type_table      IN wms_wave_planning_pvt.query_type_table_type,
486                                        x_return_status         OUT NOCOPY VARCHAR2,
487                                        x_return_message        OUT NOCOPY VARCHAR2);
488 
489   PROCEDURE SET_ACTION_TASKS_PARAMETERS(p_field_name_table  IN wms_wave_planning_pvt.field_name_table_type,
490                                         p_field_value_table IN wms_wave_planning_pvt.field_value_table_type,
491                                         p_query_type_table  IN wms_wave_planning_pvt.query_type_table_type,
492                                         x_return_status     OUT NOCOPY VARCHAR2,
493                                         x_return_message    OUT NOCOPY VARCHAR2);
494 
495   PROCEDURE Task_Release_CP(errbuf             OUT NOCOPY VARCHAR2,
496                             retcode            OUT NOCOPY NUMBER,
497                             p_organization_id  in number,
498                             p_query_name       in varchar2,
499                             p_task_release_id in number);
500 
501   PROCEDURE catch_wave_exceptions_cp(errbuf                         OUT nocopy VARCHAR2,
502                                      retcode                        OUT nocopy NUMBER,
503                                      p_exception_name               IN VARCHAR2,
504                                      p_organization_id              IN NUMBER,
505                                      p_wave                         IN NUMBER,
506                                      p_exception_entity             IN VARCHAR2,
507                                      p_progress_stage               IN VARCHAR2,
508                                      p_completion_threshold         IN NUMBER,
509                                      p_high_sev_exception_threshold IN NUMBER,
510                                      p_low_sev_exception_threshold  IN NUMBER,
511                                      p_take_corrective_measures     IN VARCHAR2,
512                                      p_release_back_ordered_lines   IN VARCHAR2,
513                                      p_action_name                  IN VARCHAR2);
514 
515   PROCEDURE insert_purge_exceptions(p_exception_name       IN VARCHAR2,
516                                     p_exception_entity     IN VARCHAR2,
517                                     p_exception_level      IN VARCHAR2,
518                                     p_completion_threshold IN NUMBER,
519                                     p_progress_stage       IN VARCHAR2,
520                                     p_exception_threshold  IN NUMBER,
521                                     p_wave_id              IN NUMBER,
522                                     p_trip_id              IN NUMBER,
523                                     p_delivery_id          IN NUMBER,
524                                     p_order_number         IN NUMBER,
525                                     p_order_line_id        IN NUMBER,
526                                     x_return_status        OUT NOCOPY VARCHAR2);
527 
528   PROCEDURE check_so(p_current_order    IN NUMBER,
529                      p_current_delivery IN NUMBER,
530                      p_current_trip     IN NUMBER,
531                      p_organization_id  IN NUMBER);
532 
533 
534 PROCEDURE check_line(p_current_line in NUMBER,
535                      p_current_delivery in NUMBER,
536                      p_current_trip in NUMBER,
537                      p_organization_id in NUMBER);
538 
539 
540   PROCEDURE take_corrective_measures(p_exception_id               IN NUMBER,
541                                      p_wave_id                    IN NUMBER,
542                                      p_entity                     IN VARCHAR2,
543                                      p_entity_value               IN NUMBER,
544                                      p_release_back_ordered_lines IN VARCHAR2,
545                                      p_action_name                IN VARCHAR2,
546                                      p_organization_id            IN NUMBER);
547 
548   PROCEDURE actionable_exceptions(p_perfect_lines                IN NUMBER,
549                                   p_total_lines                  IN NUMBER,
550                                   p_completion_threshold         IN NUMBER,
551                                   p_low_sev_exception_threshold  IN NUMBER,
552                                   p_high_sev_exception_threshold IN NUMBER,
553                                   p_date_scheduled               IN DATE,
554                                   p_exception_id                 IN NUMBER,
555                                   p_exception_name               IN VARCHAR2,
556                                   p_wave_id                      IN NUMBER,
557                                   p_trip_id                      IN NUMBER,
558                                   p_delivery_id                  IN NUMBER,
559                                   p_order_number                 IN NUMBER,
560                                   p_order_line_id                IN NUMBER,
561                                   p_current_order_id             IN NUMBER,
562                                   p_previous_order_id            IN OUT NOCOPY NUMBER,
563                                   p_current_line_id       IN  NUMBER,
564                                   p_previous_line_id  IN OUT NOCOPY NUMBER,
565                                   p_entity                       IN VARCHAR2,
566                                   p_entity_value                 IN NUMBER,
567                                   p_progress_stage               IN VARCHAR2,
568                                   p_take_corrective_measures     IN VARCHAR2,
569                                   p_release_back_ordered_lines   IN VARCHAR2,
570                                   p_action_name                  IN VARCHAR2,
571                                   p_organization_id              IN NUMBER);
572 
573  -- function get_packed_status(p_task_id in number) return boolean;
574 
575   function check_min_equip_Capacity(l_mmtt_tbl in num_t)
576     return boolean;
577 
578   function get_net_value(p_wave_header_id in number) return varchar2;
579 
580   PROCEDURE cancel_mmtt(p_txn_temp_id NUMBER, x_result OUT nocopy VARCHAR2);
581 
582   PROCEDURE allocation (errbuf              OUT   NOCOPY   VARCHAR2,
583                       retcode             OUT   NOCOPY   NUMBER,
584                       p_organization_id IN NUMBER,
585                       p_wave_id        IN NUMBER,
586                       p_mo_header_id    IN NUMBER,
587                       p_mode            IN VARCHAR2,
588                       p_worker_id       IN NUMBER DEFAULT null
589                      );
590 
591 
592    procedure get_current_work_load(p_resource             in varchar2,
593                                   p_planning_criteria_id in number,
594                                   p_wave_header_id       in number,
595                                   x_current_workload     out nocopy number,
596                                   x_resource_type        out nocopy NUMBER,
597                                   x_number_of_tasks      OUT nocopy NUMBER,
598                                   x_total_capacity       out nocopy NUMBER );
599 
600  PROCEDURE update_wave_lines_tbl (p_mo_line_table		IN  INV_Move_Order_PUB.TROLIN_TBL_TYPE
601 								,x_return_status        OUT	NOCOPY VARCHAR2);
602 
603 --bug 11870443
604  function list_mmtt_release  return num_t pipelined;
605 
606  --bug12371804 for performance, move the inserts into gtmp table from the pld into here
607  PROCEDURE insert_global_temp(p_wave_header_id IN number);
608 
609 --bug 11775489
610 procedure update_line_pick_fill_rate(p_wave_line_id in number);
611 procedure update_line_actual_fill_rate(p_wave_line_id in number);
612 
613 procedure launch_wave_endeca(P_WAVE_NAME                  IN VARCHAR2,
614                              P_WAVE_DESCRIPTION           IN VARCHAR2,
615                              P_start_time                 IN DATE, -- start time changes
616                              P_SHIP_TO_LOCATION_ID        IN NUMBER,
617                              P_CUSTOMER_CLASS_ID          IN VARCHAR2,
618                              P_pull_replenishment_flag    IN VARCHAR2,
619                              P_RELEASE_IMMEDIATELY        IN VARCHAR2,
620                              P_ORGANIZATION_ID            IN NUMBER,
621                              P_PICK_SEQ_RULE_ID           IN NUMBER,
622                              P_PICK_GROUPING_RULE_ID      IN NUMBER,
623                              P_TRIP_ID                    IN NUMBER,
624                              P_TRIP_STOP_ID               IN NUMBER,
625                              P_SHIP_METHOD_CODE           IN VARCHAR2,
626                              P_SHIPMENT_PRIORITY_CODE     IN VARCHAR2,
627                              P_CARRIER_ID                 IN NUMBER,
628                              P_DELIVERY_ID                IN NUMBER,
629                              P_FROM_ORDER_HEADER_ID       IN NUMBER,
630                              P_ORDER_TYPE_ID              IN NUMBER,
631                              P_CUSTOMER_ID                IN NUMBER,
632                              P_CATEGORY_SET_ID            IN NUMBER,
633                              P_CATEGORY_ID                IN NUMBER,
634                              P_INVENTORY_ITEM_ID          IN NUMBER,
635                              P_INCLUDE_PLANNED_LINES      IN VARCHAR2,
636                              P_TASK_PLANNING_FLAG         IN VARCHAR2,
637                              P_APPEND_DELIVERIES          IN VARCHAR2,
638                              P_AUTO_CREATE_DELIVERY       IN VARCHAR2,
639                              P_AUTODELIVERY_CRITERIA      IN VARCHAR2,
640                              P_TASK_PRIORITY              IN NUMBER,
641                              P_DEFAULT_STAGE_SUBINVENTORY IN VARCHAR2,
642                              P_DEFAULT_STAGE_LOCATOR_ID   IN NUMBER,
643                              P_DEFAULT_ALLOCATION_METHOD  IN VARCHAR2,
644                              P_WAVE_FIRMED_FLAG           IN VARCHAR2,
645                              P_ORDER_NAME                 IN VARCHAR2,
646                              P_CUSTOMER                   IN VARCHAR2,
647                              P_ORDER_TYPE                 IN VARCHAR2,
648                              P_CUSTOMER_CLASS             IN VARCHAR2,
649                              P_SHIP_METHOD                IN VARCHAR2,
650                              P_CARRIER                    IN VARCHAR2,
651                              P_SHIP_PRIORITY              IN VARCHAR2,
652                              P_DELIVERY                   IN VARCHAR2,
653                              P_TRIP                       IN VARCHAR2,
654                              P_TRIP_STOP                  IN VARCHAR2,
655                              P_ITEM                       IN VARCHAR2,
656                              P_ITEM_CATEGORY              IN VARCHAR2,
657                              P_SCHEDULED_DAYS             IN NUMBER,
658                              P_SCHEDULED_HRS              IN NUMBER,
659                              P_DOCK_APPOINTMENT_DAYS      IN NUMBER,
660                              P_DOCK_APPOINTMENT_HOURS     IN NUMBER,
661                              P_PICK_SLIP_GROUP            IN VARCHAR2,
662                              P_RELEASE_SEQ_RULE           IN VARCHAR2,
663                              P_STAGING_SUBINVENTORY       IN VARCHAR2,
664                              P_STAGING_LOCATOR            IN VARCHAR2,
665                              P_CROSS_DOCK_CRITERIA        IN VARCHAR2,
666                              P_pick_subinventory          IN VARCHAR2,
667                              x_return_status              OUT NOCOPY VARCHAR2,
668                              x_wave_header_id             OUT NOCOPY NUMBER);
669 
670 PROCEDURE release_wave_endeca(p_wave_header_id IN NUMBER,
671                               x_request_id     OUT NOCOPY NUMBER,
672                               x_return_status  OUT NOCOPY VARCHAR2,
673                               x_message        OUT NOCOPY VARCHAR2);
674 
675 PROCEDURE remove_lines_endeca(p_wave_header_id IN NUMBER,
676                               p_order_number   IN VARCHAR2,
677                               p_line_number    IN VARCHAR2,
678                               x_return_status  OUT NOCOPY VARCHAR2);
679 
680 
681 
682 END WMS_WAVE_PLANNING_PVT;
683