DBA Data[Home] [Help]

PACKAGE BODY: APPS.JL_AR_RECUR_PKG

Source


1 PACKAGE BODY JL_AR_RECUR_PKG  AS
2 /* $Header: jlzzirib.pls 115.0 99/07/16 03:15:25 porting ship $ */
3   pg_cursor1  integer := '';
4   pg_user_id          number;
5   pg_conc_login_id    number;
6   pg_login_id         number;
7   pg_prog_appl_id     number;
8   pg_conc_program_id  number;
9 
10 PROCEDURE insert_interim(
11             p_customer_trx_id     IN  ra_recur_interim.customer_trx_id%type,
12             p_trx_date            IN  DATE,
13             p_term_due_date       IN  DATE,
14             p_gl_date             IN  DATE,
15             p_term_discount_date  IN  DATE,
16             p_request_id          IN  ra_recur_interim.request_id%type,
17             p_doc_sequence_value  IN  ra_recur_interim.doc_sequence_value%type,
18             p_new_customer_trx_id IN  ra_recur_interim.new_customer_trx_id%type,
19             p_batch_source_id     IN  ra_batch_sources.batch_source_id%type,
20             p_trx_number_out      OUT ra_recur_interim.trx_number%type) IS
21 
22     l_country_code     VARCHAR2(2);
23     l_trx_num_cursor   INTEGER;
24     l_dummy            INTEGER;
25     l_org_id           INTEGER;
26     l_org_str          VARCHAR2(30);
27     l_trx_number       ra_recur_interim.trx_number%TYPE;
28     l_trx_date         DATE;
29 
30 BEGIN
31     arp_util.debug('arp_process_recur.insert_p()+');
32     --
33     -- Get Country Code
34     --
35     l_country_code := fnd_profile.value('JGZZ_COUNTRY_CODE');
36 
37     --
38     -- Initialize
39     --
40     l_trx_date := p_trx_date;
41     p_trx_number_out := '';
42 
43     --
44     -- Get a New Transaction Number
45     --
46           SELECT MIN(org_id)
47           INTO   l_org_id
48           FROM   ar_system_parameters;
49 
50           IF (l_org_id IS NOT NULL) THEN
51               l_org_str := '_'||to_char(l_org_id);
52           ELSE
53               l_org_str := NULL;
54           END IF;
55 
56           l_trx_num_cursor := dbms_sql.open_cursor;
57 
58           dbms_sql.parse(l_trx_num_cursor,
59                           'select ra_trx_number_' ||
60                                REPLACE(p_batch_source_id, '-', 'N') ||
61                           l_org_str||
62                           '_s.nextval trx_number ' ||
63                           'from ra_batch_sources ' ||
64                           'where batch_source_id = ' ||
65                                  p_batch_source_id ||
66                          ' and auto_trx_numbering_flag = ''Y''',
67                          dbms_sql.v7);
68 
69           dbms_sql.define_column(l_trx_num_cursor, 1, l_trx_number, 20);
70 
71           l_dummy := dbms_sql.execute_and_fetch(l_trx_num_cursor, TRUE);
72 
73           dbms_sql.column_value(l_trx_num_cursor, 1, l_trx_number);
74 
75           dbms_sql.close_cursor(l_trx_num_cursor);
76 
77      --
78      -- Overwrite transaction number and date for Argentina
79      --
80      IF l_country_code = 'AR' THEN
81        jl_ar_ar_prefix_trx_num.update_trx_number_date(
82                       p_batch_source_id,
83                       l_trx_number,
84                       l_trx_date);
85      END IF;
86 
87      --
88      -- Insert trx information into ra_recur_interim
89      --
90      INSERT INTO ra_recur_interim
91                (
92                  customer_trx_id,
93                  trx_number,
94                  created_by,
95                  creation_date,
96                  last_updated_by,
97                  last_update_date,
98                  last_update_login,
99                  trx_date,
100                  term_due_date,
101                  gl_date,
102                  term_discount_date,
103                  request_id,
104                  doc_sequence_value,
105                  new_customer_trx_id)
106   VALUES
107                (
108                  p_customer_trx_id,
109                  l_trx_number,
110                  pg_user_id,
111                  sysdate,
112                  pg_user_id,
113                  sysdate,
114                  nvl(pg_conc_login_id,
115                      pg_login_id),
116                  l_trx_date,
117                  p_term_due_date,
118                  p_gl_date,
119                  p_term_discount_date ,
120                  p_request_id,
121                  p_doc_sequence_value,
122                  p_new_customer_trx_id);
123 
124    p_trx_number_out := l_trx_number;
125 
126    arp_util.debug('arp_process_recur.insert_p()-');
127 
128 EXCEPTION
129     WHEN OTHERS THEN
130         arp_util.debug('EXCEPTION:  arp_process_recur.insert_p()');
131         RAISE;
132 
133 END;
134 BEGIN
135 
136   pg_user_id          := fnd_global.user_id;
137   pg_conc_login_id    := fnd_global.conc_login_id;
138   pg_login_id         := fnd_global.login_id;
139   pg_prog_appl_id     := fnd_global.prog_appl_id;
140   pg_conc_program_id  := fnd_global.conc_program_id;
141 
142 
143 END JL_AR_RECUR_PKG  ;