DBA Data[Home] [Help]

PACKAGE BODY: APPS.ARP_CMERGE

Source


1 package body ARP_CMERGE as
2 /* $Header: ARPLARMB.pls 115.5 2003/07/02 11:43:30 hyoshiha ship $ */
3 
4 procedure MERGE (req_id NUMBER, set_num NUMBER, process_mode VARCHAR2) is
5 
6 -- bug2778646 created
7 procedure MERGE_VALIDATION (req_id NUMBER, set_num NUMBER) is
8 
9    l_dummy   NUMBER;
10    draft_cbi EXCEPTION;
11 
12    CURSOR c IS
13      SELECT 1
14      FROM   ra_customer_merges m
15      WHERE  m.request_id = req_id
16      AND    m.set_number = set_num
17      AND EXISTS
18      (
19       SELECT 1
20       FROM  ar_cons_inv ci
21       WHERE ci.site_use_id IN (m.customer_site_id, m.duplicate_site_id)
22       AND   ci.status = 'DRAFT'
23      );
24 
25  BEGIN
26 
27    -- check if there is DRAFT CBI for merged customer site
28    OPEN c;
29    FETCH c INTO l_dummy;
30    IF (c%FOUND) THEN
31      RAISE draft_cbi;
32    END IF;
33    CLOSE c;
34 
35 EXCEPTION
36    WHEN DRAFT_CBI THEN
37       arp_message.set_name('AR','AR_CUST_SITE_DRAFT_CBI') ;
38       arp_message.set_error('ARP_CMERGE_ARCON.AR_CIN') ;
39       raise;
40 
41 end MERGE_VALIDATION;
42 
43 begin
44 
45   arp_message.set_line( 'ARP_CMERGE.MERGE()+' );
46 
47   merge_validation(req_id , set_num );
48 
49   arp_cmerge_aratc.merge(req_id, set_num, process_mode);
50   arp_cmerge_arcol.merge(req_id, set_num, process_mode);
51   arp_cmerge_ardun.merge(req_id, set_num, process_mode);
52   arp_cmerge_artax.merge(req_id, set_num, process_mode);
53   arp_cmerge_arcon.merge(req_id, set_num, process_mode);
54   arp_cmerge_artrx.merge(req_id, set_num, process_mode);
55 
56   arp_message.set_line( 'ARP_CMERGE.MERGE()-' );
57 
58 EXCEPTION
59   when others then
60     raise;
61 end MERGE;
62 
63 end ARP_CMERGE;