DBA Data[Home] [Help]

PACKAGE BODY: APPS.XLA_PROD_ACCT_HEADERS_F_PKG

Source


1 PACKAGE BODY xla_prod_acct_headers_f_pkg AS
2 /* $Header: xlatbpah.pkb 120.8 2004/11/20 01:13:36 wychan ship $ */
3 /*======================================================================+
4 |             Copyright (c) 2001-2002 Oracle Corporation                |
5 |                       Redwood Shores, CA, USA                         |
6 |                         All rights reserved.                          |
7 +=======================================================================+
8 | PACKAGE NAME                                                          |
9 |    xla_prod_acct_headers_f_pkg                                        |
10 |                                                                       |
11 | DESCRIPTION                                                           |
12 |    Forms PL/SQL Wrapper for xla_prod_acct_headers                     |
13 |                                                                       |
14 | HISTORY                                                               |
15 |    05/22/01     Dimple Shah    Created                                |
16 |                                                                       |
17 +======================================================================*/
18 
19 
20 
21 /*======================================================================+
22 |                                                                       |
23 |  Procedure insert_row                                                 |
24 |                                                                       |
25 +======================================================================*/
26 PROCEDURE insert_row
27   (x_rowid                            IN OUT NOCOPY VARCHAR2
28   ,x_application_id                   IN NUMBER
29   ,x_amb_context_code                 IN VARCHAR2
30   ,x_product_rule_type_code           IN VARCHAR2
31   ,x_product_rule_code                IN VARCHAR2
32   ,x_entity_code                      IN VARCHAR2
33   ,x_event_class_code                 IN VARCHAR2
34   ,x_event_type_code                  IN VARCHAR2
35   ,x_description_type_code            IN VARCHAR2
36   ,x_description_code                 IN VARCHAR2
37   ,x_validation_status_code           IN VARCHAR2
38   ,x_accounting_required_flag         IN VARCHAR2
39   ,x_locking_status_flag              IN VARCHAR2
40   ,x_creation_date                    IN DATE
41   ,x_created_by                       IN NUMBER
42   ,x_last_update_date                 IN DATE
43   ,x_last_updated_by                  IN NUMBER
44   ,x_last_update_login                IN NUMBER)
45 
46 
47 IS
48 
49 CURSOR c IS
50 SELECT rowid
51 FROM   xla_prod_acct_headers
52 WHERE  application_id                   = x_application_id
53   AND  amb_context_code                 = x_amb_context_code
54   AND  product_rule_type_code           = x_product_rule_type_code
55   AND  product_rule_code                = x_product_rule_code
56   AND  entity_code                      = x_entity_code
57   AND  event_class_code                 = x_event_class_code
58   AND  event_type_code                  = x_event_type_code
59 ;
60 
61 BEGIN
62 xla_utility_pkg.trace('> .insert_row'                    ,20);
63 
64 INSERT INTO xla_prod_acct_headers
65 (creation_date
66 ,created_by
67 ,application_id
68 ,amb_context_code
69 ,product_rule_type_code
70 ,product_rule_code
71 ,entity_code
72 ,event_class_code
73 ,event_type_code
74 ,description_type_code
75 ,description_code
76 ,validation_status_code
77 ,accounting_required_flag
78 ,locking_status_flag
79 ,last_update_date
80 ,last_updated_by
81 ,last_update_login)
82 VALUES
83 (x_creation_date
84 ,x_created_by
85 ,x_application_id
86 ,x_amb_context_code
87 ,x_product_rule_type_code
88 ,x_product_rule_code
89 ,x_entity_code
90 ,x_event_class_code
91 ,x_event_type_code
92 ,x_description_type_code
93 ,x_description_code
94 ,x_validation_status_code
95 ,x_accounting_required_flag
96 ,x_locking_status_flag
97 ,x_last_update_date
98 ,x_last_updated_by
99 ,x_last_update_login)
100 ;
101 
102 OPEN c;
103 FETCH c INTO x_rowid;
104 
105 IF (c%NOTFOUND) THEN
106    CLOSE c;
107    RAISE NO_DATA_FOUND;
108 END IF;
109 CLOSE c;
110 
111 xla_utility_pkg.trace('< .insert_row'                    ,20);
112 END insert_row;
113 
114 /*======================================================================+
115 |                                                                       |
116 |  Procedure lock_row                                                   |
117 |                                                                       |
118 +======================================================================*/
119 PROCEDURE lock_row
120   (x_rowid                            IN OUT NOCOPY VARCHAR2
121   ,x_application_id                   IN NUMBER
122   ,x_amb_context_code                 IN VARCHAR2
123   ,x_product_rule_type_code           IN VARCHAR2
124   ,x_product_rule_code                IN VARCHAR2
125   ,x_entity_code                      IN VARCHAR2
126   ,x_event_class_code                 IN VARCHAR2
127   ,x_event_type_code                  IN VARCHAR2
128   ,x_validation_status_code           IN VARCHAR2
129   ,x_accounting_required_flag         IN VARCHAR2
130   ,x_locking_status_flag              IN VARCHAR2)
131 
132 IS
133 
134 CURSOR c IS
135 SELECT application_id
136       ,amb_context_code
137       ,product_rule_type_code
138       ,product_rule_code
139       ,entity_code
140       ,event_class_code
141       ,event_type_code
142       ,validation_status_code
143       ,accounting_required_flag
144       ,locking_status_flag
145 FROM   xla_prod_acct_headers
146 WHERE  application_id                   = x_application_id
147   AND  amb_context_code                 = x_amb_context_code
148   AND  product_rule_type_code           = x_product_rule_type_code
149   AND  product_rule_code                = x_product_rule_code
150   AND  entity_code                      = x_entity_code
151   AND  event_class_code                 = x_event_class_code
152   AND  event_type_code                  = x_event_type_code
153 FOR UPDATE OF application_id NOWAIT;
154 
155 recinfo              c%ROWTYPE;
156 
157 BEGIN
158 xla_utility_pkg.trace('> .lock_row'                      ,20);
159 
160 OPEN c;
161 FETCH c INTO recinfo;
162 
163 IF (c%NOTFOUND) THEN
164    CLOSE c;
165    fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
166    app_exception.raise_exception;
167 END IF;
168 CLOSE c;
169 
170 IF ( (recinfo.application_id                    = x_application_id)
171  AND (recinfo.amb_context_code                  = x_amb_context_code)
172  AND (recinfo.product_rule_type_code            = x_product_rule_type_code)
173  AND (recinfo.product_rule_code                 = x_product_rule_code)
174  AND (recinfo.entity_code                       = x_entity_code)
175  AND (recinfo.event_class_code                  = x_event_class_code)
176  AND (recinfo.event_type_code                   = x_event_type_code)
177  AND (recinfo.validation_status_code            = x_validation_status_code)
178  AND (recinfo.accounting_required_flag          = x_accounting_required_flag)
179  AND (recinfo.locking_status_flag               = x_locking_status_flag)
180                    ) THEN
181    null;
182 ELSE
183    fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
184    app_exception.raise_exception;
185 END IF;
186 
187 xla_utility_pkg.trace('< .lock_row'                      ,20);
188 RETURN;
189 
190 END lock_row;
191 
192 /*======================================================================+
193 |                                                                       |
194 |  Procedure update_row                                                 |
195 |                                                                       |
196 +======================================================================*/
197 PROCEDURE update_row
198   (x_rowid                            IN OUT NOCOPY VARCHAR2
199   ,x_application_id                   IN NUMBER
200   ,x_amb_context_code                 IN VARCHAR2
201   ,x_product_rule_type_code           IN VARCHAR2
202   ,x_product_rule_code                IN VARCHAR2
203   ,x_entity_code                      IN VARCHAR2
204   ,x_event_class_code                 IN VARCHAR2
205   ,x_event_type_code                  IN VARCHAR2
206   ,x_validation_status_code           IN VARCHAR2
207   ,x_accounting_required_flag         IN VARCHAR2
208   ,x_locking_status_flag              IN VARCHAR2
209   ,x_last_update_date                 IN DATE
210   ,x_last_updated_by                  IN NUMBER
211   ,x_last_update_login                IN NUMBER)
212 IS
213 
214 BEGIN
215 xla_utility_pkg.trace('> .update_row'                    ,20);
216 UPDATE xla_prod_acct_headers
217    SET
218        last_update_date                 = x_last_update_date
219       ,validation_status_code           = x_validation_status_code
220       ,accounting_required_flag         = x_accounting_required_flag
221       ,locking_status_flag              = x_locking_status_flag
222       ,last_updated_by                  = x_last_updated_by
223       ,last_update_login                = x_last_update_login
224 WHERE  application_id                   = x_application_id
225   AND  amb_context_code                 = x_amb_context_code
226   AND  product_rule_type_code           = x_product_rule_type_code
227   AND  product_rule_code                = x_product_rule_code
228   AND  entity_code                      = x_entity_code
229   AND  event_class_code                 = x_event_class_code
230   AND  event_type_code                  = x_event_type_code;
231 
232 IF (SQL%NOTFOUND) THEN
233    RAISE NO_DATA_FOUND;
234 END IF;
235 
236 xla_utility_pkg.trace('< .update_row'                    ,20);
237 END update_row;
238 
239 /*======================================================================+
240 |                                                                       |
241 |  Procedure update_row                                                 |
242 |                                                                       |
243 +======================================================================*/
244 PROCEDURE update_row
245   (x_rowid                            IN OUT NOCOPY VARCHAR2
246   ,x_application_id                   IN NUMBER
247   ,x_amb_context_code                 IN VARCHAR2
248   ,x_product_rule_type_code           IN VARCHAR2
249   ,x_product_rule_code                IN VARCHAR2
250   ,x_entity_code                      IN VARCHAR2
251   ,x_event_class_code                 IN VARCHAR2
252   ,x_event_type_code                  IN VARCHAR2
253   ,x_description_type_code            IN VARCHAR2
254   ,x_description_code                 IN VARCHAR2
255   ,x_last_update_date                 IN DATE
256   ,x_last_updated_by                  IN NUMBER
257   ,x_last_update_login                IN NUMBER)
258 IS
259 
260 BEGIN
261 xla_utility_pkg.trace('> .update_row'                    ,20);
262 UPDATE xla_prod_acct_headers
263    SET
264        last_update_date                 = x_last_update_date
265       ,description_type_code            = x_description_type_code
266       ,description_code                 = x_description_code
267       ,last_updated_by                  = x_last_updated_by
268       ,last_update_login                = x_last_update_login
269 WHERE  application_id                   = x_application_id
270   AND  amb_context_code                 = x_amb_context_code
271   AND  product_rule_type_code           = x_product_rule_type_code
272   AND  product_rule_code                = x_product_rule_code
273   AND  entity_code                      = x_entity_code
274   AND  event_class_code                 = x_event_class_code
275   AND  event_type_code                  = x_event_type_code;
276 
277 IF (SQL%NOTFOUND) THEN
278    RAISE NO_DATA_FOUND;
279 END IF;
280 
281 xla_utility_pkg.trace('< .update_row'                    ,20);
282 END update_row;
283 
284 /*======================================================================+
285 |                                                                       |
286 |  Procedure delete_row                                                 |
287 |                                                                       |
288 +======================================================================*/
289 PROCEDURE delete_row
290   (x_application_id                   IN NUMBER
291   ,x_amb_context_code                 IN VARCHAR2
292   ,x_product_rule_type_code           IN VARCHAR2
293   ,x_product_rule_code                IN VARCHAR2
294   ,x_entity_code                      IN VARCHAR2
295   ,x_event_class_code                 IN VARCHAR2
296   ,x_event_type_code                  IN VARCHAR2)
297 
298 IS
299 
300 BEGIN
301 xla_utility_pkg.trace('> .delete_row'                    ,20);
302 DELETE FROM xla_prod_acct_headers
303 WHERE application_id                    = x_application_id
304   AND  amb_context_code                 = x_amb_context_code
305   AND  product_rule_type_code           = x_product_rule_type_code
306   AND  product_rule_code                = x_product_rule_code
307   AND  entity_code                      = x_entity_code
308   AND  event_class_code                 = x_event_class_code
309   AND  event_type_code                  = x_event_type_code
310 ;
311 
312 IF (SQL%NOTFOUND) THEN
313    RAISE NO_DATA_FOUND;
314 END IF;
315 
316 xla_utility_pkg.trace('< .delete_row'                    ,20);
317 END delete_row;
318 
319 /*======================================================================+
320 |                                                                       |
321 |  Procedure lock_row                                                   |
322 |                                                                       |
323 +======================================================================*/
324 PROCEDURE lock_row
325   (x_rowid                            IN OUT NOCOPY VARCHAR2
326   ,x_application_id                   IN NUMBER
327   ,x_amb_context_code                 IN VARCHAR2
328   ,x_product_rule_type_code           IN VARCHAR2
329   ,x_product_rule_code                IN VARCHAR2
330   ,x_entity_code                      IN VARCHAR2
331   ,x_event_class_code                 IN VARCHAR2
332   ,x_event_type_code                  IN VARCHAR2
333   ,x_description_type_code            IN VARCHAR2
334   ,x_description_code                 IN VARCHAR2)
335 
336 IS
337 
338 CURSOR c IS
339 SELECT application_id
340       ,amb_context_code
341       ,product_rule_type_code
342       ,product_rule_code
343       ,entity_code
344       ,event_class_code
345       ,event_type_code
346       ,description_type_code
347       ,description_code
348 FROM   xla_prod_acct_headers
349 WHERE  application_id                   = x_application_id
350   AND  amb_context_code                 = x_amb_context_code
351   AND  product_rule_type_code           = x_product_rule_type_code
352   AND  product_rule_code                = x_product_rule_code
353   AND  entity_code                      = x_entity_code
354   AND  event_class_code                 = x_event_class_code
355   AND  event_type_code                  = x_event_type_code
356 FOR UPDATE OF application_id NOWAIT;
357 
358 recinfo              c%ROWTYPE;
359 
360 BEGIN
361 xla_utility_pkg.trace('> .lock_row'                      ,20);
362 
363 OPEN c;
364 FETCH c INTO recinfo;
365 
366 IF (c%NOTFOUND) THEN
367    CLOSE c;
368    fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
369    app_exception.raise_exception;
370 END IF;
371 CLOSE c;
372 
373 IF ( (recinfo.application_id                    = x_application_id)
374  AND (recinfo.amb_context_code                  = x_amb_context_code)
375  AND (recinfo.product_rule_type_code            = x_product_rule_type_code)
376  AND (recinfo.product_rule_code                 = x_product_rule_code)
377  AND (recinfo.entity_code                       = x_entity_code)
378  AND (recinfo.event_class_code                  = x_event_class_code)
379  AND (recinfo.event_type_code                   = x_event_type_code)
380  AND ((recinfo.description_type_code            = x_description_type_code)
381    OR ((recinfo.description_type_code           IS NULL)
382   AND (x_description_type_code              IS NULL)))
383  AND ((recinfo.description_code            = x_description_code)
384    OR ((recinfo.description_code           IS NULL)
385   AND (x_description_code              IS NULL)))
386                    ) THEN
387    null;
388 ELSE
389    fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
390    app_exception.raise_exception;
391 END IF;
392 
393 xla_utility_pkg.trace('< .lock_row'                      ,20);
394 RETURN;
395 
396 END lock_row;
397 
398 
399 end xla_prod_acct_headers_f_pkg;