DBA Data[Home] [Help]

PACKAGE BODY: APPS.AP_APXVDDUP_XMLP_PKG

Source


1 PACKAGE BODY AP_APXVDDUP_XMLP_PKG AS
2 /* $Header: APXVDDUPB.pls 120.0 2007/12/27 08:44:27 vjaganat noship $ */
3 FUNCTION  get_base_curr_data  RETURN BOOLEAN IS
4   base_curr ap_system_parameters.base_currency_code%TYPE;   prec      fnd_currencies_vl.precision%TYPE;       min_au    fnd_currencies_vl.minimum_accountable_unit%TYPE;  descr     fnd_currencies_vl.description%TYPE;
5 BEGIN
6   base_curr := '';
7   prec      := 0;
8   min_au    := 0;
9   descr     := '';
10   SELECT  p.base_currency_code,
11           c.precision,
12           c.minimum_accountable_unit,
13           c.description
14   INTO    base_curr,
15           prec,
16           min_au,
17           descr
18   FROM    ap_system_parameters p,
19           fnd_currencies_vl c
20   WHERE   p.base_currency_code  = c.currency_code;
21   c_base_currency_code  := base_curr;
22   c_base_precision      := prec;
23   c_base_min_acct_unit  := min_au;
24   c_base_description    := descr;
25   RETURN (TRUE);
26 RETURN NULL; EXCEPTION
27   WHEN   OTHERS  THEN
28     RETURN (FALSE);
29 END;
30 FUNCTION  custom_init         RETURN BOOLEAN IS
31 BEGIN
32 RETURN (TRUE);
33 RETURN NULL; EXCEPTION
34   WHEN   OTHERS  THEN
35     RETURN (FALSE);
36 END;
37 FUNCTION  get_cover_page_values   RETURN BOOLEAN IS
38 BEGIN
39 RETURN(TRUE);
40 RETURN NULL; EXCEPTION
41 WHEN OTHERS THEN
42   RETURN(FALSE);
43 END;
44 FUNCTION  get_nls_strings     RETURN BOOLEAN IS
45    nls_all       ap_lookup_codes.displayed_field%TYPE;    nls_yes       fnd_lookups.meaning%TYPE;     nls_no        fnd_lookups.meaning%TYPE;
46 BEGIN
47    nls_all     := '';
48    nls_yes     := '';
49    nls_no      := '';
50    SELECT  ly.meaning,
51            ln.meaning,
52            la.displayed_field
53    INTO    nls_yes,  nls_no,  nls_all
54    FROM    fnd_lookups ly,  fnd_lookups ln,  ap_lookup_codes la
55    WHERE   ly.lookup_type = 'YES_NO'
56      AND   ly.lookup_code = 'Y'
57      AND   ln.lookup_type = 'YES_NO'
58      AND   ln.lookup_code = 'N'
59      AND   la.lookup_type = 'NLS REPORT PARAMETER'
60      AND   la.lookup_code = 'ALL';
61    c_nls_yes := nls_yes;
62    c_nls_no  := nls_no;
63    c_nls_all := nls_all;
64    /*SRW.USER_EXIT('FND MESSAGE_NAME APPL="SQLAP" NAME="AP_APPRVL_NO_DATA"');*/null;
65    /*SRW.USER_EXIT('FND MESSAGE_GET OUTPUT_FIELD=":c_nls_no_data_exists"');*/null;
66    c_nls_no_data_exists := '*** '||c_nls_no_data_exists||' ***';
67    /*SRW.USER_EXIT('FND MESSAGE_NAME APPL="SQLAP" NAME="AP_ALL_END_OF_REPORT"');*/null;
68    /*SRW.USER_EXIT('FND MESSAGE_GET OUTPUT_FIELD=":c_nls_end_of_report"');*/null;
69    c_nls_end_of_report := '*** '||c_nls_end_of_report||' ***';
70 RETURN (TRUE);
71 RETURN NULL; EXCEPTION
72    WHEN OTHERS THEN
73       RETURN (FALSE);
74 END;
75 function BeforeReport return boolean is
76 begin
77 DECLARE
78   init_failure    EXCEPTION;
79 BEGIN
80   C_first_rec_flg := 1;
81   /*SRW.USER_EXIT('FND SRWINIT');*/null;
82   IF (p_debug_switch = 'Y') THEN
83      /*SRW.MESSAGE('1','After SRWINIT');*/null;
84   END IF;
85   DELETE FROM ap_vendor_audit_tmp;
86   COMMIT;
87   IF (get_company_name() <> TRUE) THEN       RAISE init_failure;
88   END IF;
89   IF (p_debug_switch = 'Y') THEN
90      /*SRW.MESSAGE('2','After Get_Company_Name');*/null;
91   END IF;
92   IF (get_nls_strings() <> TRUE) THEN      RAISE init_failure;
93   END IF;
94   IF (p_debug_switch = 'Y') THEN
95      /*SRW.MESSAGE('3','After Get_NLS_Strings');*/null;
96   END IF;
97   IF (get_base_curr_data() <> TRUE) THEN        RAISE init_failure;
98   END IF;
99   IF (p_debug_switch = 'Y') THEN
100      /*SRW.MESSAGE('4','After Get_Base_Curr_Data');*/null;
101   END IF;
102   IF (get_main_vndr_names() <> TRUE) THEN
103      RAISE init_failure;
104   END IF;
105   IF (p_debug_switch = 'Y') THEN
106      /*SRW.MESSAGE('6','After Get_main_vndr_names');*/null;
107   END IF;
108   IF (p_debug_switch = 'Y') THEN
109      /*SRW.BREAK;*/null;
110   END IF;
111   RETURN (TRUE);
112 EXCEPTION
113   WHEN   OTHERS  THEN
114     RAISE_application_error(-20101,null);/*SRW.PROGRAM_ABORT;*/null;
115 END;  return (TRUE);
116 end;
117 function AfterReport return boolean is
118 begin
119 BEGIN
120    /*SRW.USER_EXIT('FND SRWEXIT');*/null;
121    IF (P_DEBUG_SWITCH = 'Y') THEN
122       /*SRW.MESSAGE('20','After SRWEXIT');*/null;
123    END IF;
124 EXCEPTION
125 WHEN OTHERS THEN
126    RAISE_application_error(-20101,null);/*SRW.PROGRAM_ABORT;*/null;
127 END;  return (TRUE);
128 end;
129 FUNCTION  get_company_name    RETURN BOOLEAN IS
130   l_chart_of_accounts_id  gl_sets_of_books.chart_of_accounts_id%TYPE;
131   l_name                  gl_sets_of_books.name%TYPE;
132   l_sob_id                NUMBER;
133   l_report_start_date     DATE;
134 BEGIN
135   l_report_start_date := sysdate;   l_sob_id := p_set_of_books_id;
136   SELECT  name,
137           chart_of_accounts_id
138   INTO    l_name,
139           l_chart_of_accounts_id
140   FROM    gl_sets_of_books
141   WHERE   set_of_books_id = l_sob_id;
142   c_company_name_header     := l_name;
143   c_chart_of_accounts_id    := l_chart_of_accounts_id;
144   c_report_start_date       := l_report_start_date;
145   RETURN (TRUE);
146 RETURN NULL; EXCEPTION
147   WHEN   OTHERS  THEN
148     RETURN (FALSE);
149 END;
150 FUNCTION get_flexdata RETURN BOOLEAN IS
151 BEGIN
152  null;
153    RETURN (TRUE);
154 RETURN NULL; EXCEPTION
155    WHEN OTHERS THEN
156         RETURN(FALSE);
157 END;
158 FUNCTION get_main_vndr_names RETURN BOOLEAN IS
159 BEGIN
160     DECLARE
161         CURSOR c1 IS SELECT   substr(segment1, 1, 15) vendor_number,
162                               vendor_id,
163                               substr(vendor_name,1,40) vendor_name,
164                               upper(translate(vendor_name,
165                                   'a!@#\/~-$%^ ,''*.','a')) new_name,
166                               substr(upper(translate(vendor_name,
167                                   'a!@#\/~-$%^ ,''*.','a')),1,p_tst_len)
168                                   substr_new_name
169                      FROM     po_vendors
170                      WHERE    sysdate between nvl(start_date_active,sysdate-1)
171                                       and     nvl(end_date_active,sysdate+1)
172                      AND      enabled_flag='Y'
173                      ORDER BY upper(translate(vendor_name,
174                                   'a!@#\/~-$%^ ,''*.','a'));
175         l_VENDOR_NUMBER      po_vendors.segment1%TYPE;
176         l_VENDOR_ID          po_vendors.vendor_id%TYPE;
177         l_VENDOR_NAME        po_vendors.vendor_name%TYPE;
178         l_NEW_NAME           po_vendors.vendor_name%TYPE;
179         l_SUBSTR_NEW_NAME    po_vendors.vendor_name%TYPE;
180     BEGIN
181         FOR one_active_vendor IN c1 LOOP
182             l_VENDOR_NUMBER   := one_active_vendor.vendor_number;
183             l_VENDOR_ID       := one_active_vendor.vendor_id;
184             l_VENDOR_NAME     := one_active_vendor.vendor_name;
185             l_NEW_NAME        := one_active_vendor.new_name;
186             l_SUBSTR_NEW_NAME := one_active_vendor.substr_new_name;
187             SAVEPOINT start_search;
188             IF  C_first_rec_flg = 1 THEN
189                 C_OLD_NAME := l_SUBSTR_NEW_NAME;
190                 C_first_rec_flg := 0;
191                 C_first_match_flag := 'Y';
192                 c_first_match_vendor_name     := l_vendor_name;
193                 c_first_match_vendor_number   := l_vendor_number;
194                 c_first_match_vendor_id       := l_vendor_id;
195             ELSE
196                 IF C_OLD_NAME <> l_SUBSTR_NEW_NAME THEN
197                     C_OLD_NAME := l_SUBSTR_NEW_NAME;
198                     C_first_match_flag := 'Y';
199                     c_first_match_vendor_name    := l_vendor_name;
200                     c_first_match_vendor_number  := l_vendor_number;
201                     c_first_match_vendor_id      := l_vendor_id;
202                 ELSE
203                     IF C_OLD_NAME = l_SUBSTR_NEW_NAME AND
204                        C_first_match_flag = 'Y' THEN
205                         INSERT INTO ap_vendor_audit_tmp
206                                     (vendor_id,
207                                      vendor_number,
208                                      vendor_name)
209                         VALUES      (c_first_match_vendor_id,
210                                      c_first_match_vendor_number,
211                                      c_first_match_vendor_name);
212                         COMMIT;
213                         INSERT INTO ap_vendor_audit_tmp
214                                     (vendor_id,
215                                      vendor_number,
216                                      vendor_name)
217                         VALUES      (l_vendor_id,
218                                      l_vendor_number,
219                                      l_vendor_name);
220                         COMMIT;
221                         C_first_match_flag := 'N';
222                     ELSE
223                         IF C_OLD_NAME = l_SUBSTR_NEW_NAME THEN
224                             INSERT INTO ap_vendor_audit_tmp
225                                         (vendor_id,
226                                          vendor_number,
227                                          vendor_name)
228                             VALUES      (l_vendor_id,
229                                          l_vendor_number,
230                                          l_vendor_name);
231                             COMMIT;
232                         END IF;
233                     END IF;
234                 END IF;
235             END IF;
236         END LOOP;
237         RETURN (TRUE);
238     EXCEPTION
239         WHEN OTHERS THEN
240             ROLLBACK TO start_search;
241             RETURN (FALSE);
242     END;
243 RETURN NULL; END;
244 --Functions to refer Oracle report placeholders--
245  Function C_BASE_CURRENCY_CODE_p return varchar2 is
246 	Begin
247 	 return C_BASE_CURRENCY_CODE;
248 	 END;
249  Function C_BASE_PRECISION_p return number is
250 	Begin
251 	 return C_BASE_PRECISION;
252 	 END;
253  Function C_BASE_MIN_ACCT_UNIT_p return number is
254 	Begin
255 	 return C_BASE_MIN_ACCT_UNIT;
256 	 END;
257  Function C_BASE_DESCRIPTION_p return varchar2 is
258 	Begin
259 	 return C_BASE_DESCRIPTION;
260 	 END;
261  Function C_COMPANY_NAME_HEADER_p return varchar2 is
262 	Begin
263 	 return C_COMPANY_NAME_HEADER;
264 	 END;
265  Function C_REPORT_START_DATE_p return date is
266 	Begin
267 	 return C_REPORT_START_DATE;
268 	 END;
269  Function C_NLS_YES_p return varchar2 is
270 	Begin
271 	 return C_NLS_YES;
272 	 END;
273  Function C_NLS_NO_p return varchar2 is
274 	Begin
275 	 return C_NLS_NO;
276 	 END;
277  Function C_NLS_ALL_p return varchar2 is
278 	Begin
279 	 return C_NLS_ALL;
280 	 END;
281  Function C_NLS_NO_DATA_EXISTS_p return varchar2 is
282 	Begin
283 	 return C_NLS_NO_DATA_EXISTS;
284 	 END;
285  Function C_CHART_OF_ACCOUNTS_ID_p return number is
286 	Begin
287 	 return C_CHART_OF_ACCOUNTS_ID;
288 	 END;
289  Function C_first_rec_flg_p return number is
290 	Begin
291 	 return C_first_rec_flg;
292 	 END;
293  Function C_FIRST_MATCH_FLAG_p return varchar2 is
294 	Begin
295 	 return C_FIRST_MATCH_FLAG;
296 	 END;
297  Function C_FIRST_MATCH_VENDOR_NAME_p return varchar2 is
298 	Begin
299 	 return C_FIRST_MATCH_VENDOR_NAME;
300 	 END;
301  Function C_FIRST_MATCH_VENDOR_ID_p return number is
302 	Begin
303 	 return C_FIRST_MATCH_VENDOR_ID;
304 	 END;
305  Function C_FIRST_MATCH_VENDOR_NUMBER_p return varchar2 is
306 	Begin
307 	 return C_FIRST_MATCH_VENDOR_NUMBER;
308 	 END;
309  Function C_OLD_NAME_p return varchar2 is
310 	Begin
311 	 return C_OLD_NAME;
312 	 END;
313  Function C_VENDOR_ID_p return number is
314 	Begin
315 	 return C_VENDOR_ID;
316 	 END;
317  Function C_VENDOR_NUMBER_p return varchar2 is
318 	Begin
319 	 return C_VENDOR_NUMBER;
320 	 END;
321  Function C_VENDOR_NAME_p return varchar2 is
322 	Begin
323 	 return C_VENDOR_NAME;
324 	 END;
325  Function C_NEW_NAME_p return varchar2 is
326 	Begin
327 	 return C_NEW_NAME;
328 	 END;
329  Function C_SUBSTR_NEW_NAME_p return varchar2 is
330 	Begin
331 	 return C_SUBSTR_NEW_NAME;
332 	 END;
333  Function C_NLS_END_OF_REPORT_p return varchar2 is
334 	Begin
335 	 return C_NLS_END_OF_REPORT;
336 	 END;
337 END AP_APXVDDUP_XMLP_PKG ;
338