DBA Data[Home] [Help]

PACKAGE BODY: APPS.XLA_REVERSE_EVENTS_PUB_PKG

Source


1 PACKAGE BODY xla_reverse_events_pub_pkg AS
2 -- $Header: xlaprevevt.pkb 120.2 2011/03/11 13:09:59 vgopiset noship $
3 /*===========================================================================+
4 |             Copyright (c) 2001-2002 Oracle Corporation                     |
5 |                       Redwood Shores, CA, USA                              |
6 |                         All rights reserved.                               |
7 +============================================================================+
8 | FILENAME                                                                   |
9 |    xlaprevevt.pkb                                                          |
10 |                                                                            |
11 | PACKAGE NAME                                                               |
12 |    xla_reverse_events_pub_pkg                                              |
13 |                                                                            |
14 | DESCRIPTION                                                                |
15 |    This is a XLA public package, which contains all the APIs               |
16 |    required for processing BULK Reversal of ACCOUNTED Events.              |
17 |                                                                            |
18 |  Note: This API is mainly for FAH Customer, so any ORACLE SUBLEDGERS       |
19 |        uptaking this,should contact XLA Dev before implementing.           |
20 | HISTORY                                                                    |
21 |     VGOPISET     10-NOV-2010     Created.                                  |
22 |     VGOPISET     08-MAR-2011     Changes for Batch wise processing even for|
23 |                                  Delete_Incomplete_Reversal                |
24 +===========================================================================*/
25 
26 --=============================================================================
27 --               *********** Local Trace Routine **********
28 --=============================================================================
29 C_LEVEL_STATEMENT     CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
30 C_LEVEL_PROCEDURE     CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
31 C_LEVEL_EVENT         CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
32 C_LEVEL_EXCEPTION     CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
33 C_LEVEL_ERROR         CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
34 C_LEVEL_UNEXPECTED    CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
35 
36 C_LEVEL_LOG_DISABLED  CONSTANT NUMBER := 99;
37 
38 C_DEFAULT_MODULE      CONSTANT VARCHAR2(240) := 'xla.plsql.xla_reverse_events_pub_pkg';
39 --
40 g_log_level           NUMBER;
41 g_log_enabled         BOOLEAN;
42 
43 -------------------------------------------------------------------------------
44 -- Private Procedures
45 -------------------------------------------------------------------------------
46 --+==========================================================================+
47 --|  PRIVATE PROCEDURE                                                       |
48 --|  Trace                                                                   |
49 --|    Local Procedure to obtain the FND Debug Logs                          |
50 --+==========================================================================+
51 PROCEDURE trace
52        (p_msg                        IN VARCHAR2
53        ,p_level                      IN NUMBER
54        ,p_module                     IN VARCHAR2 DEFAULT C_DEFAULT_MODULE) IS
55 BEGIN
56 
57    IF (p_msg IS NULL AND p_level >= g_log_level) THEN
58       fnd_log.message(p_level, p_module);
59    ELSIF p_level >= g_log_level THEN
60       fnd_log.string(p_level, p_module, p_msg);
61    END IF;
62 
63 EXCEPTION
64    WHEN xla_exceptions_pkg.application_exception THEN
65       RAISE;
66    WHEN OTHERS THEN
67       xla_exceptions_pkg.raise_message
68          (p_location   => 'xla_reverse_events_pub_pkg.trace');
69 END trace;
70 
71 
72 --+==========================================================================+
73 --|  PUBLIC PROCEDURE                                                        |
74 --|  Create_Reversal_Accounting                                              |
75 --|    Would need the following parameters as input                          |
76 --|        P_API_VERSION    : API version with value as 1.0                  |
77 --|      i)P_APPLICATION_ID : Application ID of the subledger from which     |
78 --|                           accounting needs to be Reversed.               |
79 --|     ii)P_BATCH_CODE     : Batch Code of List of the Events for which     |
80 --|                           accounting needs to be Reversed.               |
81 --|    iii)P_LEDGER_ID      : Ledger ID of the Transaction to which Events   |
82 --|                           belongs to                                     |
83 --|     iv)P_BUDGETARY_CONTROL_FLAG: Default Value of "N". This determines   |
84 --|                            whether Encumbrance Accounting is required.   |
85 --|    v)p_gl_transfer_flag : Pass "N" when accounting not be transferred    |
86 --|                               to General Ledger."Y" when accounting to be|
87 --|                               eligible for Transfer to GL, via "Transfer |
88 --|                               Journal Entries to GL" concurrent program  |
89 --|    vi)P_BATCH_COMMIT_SIZE: Minimum Batch Commit Size is 2000. Pass value |
90 --|                            when more no of events need to be processed   |
91 --|   vii)x_return_status   :  S is SUCCESS , E is Error , U is Unexpected   |
92 --|                            Error                                         |
93 --+==========================================================================+
94 
95 PROCEDURE create_reversal_accounting(  p_api_version           IN  NUMBER
96                                      , p_application_id        IN NUMBER
97                                      , p_batch_code            IN VARCHAR2
98                                      , p_ledger_id             IN NUMBER
99                                      , p_budgetary_control_flag IN VARCHAR2 DEFAULT 'N'
100                                      , p_gl_transfer_flag  IN VARCHAR2 DEFAULT 'Y'
101                                      , p_batch_commit_size     IN NUMBER
102                                      , x_return_status         OUT NOCOPY VARCHAR2
103  ) IS
104 
105 
106   l_api_name          CONSTANT VARCHAR2(30) := 'create_reversal_accounting';
107   l_api_version       CONSTANT NUMBER       := 1.0;
108 
109   l_retcode           INTEGER;
110   l_log_module        VARCHAR2(240);
111 
112 BEGIN
113 
114   IF g_log_enabled THEN
115     l_log_module := C_DEFAULT_MODULE||'.create_reversal_accounting';
116   END IF;
117 
118   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
119      trace
120          (p_msg      => 'BEGIN of procedure create_reversal_accounting'
121          ,p_level    => C_LEVEL_PROCEDURE
122          ,p_module   =>l_log_module);
123 
124      trace
125          (p_msg      => ' p_application_id = '||p_application_id
126                      || ' p_batch_code     = '||p_batch_code
127                      || ' p_ledger_id      = '||p_ledger_id
128                      || ' p_budgetary_control_flag     = '||p_budgetary_control_flag
129                      || ' p_gl_transfer_flag   = '|| p_gl_transfer_flag
130                      || ' p_batch_commit_size    = '||p_batch_commit_size
131          ,p_level    => C_LEVEL_PROCEDURE
132          ,p_module   =>l_log_module);
133   END IF;
134 
135     -- Standard call to check for call compatibility.
136   IF (NOT FND_API.compatible_api_call
137                  (p_current_version_number => l_api_version
138                  ,p_caller_version_number  => p_api_version
139                  ,p_api_name               => l_api_name
140                  ,p_pkg_name               => C_DEFAULT_MODULE))
141   THEN
142     RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
143   END IF;
144 
145    IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
146      trace
147          (p_msg      => 'Calling xla_reverse_events_pvt_pkg.create_reversal_accounting'
148          ,p_level    => C_LEVEL_PROCEDURE
149          ,p_module   =>l_log_module);
150 
151    END IF;
152 
153    xla_reverse_events_pvt_pkg.create_reversal_accounting(
154                                        p_application_id
155                                      , p_batch_code
156                                      , p_ledger_id
157                                      , p_budgetary_control_flag
158                                      , p_gl_transfer_flag
159                                      , p_batch_commit_size
160                                      , x_return_status   );
161 
162    IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
163      trace
164          (p_msg      => 'END procedure create_reversal_accounting'
165          ,p_level    => C_LEVEL_PROCEDURE
166          ,p_module   =>l_log_module);
167 
168    END IF;
169 
170 EXCEPTION
171    WHEN xla_exceptions_pkg.application_exception THEN
172       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
173       RAISE;
174    WHEN OTHERS THEN
175       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
176        xla_exceptions_pkg.raise_message
177          (p_location   => 'xla_reverse_events_pub_pkg.create_reversal_accounting');
178 
179 END create_reversal_accounting ;
180 
181 
182 --+==========================================================================+
183 --|  PUBLIC PROCEDURE                                                        |
184 --|  Delete_Incomplete_Reversal                                              |
185 --|    Would need the following parameters as input                          |
186 --|        P_API_VERSION    : API version with value as 1.0                  |
187 --|      i)P_APPLICATION_ID : Application ID of the subledger from which     |
188 --|                           accounting needs to be Reversed.               |
189 --|     ii)P_BATCH_CODE     : Batch Code of List of the Events for which     |
190 --|                           accounting needs to be Reversed.               |
191 --|    iii)P_LEDGER_ID      : Ledger ID of the Transaction to which Events   |
192 --|                           belongs to                                     |
193 --|     iv)P_DELETE_FLAG    : DEFAULT of "N". Determines whether ERRORED rows|
194 --|                          need to be DELETE from the INTERFACE Table after|
195 --|                          the invalid accounting is deleted.              |
196 --|     v)P_BATCH_COMMIT_SIZE: Minimum Batch Commit Size is 2000. Pass value |
197 --|                            when more no of events need to be processed   |
198 --|     vi)x_return_status  :  S is SUCCESS , E is Error , U is Unexpected   |
199 --|                            Error                                         |
200 --+==========================================================================+
201 PROCEDURE delete_incomplete_reversal(  p_api_version           IN  NUMBER
202                                      , p_application_id IN NUMBER
203                                      , p_batch_code     IN VARCHAR2
204                                      , p_ledger_id      IN NUMBER
205                                      , p_delete_flag    IN VARCHAR2 DEFAULT 'N'
206 				     , p_batch_commit_size     IN NUMBER
207                                      , x_return_status  OUT NOCOPY VARCHAR2) IS
208 
209   l_api_name          CONSTANT VARCHAR2(30) := 'delete_incomplete_reversal';
210   l_api_version       CONSTANT NUMBER       := 1.0;
211 
212   l_retcode           INTEGER;
213   l_log_module        VARCHAR2(240);
214 
215 BEGIN
216 
217   IF g_log_enabled THEN
218     l_log_module := C_DEFAULT_MODULE||'.delete_incomplete_reversal';
219   END IF;
220 
221   IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
222      trace
223          (p_msg      => 'BEGIN of procedure delete_incomplete_reversal'
224          ,p_level    => C_LEVEL_PROCEDURE
225          ,p_module   =>l_log_module);
226 
227      trace
228          (p_msg      => ' p_application_id = '||p_application_id
229                      || ' p_batch_code     = '||p_batch_code
230                      || ' p_ledger_id      = '||p_ledger_id
231                      || ' p_delete_flag    = '||p_delete_flag
232 		     || ' p_batch_commit_size = '||p_batch_commit_size
233          ,p_level    => C_LEVEL_PROCEDURE
234          ,p_module   =>l_log_module);
235   END IF;
236 
237     -- Standard call to check for call compatibility.
238   IF (NOT FND_API.compatible_api_call
239                  (p_current_version_number => l_api_version
240                  ,p_caller_version_number  => p_api_version
241                  ,p_api_name               => l_api_name
242                  ,p_pkg_name               => C_DEFAULT_MODULE))
243   THEN
244     RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
245   END IF;
246 
247    IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
248      trace
249          (p_msg      => 'Calling xla_reverse_events_pvt_pkg.delete_incomplete_reversal'
250          ,p_level    => C_LEVEL_PROCEDURE
251          ,p_module   =>l_log_module);
252 
253    END IF;
254 
255    xla_reverse_events_pvt_pkg.delete_incomplete_reversal(
256                                        p_application_id
257                                      , p_batch_code
258                                      , p_ledger_id
259                                      , p_delete_flag
260 				     , p_batch_commit_size
261                                      , x_return_status  ) ;
262 
263 
264    IF (C_LEVEL_STATEMENT >= g_log_level) THEN
265        trace
266           (p_msg      => 'End of delete_incomplete_reversal '
267           ,p_level    => C_LEVEL_STATEMENT
268           ,p_module   => l_log_module);
269    END IF;
270 
271 
272 EXCEPTION
273    WHEN xla_exceptions_pkg.application_exception THEN
274       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
275       RAISE;
276    WHEN OTHERS THEN
277       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
278       xla_exceptions_pkg.raise_message
279          (p_location   => 'xla_reverse_events_pub_pkg.delete_incomplete_reversal');
280 
281 END delete_incomplete_reversal ;
282 
283 BEGIN
284 
285   g_log_level      := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
286   g_log_enabled    := fnd_log.test
287                           (log_level  => g_log_level
288                           ,MODULE     => C_DEFAULT_MODULE);
289 
290   IF NOT g_log_enabled  THEN
291     g_log_level := C_LEVEL_LOG_DISABLED;
292   END IF;
293 
294 
295 END xla_reverse_events_pub_pkg;