1: PACKAGE BODY OEXPURGE AS
2: /* $Header: OEXPURGB.pls 115.6 99/07/16 08:15:25 porting ship $ */
3:
4: PROCEDURE select_purge_orders
5: (dummy_1 VARCHAR2,
59: return_status := 0;
60:
61: IF return_status = 0 THEN
62: v_error_message := 'Open demand exists for order number: ';
63: return_status := OEXPURGE.so_check_open_demand_orders
64: ( TO_CHAR(a_number), a_name );
65: END IF;
66:
67: IF return_status = 0 THEN
65: END IF;
66:
67: IF return_status = 0 THEN
68: v_error_message:='Open orders exist in WIP for order number: ';
69: return_status := OEXPURGE.so_check_open_orders
70: ( TO_CHAR(a_number), a_name );
71: END IF;
72:
73: IF return_status = 0 THEN
71: END IF;
72:
73: IF return_status = 0 THEN
74: v_error_message := 'Open invoices exist for order number: ';
75: return_status := OEXPURGE.so_check_open_invoiced_orders
76: ( TO_CHAR(a_number), a_name );
77: END IF;
78:
79: IF return_status = 0 THEN
77: END IF;
78:
79: IF return_status = 0 THEN
80: v_error_message := 'Open returns exist for order number: ';
81: return_status := OEXPURGE.so_check_open_returns(a_number,
82: a_name);
83: END IF;
84:
85: IF return_status = 0 THEN
330: * Failure: Any negative value. Processing is rolled back. *
331: * Error has already been recorded in so_exceptions *
332: *********************************************************************/
333:
334: return_status := OEXPURGE.so_purge_headers( v_header_id,
335: p_request_id);
336:
337: IF return_status > -1 THEN
338: return_status := OEXPURGE.so_purge_line_approvals( v_header_id,
334: return_status := OEXPURGE.so_purge_headers( v_header_id,
335: p_request_id);
336:
337: IF return_status > -1 THEN
338: return_status := OEXPURGE.so_purge_line_approvals( v_header_id,
339: p_request_id );
340: END IF;
341:
342: IF return_status > -1 THEN
339: p_request_id );
340: END IF;
341:
342: IF return_status > -1 THEN
343: return_status := OEXPURGE.so_purge_backorder_cancelled(
344: v_header_id,
345: p_request_id );
346: END IF;
347:
345: p_request_id );
346: END IF;
347:
348: IF return_status > -1 THEN
349: return_status := OEXPURGE.so_purge_lines( v_header_id,
350: p_request_id );
351: END IF;
352:
353: IF return_status > -1 THEN
350: p_request_id );
351: END IF;
352:
353: IF return_status > -1 THEN
354: return_status := OEXPURGE.so_purge_note_references(v_header_id,
355: p_request_id );
356: END IF;
357:
358: IF return_status > -1 THEN
355: p_request_id );
356: END IF;
357:
358: IF return_status > -1 THEN
359: return_status := OEXPURGE.so_purge_order_approvals(v_header_id,
360: p_request_id );
361: END IF;
362:
363: IF return_status > -1 THEN
360: p_request_id );
361: END IF;
362:
363: IF return_status > -1 THEN
364: return_status := OEXPURGE.so_purge_order_cancellations(
365: v_header_id,
366: p_request_id);
367: END IF;
368:
366: p_request_id);
367: END IF;
368:
369: IF return_status > -1 THEN
370: return_status := OEXPURGE.so_purge_order_holds( v_header_id,
371: p_request_id );
372: END IF;
373:
374: IF return_status > -1 THEN
371: p_request_id );
372: END IF;
373:
374: IF return_status > -1 THEN
375: return_status := OEXPURGE.so_purge_picking_headers(v_header_id,
376: p_request_id );
377: END IF;
378:
379: IF return_status > -1 THEN
376: p_request_id );
377: END IF;
378:
379: IF return_status > -1 THEN
380: return_status := OEXPURGE.so_purge_picking_rules( v_header_id,
381: p_request_id );
382: END IF;
383:
384: IF return_status > -1 THEN
381: p_request_id );
382: END IF;
383:
384: IF return_status > -1 THEN
385: return_status:=OEXPURGE.so_purge_price_adjustments(v_header_id,
386: p_request_id );
387: END IF;
388:
389: IF return_status > -1 THEN
386: p_request_id );
387: END IF;
388:
389: IF return_status > -1 THEN
390: return_status := OEXPURGE.so_purge_sales_credits( v_header_id,
391: p_request_id );
392: END IF;
393:
394: -- dbms_output.put_line('before delete');
1531: SELECT concurrent_program_id
1532: INTO v_program_id
1533: FROM fnd_concurrent_programs
1534: WHERE application_id=v_application_id
1535: AND concurrent_program_name='OEXPURGE';
1536:
1537: INSERT INTO so_exceptions -- record an error
1538: VALUES ( v_exception_id, -- sequence number
1539: SYSDATE, -- creation date
1555: END IF;
1556:
1557: END so_record_errors;
1558:
1559: END OEXPURGE; /* end of OEXPURGE package */