DBA Data[Home] [Help]

PACKAGE BODY: APPS.FV_SLA_FV_PROCESSING_PKG

Source


1 PACKAGE BODY FV_SLA_FV_PROCESSING_PKG AS
2   --$Header: FVXLAFVB.pls 120.0 2010/10/05 14:17:38 sasukuma noship $
3 
4   ---------------------------------------------------------------------------
5   ---------------------------------------------------------------------------
6 
7   c_FAILURE   CONSTANT  NUMBER := -1;
8   c_SUCCESS   CONSTANT  NUMBER := 0;
9   ---------------------------------------------------------------------------
10 
11   --==========================================================================
12   ----Logging Declarations
13   --==========================================================================
14   C_STATE_LEVEL CONSTANT NUMBER	     :=	FND_LOG.LEVEL_STATEMENT;
15   C_PROC_LEVEL  CONSTANT  NUMBER	   :=	FND_LOG.LEVEL_PROCEDURE;
16   C_EVENT_LEVEL CONSTANT NUMBER	     :=	FND_LOG.LEVEL_EVENT;
17   C_EXCEP_LEVEL CONSTANT NUMBER	     :=	FND_LOG.LEVEL_EXCEPTION;
18   C_ERROR_LEVEL CONSTANT NUMBER	     :=	FND_LOG.LEVEL_ERROR;
19   C_UNEXP_LEVEL CONSTANT NUMBER	     :=	FND_LOG.LEVEL_UNEXPECTED;
20   g_log_level   CONSTANT NUMBER      := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
21   g_path_name   CONSTANT VARCHAR2(100)  := 'fv.plsql.fvxlafvb.fv_sla_fv_processing_pkg';
22   --
23   -- Linefeed character
24   --
25   CRLF          CONSTANT VARCHAR2(1) := FND_GLOBAL.newline;
26 
27 
28   PROCEDURE trace
29   (
30     p_level             IN NUMBER,
31     p_procedure_name    IN VARCHAR2,
32     p_debug_info        IN VARCHAR2
33   )
34   IS
35 
36   BEGIN
37      fv_sla_utl_processing_pkg.trace
38     (
39       p_level             => p_level,
40       p_procedure_name    => p_procedure_name,
41       p_debug_info        => p_debug_info
42     );
43   END trace;
44 
45   PROCEDURE init
46   IS
47     l_procedure_name       VARCHAR2(100) :='.init';
48   BEGIN
49     trace(C_STATE_LEVEL, l_procedure_name, 'Package Information');
50     trace(C_STATE_LEVEL, l_procedure_name, '$Header: FVXLAFVB.pls 120.0 2010/10/05 14:17:38 sasukuma noship $');
51   END;
52 
53 
54   PROCEDURE stack_error
55   (
56     p_program_name  IN VARCHAR2,
57     p_location      IN VARCHAR2,
58     p_error_message IN VARCHAR2
59   )
60   IS
61   BEGIN
62     NULL;
63   END;
64 
65 
66   PROCEDURE fv_extract
67   (
68     p_application_id  IN NUMBER,
69     p_accounting_mode IN VARCHAR2
70   )
71   IS
72     l_procedure_name         VARCHAR2(100):='.FV_EXTRACT';
73     l_fv_extract_detail      fv_sla_utl_processing_pkg.fv_ref_detail;
74     l_error_code             NUMBER;
75     l_gt_error_code          NUMBER;
76     l_error_desc             VARCHAR2(1024);
77   BEGIN
78 
79     l_procedure_name := g_path_name || l_procedure_name;
80     l_error_code := c_SUCCESS;
81     trace(C_STATE_LEVEL, l_procedure_name, 'BEGIN');
82     trace(C_STATE_LEVEL, l_procedure_name, 'p_application_id='||p_application_id);
83     trace(C_STATE_LEVEL, l_procedure_name, 'p_accounting_mode='||p_accounting_mode);
84 
85     IF (p_application_id <> 8901) THEN
86       RETURN;
87     END IF;
88 
89     IF (l_error_code = c_SUCCESS) THEN
90       fv_sla_ap_processing_pkg.process_payments
91       (
92         p_application_id    => p_application_id,
93         p_fv_extract_detail => l_fv_extract_detail,
94         p_error_code        => l_error_code,
95         p_error_desc        => l_error_desc
96       );
97     END IF;
98 
99     IF (l_error_code = C_SUCCESS) THEN
100       trace(C_STATE_LEVEL, l_procedure_name, 'Inserting data into GT table');
101       FORALL l_index  IN l_fv_extract_detail.first..l_fv_extract_detail.last
102       INSERT INTO fv_extract_detail_gt
103       VALUES l_fv_extract_detail(l_index);
104       trace(C_STATE_LEVEL, l_procedure_name, 'No of rows inserted into FV_EXTRACT_DETAIL_GT: '|| SQL%ROWCOUNT );
105     END IF;
106 
107     IF (l_error_code = C_SUCCESS) THEN
108       trace(C_STATE_LEVEL, l_procedure_name, 'Calling fv_sla_utl_processing_pkg.pya_processor');
109       fv_sla_utl_processing_pkg.pya_processor
110       (
111         p_application_id => p_application_id,
112         p_error_code     => l_error_code,
113         p_error_desc     => l_error_desc
114       );
115     END IF;
116 
117     trace(C_STATE_LEVEL, l_procedure_name, 'Calling dump_gt_table');
118     fv_sla_utl_processing_pkg.dump_gt_table
119     (
120       p_fv_extract_detail => l_fv_extract_detail,
121       p_error_code        => l_gt_error_code,
122       p_error_desc        => l_error_desc
123     );
124 
125     IF (l_error_code <>  C_SUCCESS) OR (l_gt_error_code <> C_SUCCESS) THEN
126        APP_EXCEPTION.RAISE_EXCEPTION;
127     END IF;
128 
129     trace(C_PROC_LEVEL, l_procedure_name, 'End of procedure'||l_procedure_name);
130 
131   EXCEPTION
132     WHEN OTHERS THEN
133       l_error_code := c_FAILURE;
134       fnd_message.set_name('FND', 'FND_GENERIC_MESSAGE');
135       fnd_message.set_token('MESSAGE' , 'System Error '||l_procedure_name||' :'||SQLERRM);
136       l_error_desc := fnd_message.get;
137       stack_error (l_procedure_name, 'FINAL', l_error_desc);
138       trace(C_STATE_LEVEL, l_procedure_name, 'ERROR:FINAL:'||l_error_desc);
139       APP_EXCEPTION.RAISE_EXCEPTION();
140   END fv_extract;
141 
142 
143 
144 
145 
146   PROCEDURE extract
147   (
148     p_application_id               IN            NUMBER,
149     p_accounting_mode              IN            VARCHAR2
150   )
151   IS
152 
153   l_debug_info                   VARCHAR2(240);
154   l_procedure_name               VARCHAR2(100) :='.EXTRACT';
155 
156   BEGIN
157 
158   l_procedure_name := g_path_name || l_procedure_name;
159   -------------------------------------------------------------------------
160   l_debug_info := 'Begin of procedure '||l_procedure_name;
161   trace(C_STATE_LEVEL, l_procedure_name, l_debug_info);
162   -------------------------------------------------------------------------
163   -------------------------------------------------------------------------
164 
165 
166   IF (p_application_id = 8901) THEN
167     fv_extract(p_application_id, p_accounting_mode);
168   ELSE
169     RETURN;
170   END IF;
171 
172   -------------------------------------------------------------------------
173   l_debug_info := 'End of procedure '||l_procedure_name;
174   trace(C_PROC_LEVEL, l_procedure_name, l_debug_info);
175   -------------------------------------------------------------------------
176 
177   EXCEPTION
178 
179     WHEN OTHERS THEN
180       l_debug_info := 'Error in Federal SLA Processing ' || SQLERRM;
181       trace(C_STATE_LEVEL, l_procedure_name, l_debug_info);
182       FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
183       FND_MESSAGE.SET_TOKEN('MESSAGE' ,
184       'Procedure :fv_sla_processing_pkg.extract'|| CRLF||
185       'Error     :'||SQLERRM);
186       FND_MSG_PUB.ADD;
187       APP_EXCEPTION.RAISE_EXCEPTION;
188 
189   END extract;
190 
191   PROCEDURE preaccounting
192   (
193     p_application_id               IN            NUMBER,
194     p_ledger_id                    IN            INTEGER,
195     p_process_category             IN            VARCHAR2,
196     p_end_date                     IN            DATE,
197     p_accounting_mode              IN            VARCHAR2,
198     p_valuation_method             IN            VARCHAR2,
199     p_security_id_int_1            IN            INTEGER,
200     p_security_id_int_2            IN            INTEGER,
201     p_security_id_int_3            IN            INTEGER,
202     p_security_id_char_1           IN            VARCHAR2,
203     p_security_id_char_2           IN            VARCHAR2,
204     p_security_id_char_3           IN            VARCHAR2,
205     p_report_request_id            IN            INTEGER
206   ) IS
207   BEGIN
208     NULL;
209   END;
210 
211   PROCEDURE postprocessing
212   (
213     p_application_id               IN            NUMBER,
214     p_accounting_mode              IN            VARCHAR2
215   )
216   IS
217   BEGIN
218     NULL;
219   END;
220 
221 
222   PROCEDURE postaccounting
223   (
224     p_application_id               IN            NUMBER,
225     p_ledger_id                    IN            INTEGER,
226     p_process_category             IN            VARCHAR2,
227     p_end_date                     IN            DATE,
228     p_accounting_mode              IN            VARCHAR2,
229     p_valuation_method             IN            VARCHAR2,
230     p_security_id_int_1            IN            INTEGER,
231     p_security_id_int_2            IN            INTEGER,
232     p_security_id_int_3            IN            INTEGER,
233     p_security_id_char_1           IN            VARCHAR2,
234     p_security_id_char_2           IN            VARCHAR2,
235     p_security_id_char_3           IN            VARCHAR2,
236     p_report_request_id            IN            INTEGER
237   )
238   IS
239   BEGIN
240     NULL;
241   END;
242 BEGIN
243   init;
244 END fv_sla_fv_processing_pkg;