DBA Data[Home] [Help]

PACKAGE: APPS.MSC_GANTT_UTILS

Source


1 PACKAGE MSC_GANTT_UTILS AUTHID CURRENT_USER AS
2 /* $Header: MSCGNTUS.pls 120.12 2011/07/21 16:43:09 pabram ship $  */
3 
4 -- CONSTANTS +
5    --separators
6    FIELD_SEPERATOR CONSTANT VARCHAR2(5) := '|';
7    RECORD_SEPERATOR CONSTANT VARCHAR2(5) := '&';
8    EXCL_SEPERATOR CONSTANT VARCHAR2(5) := '!';
9    RESOURCE_SEPERATOR CONSTANT VARCHAR2(5) := '~';
10    FORMAT_MASK CONSTANT VARCHAR2(20) :='MM/DD/YYYY HH24:MI';
11    COMMA_SEPARATOR constant varchar2(20) := ',';
12    COLON_SEPARATOR constant varchar2(20) := ':';
13 
14    FIELD_SEPERATOR_ESC CONSTANT VARCHAR2(10) := '%pipe;';
15    RECORD_SEPERATOR_ESC CONSTANT VARCHAR2(10) := '%amp;';
16    EXCL_SEPERATOR_ESC CONSTANT VARCHAR2(10) := '%excl;';
17 
18    --view types
19    ORDER_VIEW  CONSTANT INTEGER := 0;
20    RES_ACTIVITIES_VIEW CONSTANT INTEGER := 1;
21    RES_HOURS_VIEW CONSTANT INTEGER := 2;
22    RES_UNITS_VIEW CONSTANT INTEGER := 3;
23    SUPPLIER_VIEW CONSTANT INTEGER := 4;
24    DEMAND_VIEW CONSTANT INTEGER := 5;
25 
26    --node types
27    END_DEMAND_NODE CONSTANT INTEGER := 0;
28    JOB_NODE CONSTANT INTEGER := 1;
29    OP_NODE CONSTANT INTEGER := 2;
30    RES_NODE CONSTANT INTEGER := 3;
31    -- END_JOB_NODE CONSTANT INTEGER :=4;
32    COPROD_NODE CONSTANT INTEGER := 5;
33    RES_INST_NODE CONSTANT INTEGER := 6;
34 
35    --orders view types
36    PEG_ORDERS constant integer := 0;
37    PEG_DOWN constant integer := 1;
38    PEG_UP   constant integer := -1;
39    PEG_UP_AND_DOWN constant integer := 2;
40    SHOW_CHILDREN constant integer := 3;
41    SHOW_PARENT constant integer := 4;
42    SHOW_PARENT_CHILDREN constant integer := 5;
43 
44    --res row types
45    RES_SETUP_ROW_TYPE constant INTEGER := 0;
46    RES_REQ_ROW_TYPE constant INTEGER := 1;
47    RES_AVAIL_ROW_TYPE constant INTEGER := 2;
48    RES_CHARGES_ROW_TYPE constant INTEGER := 3;
49    RES_ACT_BATCHED_ROW_TYPE constant INTEGER := 4;
50    RES_SETUP_FIXED_ROW_TYPE constant INTEGER := 5;
51    SEGMENT_PEG_ROW_TYPE constant INTEGER := 6;
52    RES_REQ_DISPLAY_ROW_TYPE constant INTEGER := 7;  --only for the backend....
53    RES_REQ_SDS_ROW_TYPE constant INTEGER := 9;
54 
55    --res row types
56    SUPP_ALL_ROW_TYPE constant INTEGER := 0;
57    SUPP_AVAIL_ROW_TYPE constant INTEGER := 1;
58    SUPP_OVERLOAD_ROW_TYPE constant INTEGER := 2;
59    SUPP_CONSUME_ROW_TYPE constant INTEGER := 3;
60    -- SUPP_NET_CUM_AVAIL_ROW_TYPE constant INTEGER := 5;
61 
62    --parent id
63    SUMMARY_DATA constant INTEGER := 1;
64    DETAIL_DATA constant INTEGER := 2;
65 
66    --diff peg vs same peg orders view
67    SAME_PEG  constant INTEGER := 1;
68    ALL_PEG  constant INTEGER := 2;
69 
70    --critical vs non critical orders view
71    NON_CRITICAL_PATH constant INTEGER := -1;
72    CRITICAL_PATH constant INTEGER := 1;
73 
74    -- res schedule_flag
75    SCHEDULE_FLAG_YES constant integer := 1;
76    SCHEDULE_FLAG_NO constant integer := 2;
77    SCHEDULE_FLAG_PRIOR constant integer := 3;
78    SCHEDULE_FLAG_NEXT constant integer := 4;
79 
80    -- res firm types
81    NO_FIRM        CONSTANT INTEGER :=0;
82    FIRM_START     CONSTANT INTEGER :=1;
83    FIRM_END       CONSTANT INTEGER :=2;
84    FIRM_RESOURCE  CONSTANT INTEGER :=3;
85    FIRM_START_END CONSTANT INTEGER :=4;
86    FIRM_START_RES CONSTANT INTEGER :=5;
87    FIRM_END_RES   CONSTANT INTEGER :=6;
88    FIRM_ALL       CONSTANT INTEGER :=7;
89 
90    --supply item types
91    ON_HAND CONSTANT INTEGER :=1;
92    BUY_SUPPLY CONSTANT INTEGER :=2;
93    MAKE_SUPPLY CONSTANT INTEGER :=3;
94    TRANSFER_SUPPLY CONSTANT INTEGER :=4;
95 
96    --updateSupplies types
97    TOUCH_SUPPLY CONSTANT INTEGER := 1;
98    FIRM_SUPPLY CONSTANT INTEGER := 2;
99    FIRM_ALL_SUPPLY CONSTANT INTEGER := 3;
100 
101    --updateMRR types
102    TOUCH_MRR CONSTANT INTEGER := 1;
103    FIRM_MRR CONSTANT INTEGER := 2;
104    FIRM_ALL_MRR CONSTANT INTEGER := 3;
105    MOVE_MRR constant number := 4;
106 
107    --filter types
108    FILTER_TYPE_LIST constant integer := 1;
109    FILTER_TYPE_MFQ constant integer := 2;
110    FILTER_TYPE_FOLDER_ID constant integer := 3;
111    FILTER_TYPE_WHERE_STMT constant integer := 4;
112    FILTER_TYPE_AMONG constant integer := 5;
113    FILTER_TYPE_QUERY_ID constant integer := 6;
114 
115    --display types for res activities /hours view
116    DISPLAY_NONE constant integer := 1;
117    DISPLAY_LATE constant integer := 2;
118    DISPLAY_EARLY constant integer := 3;
119    DISPLAY_FIRM constant integer := 4;
120    DISPLAY_OVERLOAD constant integer := 5;
121 
122    --misc
123    MBP_NULL_VALUE constant integer := -23453;
124    MBP_NULL_VALUE_CHAR constant varchar2(30) := '-23453';
125 
126    NULL_SPACE constant varchar2(1):= ' ';
127 
128    ROUND_FACTOR INTEGER := 6;
129    SYS_YES constant INTEGER := 1;
130    SYS_NO constant INTEGER := 2;
131 
132    ASCEND_ORDER constant INTEGER := 1;
133    DESCEND_ORDER constant INTEGER := 2;
134 
135    -- BOM_ITEM_TYPE
136    BOM_ITEM_MODEL constant integer := 1; -- Model, base_item_id is null
137    BOM_ITEM_OPTION constant integer := 2; -- Option class, base_item_id is null
138    BOM_ITEM_PLANNING constant integer := 3; -- Planning, base_item_id is null
139    BOM_ITEM_STANDARD constant integer := 4; -- Standard, base_item_id is not null
140    BOM_ITEM_PF constant integer := 5; -- Product family, base_item_id is null
141 
142 -- CONSTANTS -
143 
144 -- Data Structures +
145   TYPE char20Tbl IS TABLE OF varchar2(20) index by binary_integer;
146   TYPE char80Tbl IS TABLE OF varchar2(80) index by binary_integer;
147   TYPE numberTbl IS TABLE OF number index by binary_integer;
148   TYPE longCharTbl IS TABLE of varchar2(200) index by binary_integer;
149   TYPE maxCharTbl IS TABLE of varchar2(32000);
150   TYPE date_arr IS TABLE OF date;
151   TYPE number_arr IS TABLE OF number;
152   TYPE char_arr IS TABLE OF varchar2(2000);
153 
154   TYPE child_rec_type is RECORD (
155     record_count numberTbl,
156     start_date char20Tbl,
157     end_date char20Tbl,
158     name char80Tbl,
159     transaction_id numberTbl,
160     status numberTbl,
161     applied numberTbl,
162     supply_type char80Tbl,
163     instance_id numberTbl,
164     res_firm_flag numberTbl,
165     sup_firm_flag numberTbl,
166     late_flag numberTbl
167   );
168 -- Data Structures -
169 
170 -- get functions +
171 function isCriticalSupply(p_plan_id number,
172   p_end_demand_id number,  p_transaction_id number,
173   p_inst_id number) Return number;
174 
175 function getDmdPriority(p_plan_id number,
176   p_instance_id number, p_transaction_id number) return number;
177 
178 function isResChargeable(p_plan_id number,
179   p_instance_id number, p_org_id number,
180   p_dept_id number, p_res_id number,
181   p_res_instance_id number) return number ;
182 
183 function isCriticalRes(p_plan_id number,
184   p_end_demand_id number,  p_transaction_id number,
185   p_inst_id number,  p_operation_seq_id number,
186   p_routing_seq_id number) return number;
187 
188 function isSupplyLate(p_plan_id number,
189   p_instance_id number, p_organization_id number,
190   p_inventory_item_id number, p_transaction_id number) return number;
191 
192 function getActualStartDate(p_order_type number, p_make_buy_code number,
193   p_org_id number,p_source_org_id number,
194   p_dock_date date, p_wip_start_date date,
195   p_ship_date date, p_schedule_date date,
196   p_source_supp_id number) return varchar2 ;
197 
198 function isResConstraint(p_plan_id number,
199   p_instance_id number, p_organization_id number, p_inventory_item_id number,
200   p_department_id number, p_resource_id number,
201   p_transaction_id number) return number;
202 
203 function isResOverload(p_plan_id number,
204   p_instance_id number, p_organization_id number, p_inventory_item_id number,
205   p_department_id number, p_resource_id number,
206   p_transaction_id number) return number;
207 
208 function isExcpExists(p_plan_id number, p_instance_id number, p_organization_id number,
209   p_department_id number, p_resource_id number, p_exception_type number) return number;
210 
211 function getSupplyType(p_order_type number, p_make_buy_code number,
212   p_org_id number,p_source_org_id number) return number;
213 
214 function getPlanInfo(p_plan_id number,
215   p_first_date out nocopy date, p_last_date out nocopy date,
216   p_hour_bkt_start_date out nocopy date, p_day_bkt_start_date out nocopy date,
217   p_plan_start_date out nocopy date, p_plan_end_date out nocopy date,
218   p_plan_type out nocopy number) return varchar2;
219 
220 function getDisplayType(p_display_type number, p_end_date date,
221   p_ulpsd date, p_res_firm_flag number, p_overload_flag number,
222   p_days_early number, p_days_late number) return number;
223 
224 function getResReqType(p_plan_id number,
225   p_schedule_flag number, p_parent_seq_num number, p_setup_id number) return number;
226 
227 function getSetupCode(p_plan_id number, p_inst_id number,
228   p_resource_id number, p_setup_id number) return varchar2 ;
229 
230 function getResReqStartDate(p_firm_flag number,
231   p_start_date date, p_end_date date,
232   p_firm_start_date date, p_firm_end_date date, p_status number, p_applied number) return date;
233 
234 function getResReqEndDate(p_firm_flag number,
235   p_start_date date, p_end_date date,
236   p_firm_start_date date, p_firm_end_date date, p_status number, p_applied number) return date;
237 
238 function getDependencyType(p_plan_id number, p_trans_id number, p_inst_id number,
239   p_op_seq_id number, p_op_seq_num number, p_res_seq_num number,
240   c_trans_id number, c_inst_id number,
241   c_op_seq_id number, c_op_seq_num number, c_res_seq_num number) return number;
242 
243 procedure getBatchValues(p_plan_id number, p_instance_id number, p_batch_number number,
244   p_res_desc out nocopy varchar2, p_min_capacity out nocopy number, p_max_capacity out nocopy number,
245   p_capacity_used out nocopy number);
246 
247 function getTansitionValue(p_plan_id number, p_instance_id number,
248   p_org_id number, p_dept_id number, p_res_id number, p_from_setup_id number,
249   p_to_setup_id number, p_value_code varchar2) return varchar2;
250 
251 function getDeptResInstCode(p_plan_id number,
252   p_instance_id number, p_org_id number,
253   p_dept_id number, p_res_id number,
254   p_res_instance_id number, p_serial_number varchar2) RETURN varchar2 ;
255 
256 function getOrderNumber(p_plan_id number, p_inst_id number, p_trx_id number, p_disposition_id number,
257   p_order_type number, p_order_number varchar2) return varchar2;
258 
259 function getMFQSequence (p_query_id in number default null) Return number;
260 
261 function getGanttSequence (p_query_id in number default null) Return number;
262 
263 function usingBatchableRes(p_plan_id number,
264   p_transaction_id number, p_instance_id number) return boolean;
265 
266 function isBatchable(p_plan_id number, p_inst_id number, p_org_id number,
267   p_dept_id number, p_res_id number ) return number;
268 
269 
270 function isTimeFenceCrossed(p_plan_id number,
271   p_transaction_id number, p_instance_id number,
272   p_start_date date) RETURN varchar2;
273 
274 function getMTQTime(p_transaction_id number,
275   p_plan_id number, p_instance_id number) return number;
276 -- get functions -
277 
278 -- prepare Data +
279 procedure prepareResHoursGantt(p_query_id in number, p_plan_id number,
280   p_start_date date, p_end_date date, p_display_type number default null);
281 
282 procedure prepareSupplierGantt(p_query_id in number,
283   p_plan_id number, p_start_date date, p_end_date date);
284 
285 -- prepare Data -
286 
287 -- populate msc_form_query proc's +
288 procedure populateEndPegsMFQ(p_plan_id in number,
289   p_end_demand_id in number, p_query_id in number);
290 
291 procedure populateOrdersIntoMFQ(p_inst_id in number,
292   p_trx_id in number, p_query_id in number,
293   p_one_record varchar2 default null);
294 -- populate msc_form_query proc's -
295 
296 -- populate msc_gantt_query / msc_gantt_other_query proc's +
297 procedure populateOrdersIntoGantt(p_plan_id number,
298   p_query_id number, p_mfq_query_id number);
299 
300 procedure populateRowKeysIntoGantt(p_query_id number,
301   p_index number, p_node_path varchar2, p_node_type number,
302   p_transaction_id number, p_inst_id number, p_org_id number,
303   p_dept_id number default null, p_res_id number default null,
304   p_op_seq_num varchar2 default null, p_op_seq_id number default null,
305   p_op_desc varchar2 default null,
306   p_critical_flag number default null,
307   p_parent_link varchar2 default null,
308   p_node_level number default null);
309 
310 procedure populateResDtlIntoGantt(p_query_id number,
311  p_row_type number, p_row_index number,
312  p_start_date date, p_end_date date,
313  p_resource_units number, p_resource_hours number,
314  p_schedule_flag number, p_detail_type number,
315  p_display_type number default null);
316 
317 procedure populateResReqGanttNew(p_query_id number, p_start_date date, p_end_date date,
318   p_display_type number default null);
319 
320 procedure populateResAvailGantt(p_query_id number,p_start_date date, p_end_date date);
321 
322 procedure populateResActGantt(p_query_id number,
323   p_start_date date, p_end_date date,
324   p_batched_res_act number,
325   p_require_data IN out nocopy msc_gantt_utils.maxCharTbl,
326   p_display_type number);
327 
328 procedure populateSupplierGantt(p_query_id number, p_plan_id number,
329   p_start_date date, p_end_date date);
330 
331 procedure populateResIntoGantt(p_query_id number,
332   p_row_index in out nocopy number, p_one_record in out nocopy varchar2,
333   p_plan_id number,
334   p_inst_id number default null, p_org_id number default null,
335   p_dept_id number default null, p_res_id number default null,
336   p_res_instance_id number default null,
337   p_serial_number varchar2 default null,
338   p_add_nodes number default null);
339 
340 procedure populateResIntoGanttFromMfq(p_query_id number,
341   p_list varchar2, p_plan_id number);
342 
343 procedure populateSuppIntoGantt(p_query_id number,
344   p_row_index number, p_one_record in out nocopy varchar2, p_plan_id number,
345   p_inst_id number default null, p_org_id number default null,
346   p_item_id number default null, p_supplier_id number default null,
347   p_supplier_site_id number default null);
348 
349 procedure populateSuppIntoGanttFromMfq(p_query_id number,
350   p_list varchar2, p_plan_id number);
351 
352 procedure populateListIntoGantt(p_query_id number,
353   p_plan_id number, p_list varchar2,
354   p_filter_type number, p_view_type number,
355   p_folder_id number default null);
356 
357 -- populate msc_gantt_query / msc_gantt_other_query proc's -
358 
359 -- res charges and segmentPegging +
360 
361 procedure resCharges(p_query_id number, p_plan_id number,
362   p_trx_list varchar2, p_out_data IN OUT NOCOPY msc_gantt_utils.maxCharTbl);
363 
364 --p_trx_list is (inst_id, node_type, trx id),(inst_id, node_type, trx_id)
365 procedure segmentPegging(p_query_id number, p_plan_id number,
366   p_trx_list varchar2, p_out_data IN OUT NOCOPY msc_gantt_utils.maxCharTbl);
367 
368 -- res charges and segmentPegging -
369 
370 --move.resize validation...alternate.simul resource +
371 
372 function insertReqFromAlt(p_plan_id number, p_inst_id number,
373   p_simu_res_trx number,
374   p_alt_res_id number,
375   p_alt_res_hours number,
376   p_alt_res_alt_num number,
377   p_alt_res_basis_type number,
378   p_alt_orig_res_seq_num number) return number;
379 
380 procedure updateReqFromAlt(p_plan_id number, p_inst_id number, p_simu_res_trx number,
381   p_alt_res_id number, p_alt_res_hours number, p_alt_res_alt_num number, p_alt_res_basis_type number,
382   p_alt_orig_res_seq_num number);
383 
384 procedure updateReqInstFromAlt(p_plan_id number, p_inst_id number, p_simu_res_trx number,
388 
385   p_alt_res_id number, p_alt_res_instance_id number, p_serial_number varchar2,
386   p_alt_res_hours number, p_alt_res_alt_num number,
387   p_alt_orig_res_seq_num number);
389 procedure DeleteReqFromAlt(p_plan_id number, p_inst_id number, p_simu_res_trx number);
390 
391 function insertReqInstFromAlt(p_plan_id number, p_inst_id number,
392   p_simu_res_inst_trx number,
393   p_alt_res_id number,
394   p_alt_res_instance_id number,
395   p_serial_number varchar2,
396   p_alt_res_hours number,
397   p_alt_res_alt_num number,
398   p_from_node number,
399   p_alt_orig_res_seq_num number) return number;
400 
401 procedure DeleteReqInstFromAlt(p_plan_id number,
402   p_inst_id number, p_res_inst_trx number);
403 
404 procedure validateTime(p_plan_id number,
405   p_transaction_id number, p_instance_id number,
406   p_start_date date, p_end_date date,
407   p_plan_start_date date, p_plan_end_date date,
408   p_return_status in OUT NOCOPY varchar2,
409   p_out in OUT NOCOPY varchar2,
410   p_node_type number);
411 
412 procedure getSimuResource(p_plan_id number,
413   p_transaction_id number, p_instance_id number,
414   p_name OUT NOCOPY varchar2, p_id OUT NOCOPY varchar2,
415   p_node_type number default null);
416 
417 procedure getAltResource(p_plan_id number,
418   p_transaction_id number, p_instance_id number,
419   p_name OUT NOCOPY varchar2, p_id OUT NOCOPY varchar2,
420   p_node_type number default null,
421   p_from_form number default null);
422 
423 procedure loadAltResource(p_plan_id number, p_transaction_id number,
424   p_instance_id number, p_alt_resource number, p_alt_resource_inst number,
425   p_serial_number varchar2, p_alt_num number,
426   p_node_type number, p_to_node_type number,
427   p_return_trx_id out nocopy number,
428   p_return_status OUT NOCOPY varchar2,
429   p_out OUT NOCOPY varchar2
430   );
431 
432 procedure loadAltResourceBatch(p_plan_id number, p_transaction_id number,
433   p_instance_id number, p_alt_resource number, p_alt_resource_inst number,
434   p_serial_number varchar2, p_alt_num number,
435   p_node_type number, p_to_node_type number,
436   p_return_trx_id out nocopy number,
437   p_return_status OUT NOCOPY varchar2,
438   p_out OUT NOCOPY varchar2
439   );
440 
441 procedure firmResourcePub(p_plan_id number,
442   p_transaction_id number, p_instance_id number, p_firm_type number,
443   p_return_status OUT NOCOPY varchar2,
444   p_out OUT NOCOPY varchar2,
445   p_node_type number);
446 
447 procedure firmResourceSeqPub(p_plan_id number,
448   p_trx_list varchar2, p_firm_type number,
449   p_return_status OUT NOCOPY varchar2,
450   p_out OUT NOCOPY varchar2,
451   p_node_type number);
452 
453 procedure firmResourceBatchPub(p_plan_id number,
454   p_transaction_id number, p_instance_id number, p_firm_type number,
455   p_return_status OUT NOCOPY varchar2,
456   p_out OUT NOCOPY varchar2,
457   p_node_type number);
458 
459 procedure firmSupplyPub(p_plan_id number,
460   p_transaction_id number, p_instance_id number,
461   p_firm_type number,
462   p_start_date date, p_end_date date,
463   p_plan_start_date date, p_plan_end_date date,
464   p_return_status OUT NOCOPY varchar2,
465   p_out OUT NOCOPY varchar2,
466   p_validate_flag boolean default true,
467   p_node_type number);
468 
469 procedure moveResourcePub(p_plan_id number,
470   p_transaction_id number, p_instance_id number,
471   p_start_date date, p_end_date date,
472   p_duration varchar2,
473   p_plan_start_date date, p_plan_end_date date,
474   p_return_status OUT NOCOPY varchar2,
475   p_out OUT NOCOPY varchar2,
476   p_validate_flag boolean,
477   p_res_firm_seq boolean,
478   p_batched_res_act boolean,
479   p_node_type number);
480 
481 procedure moveSupplyPub (p_plan_id number,
482   p_supply_id number, p_start_date date, p_end_date date,
483   p_plan_start_date date, p_plan_end_date date,
484   p_return_status OUT NOCOPY varchar2,
485   p_out out NOCOPY varchar2 );
486 
487 procedure rescheduleData(p_plan_id number,
488   p_instance_id number, p_transaction_id number,
489   p_plan_end_date date,
490   v_require_data OUT NOCOPY varchar2);
491 
492 procedure updateReq(p_plan_id number, p_inst_id number, p_trx_id number,
493   p_firm_type number, p_start_date date, p_end_date date,
494   p_firm_start_date date, p_firm_end_date date,
495   p_update_mode number);
496 
497 procedure updateReqInst(p_plan_id number, p_inst_id number, p_trx_id number,
498   p_start_date date, p_end_date date);
499 
500 procedure updateSupplies(p_plan_id number,
501   p_trx_id number, p_update_type number,
502   p_firm_type number default null,
503   p_firm_date date default null,
504   p_firm_qty number default null);
505 
506 procedure updateReqSimu(p_plan_id number, p_inst_id number, p_trx_id number,
507   p_firm_type number, p_start_date in out nocopy date, p_end_date in out nocopy date,
508   p_firm_start_date date, p_firm_end_date date,
509   p_update_mode number,
510   p_return_status in out nocopy varchar2,
511   p_out in out nocopy varchar2);
512 
513 procedure moveOneResource(p_plan_id number,
514   p_transaction_id number, p_instance_id number,
515   p_start_date date, p_end_date date,
516   p_return_status in OUT NOCOPY varchar2,
517   p_out in OUT NOCOPY varchar2,
518   p_node_type number) ;
519 
523   p_time varchar2,
520 procedure rescheduleData(p_plan_id number,
521   p_instance_id number, p_org_id number,
522   p_dept_id number, p_res_id number,
524   p_plan_end_date date,
525   v_require_data OUT NOCOPY varchar2);
526 
527 --move.resize validation...alternate.simul resource -
528 
529 --property Data +
530 procedure getProperty(p_plan_id number, p_instance_id number,
531   p_transaction_id number, p_type number, p_view_type number,
532   p_end_demand_id number,
533   v_pro out NOCOPY varchar2, v_demand out NOCOPY varchar2);
534 
535 procedure demandPropertyData( p_plan_id number,
536   p_instance_id number, v_transaction_id number,
537   v_org_id number, p_end_demand_id number,
538   v_demand out NOCOPY varchar2);
539 
540 procedure resPropertyData(p_plan_id number,
541   p_transaction_id number, p_instance_id number,
542   p_end_demand_id number,
543   v_job OUT NOCOPY varchar2, v_demand OUT NOCOPY varchar2);
544 --property Data -
545 
546 
547 -- find and folder list +
548 procedure findRequest(p_plan_id number,
549   p_where varchar2, p_query_id number,
550   p_view_type varchar2 default null,
551   p_filter_type number default null,
552   p_folder_id number default null) ;
553 
554 procedure constructSupplyRequest(p_query_id number,
555   p_from_block varchar2, p_plan_id number,
556   p_plan_end_date date, p_where varchar2);
557 
558 procedure constructResourceRequest(p_query_id number,
559   p_from_block varchar2, p_plan_id number,
560   p_plan_end_date date,  p_where varchar2);
561 
562 procedure constructRequest(p_query_id number,
563   p_type varchar2, p_plan_id number, p_plan_end_date date,
564   p_where varchar2, p_from_block varchar2);
565 
566 -- find and folder list -
567 
568 -- sends to client +
569 procedure sendResourceNames(p_query_id number,
570   p_from_index number, p_to_index number,
571   p_name_data IN OUT NOCOPY msc_gantt_utils.maxCharTbl,
572   p_sort_column varchar2 default null,
573   p_sort_order varchar2 default null);
574 
575 procedure sendSupplierNames(p_query_id number,
576   p_from_index number, p_to_index number,
577   p_name_data IN OUT NOCOPY msc_gantt_utils.maxCharTbl,
578   p_sort_column varchar2 default null,
579   p_sort_order varchar2 default null);
580 
581 procedure sendSupplierGantt(p_query_id number,
582   p_supp_data IN OUT NOCOPY msc_gantt_utils.maxCharTbl);
583 
584 procedure sendResourceGantt(p_query_id number, p_view_type number, p_isBucketed number,
585   p_require_data IN OUT NOCOPY msc_gantt_utils.maxCharTbl,
586   p_avail_data IN OUT NOCOPY msc_gantt_utils.maxCharTbl,
587   p_onlyAvailData boolean, p_display_type number);
588 -- sends to client -
589 
590 procedure parseResString(p_one_record in varchar2,
591   p_inst_id out nocopy number, p_org_id out nocopy number,
592   p_dept_id out nocopy number, p_res_id out nocopy number,
593   p_res_instance_id out nocopy number,
594   p_serial_number out nocopy varchar2);
595 
596 procedure parseSuppString(p_one_record in varchar2,
597   p_inst_id out nocopy number, p_org_id out nocopy number,
598   p_item_id out nocopy number, p_supplier_id out nocopy number,
599   p_supplier_site_id out nocopy number);
600 
601 function countStrOccurence (p_string_in in varchar2,
602   p_substring_in in varchar2) return number;
603 
604 procedure getBucketDates(p_start_date date, p_end_date date,
605   v_bkt_start in out nocopy msc_gantt_utils.date_arr,
606   v_bkt_end in out nocopy msc_gantt_utils.date_arr,
607   p_query_id in out nocopy number);
608 
609 function getResult(p_query_id number,
610   p_from_index number, p_to_index number, p_plan_id number,
611   p_out_data IN OUT NOCOPY msc_gantt_utils.maxCharTbl,
612   p_node_level number default null,
613   p_sort_node number default null,
614   p_sort_column varchar2 default null,
615   p_sort_order varchar2 default null,
616   p_res_nodes_only varchar2 default null) return number;
617 
618 procedure getUserPref(p_pref_id number);
619 
620 function getResBatchNodeLabel(p_res_req_type varchar2, p_org varchar2,
621   p_batch_qty varchar2, p_batch_number varchar2, p_batch_util_pct varchar2) return varchar2;
622 
623 function getResActResNodeLabel(p_plan_id number, p_inst_id number, p_trx_id number) return varchar2;
624 function getOrderViewResNodeLabel(p_plan_id number, p_inst_id number, p_trx_id number) return varchar2;
625 
626 function getOpNodeLabel(p_op_seq varchar2,
627   p_dept varchar2, p_op_desc varchar2, p_plan_id number) return varchar2;
628 
629 function getJobNodeLabel(p_item_name varchar2, p_org_code varchar2,
630   p_order_number varchar2, p_order_type varchar2, p_qty number) return varchar2;
631 
632 function getResReqUlpsd(p_plan number, p_inst number, p_org number, p_dept number,
633   p_res number, p_supply number, p_op_seq number, p_res_seq number,
634   p_orig_res_seq number, p_parent_seq number) return date;
635 
636 --function isResRowInGantt(p_query_id number,
637 --  p_res_instance_id number, p_batchable number, p_ignore_batch_flag number default null) return number;
638 
639 function isBtchResWithoutBatch(p_plan_id number, p_instance_id number, p_organization_id number,
640   p_department_id number, p_resource_id number, p_res_inst_id number) return number;
641 
642 procedure isResRowInGantt(p_query_id number,
643   p_res_rows out nocopy number,
644   p_res_inst_rows out nocopy number,
645   p_res_batch_rows out nocopy number,
646   p_res_inst_batch_rows out nocopy number,
647   p_batch_flag number default null);
648 
649 function isResRowInGantt(p_query_id number, p_plan_id number,
650   p_inst_id number, p_org_id number, p_dept_id number, p_res_id number,
651   p_res_inst_id number, p_serial_number varchar2) return number;
652 
653 function isResRowValidforResActView(p_plan number, p_inst number, p_org number,
654   p_dept number, p_res number, p_start_date date, p_end_date date) return number;
655 
656 END MSC_GANTT_UTILS;