82: allocated_quantity,
83: pf_display_flag
84: -- time_phased_atp changes end
85: ) VALUES (
86: MSC_ATP_PVT.G_SESSION_ID,
87: x_atp_supply_demand.level(k),
88: x_atp_supply_demand.identifier(k),
89: x_atp_supply_demand.scenario_id(k),
90: x_atp_supply_demand.inventory_item_id(k),
159: GREATEST(
160: TRUNC(DECODE(RECORD_SOURCE,
161: 2,
162: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
163: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
164: 2,
165: (NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
166: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
167: p_sys_next_date)SD_DATE, --plan by request date,promise date, schedule date--3099066
178: | else if p_demand_class is '-1' then call |
179: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
180: +------------------------------------------------------------------------*/
181: 1,
182: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
183: decode(d.origination_type,
184: 6, decode(d.source_organization_id,
185: NULL, DECODE(D.DEMAND_CLASS, null, null,
186: DECODE(p_demand_class, '-1',
188: null, null, p_item_id, p_org_id,
189: p_instance_id, TRUNC(
190: DECODE(RECORD_SOURCE,
191: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
192: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
193: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
194: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
195: --plan by request date,promise date, schedule date
196: p_level_id, D.DEMAND_CLASS),
200: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
201: null, null, p_item_id, p_org_id,
202: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
203: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
204: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
205: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
206: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
207: p_level_id, D.DEMAND_CLASS), --plan by request date,promise date, schedule date
208: D.DEMAND_CLASS)),
212: null, null, p_item_id, p_org_id,
213: p_instance_id, TRUNC(
214: DECODE(RECORD_SOURCE,
215: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
216: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
217: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
218: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
219: p_level_id, D.DEMAND_CLASS), --plan by request date,promise date, schedule date
220: D.DEMAND_CLASS)), TO_CHAR(NULL)),
225: null, null, p_item_id, p_org_id,
226: p_instance_id, TRUNC(
227: DECODE(RECORD_SOURCE,
228: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
229: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
230: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
231: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
232: p_level_id, D.DEMAND_CLASS), --plan by request date,promise date, schedule date
233: D.DEMAND_CLASS)),
237: null, null, p_item_id, p_org_id,
238: p_instance_id, TRUNC(
239: DECODE(RECORD_SOURCE,
240: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
241: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
242: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
243: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
244: p_level_id, D.DEMAND_CLASS), --plan by request date,promise date, schedule date
245: D.DEMAND_CLASS)),
249: null, null, p_item_id, p_org_id,
250: p_instance_id, TRUNC(
251: DECODE(RECORD_SOURCE,
252: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
253: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
254: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
255: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
256: p_level_id, D.DEMAND_CLASS), --plan by request date,promise date, schedule date
257: D.DEMAND_CLASS)), TO_CHAR(NULL)),
261: null, null, p_item_id, p_org_id,
262: p_instance_id, TRUNC(
263: DECODE(RECORD_SOURCE,
264: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
265: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
266: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
267: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
268: p_level_id, D.DEMAND_CLASS), --plan by request date,promise date, schedule date
269: D.DEMAND_CLASS))),
273: null, null, p_item_id, p_org_id,
274: p_instance_id, TRUNC(
275: DECODE(RECORD_SOURCE,
276: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
277: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
278: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
279: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
280: p_level_id, D.DEMAND_CLASS), --plan by request date,promise date, schedule date
281: D.DEMAND_CLASS)) ),
282: -- rajjain end
283: 2, DECODE(D.CUSTOMER_ID, NULL, TO_CHAR(NULL),
284: 0, TO_CHAR(NULL),
285: -- rajjain begin 07/19/2002
286: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
287: decode(d.origination_type,
288: 6, decode(d.source_organization_id,
289: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
290: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
290: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
291: p_org_id, p_instance_id,
292: TRUNC(DECODE(RECORD_SOURCE,
293: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
294: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
295: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
296: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
297: p_level_id, NULL),
298: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
299: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
300: p_org_id, p_instance_id,
301: TRUNC(DECODE(RECORD_SOURCE,
302: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
303: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
304: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
305: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
306: p_level_id, NULL),
307: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
307: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
308: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
309: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
310: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
311: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
312: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
313: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
314: p_level_id, NULL),
315: TO_CHAR(NULL)),
318: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
319: p_org_id, p_instance_id,
320: TRUNC(DECODE(RECORD_SOURCE,
321: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
322: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
323: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
324: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
325: p_level_id, NULL),
326: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
327: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
328: p_org_id, p_instance_id,
329: TRUNC(DECODE(RECORD_SOURCE,
330: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
331: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
332: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
333: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
334: p_level_id, NULL),
335: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
336: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
337: p_org_id, p_instance_id,
338: TRUNC(DECODE(RECORD_SOURCE,
339: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
340: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
341: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
342: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
343: p_level_id, NULL),
344: TO_CHAR(NULL)),
345: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID,
346: p_item_id, p_org_id, p_instance_id,
347: TRUNC(DECODE(RECORD_SOURCE,
348: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
349: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
350: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
351: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))--plan by request date,promise date, schedule date
352: ,p_level_id, NULL)),
353: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
353: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
354: p_item_id, p_org_id, p_instance_id,
355: TRUNC(DECODE(RECORD_SOURCE,
356: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
357: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
358: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
359: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))--plan by request date,promise date, schedule date
360: ,p_level_id, NULL))
361: )),
366: MSC_AATP_FUNC.Get_Item_Demand_Alloc_Percent(p_plan_id,
367: D.DEMAND_ID,
368: TRUNC(DECODE(RECORD_SOURCE,
369: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
370: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
371: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
372: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
373: D.USING_ASSEMBLY_ITEM_ID,
374: DECODE(D.SOURCE_ORGANIZATION_ID,
389: | else if p_demand_class is '-1' then call |
390: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
391: +-----------------------------------------------------------------*/
392: 1,
393: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
394: decode(d.origination_type,
395: 6, decode(d.source_organization_id,
396: NULL, DECODE(D.DEMAND_CLASS, null, null,
397: DECODE(p_demand_class, '-1',
399: null, null, p_item_id, p_org_id,
400: p_instance_id, TRUNC(
401: DECODE(RECORD_SOURCE,
402: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
403: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
404: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
405: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
406: p_level_id, D.DEMAND_CLASS),
407: D.DEMAND_CLASS)),
411: null, null, p_item_id, p_org_id,
412: p_instance_id,
413: TRUNC(DECODE(RECORD_SOURCE,
414: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
415: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
416: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
417: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
418: p_level_id, D.DEMAND_CLASS),
419: D.DEMAND_CLASS)),
423: null, null, p_item_id, p_org_id,
424: p_instance_id,
425: TRUNC(DECODE(RECORD_SOURCE,
426: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
427: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
428: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
429: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
430: p_level_id, D.DEMAND_CLASS),
431: D.DEMAND_CLASS)),
437: null, null, p_item_id, p_org_id,
438: p_instance_id,
439: TRUNC(DECODE(RECORD_SOURCE,
440: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
441: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
442: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
443: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
444: p_level_id, D.DEMAND_CLASS),
445: D.DEMAND_CLASS)),
449: null, null, p_item_id, p_org_id,
450: p_instance_id,
451: TRUNC(DECODE(RECORD_SOURCE,
452: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
453: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
454: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
455: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
456: p_level_id, D.DEMAND_CLASS),
457: D.DEMAND_CLASS)),
461: null, null, p_item_id, p_org_id,
462: p_instance_id,
463: TRUNC(DECODE(RECORD_SOURCE,
464: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
465: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
466: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
467: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), --plan by request date,promise date, schedule date
468: p_level_id, D.DEMAND_CLASS),
469: D.DEMAND_CLASS)),
474: null, null, p_item_id, p_org_id,
475: p_instance_id, TRUNC(
476: DECODE(RECORD_SOURCE,
477: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
478: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
479: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
480: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))--plan by request date,promise date, schedule date
481: , p_level_id, D.DEMAND_CLASS),
482: D.DEMAND_CLASS))),
486: null, null, p_item_id, p_org_id,
487: p_instance_id, TRUNC(
488: DECODE(RECORD_SOURCE,
489: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
490: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
491: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
492: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))--plan by request date,promise date, schedule date
493: , p_level_id, D.DEMAND_CLASS),
494: D.DEMAND_CLASS))),
495: -- rajjain end
496: 2, DECODE(D.CUSTOMER_ID, NULL, p_demand_class,
497: 0, p_demand_class,
498: -- rajjain begin 07/19/2002
499: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
500: decode(d.origination_type,
501: 6, decode(d.source_organization_id,
502: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
503: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
502: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
503: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
504: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
505: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
506: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
507: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
508: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
509: p_level_id, NULL),
510: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
510: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
511: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
512: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
513: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
514: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
515: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
516: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
517: p_level_id, NULL),
518: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
518: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
519: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
520: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
521: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
522: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
523: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
524: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
525: p_level_id, NULL),
526: p_demand_class),
528: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
529: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
530: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
531: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
532: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
533: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
534: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
535: p_level_id, NULL),
536: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
536: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
537: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
538: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
539: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
540: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
541: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
542: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
543: p_level_id, NULL),
544: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
544: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
545: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
546: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
547: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
548: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
549: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
550: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
551: p_level_id, NULL),
552: p_demand_class),
557: (RECORD_SOURCE,
558: 2,
559: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
560: DECODE(
561: MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
562: 2,
563: NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
564: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)
565: )
572: TRUNC(DECODE
573: (RECORD_SOURCE,
574: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
575: DECODE(
576: MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
577: 2,
578: NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
579: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)
580: )
612: -- C.PRIOR_DATE + 1)
613: --bug3693892 added trunc
614: AND TRUNC(DECODE(RECORD_SOURCE,
615: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
616: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
617: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
618: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))) <
619: TRUNC(NVL(p_itf,DECODE(RECORD_SOURCE,
620: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
617: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
618: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))) <
619: TRUNC(NVL(p_itf,DECODE(RECORD_SOURCE,
620: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
621: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
622: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
623: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))+1))
624: UNION ALL
625: SELECT --C.NEXT_DATE SD_DATE, -- 2859130
763: | else if p_demand_class is '-1' then call |
764: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
765: +------------------------------------------------------------------------*/
766: 1,
767: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
768: decode(d.origination_type,
769: 6, decode(d.source_organization_id,
770: NULL, DECODE(D.DEMAND_CLASS, null, null,
771: DECODE(p_demand_class, '-1',
819: -- rajjain end
820: 2, DECODE(D.CUSTOMER_ID, NULL, TO_CHAR(NULL),
821: 0, TO_CHAR(NULL),
822: -- rajjain begin 07/19/2002
823: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
824: decode(d.origination_type,
825: 6, decode(d.source_organization_id,
826: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
827: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
882: | else if p_demand_class is '-1' then call |
883: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
884: +-----------------------------------------------------------------*/
885: 1,
886: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
887: decode(d.origination_type,
888: 6, decode(d.source_organization_id,
889: NULL, DECODE(D.DEMAND_CLASS, null, null,
890: DECODE(p_demand_class, '-1',
940: -- rajjain end
941: 2, DECODE(D.CUSTOMER_ID, NULL, p_demand_class,
942: 0, p_demand_class,
943: -- rajjain begin 07/19/2002
944: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
945: decode(d.origination_type,
946: 6, decode(d.source_organization_id,
947: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
948: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1002: -- Bug 3550296 and 3574164. IMPLEMENT_DATE AND DMD_SATISFIED_DATE are changed to
1003: -- IMPLEMENT_SHIP_DATE and PLANNED_SHIP_DATE resp.
1004: BETWEEN TRUNC(DECODE(RECORD_SOURCE,
1005: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1006: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1007: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1008: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))
1009: AND TRUNC(NVL(D.ASSEMBLY_DEMAND_COMP_DATE,
1010: DECODE(RECORD_SOURCE,
1008: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))
1009: AND TRUNC(NVL(D.ASSEMBLY_DEMAND_COMP_DATE,
1010: DECODE(RECORD_SOURCE,
1011: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1012: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1013: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1014: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))))
1015: AND (( D.ORIGINATION_TYPE = 4
1016: AND C.SEQ_NUM IS NOT NULL) OR
1159: GREATEST(
1160: TRUNC(DECODE(RECORD_SOURCE,
1161: 2,
1162: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1163: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1164: 2,
1165: (NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1166: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))
1167: ,p_sys_next_date) SD_DATE, --3099066 --plan by request date
1179: | else if p_demand_class is '-1' then call |
1180: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
1181: +------------------------------------------------------------------------*/
1182: 1,
1183: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
1184: decode(d.origination_type,
1185: 6, decode(d.source_organization_id,
1186: NULL, DECODE(D.DEMAND_CLASS, null, null,
1187: DECODE(p_demand_class, '-1',
1188: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1189: null, null, p_item_id, p_org_id,
1190: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1191: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1192: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1193: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1194: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1195: D.DEMAND_CLASS)),
1196: -23453, DECODE(D.DEMAND_CLASS, null, null,
1198: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1199: null, null, p_item_id, p_org_id,
1200: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1201: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1202: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1203: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1204: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1205: D.DEMAND_CLASS)),
1206: d.organization_id, DECODE(D.DEMAND_CLASS, null, null,
1208: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1209: null, null, p_item_id, p_org_id,
1210: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1211: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1212: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1213: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1214: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1215: D.DEMAND_CLASS)), TO_CHAR(NULL)),
1216: 30, decode(d.source_organization_id,
1219: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1220: null, null, p_item_id, p_org_id,
1221: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1222: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1223: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1224: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1225: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1226: D.DEMAND_CLASS)),
1227: -23453, DECODE(D.DEMAND_CLASS, null, null,
1229: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1230: null, null, p_item_id, p_org_id,
1231: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1232: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1233: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1234: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1235: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1236: D.DEMAND_CLASS)),
1237: d.organization_id, DECODE(D.DEMAND_CLASS, null, null,
1239: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1240: null, null, p_item_id, p_org_id,
1241: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1242: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1243: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1244: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1245: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1246: D.DEMAND_CLASS)), TO_CHAR(NULL)),
1247: DECODE(D.DEMAND_CLASS, null, null,
1249: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1250: null, null, p_item_id, p_org_id,
1251: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1252: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1253: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1254: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1255: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1256: D.DEMAND_CLASS))),
1257: DECODE(D.DEMAND_CLASS, null, null, --10425563
1259: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1260: null, null, p_item_id, p_org_id,
1261: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1262: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1263: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1264: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1265: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1266: D.DEMAND_CLASS))),
1267: -- rajjain end
1267: -- rajjain end
1268: 2, DECODE(D.CUSTOMER_ID, NULL, TO_CHAR(NULL),
1269: 0, TO_CHAR(NULL),
1270: -- rajjain begin 07/19/2002
1271: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
1272: decode(d.origination_type,
1273: 6, decode(d.source_organization_id,
1274: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1275: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1274: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1275: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1276: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1277: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1278: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1279: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1280: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1281: p_level_id, NULL),
1282: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1282: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1283: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1284: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1285: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1286: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1287: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1288: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1289: p_level_id, NULL),
1290: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1290: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1291: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1292: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1293: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1294: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1295: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1296: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1297: p_level_id, NULL),
1298: TO_CHAR(NULL)),
1300: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1301: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1302: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1303: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1304: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1305: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1306: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1307: p_level_id, NULL),
1308: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1308: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1309: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1310: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1311: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1312: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1313: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1314: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1315: p_level_id, NULL),
1316: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1316: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1317: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1318: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1319: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1320: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1321: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1322: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1323: p_level_id, NULL),
1324: TO_CHAR(NULL)),
1325: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID,
1326: p_item_id, p_org_id, p_instance_id,
1327: TRUNC(DECODE(RECORD_SOURCE,
1328: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1329: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1330: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1331: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),p_level_id, NULL)),
1332: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
1333: p_item_id, p_org_id, p_instance_id,
1332: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
1333: p_item_id, p_org_id, p_instance_id,
1334: TRUNC(DECODE(RECORD_SOURCE,
1335: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1336: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1337: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1338: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),p_level_id, NULL))
1339: )),
1340: -- rajjain end 07/19/2002
1343: MSC_AATP_FUNC.Get_Item_Demand_Alloc_Percent(p_plan_id,
1344: D.DEMAND_ID,
1345: TRUNC(DECODE(RECORD_SOURCE,
1346: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1347: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1348: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1349: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1350: D.USING_ASSEMBLY_ITEM_ID,
1351: DECODE(D.SOURCE_ORGANIZATION_ID,
1366: | else if p_demand_class is '-1' then call |
1367: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
1368: +-----------------------------------------------------------------*/
1369: 1,
1370: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
1371: decode(d.origination_type,
1372: 6, decode(d.source_organization_id,
1373: NULL, DECODE(D.DEMAND_CLASS, null, null,
1374: DECODE(p_demand_class, '-1',
1375: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1376: null, null, p_item_id, p_org_id,
1377: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1378: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1379: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1380: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1381: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1382: D.DEMAND_CLASS)),
1383: -23453, DECODE(D.DEMAND_CLASS, null, null,
1385: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1386: null, null, p_item_id, p_org_id,
1387: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1388: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1389: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1390: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1391: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1392: D.DEMAND_CLASS)),
1393: d.organization_id, DECODE(D.DEMAND_CLASS, null, null,
1395: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1396: null, null, p_item_id, p_org_id,
1397: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1398: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1399: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1400: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1401: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1402: D.DEMAND_CLASS)),
1403: p_demand_class),
1407: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1408: null, null, p_item_id, p_org_id,
1409: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1410: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1411: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1412: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1413: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1414: D.DEMAND_CLASS)),
1415: -23453, DECODE(D.DEMAND_CLASS, null, null,
1417: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1418: null, null, p_item_id, p_org_id,
1419: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1420: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1421: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1422: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1423: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1424: D.DEMAND_CLASS)),
1425: d.organization_id, DECODE(D.DEMAND_CLASS, null, null,
1427: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1428: null, null, p_item_id, p_org_id,
1429: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1430: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1431: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1432: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1433: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1434: D.DEMAND_CLASS)),
1435: p_demand_class),
1438: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1439: null, null, p_item_id, p_org_id,
1440: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1441: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1442: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1443: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1444: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1445: D.DEMAND_CLASS))),
1446: DECODE(D.DEMAND_CLASS, null, null, --10425563
1448: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1449: null, null, p_item_id, p_org_id,
1450: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1451: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1452: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1453: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1454: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
1455: D.DEMAND_CLASS))),
1456: -- rajjain end
1456: -- rajjain end
1457: 2, DECODE(D.CUSTOMER_ID, NULL, p_demand_class,
1458: 0, p_demand_class,
1459: -- rajjain begin 07/19/2002
1460: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
1461: decode(d.origination_type,
1462: 6, decode(d.source_organization_id,
1463: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1464: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1463: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1464: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1465: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1466: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1467: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1468: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1469: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1470: p_level_id, NULL),
1471: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1471: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1472: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1473: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1474: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1475: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1476: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1477: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1478: p_level_id, NULL),
1479: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1479: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1480: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1481: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1482: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1483: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1484: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1485: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1486: p_level_id, NULL),
1487: p_demand_class),
1489: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1490: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1491: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1492: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1493: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1494: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1495: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1496: p_level_id, NULL),
1497: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1497: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1498: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1499: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1500: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1501: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1502: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1503: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1504: p_level_id, NULL),
1505: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1505: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1506: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1507: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
1508: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1509: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1510: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1511: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
1512: p_level_id, NULL),
1513: p_demand_class),
1514: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID,
1515: p_item_id, p_org_id, p_instance_id,
1516: TRUNC(DECODE(RECORD_SOURCE,
1517: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1518: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1519: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1520: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),p_level_id, NULL)),
1521: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
1522: p_item_id, p_org_id, p_instance_id,
1521: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
1522: p_item_id, p_org_id, p_instance_id,
1523: TRUNC(DECODE(RECORD_SOURCE,
1524: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1525: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1526: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1527: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),p_level_id, NULL))
1528: )),
1529: -- rajjain end 07/19/2002
1556: -- C.PRIOR_DATE + 1)
1557: --bug3693892 added trunc
1558: AND TRUNC(DECODE(RECORD_SOURCE,
1559: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1560: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1561: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1562: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))) <
1563: TRUNC(NVL(p_itf,DECODE(RECORD_SOURCE,
1564: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1561: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1562: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))) <
1563: TRUNC(NVL(p_itf,DECODE(RECORD_SOURCE,
1564: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1565: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1566: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1567: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))) + 1))
1568: UNION ALL
1569: SELECT -- C.NEXT_DATE SD_DATE, -- 2859130
1711: | else if p_demand_class is '-1' then call |
1712: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
1713: +------------------------------------------------------------------------*/
1714: 1,
1715: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
1716: decode(d.origination_type,
1717: 6, decode(d.source_organization_id,
1718: NULL, DECODE(D.DEMAND_CLASS, null, null,
1719: DECODE(p_demand_class, '-1',
1767: -- rajjain end
1768: 2, DECODE(D.CUSTOMER_ID, NULL, TO_CHAR(NULL),
1769: 0, TO_CHAR(NULL),
1770: -- rajjain begin 07/19/2002
1771: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
1772: decode(d.origination_type,
1773: 6, decode(d.source_organization_id,
1774: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1775: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1829: | else if p_demand_class is '-1' then call |
1830: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
1831: +-----------------------------------------------------------------*/
1832: 1,
1833: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
1834: decode(d.origination_type,
1835: 6, decode(d.source_organization_id,
1836: NULL, DECODE(D.DEMAND_CLASS, null, null,
1837: DECODE(p_demand_class, '-1',
1887: -- rajjain end
1888: 2, DECODE(D.CUSTOMER_ID, NULL, p_demand_class,
1889: 0, p_demand_class,
1890: -- rajjain begin 07/19/2002
1891: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
1892: decode(d.origination_type,
1893: 6, decode(d.source_organization_id,
1894: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
1895: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
1948: -- Bug 3550296 and 3574164. IMPLEMENT_DATE AND DMD_SATISFIED_DATE are changed to
1949: -- IMPLEMENT_SHIP_DATE and PLANNED_SHIP_DATE resp.
1950: AND C.CALENDAR_DATE BETWEEN TRUNC(DECODE(RECORD_SOURCE,
1951: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1952: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1953: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1954: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))) AND
1955: TRUNC(NVL(D.ASSEMBLY_DEMAND_COMP_DATE,
1956: DECODE(RECORD_SOURCE,
1954: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))) AND
1955: TRUNC(NVL(D.ASSEMBLY_DEMAND_COMP_DATE,
1956: DECODE(RECORD_SOURCE,
1957: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
1958: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
1959: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
1960: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))))
1961: AND (( D.ORIGINATION_TYPE = 4
1962: AND C.SEQ_NUM IS NOT NULL) OR
2173: | else if p_demand_class is '-1' then call |
2174: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
2175: +------------------------------------------------------------------------*/
2176: 1,
2177: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
2178: decode(d.origination_type,
2179: 6, decode(d.source_organization_id,
2180: NULL, DECODE(D.DEMAND_CLASS, null, null,
2181: DECODE(p_demand_class, '-1',
2184: p_instance_id, trunc(DECODE(RECORD_SOURCE,
2185: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2186: -- Bug 3550296 and 3574164. IMPLEMENT_DATE AND DMD_SATISFIED_DATE are changed to
2187: -- IMPLEMENT_SHIP_DATE and PLANNED_SHIP_DATE resp.
2188: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2189: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2190: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2191: D.DEMAND_CLASS)),
2192: -23453, DECODE(D.DEMAND_CLASS, null, null,
2194: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2195: null, null, p_item_id, p_org_id,
2196: p_instance_id, trunc(DECODE(RECORD_SOURCE,
2197: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2198: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2199: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2200: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2201: D.DEMAND_CLASS)),
2202: d.organization_id, DECODE(D.DEMAND_CLASS, null, null,
2204: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2205: null, null, p_item_id, p_org_id,
2206: p_instance_id, trunc(DECODE(RECORD_SOURCE,
2207: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2208: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2209: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2210: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2211: D.DEMAND_CLASS)), NULL),
2212: 30, decode(d.source_organization_id,
2215: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2216: null, null, p_item_id, p_org_id,
2217: p_instance_id, trunc(DECODE(RECORD_SOURCE,
2218: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2219: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2220: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2221: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2222: D.DEMAND_CLASS)),
2223: -23453, DECODE(D.DEMAND_CLASS, null, null,
2225: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2226: null, null, p_item_id, p_org_id,
2227: p_instance_id, trunc(DECODE(RECORD_SOURCE,
2228: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2229: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2230: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2231: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2232: D.DEMAND_CLASS)),
2233: d.organization_id, DECODE(D.DEMAND_CLASS, null, null,
2235: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2236: null, null, p_item_id, p_org_id,
2237: p_instance_id, trunc(DECODE(RECORD_SOURCE,
2238: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2239: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2240: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2241: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2242: D.DEMAND_CLASS)), NULL),
2243: DECODE(D.DEMAND_CLASS, null, null,
2245: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2246: null, null, p_item_id, p_org_id,
2247: p_instance_id, trunc(DECODE(RECORD_SOURCE,
2248: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2249: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2250: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2251: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2252: D.DEMAND_CLASS))),
2253: DECODE(D.DEMAND_CLASS, null, null, --10425563
2255: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2256: null, null, p_item_id, p_org_id,
2257: p_instance_id, trunc(DECODE(RECORD_SOURCE,
2258: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2259: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2260: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2261: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2262: D.DEMAND_CLASS))),
2263: -- rajjain end
2263: -- rajjain end
2264: 2, DECODE(D.CUSTOMER_ID, NULL, NULL,
2265: 0, NULL,
2266: -- rajjain begin 07/19/2002
2267: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
2268: decode(d.origination_type,
2269: 6, decode(d.source_organization_id,
2270: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2271: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2270: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2271: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2272: p_org_id, p_instance_id, trunc(DECODE(RECORD_SOURCE,
2273: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2274: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2275: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2276: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2277: p_level_id, NULL),
2278: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2278: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2279: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2280: p_org_id, p_instance_id, trunc(DECODE(RECORD_SOURCE,
2281: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2282: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2283: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2284: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2285: p_level_id, NULL),
2286: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2286: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2287: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2288: p_org_id, p_instance_id, trunc(DECODE(RECORD_SOURCE,
2289: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2290: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2291: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2292: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2293: p_level_id, NULL),
2294: NULL),
2296: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2297: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2298: p_org_id, p_instance_id, trunc(DECODE(RECORD_SOURCE,
2299: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2300: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2301: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2302: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2303: p_level_id, NULL),
2304: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2304: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2305: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2306: p_org_id, p_instance_id, trunc(DECODE(RECORD_SOURCE,
2307: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2308: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2309: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2310: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2311: p_level_id, NULL),
2312: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2312: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2313: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2314: p_org_id, p_instance_id, trunc(DECODE(RECORD_SOURCE,
2315: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2316: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2317: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2318: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2319: p_level_id, NULL),
2320: NULL),
2321: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID,
2322: p_item_id, p_org_id, p_instance_id,
2323: trunc(DECODE(RECORD_SOURCE,
2324: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2325: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2326: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2327: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),p_level_id, NULL)),
2328: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
2329: p_item_id, p_org_id, p_instance_id,
2328: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
2329: p_item_id, p_org_id, p_instance_id,
2330: trunc(DECODE(RECORD_SOURCE,
2331: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2332: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2333: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2334: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),p_level_id, NULL))
2335: )),
2336: -- rajjain end 07/19/2002
2339: MSC_AATP_FUNC.Get_Item_Demand_Alloc_Percent(p_plan_id,
2340: D.DEMAND_ID,
2341: trunc(DECODE(RECORD_SOURCE,
2342: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2343: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2344: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2345: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2346: D.USING_ASSEMBLY_ITEM_ID,
2347: DECODE(D.SOURCE_ORGANIZATION_ID,
2362: | else if p_demand_class is '-1' then call |
2363: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
2364: +-----------------------------------------------------------------*/
2365: 1,
2366: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
2367: decode(d.origination_type,
2368: 6, decode(d.source_organization_id,
2369: NULL, DECODE(D.DEMAND_CLASS, null, null,
2370: DECODE(p_demand_class, '-1',
2371: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2372: null, null, p_item_id, p_org_id,
2373: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2374: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2375: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2376: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2377: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2378: D.DEMAND_CLASS)),
2379: -23453, DECODE(D.DEMAND_CLASS, null, null,
2381: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2382: null, null, p_item_id, p_org_id,
2383: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2384: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2385: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2386: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2387: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2388: D.DEMAND_CLASS)),
2389: d.organization_id, DECODE(D.DEMAND_CLASS, null, null,
2391: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2392: null, null, p_item_id, p_org_id,
2393: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2394: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2395: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2396: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2397: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2398: D.DEMAND_CLASS)),
2399: p_demand_class),
2403: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2404: null, null, p_item_id, p_org_id,
2405: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2406: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2407: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2408: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2409: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2410: D.DEMAND_CLASS)),
2411: -23453, DECODE(D.DEMAND_CLASS, null, null,
2413: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2414: null, null, p_item_id, p_org_id,
2415: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2416: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2417: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2418: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2419: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2420: D.DEMAND_CLASS)),
2421: d.organization_id, DECODE(D.DEMAND_CLASS, null, null,
2423: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2424: null, null, p_item_id, p_org_id,
2425: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2426: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2427: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2428: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2429: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2430: D.DEMAND_CLASS)),
2431: p_demand_class),
2434: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2435: null, null, p_item_id, p_org_id,
2436: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2437: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2438: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2439: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2440: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2441: D.DEMAND_CLASS))),
2442: DECODE(D.DEMAND_CLASS, null, null, --10425563
2444: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2445: null, null, p_item_id, p_org_id,
2446: p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2447: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2448: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2449: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2450: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))), p_level_id, D.DEMAND_CLASS),
2451: D.DEMAND_CLASS))),
2452: -- rajjain end
2452: -- rajjain end
2453: 2, DECODE(D.CUSTOMER_ID, NULL, p_demand_class,
2454: 0, p_demand_class,
2455: -- rajjain begin 07/19/2002
2456: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
2457: decode(d.origination_type,
2458: 6, decode(d.source_organization_id,
2459: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2460: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2459: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2460: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2461: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2462: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2463: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2464: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2465: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2466: p_level_id, NULL),
2467: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2467: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2468: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2469: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2470: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2471: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2472: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2473: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2474: p_level_id, NULL),
2475: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2475: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2476: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2477: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2478: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2479: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2480: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2481: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2482: p_level_id, NULL),
2483: p_demand_class),
2485: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2486: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2487: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2488: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2489: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2490: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2491: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2492: p_level_id, NULL),
2493: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2493: -23453, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2494: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2495: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2496: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2497: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2498: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2499: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2500: p_level_id, NULL),
2501: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2501: d.organization_id, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2502: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2503: p_org_id, p_instance_id, TRUNC(DECODE(RECORD_SOURCE,
2504: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2505: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2506: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2507: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2508: p_level_id, NULL),
2509: p_demand_class),
2510: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID,
2511: p_item_id, p_org_id, p_instance_id,
2512: TRUNC(DECODE(RECORD_SOURCE,
2513: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2514: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2515: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2516: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),p_level_id, NULL)),
2517: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
2518: p_item_id, p_org_id, p_instance_id,
2517: MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, --10425563
2518: p_item_id, p_org_id, p_instance_id,
2519: TRUNC(DECODE(RECORD_SOURCE,
2520: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2521: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2522: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2523: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),p_level_id, NULL))
2524: )),
2525: -- rajjain end 07/19/2002
2530: -1* (D.USING_REQUIREMENT_QUANTITY - nvl(d.reserved_quantity,0)),--5027568
2531: -- C.PRIOR_DATE col25, -- 2859130
2532: GREATEST(TRUNC(DECODE(RECORD_SOURCE,
2533: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2534: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2535: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2536: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))),
2537: p_sys_next_date) col25, --plan by request date --3099066
2538: l_null_num col26,
2590: -- IMPLEMENT_SHIP_DATE and PLANNED_SHIP_DATE resp.
2591: --bug3693892 added trunc
2592: AND TRUNC(DECODE(RECORD_SOURCE,
2593: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2594: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2595: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2596: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))
2597: < TRUNC(NVL(p_itf,DECODE(RECORD_SOURCE,
2598: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2595: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2596: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))))
2597: < TRUNC(NVL(p_itf,DECODE(RECORD_SOURCE,
2598: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
2599: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
2600: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
2601: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))) + 1))
2602: -- AND C.CALENDAR_DATE < NVL(p_itf, C.CALENDAR_DATE+1)
2603: UNION ALL
2844: | else if p_demand_class is '-1' then call |
2845: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
2846: +------------------------------------------------------------------------*/
2847: 1,
2848: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
2849: decode(d.origination_type,
2850: 6, decode(d.source_organization_id,
2851: NULL, DECODE(D.DEMAND_CLASS, null, null,
2852: DECODE(p_demand_class, '-1',
2900: -- rajjain end
2901: 2, DECODE(D.CUSTOMER_ID, NULL, NULL,
2902: 0, NULL,
2903: -- rajjain begin 07/19/2002
2904: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
2905: decode(d.origination_type,
2906: 6, decode(d.source_organization_id,
2907: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
2908: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
2963: | else if p_demand_class is '-1' then call |
2964: | Get_Hierarchy_Demand_class else return DEMAND_CLASS |
2965: +-----------------------------------------------------------------*/
2966: 1,
2967: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N', --10425563
2968: decode(d.origination_type,
2969: 6, decode(d.source_organization_id,
2970: NULL, DECODE(D.DEMAND_CLASS, null, null,
2971: DECODE(p_demand_class, '-1',
3021: -- rajjain end
3022: 2, DECODE(D.CUSTOMER_ID, NULL, p_demand_class,
3023: 0, p_demand_class,
3024: -- rajjain begin 07/19/2002
3025: decode(MSC_ATP_PVT.G_INTERNAL_SALES_ORDER,'N',
3026: decode(d.origination_type,
3027: 6, decode(d.source_organization_id,
3028: NULL, MSC_AATP_FUNC.Get_Hierarchy_Demand_Class(
3029: D.CUSTOMER_ID, D.SHIP_TO_SITE_ID, p_item_id,
3122: -- Bug 3550296 and 3574164. IMPLEMENT_DATE AND DMD_SATISFIED_DATE are changed to
3123: -- IMPLEMENT_SHIP_DATE and PLANNED_SHIP_DATE resp.
3124: AND C.CALENDAR_DATE BETWEEN TRUNC(DECODE(RECORD_SOURCE,
3125: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
3126: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
3127: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
3128: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))) AND
3129: TRUNC(NVL(D.ASSEMBLY_DEMAND_COMP_DATE,
3130: DECODE(RECORD_SOURCE,
3128: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))) AND
3129: TRUNC(NVL(D.ASSEMBLY_DEMAND_COMP_DATE,
3130: DECODE(RECORD_SOURCE,
3131: 2, NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE),
3132: DECODE(MSC_ATP_PVT.G_HP_DEMAND_BUCKETING_PREF,
3133: 2, NVL(D.IMPLEMENT_SHIP_DATE,NVL(D.FIRM_DATE,NVL(D.PLANNED_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE))),
3134: NVL(D.SCHEDULE_SHIP_DATE,D.USING_ASSEMBLY_DEMAND_DATE)))))
3135: AND (( D.ORIGINATION_TYPE = 4
3136: AND C.SEQ_NUM IS NOT NULL) OR
3832:
3833: -- time_phased_atp
3834: IF (p_inventory_item_id <> p_request_item_id and p_atf_date is not null) THEN
3835: l_time_phased_atp := 'Y';
3836: l_pf_item_id := MSC_ATP_PVT.G_ITEM_INFO_REC.product_family_id;
3837: END IF;
3838:
3839: -- rajjain 01/29/2003 begin Bug 2737596
3840: IF p_identifier = -1 THEN
3853: END IF;
3854: END;
3855: ELSE
3856: -- we need not select this in case of ATP QUERY as this information is available in G_ITEM_INFO_REC
3857: l_inv_item_id := MSC_ATP_PVT.G_ITEM_INFO_REC.inventory_item_id;
3858: l_uom_code := MSC_ATP_PVT.G_ITEM_INFO_REC.uom_code;
3859: END IF;
3860: -- rajjain 01/29/2003 end Bug 2737596
3861:
3854: END;
3855: ELSE
3856: -- we need not select this in case of ATP QUERY as this information is available in G_ITEM_INFO_REC
3857: l_inv_item_id := MSC_ATP_PVT.G_ITEM_INFO_REC.inventory_item_id;
3858: l_uom_code := MSC_ATP_PVT.G_ITEM_INFO_REC.uom_code;
3859: END IF;
3860: -- rajjain 01/29/2003 end Bug 2737596
3861:
3862: /* New allocation logic for time_phased_atp changes begin
3863: For time phased ATP scenarios if allocation rule at member item is not defined then within ATF use
3864: allocation rule defined at family */
3865: IF l_time_phased_atp = 'Y' THEN
3866: IF p_request_date <= p_atf_date THEN
3867: IF MSC_ATP_PVT.G_MEM_RULE_WITHIN_ATF = 'Y' THEN
3868: l_item_to_use := l_inv_item_id;
3869: ELSE
3870: l_item_to_use := l_pf_item_id;
3871: END IF;
4075: WHILE mm is not null LOOP
4076:
4077: msc_sch_wb.atp_debug('---------------------l_demand_class_tab'||l_demand_class_tab(mm));--6359986
4078: IF (l_demand_class_tab(mm) ='-1') then --6359986
4079: IF(MSC_ATP_PVT.G_ZERO_ALLOCATION_PERC = 'N') THEN --6359986
4080: IF l_allocation_percent_tab(mm) <> 0 THEN
4081: l_lowest_priority_demand_class := l_demand_class_tab(mm);
4082: l_lowest_priority := l_demand_class_priority_tab(mm);
4083: IF PG_DEBUG in ('Y', 'C') THEN
4115: END LOOP;
4116: ELSIF l_level_id in (2, 3) THEN
4117: WHILE mm is not null LOOP
4118: IF (REPLACE(l_demand_class_tab(mm),FND_GLOBAL.LOCAL_CHR(13),' ') in ('-1','-1 -1 -1','-1 -1')) then --6359986
4119: IF(MSC_ATP_PVT.G_ZERO_ALLOCATION_PERC = 'N') THEN ----6359986
4120: IF l_allocation_percent_tab(mm) <> 0 THEN
4121: -- this is the lowest demand class with non zero allocation percentage
4122: l_fw_consume_tab(mm) := 4;
4123: l_lowest_priority_demand_class := l_demand_class_tab(mm);
4271: -- krajan: 04/01/02 Added l_org_code to call.
4272: /* Modularize Item and Org Info */
4273: -- changed Call
4274: MSC_ATP_PROC.get_global_org_info(p_instance_id, p_organization_id);
4275: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
4276: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
4277: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
4278: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
4279: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
4272: /* Modularize Item and Org Info */
4273: -- changed Call
4274: MSC_ATP_PROC.get_global_org_info(p_instance_id, p_organization_id);
4275: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
4276: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
4277: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
4278: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
4279: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
4280: /* Modularize Item and Org Info */
4273: -- changed Call
4274: MSC_ATP_PROC.get_global_org_info(p_instance_id, p_organization_id);
4275: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
4276: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
4277: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
4278: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
4279: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
4280: /* Modularize Item and Org Info */
4281:
4274: MSC_ATP_PROC.get_global_org_info(p_instance_id, p_organization_id);
4275: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
4276: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
4277: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
4278: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
4279: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
4280: /* Modularize Item and Org Info */
4281:
4282: IF PG_DEBUG in ('Y', 'C') THEN
4275: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
4276: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
4277: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
4278: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
4279: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
4280: /* Modularize Item and Org Info */
4281:
4282: IF PG_DEBUG in ('Y', 'C') THEN
4283: msc_sch_wb.atp_debug('Item_Alloc_Cum_Atp: ' || 'l_default_atp_rule_id='|| l_default_atp_rule_id);
5655: x_atp_info.atp_period.EXTEND;
5656:
5657: i := x_atp_info.atp_qty.COUNT;
5658: x_atp_info.atp_period(i) := l_infinite_time_fence_date;
5659: x_atp_info.atp_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
5660: --x_atp_info.limit_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
5661:
5662:
5663: IF NVL(p_insert_flag, 0) <> 0 THEN
5656:
5657: i := x_atp_info.atp_qty.COUNT;
5658: x_atp_info.atp_period(i) := l_infinite_time_fence_date;
5659: x_atp_info.atp_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
5660: --x_atp_info.limit_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
5661:
5662:
5663: IF NVL(p_insert_flag, 0) <> 0 THEN
5664: -- add one more entry to indicate infinite time fence date and quantity.
5685: x_atp_period.Inventory_Item_Id(j) := p_inventory_item_id;
5686: x_atp_period.Request_Item_Id(j) := p_inventory_item_id;
5687: x_atp_period.Organization_id(j) := p_organization_id;
5688: x_atp_period.Period_Start_Date(j) := l_infinite_time_fence_date;
5689: x_atp_period.Total_Supply_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
5690: x_atp_period.Total_Demand_Quantity(j) := 0;
5691: -- time_phased_atp
5692: x_atp_period.Total_Bucketed_Demand_Quantity(j) := 0;
5693: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
5689: x_atp_period.Total_Supply_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
5690: x_atp_period.Total_Demand_Quantity(j) := 0;
5691: -- time_phased_atp
5692: x_atp_period.Total_Bucketed_Demand_Quantity(j) := 0;
5693: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
5694: x_atp_period.Cumulative_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
5695:
5696: END IF;
5697: END IF;
5690: x_atp_period.Total_Demand_Quantity(j) := 0;
5691: -- time_phased_atp
5692: x_atp_period.Total_Bucketed_Demand_Quantity(j) := 0;
5693: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
5694: x_atp_period.Cumulative_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
5695:
5696: END IF;
5697: END IF;
5698: --END IF;
6040:
6041: /* Modularize Item and Org Info */
6042: -- changed call
6043: MSC_ATP_PROC.get_global_org_info(p_instance_id, p_organization_id);
6044: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
6045: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
6046: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
6047: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
6048: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
6041: /* Modularize Item and Org Info */
6042: -- changed call
6043: MSC_ATP_PROC.get_global_org_info(p_instance_id, p_organization_id);
6044: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
6045: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
6046: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
6047: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
6048: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
6049: /* Modularize Item and Org Info */
6042: -- changed call
6043: MSC_ATP_PROC.get_global_org_info(p_instance_id, p_organization_id);
6044: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
6045: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
6046: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
6047: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
6048: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
6049: /* Modularize Item and Org Info */
6050: --bug3333114 start
6043: MSC_ATP_PROC.get_global_org_info(p_instance_id, p_organization_id);
6044: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
6045: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
6046: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
6047: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
6048: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
6049: /* Modularize Item and Org Info */
6050: --bug3333114 start
6051: l_sys_next_date := MSC_CALENDAR.NEXT_WORK_DAY (
6044: l_default_atp_rule_id := MSC_ATP_PVT.G_ORG_INFO_REC.default_atp_rule_id;
6045: l_calendar_code := MSC_ATP_PVT.G_ORG_INFO_REC.cal_code;
6046: l_calendar_exception_set_id := MSC_ATP_PVT.G_ORG_INFO_REC.cal_exception_set_id;
6047: l_default_demand_class := MSC_ATP_PVT.G_ORG_INFO_REC.default_demand_class;
6048: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
6049: /* Modularize Item and Org Info */
6050: --bug3333114 start
6051: l_sys_next_date := MSC_CALENDAR.NEXT_WORK_DAY (
6052: l_calendar_code,
6058: END IF;
6059:
6060: IF (l_sys_next_date is NULL) THEN
6061: msc_sch_wb.atp_debug('Sys Next Date is null');
6062: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.NO_MATCHING_CAL_DATE;
6063: RAISE FND_API.G_EXC_ERROR;
6064: END IF;
6065: --bug3333114 end
6066:
8571: --x_atp_info.limit_qty.EXTEND;
8572:
8573: i := x_atp_info.atp_qty.COUNT;
8574: x_atp_info.atp_period(i) := l_infinite_time_fence_date;
8575: x_atp_info.atp_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
8576: --x_atp_info.limit_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
8577:
8578: IF NVL(p_insert_flag, 0) <> 0 THEN
8579: -- add one more entry to indicate infinite time fence date
8572:
8573: i := x_atp_info.atp_qty.COUNT;
8574: x_atp_info.atp_period(i) := l_infinite_time_fence_date;
8575: x_atp_info.atp_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
8576: --x_atp_info.limit_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
8577:
8578: IF NVL(p_insert_flag, 0) <> 0 THEN
8579: -- add one more entry to indicate infinite time fence date
8580: -- and quantity.
8601: x_atp_period.Department_Id(j) := p_department_id;
8602: x_atp_period.Resource_Id(j) := p_resource_id;
8603: x_atp_period.Organization_id(j) := p_organization_id;
8604: x_atp_period.Period_Start_Date(j) := l_infinite_time_fence_date;
8605: x_atp_period.Total_Supply_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8606: x_atp_period.Total_Demand_Quantity(j) := 0;
8607: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8608: x_atp_period.Cumulative_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8609:
8603: x_atp_period.Organization_id(j) := p_organization_id;
8604: x_atp_period.Period_Start_Date(j) := l_infinite_time_fence_date;
8605: x_atp_period.Total_Supply_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8606: x_atp_period.Total_Demand_Quantity(j) := 0;
8607: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8608: x_atp_period.Cumulative_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8609:
8610: END IF;
8611: END IF;
8604: x_atp_period.Period_Start_Date(j) := l_infinite_time_fence_date;
8605: x_atp_period.Total_Supply_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8606: x_atp_period.Total_Demand_Quantity(j) := 0;
8607: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8608: x_atp_period.Cumulative_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
8609:
8610: END IF;
8611: END IF;
8612: -- END IF;
8727: -- FROM msc_plans
8728: -- WHERE plan_id = p_sup_atp_info_rec.plan_id;
8729:
8730: -- Instead re-assigned local values using global variable
8731: l_plan_start_date := MSC_ATP_PVT.G_PLAN_INFO_REC.plan_start_date;
8732: l_instance_id := MSC_ATP_PVT.G_PLAN_INFO_REC.sr_instance_id;
8733: l_org_id := MSC_ATP_PVT.G_PLAN_INFO_REC.organization_id;
8734: l_cutoff_date := MSC_ATP_PVT.G_PLAN_INFO_REC.plan_cutoff_date;
8735:
8728: -- WHERE plan_id = p_sup_atp_info_rec.plan_id;
8729:
8730: -- Instead re-assigned local values using global variable
8731: l_plan_start_date := MSC_ATP_PVT.G_PLAN_INFO_REC.plan_start_date;
8732: l_instance_id := MSC_ATP_PVT.G_PLAN_INFO_REC.sr_instance_id;
8733: l_org_id := MSC_ATP_PVT.G_PLAN_INFO_REC.organization_id;
8734: l_cutoff_date := MSC_ATP_PVT.G_PLAN_INFO_REC.plan_cutoff_date;
8735:
8736: IF PG_DEBUG in ('Y', 'C') THEN
8729:
8730: -- Instead re-assigned local values using global variable
8731: l_plan_start_date := MSC_ATP_PVT.G_PLAN_INFO_REC.plan_start_date;
8732: l_instance_id := MSC_ATP_PVT.G_PLAN_INFO_REC.sr_instance_id;
8733: l_org_id := MSC_ATP_PVT.G_PLAN_INFO_REC.organization_id;
8734: l_cutoff_date := MSC_ATP_PVT.G_PLAN_INFO_REC.plan_cutoff_date;
8735:
8736: IF PG_DEBUG in ('Y', 'C') THEN
8737: msc_sch_wb.atp_debug('Supplier_Alloc_Cum_Atp: ' || 'l_plan_start_date = '||l_plan_start_date);
8730: -- Instead re-assigned local values using global variable
8731: l_plan_start_date := MSC_ATP_PVT.G_PLAN_INFO_REC.plan_start_date;
8732: l_instance_id := MSC_ATP_PVT.G_PLAN_INFO_REC.sr_instance_id;
8733: l_org_id := MSC_ATP_PVT.G_PLAN_INFO_REC.organization_id;
8734: l_cutoff_date := MSC_ATP_PVT.G_PLAN_INFO_REC.plan_cutoff_date;
8735:
8736: IF PG_DEBUG in ('Y', 'C') THEN
8737: msc_sch_wb.atp_debug('Supplier_Alloc_Cum_Atp: ' || 'l_plan_start_date = '||l_plan_start_date);
8738: msc_sch_wb.atp_debug('Supplier_Alloc_Cum_Atp: ' || 'l_instance_id = '||l_instance_id);
8944: END IF;
8945:
8946: IF (l_sys_next_date is NULL) THEN
8947: msc_sch_wb.atp_debug('Sys Next Date is null');
8948: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.NO_MATCHING_CAL_DATE;
8949: RAISE FND_API.G_EXC_ERROR;
8950: END IF;
8951: --bug3333114 end
8952:
10323: x_atp_info.limit_qty.EXTEND;
10324:
10325: i := x_atp_info.atp_qty.COUNT;
10326: x_atp_info.atp_period(i) := l_last_cap_next_date;
10327: x_atp_info.atp_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
10328: ---x_atp_info.limit_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
10329:
10330:
10331: IF NVL(p_sup_atp_info_rec.insert_flag, 0) <> 0 THEN
10324:
10325: i := x_atp_info.atp_qty.COUNT;
10326: x_atp_info.atp_period(i) := l_last_cap_next_date;
10327: x_atp_info.atp_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
10328: ---x_atp_info.limit_qty(i) := MSC_ATP_PVT.INFINITE_NUMBER;
10329:
10330:
10331: IF NVL(p_sup_atp_info_rec.insert_flag, 0) <> 0 THEN
10332: -- add one more entry to indicate infinite time fence date
10351: x_atp_period.Supplier_Id(j) := p_sup_atp_info_rec.supplier_id;
10352: x_atp_period.Supplier_site_id(j) := p_sup_atp_info_rec.supplier_site_id;
10353: x_atp_period.Organization_id(j) := p_sup_atp_info_rec.organization_id;
10354: x_atp_period.Period_Start_Date(j) := l_infinite_time_fence_date;
10355: x_atp_period.Total_Supply_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10356: x_atp_period.Total_Demand_Quantity(j) := 0;
10357: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10358: x_atp_period.Cumulative_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10359:
10353: x_atp_period.Organization_id(j) := p_sup_atp_info_rec.organization_id;
10354: x_atp_period.Period_Start_Date(j) := l_infinite_time_fence_date;
10355: x_atp_period.Total_Supply_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10356: x_atp_period.Total_Demand_Quantity(j) := 0;
10357: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10358: x_atp_period.Cumulative_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10359:
10360: END IF;
10361: END IF; */
10354: x_atp_period.Period_Start_Date(j) := l_infinite_time_fence_date;
10355: x_atp_period.Total_Supply_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10356: x_atp_period.Total_Demand_Quantity(j) := 0;
10357: x_atp_period.Period_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10358: x_atp_period.Cumulative_Quantity(j) := MSC_ATP_PVT.INFINITE_NUMBER;
10359:
10360: END IF;
10361: END IF; */
10362: -- END IF;
10579: l_max_capacity NUMBER;
10580: l_res_conversion_rate number :=1;
10581: l_res_uom varchar2(3);
10582: l_res_uom_type NUMBER;
10583: l_plan_info_rec MSC_ATP_PVT.plan_info_rec; -- added for bug 2392456
10584:
10585: --diag_atp
10586: l_get_mat_in_rec MSC_ATP_REQ.get_mat_in_rec;
10587:
10604:
10605: -- Bug 2396523 : krajan : Added debug messages
10606: IF PG_DEBUG in ('Y', 'C') THEN
10607: msc_sch_wb.atp_debug('View_Allocation: ' || 'P_DEMAND_CLASS ' || p_demand_class);
10608: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_INV_CTP= ' || MSC_ATP_PVT.G_INV_CTP);
10609: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_HIERARCHY_PROFILE = '|| MSC_ATP_PVT.G_HIERARCHY_PROFILE );
10610: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_ALLOCATED_ATP = ' || MSC_ATP_PVT.G_ALLOCATED_ATP );
10611: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_ALLOCATION_METHOD = '|| MSC_ATP_PVT.G_ALLOCATION_METHOD );
10612: END IF;
10605: -- Bug 2396523 : krajan : Added debug messages
10606: IF PG_DEBUG in ('Y', 'C') THEN
10607: msc_sch_wb.atp_debug('View_Allocation: ' || 'P_DEMAND_CLASS ' || p_demand_class);
10608: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_INV_CTP= ' || MSC_ATP_PVT.G_INV_CTP);
10609: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_HIERARCHY_PROFILE = '|| MSC_ATP_PVT.G_HIERARCHY_PROFILE );
10610: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_ALLOCATED_ATP = ' || MSC_ATP_PVT.G_ALLOCATED_ATP );
10611: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_ALLOCATION_METHOD = '|| MSC_ATP_PVT.G_ALLOCATION_METHOD );
10612: END IF;
10613:
10606: IF PG_DEBUG in ('Y', 'C') THEN
10607: msc_sch_wb.atp_debug('View_Allocation: ' || 'P_DEMAND_CLASS ' || p_demand_class);
10608: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_INV_CTP= ' || MSC_ATP_PVT.G_INV_CTP);
10609: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_HIERARCHY_PROFILE = '|| MSC_ATP_PVT.G_HIERARCHY_PROFILE );
10610: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_ALLOCATED_ATP = ' || MSC_ATP_PVT.G_ALLOCATED_ATP );
10611: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_ALLOCATION_METHOD = '|| MSC_ATP_PVT.G_ALLOCATION_METHOD );
10612: END IF;
10613:
10614: -- krajan : 2400676
10607: msc_sch_wb.atp_debug('View_Allocation: ' || 'P_DEMAND_CLASS ' || p_demand_class);
10608: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_INV_CTP= ' || MSC_ATP_PVT.G_INV_CTP);
10609: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_HIERARCHY_PROFILE = '|| MSC_ATP_PVT.G_HIERARCHY_PROFILE );
10610: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_ALLOCATED_ATP = ' || MSC_ATP_PVT.G_ALLOCATED_ATP );
10611: msc_sch_wb.atp_debug('View_Allocation: ' || 'G_ALLOCATION_METHOD = '|| MSC_ATP_PVT.G_ALLOCATION_METHOD );
10612: END IF;
10613:
10614: -- krajan : 2400676
10615: IF PG_DEBUG in ('Y', 'C') THEN
10636: IF (l_request_date = NULL) THEN
10637: IF PG_DEBUG in ('Y', 'C') THEN
10638: msc_sch_wb.atp_debug('View_Allocation: ' || 'Request date is null');
10639: END IF;
10640: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.NO_MATCHING_CAL_DATE;
10641: RAISE FND_API.G_EXC_ERROR;
10642: END IF;
10643:
10644: --Check if the request is for Item or Department-Resource.
10656: -- New procedure for obtaining plan data : Supplier Capacity Lead Time (SCLT) proj.
10657: MSC_ATP_PROC.get_global_plan_info(p_instance_id, p_inventory_item_id,
10658: p_organization_id, p_demand_class);
10659:
10660: l_plan_info_rec := MSC_ATP_PVT.G_PLAN_INFO_REC;
10661: -- End New procedure for obtaining plan data : Supplier Capacity Lead Time proj.
10662:
10663: l_plan_id := l_plan_info_rec.plan_id;
10664: l_assign_set_id := l_plan_info_rec.assignment_set_id;
10673: IF (l_plan_id IS NULL) OR (l_plan_id = -1) THEN
10674: IF PG_DEBUG in ('Y', 'C') THEN
10675: msc_sch_wb.atp_debug ('View_Allocation: ' || 'Plan_ID is null or -1');
10676: END IF;
10677: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.PLAN_NOT_FOUND;
10678: RAISE FND_API.G_EXC_ERROR;
10679: END IF;
10680:
10681: IF (l_plan_id = -100) THEN
10681: IF (l_plan_id = -100) THEN
10682: IF PG_DEBUG in ('Y', 'C') THEN
10683: msc_sch_wb.atp_debug ('View_Allocation: ' || 'Plan_ID is -100 : Summary Running');
10684: END IF;
10685: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.SUMM_CONC_PROG_RUNNING;
10686: RAISE FND_API.G_EXC_ERROR;
10687: END IF;
10688:
10689: IF (l_plan_id = -200) THEN
10689: IF (l_plan_id = -200) THEN
10690: IF PG_DEBUG in ('Y', 'C') THEN
10691: msc_sch_wb.atp_debug ('View_Allocation: ' || 'Plan_ID is -200 : Summary Running');
10692: END IF;
10693: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.RUN_POST_PLAN_ALLOC;
10694: RAISE FND_API.G_EXC_ERROR;
10695: END IF;
10696:
10697:
10708: -- toatl ATP and demand class to be null
10709:
10710: -- Agilent Allocated ATP Based on Planning Details changes Begin
10711:
10712: IF ((MSC_ATP_PVT.G_HIERARCHY_PROFILE <> 1) OR
10713: ((MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10714: (MSC_ATP_PVT.G_ALLOCATION_METHOD <> 1))) THEN
10715:
10716: -- Original Code
10709:
10710: -- Agilent Allocated ATP Based on Planning Details changes Begin
10711:
10712: IF ((MSC_ATP_PVT.G_HIERARCHY_PROFILE <> 1) OR
10713: ((MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10714: (MSC_ATP_PVT.G_ALLOCATION_METHOD <> 1))) THEN
10715:
10716: -- Original Code
10717:
10710: -- Agilent Allocated ATP Based on Planning Details changes Begin
10711:
10712: IF ((MSC_ATP_PVT.G_HIERARCHY_PROFILE <> 1) OR
10713: ((MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10714: (MSC_ATP_PVT.G_ALLOCATION_METHOD <> 1))) THEN
10715:
10716: -- Original Code
10717:
10718: MSC_AATP_PVT.Item_Alloc_Cum_Atp(
10732: --diag_atp
10733: l_get_mat_in_rec,
10734: p_inventory_item_id, -- time_phased_atp passing p_inventory_item_id for compilation
10735: NULL); -- time_phased_atp passing null for compilation
10736: ELSIF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10737: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10738: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10739: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10740:
10733: l_get_mat_in_rec,
10734: p_inventory_item_id, -- time_phased_atp passing p_inventory_item_id for compilation
10735: NULL); -- time_phased_atp passing null for compilation
10736: ELSIF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10737: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10738: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10739: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10740:
10741: IF PG_DEBUG in ('Y', 'C') THEN
10734: p_inventory_item_id, -- time_phased_atp passing p_inventory_item_id for compilation
10735: NULL); -- time_phased_atp passing null for compilation
10736: ELSIF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10737: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10738: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10739: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10740:
10741: IF PG_DEBUG in ('Y', 'C') THEN
10742: msc_sch_wb.atp_debug('View_Allocation: before '||
10735: NULL); -- time_phased_atp passing null for compilation
10736: ELSIF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10737: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10738: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10739: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10740:
10741: IF PG_DEBUG in ('Y', 'C') THEN
10742: msc_sch_wb.atp_debug('View_Allocation: before '||
10743: 'calling Item_Pre_Allocated_Atp for Totals');
10775: ELSE
10776:
10777: -- Agilent Allocated ATP Based on Planning Details changes Begin
10778:
10779: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10780: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10781: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10782: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10783:
10776:
10777: -- Agilent Allocated ATP Based on Planning Details changes Begin
10778:
10779: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10780: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10781: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10782: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10783:
10784: IF PG_DEBUG in ('Y', 'C') THEN
10777: -- Agilent Allocated ATP Based on Planning Details changes Begin
10778:
10779: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10780: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10781: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10782: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10783:
10784: IF PG_DEBUG in ('Y', 'C') THEN
10785: msc_sch_wb.atp_debug('View_Allocation: before calling '||
10778:
10779: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10780: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10781: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10782: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10783:
10784: IF PG_DEBUG in ('Y', 'C') THEN
10785: msc_sch_wb.atp_debug('View_Allocation: before calling '||
10786: 'Get_Hierarchy_Demand_Class for Demand Class');
10825: NULL); -- time_phased_atp - Added for compilation
10826:
10827: -- Bug 2396523 : krajan. Commented out and added ELSIF
10828: --ELSE -- Original Code
10829: ELSIF ((MSC_ATP_PVT.G_HIERARCHY_PROFILE <> 1) OR
10830: ((MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10831: (MSC_ATP_PVT.G_ALLOCATION_METHOD <> 1))) THEN
10832:
10833: MSC_AATP_PVT.Item_Alloc_Cum_Atp(
10826:
10827: -- Bug 2396523 : krajan. Commented out and added ELSIF
10828: --ELSE -- Original Code
10829: ELSIF ((MSC_ATP_PVT.G_HIERARCHY_PROFILE <> 1) OR
10830: ((MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10831: (MSC_ATP_PVT.G_ALLOCATION_METHOD <> 1))) THEN
10832:
10833: MSC_AATP_PVT.Item_Alloc_Cum_Atp(
10834: l_plan_id,
10827: -- Bug 2396523 : krajan. Commented out and added ELSIF
10828: --ELSE -- Original Code
10829: ELSIF ((MSC_ATP_PVT.G_HIERARCHY_PROFILE <> 1) OR
10830: ((MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10831: (MSC_ATP_PVT.G_ALLOCATION_METHOD <> 1))) THEN
10832:
10833: MSC_AATP_PVT.Item_Alloc_Cum_Atp(
10834: l_plan_id,
10835: 0, --p_level(for top level item)
10892: WHEN NO_DATA_FOUND THEN
10893: IF PG_DEBUG in ('Y', 'C') THEN
10894: msc_sch_wb.atp_debug('View_Allocation: ' || 'Plan not found ');
10895: END IF;
10896: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.PLAN_NOT_FOUND;
10897: RAISE FND_API.G_EXC_ERROR;
10898: WHEN others THEN
10899: IF PG_DEBUG in ('Y', 'C') THEN
10900: msc_sch_wb.atp_debug('View_Allocation: ' || 'Error getting plan id :'||sqlcode);
10898: WHEN others THEN
10899: IF PG_DEBUG in ('Y', 'C') THEN
10900: msc_sch_wb.atp_debug('View_Allocation: ' || 'Error getting plan id :'||sqlcode);
10901: END IF;
10902: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.ATP_PROCESSING_ERROR;
10903: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10904: END;
10905:
10906: IF PG_DEBUG in ('Y', 'C') THEN
10948: END IF;
10949:
10950: -- Agilent Allocated ATP Based on Planning Details changes Begin
10951:
10952: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10953: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10954: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10955: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10956:
10949:
10950: -- Agilent Allocated ATP Based on Planning Details changes Begin
10951:
10952: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10953: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10954: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10955: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10956:
10957: l_demand_class := NULL;
10950: -- Agilent Allocated ATP Based on Planning Details changes Begin
10951:
10952: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10953: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10954: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10955: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10956:
10957: l_demand_class := NULL;
10958:
10951:
10952: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
10953: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
10954: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
10955: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1)) THEN
10956:
10957: l_demand_class := NULL;
10958:
10959: ELSE -- original_code
11029:
11030: -- krajan : 2400676
11031: IF (l_atp_period.period_quantity.COUNT = 0) THEN
11032: -- rajjain bug 2951786 05/13/2003
11033: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.NO_SUPPLY_DEMAND;
11034: -- MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.ATP_PROCESSING_ERROR;
11035: IF PG_DEBUG in ('Y', 'C') THEN
11036: msc_sch_wb.atp_debug ('View_Allocation: ' || 'l_atp_period is NULL');
11037: msc_sch_wb.atp_debug ('View_Allocation: ' || 'Error Code: ' || MSC_SCH_WB.G_ATP_ERROR_CODE);
11030: -- krajan : 2400676
11031: IF (l_atp_period.period_quantity.COUNT = 0) THEN
11032: -- rajjain bug 2951786 05/13/2003
11033: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.NO_SUPPLY_DEMAND;
11034: -- MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.ATP_PROCESSING_ERROR;
11035: IF PG_DEBUG in ('Y', 'C') THEN
11036: msc_sch_wb.atp_debug ('View_Allocation: ' || 'l_atp_period is NULL');
11037: msc_sch_wb.atp_debug ('View_Allocation: ' || 'Error Code: ' || MSC_SCH_WB.G_ATP_ERROR_CODE);
11038: END IF;
11071: IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
11072: IF PG_DEBUG in ('Y', 'C') THEN
11073: msc_sch_wb.atp_debug ('View_Allocation: ' || 'Something wrong in call to PUT_INTO_TEMP_TABLE');
11074: END IF;
11075: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.ATP_PROCESSING_ERROR;
11076: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11077: END IF;*/
11078:
11079: -- rajjain 01/29/2003 begin Bug 2737596
11107: msc_sch_wb.atp_debug ('Error in View_Allocation: Expected Error Raised');
11108: END IF;
11109: x_return_status := FND_API.G_RET_STS_ERROR;
11110: IF (MSC_SCH_WB.G_ATP_ERROR_CODE = 0) THEN
11111: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.ATP_PROCESSING_ERROR;
11112: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11113: END IF;
11114:
11115: WHEN MSC_ATP_PUB.ATP_INVALID_OBJECTS_FOUND THEN
11115: WHEN MSC_ATP_PUB.ATP_INVALID_OBJECTS_FOUND THEN
11116: IF PG_DEBUG in ('Y', 'C') THEN
11117: msc_sch_wb.atp_debug ('Error in View_Allocation: Invalid Objects Found');
11118: END IF;
11119: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.ATP_INVALID_OBJECTS;
11120: x_return_status := FND_API.G_RET_STS_ERROR;
11121:
11122: WHEN OTHERS THEN
11123: IF PG_DEBUG in ('Y', 'C') THEN
11124: msc_sch_wb.atp_debug ('Error in View_Allocation');
11125: END IF;
11126: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11127: IF (MSC_SCH_WB.G_ATP_ERROR_CODE = 0) THEN
11128: MSC_SCH_WB.G_ATP_ERROR_CODE := MSC_ATP_PVT.ATP_PROCESSING_ERROR;
11129: END IF;
11130:
11131: END View_allocation;
11132:
11183: --diag_atp
11184: L_GET_MAT_IN_REC MSC_ATP_REQ.GET_MAT_IN_REC;
11185: l_get_mat_out_rec MSC_ATP_REQ.get_mat_out_rec;
11186:
11187: l_item_info_rec MSC_ATP_PVT.item_attribute_rec;
11188:
11189: -- time_phased_atp
11190: l_time_phased_atp VARCHAR2(1) := 'N';
11191: l_mem_stealing_qty NUMBER := 0;
11216: IF (p_atp_record.inventory_item_id <> p_atp_record.request_item_id) and
11217: p_atp_record.atf_date is not null THEN
11218: l_time_phased_atp := 'Y';
11219: l_process_item_id := p_atp_record.request_item_id;
11220: l_pf_item_id := MSC_ATP_PVT.G_ITEM_INFO_REC.product_family_id;
11221: IF PG_DEBUG in ('Y', 'C') THEN
11222: msc_sch_wb.atp_debug('Stealing: ' || 'Time Phased ATP = ' || l_time_phased_atp);
11223: msc_sch_wb.atp_debug('Stealing: ' || 'ATF Date = ' || p_atp_record.atf_date);
11224: msc_sch_wb.atp_debug('Stealing: ' || 'l_pf_item_id = ' || l_pf_item_id);
11235: p_plan_id,
11236: l_process_item_id,
11237: p_atp_record.organization_id,
11238: l_item_info_rec );
11239: l_inv_item_id := MSC_ATP_PVT.G_ITEM_INFO_REC.dest_inv_item_id;
11240: /*l_inv_item_id := MSC_ATP_FUNC.get_inv_item_id (p_atp_record.instance_id,
11241: p_atp_record.request_item_id,
11242: null,
11243: p_atp_record.organization_id);
11245:
11246: /* New allocation logic for time_phased_atp changes begin */
11247: IF l_time_phased_atp = 'Y' THEN
11248: IF p_atp_record.requested_ship_date <= p_atp_record.atf_date THEN
11249: IF MSC_ATP_PVT.G_MEM_RULE_WITHIN_ATF = 'Y' THEN
11250: l_item_to_use := l_inv_item_id;
11251: ELSE
11252: l_item_to_use := l_pf_item_id;
11253: END IF;
11251: ELSE
11252: l_item_to_use := l_pf_item_id;
11253: END IF;
11254: ELSE
11255: IF MSC_ATP_PVT.G_PF_RULE_OUTSIDE_ATF = 'Y' THEN
11256: l_item_to_use := l_pf_item_id;
11257: ELSE
11258: l_item_to_use := l_inv_item_id;
11259: END IF;
11403: IF PG_DEBUG in ('Y', 'C') THEN
11404: msc_sch_wb.atp_debug('Stealing: ' || 'l_demand_class_tab_new.count = '||l_demand_class_tab_new.count);--6359986
11405: END IF;
11406: --diag_atp
11407: l_get_mat_in_rec.rounding_control_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.rounding_control_type;
11408: l_get_mat_in_rec.dest_inv_item_id := l_inv_item_id;
11409: --6359986 start
11410: --bug5974491:Others with allocation 0% will be considered valid or invalid demand class
11411:
11414:
11415: IF (REPLACE(l_demand_class_tab_new(i),FND_GLOBAL.LOCAL_CHR(13),' ') in ('-1','-1 -1 -1','-1 -1') ) then
11416:
11417:
11418: IF(MSC_ATP_PVT.G_ZERO_ALLOCATION_PERC = 'N') then
11419: IF nvl(l_allocation_percent_tab(i),1) <> 0 THEN --Bug12367917:In Demand Priority, % will be null
11420: l_demand_class_tab.EXTEND;
11421: l_demand_class_priority_tab.EXTEND;
11422: l_demand_class_tab(i) := l_demand_class_tab_new(i);
11506:
11507: IF p_atp_record.requested_date_quantity > 0 THEN
11508:
11509: -- time_phased_atp changes begin
11510: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
11511: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
11512: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
11513: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1) ) THEN
11514:
11507: IF p_atp_record.requested_date_quantity > 0 THEN
11508:
11509: -- time_phased_atp changes begin
11510: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
11511: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
11512: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
11513: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1) ) THEN
11514:
11515: IF l_time_phased_atp = 'N' THEN
11508:
11509: -- time_phased_atp changes begin
11510: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
11511: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
11512: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
11513: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1) ) THEN
11514:
11515: IF l_time_phased_atp = 'N' THEN
11516: l_stealing_quantity := LEAST(
11509: -- time_phased_atp changes begin
11510: IF ((MSC_ATP_PVT.G_INV_CTP = 4) AND
11511: (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
11512: (MSC_ATP_PVT.G_HIERARCHY_PROFILE = 1) AND
11513: (MSC_ATP_PVT.G_ALLOCATION_METHOD = 1) ) THEN
11514:
11515: IF l_time_phased_atp = 'N' THEN
11516: l_stealing_quantity := LEAST(
11517: p_atp_record.requested_date_quantity,
11625: -- for performance reason, we call these function here and
11626: -- then populate the pegging tree with the values
11627:
11628: /* Modularize Item and Org Info */
11629: l_inv_item_name := MSC_ATP_PVT.G_ITEM_INFO_REC.item_name;
11630: /*l_inv_item_name := MSC_ATP_FUNC.get_inv_item_name(p_atp_record.instance_id,
11631: p_atp_record.inventory_item_id,
11632: p_atp_record.organization_id);
11633: Modularize Item and Org Info */
11634:
11635: /* Modularize Item and Org Info */
11636: MSC_ATP_PROC.get_global_org_info (p_atp_record.instance_id,
11637: p_atp_record.organization_id );
11638: l_org_code := MSC_ATP_PVT.G_ORG_INFO_REC.org_code;
11639: IF PG_DEBUG in ('Y', 'C') THEN
11640: msc_sch_wb.atp_debug('Stealing: ' || 'Modular Use Org_code : '||l_org_code);
11641: END IF;
11642: /*l_org_code := MSC_ATP_FUNC.get_org_code(p_atp_record.instance_id,
11642: /*l_org_code := MSC_ATP_FUNC.get_org_code(p_atp_record.instance_id,
11643: p_atp_record.organization_id);
11644: Modularize Item and Org Info */
11645:
11646: l_pegging_rec.session_id:= MSC_ATP_PVT.G_SESSION_ID;
11647: l_pegging_rec.order_line_id:= MSC_ATP_PVT.G_ORDER_LINE_ID;
11648: -- l_pegging_rec.parent_pegging_id:= l_pegging_id;
11649: l_pegging_rec.parent_pegging_id:= p_parent_pegging_id;
11650: l_pegging_rec.atp_level:= p_level + 1;
11643: p_atp_record.organization_id);
11644: Modularize Item and Org Info */
11645:
11646: l_pegging_rec.session_id:= MSC_ATP_PVT.G_SESSION_ID;
11647: l_pegging_rec.order_line_id:= MSC_ATP_PVT.G_ORDER_LINE_ID;
11648: -- l_pegging_rec.parent_pegging_id:= l_pegging_id;
11649: l_pegging_rec.parent_pegging_id:= p_parent_pegging_id;
11650: l_pegging_rec.atp_level:= p_level + 1;
11651: l_pegging_rec.organization_id:= p_atp_record.organization_id;
11682: l_pegging_rec.supplier_name := NULL;
11683: l_pegging_rec.supplier_site_id := NULL;
11684: l_pegging_rec.supplier_site_name := NULL;
11685: l_pegging_rec.scenario_id:= p_scenario_id;
11686: l_pegging_rec.supply_demand_source_type:= MSC_ATP_PVT.ATP;
11687: l_pegging_rec.supply_demand_quantity:=
11688: p_atp_record.requested_date_quantity;
11689: l_pegging_rec.supply_demand_date:= p_atp_record.requested_ship_date;
11690: l_pegging_rec.supply_demand_type:= 2;
11710: IF PG_DEBUG in ('Y', 'C') THEN
11711: msc_sch_wb.atp_debug('Stealing: l_pegging_rec.allocated_quantity = ' ||l_pegging_rec.allocated_quantity);
11712: END IF;
11713: l_pegging_rec.component_identifier :=
11714: NVL(p_atp_record.component_identifier, MSC_ATP_PVT.G_COMP_LINE_ID);
11715:
11716: -- for demo:1153192
11717: --optional_fw only if profile is set to 'N' populate constraint
11718: IF ((p_search = 1)
11716: -- for demo:1153192
11717: --optional_fw only if profile is set to 'N' populate constraint
11718: IF ((p_search = 1)
11719: AND ( p_atp_record.quantity_ordered >=
11720: l_mat_atp_info_rec.requested_date_quantity)) AND MSC_ATP_PVT.G_FORWARD_ATP = 'N' THEN
11721: l_pegging_rec.constraint_flag := 'Y';
11722: ELSE
11723: l_pegging_rec.constraint_flag := 'N';
11724:
11729: l_pegging_rec.required_quantity:= p_net_demand;
11730: l_pegging_rec.required_date := p_atp_record.requested_ship_date;
11731: l_pegging_rec.infinite_time_fence := l_get_mat_out_rec.infinite_time_fence_date;
11732: l_pegging_rec.atp_rule_name := l_get_mat_out_rec.atp_rule_name;
11733: l_pegging_rec.rounding_control := MSC_ATP_PVT.G_ITEM_INFO_REC.rounding_control_type;
11734: l_pegging_rec.atp_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_flag;
11735: l_pegging_rec.atp_component_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_comp_flag;
11736: l_pegging_rec.pegging_type := 3; ---atp supply node
11737: l_pegging_rec.postprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.post_pro_lt;
11730: l_pegging_rec.required_date := p_atp_record.requested_ship_date;
11731: l_pegging_rec.infinite_time_fence := l_get_mat_out_rec.infinite_time_fence_date;
11732: l_pegging_rec.atp_rule_name := l_get_mat_out_rec.atp_rule_name;
11733: l_pegging_rec.rounding_control := MSC_ATP_PVT.G_ITEM_INFO_REC.rounding_control_type;
11734: l_pegging_rec.atp_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_flag;
11735: l_pegging_rec.atp_component_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_comp_flag;
11736: l_pegging_rec.pegging_type := 3; ---atp supply node
11737: l_pegging_rec.postprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.post_pro_lt;
11738: l_pegging_rec.preprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.pre_pro_lt;
11731: l_pegging_rec.infinite_time_fence := l_get_mat_out_rec.infinite_time_fence_date;
11732: l_pegging_rec.atp_rule_name := l_get_mat_out_rec.atp_rule_name;
11733: l_pegging_rec.rounding_control := MSC_ATP_PVT.G_ITEM_INFO_REC.rounding_control_type;
11734: l_pegging_rec.atp_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_flag;
11735: l_pegging_rec.atp_component_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_comp_flag;
11736: l_pegging_rec.pegging_type := 3; ---atp supply node
11737: l_pegging_rec.postprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.post_pro_lt;
11738: l_pegging_rec.preprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.pre_pro_lt;
11739: l_pegging_rec.fixed_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.fixed_lt;
11733: l_pegging_rec.rounding_control := MSC_ATP_PVT.G_ITEM_INFO_REC.rounding_control_type;
11734: l_pegging_rec.atp_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_flag;
11735: l_pegging_rec.atp_component_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_comp_flag;
11736: l_pegging_rec.pegging_type := 3; ---atp supply node
11737: l_pegging_rec.postprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.post_pro_lt;
11738: l_pegging_rec.preprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.pre_pro_lt;
11739: l_pegging_rec.fixed_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.fixed_lt;
11740: l_pegging_rec.variable_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.variable_lt;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11734: l_pegging_rec.atp_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_flag;
11735: l_pegging_rec.atp_component_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_comp_flag;
11736: l_pegging_rec.pegging_type := 3; ---atp supply node
11737: l_pegging_rec.postprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.post_pro_lt;
11738: l_pegging_rec.preprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.pre_pro_lt;
11739: l_pegging_rec.fixed_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.fixed_lt;
11740: l_pegging_rec.variable_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.variable_lt;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11742: l_pegging_rec.volume_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_volume;
11735: l_pegging_rec.atp_component_flag := MSC_ATP_PVT.G_ITEM_INFO_REC.atp_comp_flag;
11736: l_pegging_rec.pegging_type := 3; ---atp supply node
11737: l_pegging_rec.postprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.post_pro_lt;
11738: l_pegging_rec.preprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.pre_pro_lt;
11739: l_pegging_rec.fixed_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.fixed_lt;
11740: l_pegging_rec.variable_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.variable_lt;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11742: l_pegging_rec.volume_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_volume;
11743: l_pegging_rec.weight_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.weight_uom;
11736: l_pegging_rec.pegging_type := 3; ---atp supply node
11737: l_pegging_rec.postprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.post_pro_lt;
11738: l_pegging_rec.preprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.pre_pro_lt;
11739: l_pegging_rec.fixed_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.fixed_lt;
11740: l_pegging_rec.variable_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.variable_lt;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11742: l_pegging_rec.volume_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_volume;
11743: l_pegging_rec.weight_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.weight_uom;
11744: l_pegging_rec.volume_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.volume_uom;
11737: l_pegging_rec.postprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.post_pro_lt;
11738: l_pegging_rec.preprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.pre_pro_lt;
11739: l_pegging_rec.fixed_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.fixed_lt;
11740: l_pegging_rec.variable_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.variable_lt;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11742: l_pegging_rec.volume_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_volume;
11743: l_pegging_rec.weight_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.weight_uom;
11744: l_pegging_rec.volume_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.volume_uom;
11745: l_pegging_rec.allocation_rule := MSC_ATP_PVT.G_ALLOCATION_RULE_NAME;
11738: l_pegging_rec.preprocessing_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.pre_pro_lt;
11739: l_pegging_rec.fixed_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.fixed_lt;
11740: l_pegging_rec.variable_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.variable_lt;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11742: l_pegging_rec.volume_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_volume;
11743: l_pegging_rec.weight_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.weight_uom;
11744: l_pegging_rec.volume_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.volume_uom;
11745: l_pegging_rec.allocation_rule := MSC_ATP_PVT.G_ALLOCATION_RULE_NAME;
11746:
11739: l_pegging_rec.fixed_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.fixed_lt;
11740: l_pegging_rec.variable_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.variable_lt;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11742: l_pegging_rec.volume_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_volume;
11743: l_pegging_rec.weight_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.weight_uom;
11744: l_pegging_rec.volume_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.volume_uom;
11745: l_pegging_rec.allocation_rule := MSC_ATP_PVT.G_ALLOCATION_RULE_NAME;
11746:
11747: l_pegging_rec.summary_flag := MSC_ATP_PVT.G_SUMMARY_FLAG; -- for summary enhancement
11740: l_pegging_rec.variable_lead_time := MSC_ATP_PVT.G_ITEM_INFO_REC.variable_lt;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11742: l_pegging_rec.volume_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_volume;
11743: l_pegging_rec.weight_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.weight_uom;
11744: l_pegging_rec.volume_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.volume_uom;
11745: l_pegging_rec.allocation_rule := MSC_ATP_PVT.G_ALLOCATION_RULE_NAME;
11746:
11747: l_pegging_rec.summary_flag := MSC_ATP_PVT.G_SUMMARY_FLAG; -- for summary enhancement
11748: l_pegging_rec.demand_class := l_demand_class;
11741: l_pegging_rec.weight_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_weight;
11742: l_pegging_rec.volume_capacity := MSC_ATP_PVT.G_ITEM_INFO_REC.unit_volume;
11743: l_pegging_rec.weight_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.weight_uom;
11744: l_pegging_rec.volume_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.volume_uom;
11745: l_pegging_rec.allocation_rule := MSC_ATP_PVT.G_ALLOCATION_RULE_NAME;
11746:
11747: l_pegging_rec.summary_flag := MSC_ATP_PVT.G_SUMMARY_FLAG; -- for summary enhancement
11748: l_pegging_rec.demand_class := l_demand_class;
11749: -- Bug 3826234 start
11743: l_pegging_rec.weight_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.weight_uom;
11744: l_pegging_rec.volume_uom := MSC_ATP_PVT.G_ITEM_INFO_REC.volume_uom;
11745: l_pegging_rec.allocation_rule := MSC_ATP_PVT.G_ALLOCATION_RULE_NAME;
11746:
11747: l_pegging_rec.summary_flag := MSC_ATP_PVT.G_SUMMARY_FLAG; -- for summary enhancement
11748: l_pegging_rec.demand_class := l_demand_class;
11749: -- Bug 3826234 start
11750: IF PG_DEBUG in ('Y', 'C') THEN
11751: msc_sch_wb.atp_debug('ATP_Check: ' || '----------- Calendars passed to Pegging -----------------');
11754: msc_sch_wb.atp_debug('ATP_Check: ' || 'intransit_cal_code = ' ||p_atp_record.intransit_cal_code);
11755: msc_sch_wb.atp_debug('ATP_Check: ' || 'manufacturing_cal_code = ' ||p_atp_record.manufacturing_cal_code);
11756: msc_sch_wb.atp_debug('ATP_Check: ' || 'to_organization_id = ' ||p_atp_record.to_organization_id);
11757: END IF;
11758: IF p_parent_pegging_id = MSC_ATP_PVT.G_DEMAND_PEGGING_ID THEN
11759: l_pegging_rec.shipping_cal_code := p_atp_record.shipping_cal_code;
11760: l_pegging_rec.receiving_cal_code := p_atp_record.receiving_cal_code;
11761: l_pegging_rec.intransit_cal_code := p_atp_record.intransit_cal_code;
11762: l_pegging_rec.manufacturing_cal_code := p_atp_record.manufacturing_cal_code;
11783: END IF;
11784: -- Bug 3826234 end
11785: MSC_ATP_DB_UTILS.Add_Pegging(l_pegging_rec, l_atp_pegging_id);
11786: --optional_fw G_OPTIONAL_FW will be not null only when profile is Y
11787: IF MSC_ATP_PVT.G_OPTIONAL_FW is not null AND MSC_ATP_PVT.G_FORWARD_ATP = 'Y' THEN
11788: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.EXTEND;
11789: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT) := l_atp_pegging_id;
11790: IF PG_DEBUG in ('Y', 'C') THEN
11791: msc_sch_wb.atp_debug('ATP_Check: ' || 'MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID := '
11784: -- Bug 3826234 end
11785: MSC_ATP_DB_UTILS.Add_Pegging(l_pegging_rec, l_atp_pegging_id);
11786: --optional_fw G_OPTIONAL_FW will be not null only when profile is Y
11787: IF MSC_ATP_PVT.G_OPTIONAL_FW is not null AND MSC_ATP_PVT.G_FORWARD_ATP = 'Y' THEN
11788: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.EXTEND;
11789: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT) := l_atp_pegging_id;
11790: IF PG_DEBUG in ('Y', 'C') THEN
11791: msc_sch_wb.atp_debug('ATP_Check: ' || 'MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID := '
11792: || MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT));
11785: MSC_ATP_DB_UTILS.Add_Pegging(l_pegging_rec, l_atp_pegging_id);
11786: --optional_fw G_OPTIONAL_FW will be not null only when profile is Y
11787: IF MSC_ATP_PVT.G_OPTIONAL_FW is not null AND MSC_ATP_PVT.G_FORWARD_ATP = 'Y' THEN
11788: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.EXTEND;
11789: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT) := l_atp_pegging_id;
11790: IF PG_DEBUG in ('Y', 'C') THEN
11791: msc_sch_wb.atp_debug('ATP_Check: ' || 'MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID := '
11792: || MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT));
11793: END IF;
11787: IF MSC_ATP_PVT.G_OPTIONAL_FW is not null AND MSC_ATP_PVT.G_FORWARD_ATP = 'Y' THEN
11788: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.EXTEND;
11789: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT) := l_atp_pegging_id;
11790: IF PG_DEBUG in ('Y', 'C') THEN
11791: msc_sch_wb.atp_debug('ATP_Check: ' || 'MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID := '
11792: || MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT));
11793: END IF;
11794: END IF;
11795: -- Add pegging_id to the l_atp_period and l_atp_supply_demand
11788: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.EXTEND;
11789: MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT) := l_atp_pegging_id;
11790: IF PG_DEBUG in ('Y', 'C') THEN
11791: msc_sch_wb.atp_debug('ATP_Check: ' || 'MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID := '
11792: || MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID(MSC_ATP_PVT.G_FW_STEAL_PEGGING_ID.COUNT));
11793: END IF;
11794: END IF;
11795: -- Add pegging_id to the l_atp_period and l_atp_supply_demand
11796:
11795: -- Add pegging_id to the l_atp_period and l_atp_supply_demand
11796:
11797: FOR i in 1..l_atp_period.Level.COUNT LOOP
11798: l_atp_period.Pegging_Id(i) := l_atp_pegging_id;
11799: l_atp_period.End_Pegging_Id(i) := MSC_ATP_PVT.G_DEMAND_PEGGING_ID;
11800: END LOOP;
11801:
11802: -- dsting: supply/demand details pl/sql table no longer used
11803: /* FOR i in 1..l_atp_supply_demand.Level.COUNT LOOP
11801:
11802: -- dsting: supply/demand details pl/sql table no longer used
11803: /* FOR i in 1..l_atp_supply_demand.Level.COUNT LOOP
11804: l_atp_supply_demand.Pegging_Id(i) := l_atp_pegging_id;
11805: l_atp_supply_demand.End_Pegging_Id(i) := MSC_ATP_PVT.G_DEMAND_PEGGING_ID;
11806: END LOOP;
11807: */
11808:
11809: IF p_atp_record.insert_flag <> 0 THEN
11807: */
11808:
11809: IF p_atp_record.insert_flag <> 0 THEN
11810: MSC_ATP_DB_UTILS.move_SD_temp_into_mrp_details(l_atp_pegging_id,
11811: MSC_ATP_PVT.G_DEMAND_PEGGING_ID);
11812: END IF;
11813:
11814: MSC_ATP_PROC.Details_Output(l_atp_period,
11815: l_atp_supply_demand,