DBA Data[Home] [Help]

PACKAGE BODY: APPS.CN_COLLECT_INVOICES

Source


1 PACKAGE BODY CN_COLLECT_INVOICES AS
2 -- $Header: cncoinvb.pls 120.2 2006/01/19 03:52:00 apink noship $
3 
4 compile_error EXCEPTION;
5 PRAGMA EXCEPTION_INIT(compile_error, -6550);
6 
7 cached_org_id                INTEGER;
8 cached_org_append            VARCHAR2(100);
9 
10 
11 
12 PROCEDURE get_org_append(x_org_id IN NUMBER )
13 IS
14 
15 BEGIN
16   cached_org_id := x_org_id;
17 
18   IF cached_org_id=NULL OR cached_org_id=0 OR cached_org_id=-1 THEN
19     cached_org_id := mo_global.get_current_org_id;
20   END IF;
21 
22   IF cached_org_id = -99
23   THEN
24      cached_org_append := '_M99';
25   ELSE
26      cached_org_append := '_' || cached_org_id;
27   END IF;
28 END get_org_append;
29 
30 --
31 -- Procedure Name
32 --   collect
33 -- Purpose
34 --   This procedure is the router for collecting invoices
35 --
36 -- History
37 
38 PROCEDURE COLLECT (errbuf OUT NOCOPY VARCHAR2,
39 		   retcode OUT NOCOPY NUMBER,
40 		   x_start_period_name IN VARCHAR2,
41 		   x_end_period_name IN VARCHAR2
42 		   )  IS
43 
44   dummy_vch             VARCHAR2(2);
45   dummy_num             NUMBER;
46   c						INTEGER;
47   rows_processed		INTEGER;
48   STATEMENT				VARCHAR2(1000);
49   x_org_id              NUMBER;
50 
51 BEGIN
52 
53   c := dbms_sql.open_cursor;
54 
55   x_org_id := mo_global.get_current_org_id;
56 
57   get_org_append(x_org_id);
58 
59   STATEMENT := 'begin cn_collect_invoices'||cached_org_append||
60     '.collect(:err,:ret,:start,:end,:org); end;';
61 
62   dbms_sql.parse(c, STATEMENT, dbms_sql.native);
63 
64   dbms_sql.bind_variable(c,'err', dummy_vch, 30);
65   dbms_sql.bind_variable(c,'ret', dummy_num);
66   dbms_sql.bind_variable(c,'start', x_start_period_name);
67   dbms_sql.bind_variable(c,'end', x_end_period_name);
68   dbms_sql.bind_variable(c,'org', x_org_id);
69 
70   rows_processed := dbms_sql.EXECUTE(c);
71 
72   dbms_sql.variable_value(c,'err', errbuf);
73   dbms_sql.variable_value(c,'ret', retcode);
74 
75   dbms_sql.close_cursor(c);
76 
77 END COLLECT;
78 
79 
80 END cn_collect_invoices;