DBA Data[Home] [Help]

PACKAGE: APPS.XLA_ACCOUNTING_CACHE_PKG

Source


1 PACKAGE xla_accounting_cache_pkg AUTHID CURRENT_USER AS
2 -- $Header: xlaapche.pkh 120.18 2010/08/19 10:59:32 kapkumar ship $
3 /*===========================================================================+
4 |             Copyright (c) 2001-2002 Oracle Corporation                     |
5 |                       Redwood Shores, CA, USA                              |
6 |                         All rights reserved.                               |
7 +============================================================================+
8 | FILENAME                                                                   |
9 |    xlaapche.pkh                                                            |
10 |                                                                            |
11 | PACKAGE NAME                                                               |
12 |    xla_accounting_cache_pkg                                                |
13 |                                                                            |
14 | DESCRIPTION                                                                |
15 |    This package is defined to cache the frequently used data during        |
16 |    execution of Accounting Program. This is to improve performance and     |
17 |    provide modular structure and lean interaction between Accounting Engine|
18 |    and Accounting Program.                                                 |
19 |                                                                            |
20 |    Note: the APIs do not excute COMMIT or ROLLBACK.                        |
21 |                                                                            |
22 | HISTORY                                                                    |
23 |    30-Oct-02  S. Singhania    Created                                      |
24 |    19-Dec-02  S. Singhania    Added specifications for set_process_cache   |
25 |    21-Feb-03  S. Singhania    Made changes for the new bulk approach of the|
26 |                                 accounting program                         |
27 |                                      - added 'p_max_event_date' param to   |
28 |                                           load_application_ledgers         |
29 |                                      - added procedure 'get_pad_info'      |
30 |    04-Apr-03  S. Singhania    Modified the specifications for:             |
31 |                                 - GetValueNum                              |
32 |                                 - GetValueDate                             |
33 |                                 - GetValueChar                             |
34 |    07-May-03  S. Singhania    Based on requirements from the 'Accounting   |
35 |                                 Engine' remodified the specifications for: |
36 |                                 - GetValueNum                              |
37 |                                 - GetValueDate                             |
38 |                                 - GetValueChar                             |
39 |                                 - load_application_ledgers                 |
40 |                                 - GetAlcLedgers                            |
41 |                               Renamed 'GetBaseLedgers' to 'GetLedgers'     |
42 |    16-Jul-03  S. Singhania    Added following APIs:                        |
43 |                                 - GetValueNum         (Overloaded)         |
44 |                                 - GetValueDate        (Overloaded)         |
45 |                                 - GetValueChar        (Overloaded)         |
46 |                                 - GetSessionValueChar                      |
47 |                                 - GetSessionValueChar (Overloaded)         |
48 |                                 - get_event_info                           |
49 |                               Modified specifications for:                 |
50 |                                 - GetValueChar                             |
51 |                                 - Get_PAD_info                             |
52 |    11-Sep-03  S. Singhania    Made changes to cache je_category (# 3109690)|
53 |                                 - Added API GET_JE_CATEGORY                |
54 |    20-Sep-04  S. Singhania    Added the following to support bulk changes  |
55 |                                 in the accounting engine                   |
56 |                                 - Added types T_REC_PAD and T_ARRAY_PAD    |
57 |                                 - Added API GetArrayPad                    |
58 |    9-Mar-05   W. Shen         Add the function BuildLedgerArray and        |
59 |                                 GetLedgerArray to support the calculation  |
60 |                                 of rounding                                |
61 |    26-May-05   W. Shen         Add the function GetCurrencyMau             |
62 +===========================================================================*/
63 
64 TYPE t_array_ledger_id IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
65 TYPE t_array_num       IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
66 TYPE t_array_varchar   IS TABLE OF VARCHAR2(30) INDEX BY BINARY_INTEGER;
67 --8238617
68  g_primary_ledger_currency  VARCHAR2(30):=null;
69 
70 TYPE t_array_ledger_attrs IS RECORD (
71   array_ledger_id              t_array_num
72  ,array_ledger_type            t_array_varchar
73  ,array_ledger_currency_code   t_array_varchar
74  ,array_rounding_rule_code     t_array_varchar
75  ,array_rounding_offset        t_array_num
76  ,array_mau                    t_array_num
77  ,array_default_rate_type      t_array_varchar
78  ,array_inhert_type_flag       t_array_varchar
79  ,array_max_roll_date          t_array_num
80 );
81 
82 
83 g_reversal_error               BOOLEAN DEFAULT FALSE;    --bug 7253269
84 g_hist_bflow_error_exists      BOOLEAN DEFAULT FALSE;    -- This line belongs to historic upgraded data.
85 
86 
87 -------------------------------------------------------------------------------
88 -- Following sturctures are used for caching PADs
89 -------------------------------------------------------------------------------
90 TYPE t_rec_pad IS RECORD
91    (acctg_method_rule_id               NUMBER
92    ,amb_context_code                   VARCHAR2(30)
93    ,product_rule_owner                 VARCHAR2(1)
94    ,product_rule_code                  VARCHAR2(30)
95    ,ledger_product_rule_name           VARCHAR2(80)
96    ,session_product_rule_name          VARCHAR2(80)
97    ,pad_package_name                   VARCHAR2(80)
98    ,compile_status_code                VARCHAR2(1)
99    ,start_date_active                  DATE
100    ,end_date_active                    DATE);
101 
102 -------------------------------------------------------------------------------
103 --
104 -------------------------------------------------------------------------------
105 TYPE t_array_pad IS TABLE OF t_rec_pad INDEX BY BINARY_INTEGER;
106 
107 
108 --bug10037318 mapping sets caching start
109 
110 TYPE mapping_record_char IS RECORD (
111       value_constant         XLA_MAPPING_SET_VALUES.value_constant%TYPE,
112       effective_date_from    XLA_MAPPING_SET_VALUES.effective_date_from%TYPE,
113       effective_date_to      XLA_MAPPING_SET_VALUES.effective_date_to%TYPE);
114 
115 TYPE mapping_record_num IS RECORD (
116       value_code_combination_id     XLA_MAPPING_SET_VALUES.value_code_combination_id%TYPE,
117       effective_date_from           XLA_MAPPING_SET_VALUES.effective_date_from%TYPE,
118       effective_date_to             XLA_MAPPING_SET_VALUES.effective_date_to%TYPE);
119 
120 
121 TYPE mapping_table_char IS TABLE OF mapping_record_char INDEX BY VARCHAR2(500);
122 TYPE mapping_table_num  IS TABLE OF mapping_record_num  INDEX BY VARCHAR2(500);
123 
124 l_mapping_table_char         mapping_table_char;
125 l_mapping_table_num          mapping_table_num;
126 
127 --bug10037318 mapping sets caching end
128 
129 
130 PROCEDURE load_application_ledgers
131        (p_application_id             IN  INTEGER
132        ,p_event_ledger_id            IN  INTEGER -- ledger id stamped on events
133        ,p_max_event_date             IN  DATE        DEFAULT TRUNC(sysdate));
134 
135 PROCEDURE get_pad_info
136        (p_ledger_id                  IN  NUMBER -- primary/secondary ledger id
137        ,p_event_date                 IN  DATE
138        ,p_pad_owner                  OUT NOCOPY VARCHAR2
139        ,p_pad_code                   OUT NOCOPY VARCHAR2
140        ,p_ledger_pad_name            OUT NOCOPY VARCHAR2
141        ,p_session_pad_name           OUT NOCOPY VARCHAR2
142        ,p_pad_compile_status         OUT NOCOPY VARCHAR2
143        ,p_pad_package_name           OUT NOCOPY VARCHAR2);
144 
145 FUNCTION GetArrayPad
146        (p_ledger_id                  IN  NUMBER -- primary/secondary ledger id
147        ,p_max_event_date             IN  DATE
148        ,p_min_event_date             IN  DATE)
149 RETURN t_array_pad;
150 
151 PROCEDURE get_event_info
152         (p_ledger_id                  IN  NUMBER
153         ,p_event_class_code           IN  VARCHAR2
154         ,p_event_type_code            IN  VARCHAR2
155         ,p_ledger_event_class_name    OUT NOCOPY VARCHAR2
156         ,p_session_event_class_name   OUT NOCOPY VARCHAR2
157         ,p_ledger_event_type_name     OUT NOCOPY VARCHAR2
158         ,p_session_event_type_name    OUT NOCOPY VARCHAR2);
159 
160 FUNCTION get_je_category
161         (p_ledger_id                  IN  NUMBER
162         ,p_event_class_code           IN  VARCHAR2)
163 RETURN VARCHAR2;
164 
165 -------------------------------------------------------------------------------
166 -- get system source values from accounting cache
167 -------------------------------------------------------------------------------
168 
169 FUNCTION GetValueNum
170        (p_source_code                IN VARCHAR2
171        ,p_target_ledger_id           IN NUMBER)
172 RETURN NUMBER;
173 
174 FUNCTION GetValueNum
175        (p_source_code                IN VARCHAR2)
176 RETURN NUMBER;
177 
178 FUNCTION GetValueDate
179        (p_source_code                IN VARCHAR2
180        ,p_target_ledger_id           IN NUMBER)
181 RETURN DATE;
182 
183 FUNCTION GetValueDate
184        (p_source_code                IN VARCHAR2)
185 RETURN DATE;
186 
187 FUNCTION GetValueChar
188        (p_source_code                IN VARCHAR2
189        ,p_target_ledger_id           IN NUMBER)
190 RETURN VARCHAR2;
191 
192 FUNCTION GetValueChar
193        (p_source_code                IN VARCHAR2)
194 RETURN VARCHAR2;
195 
196 FUNCTION GetSessionValueChar
197        (p_source_code                IN VARCHAR2
198        ,p_target_ledger_id           IN NUMBER)
199 RETURN VARCHAR2;
200 
201 FUNCTION GetSessionValueChar
202        (p_source_code                IN VARCHAR2)
203 RETURN VARCHAR2;
204 
205 -------------------------------------------------------------------------------
206 -- Get base ledgers, alternate currency ledgers from accounting
207 -- cache
208 -------------------------------------------------------------------------------
209 
210 FUNCTION GetAlcLedgers
211        (p_primary_ledger_id          IN NUMBER )
212 RETURN t_array_ledger_id;
213 
214 FUNCTION GetLedgers
215 RETURN t_array_ledger_id;
216 
217 Procedure BuildLedgerArray
218 ( p_array_ledger_attrs OUT NOCOPY t_array_ledger_attrs)
219 ;
220 PROCEDURE GetLedgerArray
221 ( p_array_ledger_attrs OUT NOCOPY t_array_ledger_attrs)
222 ;
223 
224 FUNCTION GetCurrencyMau(p_currency_code IN VARCHAR2) return NUMBER
225 ;
226 END xla_accounting_cache_pkg;