DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGI_IAC_BOOK_CONTROLS_PKG

Source


1 PACKAGE BODY igi_iac_book_controls_pkg AS
2 -- $Header: igiiabcb.pls 120.7.12000000.1 2007/08/01 16:12:51 npandya ship $
3 
4   l_rowid VARCHAR2(25);
5 
6 --===========================FND_LOG.START=====================================
7 g_state_level NUMBER;
8 g_proc_level  NUMBER;
9 g_event_level NUMBER;
10 g_excep_level NUMBER;
11 g_error_level NUMBER;
12 g_unexp_level NUMBER;
13 g_path        VARCHAR2(100);
14 
15 --===========================FND_LOG.END=====================================
16 
17 
18   PROCEDURE insert_row (
19 
20     x_rowid                             IN OUT NOCOPY VARCHAR2,
21 
22     x_book_type_code                    IN     VARCHAR2,
23 
24     x_gl_je_source                      IN     VARCHAR2,
25 
26     x_je_iac_deprn_category             IN     VARCHAR2,
27 
28     x_je_iac_reval_category             IN     VARCHAR2,
29 
30     x_je_iac_txn_category               IN     VARCHAR2,
31 
32     x_period_num_for_catchup            IN     NUMBER,
33 
34     x_mode                              IN     VARCHAR2
35 
36   ) AS
37 
38   /*
39 
40   ||  Created By :
41 
42   ||  Created On : 29-APR-2002
43 
44   ||  Purpose : Handles the INSERT DML logic for the table.
45 
46   ||  Known limitations, enhancements or remarks :
47 
48   ||  Change History :
49 
50   ||  Who             When            What
51 
52   ||  (reverse chronological order - newest change first)
53 
54   */
55 
56     CURSOR c IS
57 
58       SELECT   rowid
59 
60       FROM     igi_iac_book_controls
61 
62       WHERE    book_type_code = x_book_type_code;
63 
64 
65 
66     x_last_update_date           DATE;
67 
68     x_last_updated_by            NUMBER;
69 
70     x_last_update_login          NUMBER;
71 
72     x_org_id                     NUMBER;
73 
74   BEGIN
75 
76     x_org_id := NULL;
77 
78     x_last_update_date := SYSDATE;
79 
80     IF (x_mode = 'I') THEN
81 
82       x_last_updated_by := 1;
83 
84       x_last_update_login := 0;
85 
86     ELSIF (x_mode = 'R') THEN
87 
88       x_last_updated_by := fnd_global.user_id;
89 
90       IF (x_last_updated_by IS NULL) THEN
91 
92         x_last_updated_by := -1;
93 
94       END IF;
95 
96       x_last_update_login := fnd_global.login_id;
97 
98       IF (x_last_update_login IS NULL) THEN
99 
100         x_last_update_login := -1;
101 
102       END IF;
103 
104     ELSE
105 
106       fnd_message.set_name ('FND', 'SYSTEM-INVALID ARGS');
107       igi_iac_debug_pkg.debug_other_msg(g_error_level,g_path||'insert_row',FALSE);
108       app_exception.raise_exception;
109 
110     END IF;
111 
112     INSERT INTO igi_iac_book_controls (
113 
114       book_type_code,
115 
116       gl_je_source,
117 
118       je_iac_deprn_category,
119 
120       je_iac_reval_category,
121 
122       je_iac_txn_category,
123 
124       period_num_for_catchup,
125 
126       org_id,
127 
128       creation_date,
129 
130       created_by,
131 
132       last_update_date,
133 
134       last_updated_by,
135 
136       last_update_login
137 
138     ) VALUES (
139 
140       x_book_type_code,
141 
142       x_gl_je_source,
143 
144       x_je_iac_deprn_category,
145 
146       x_je_iac_reval_category,
147 
148       x_je_iac_txn_category,
149 
150       x_period_num_for_catchup,
151 
152       x_org_id,
153 
154       x_last_update_date,
155 
156       x_last_updated_by,
157 
158       x_last_update_date,
159 
160       x_last_updated_by,
161 
162       x_last_update_login
163 
164     );
165 
166 
167 
168     OPEN c;
169 
170     FETCH c INTO x_rowid;
171 
172     IF (c%NOTFOUND) THEN
173 
174       CLOSE c;
175 
176       RAISE NO_DATA_FOUND;
177 
178     END IF;
179 
180     CLOSE c;
181 
182 
183 
184   END insert_row;
185 
186 
187 
188 
189 
190   PROCEDURE lock_row (
191 
192     x_rowid                             IN     VARCHAR2,
193 
194     x_book_type_code                    IN     VARCHAR2,
195 
196     x_gl_je_source                      IN     VARCHAR2,
197 
198     x_je_iac_deprn_category             IN     VARCHAR2,
199 
200     x_je_iac_reval_category             IN     VARCHAR2,
201 
202     x_je_iac_txn_category               IN     VARCHAR2,
203 
204     x_period_num_for_catchup            IN     NUMBER
205 
206   ) AS
207 
208   /*
209 
210   ||  Created By :
211 
212   ||  Created On : 29-APR-2002
213 
214   ||  Purpose : Handles the LOCK mechanism for the table.
215 
216   ||  Known limitations, enhancements or remarks :
217 
218   ||  Change History :
219 
220   ||  Who             When            What
221 
222   ||  (reverse chronological order - newest change first)
223 
224   */
225 
226     CURSOR c1 IS
227 
228       SELECT
229 
230         book_type_code,
231 
232         gl_je_source,
233 
234         je_iac_deprn_category,
235 
236         je_iac_reval_category,
237 
238         je_iac_txn_category,
239 
240         period_num_for_catchup
241 
242       FROM  igi_iac_book_controls
243 
244       WHERE rowid = x_rowid
245 
246       FOR UPDATE NOWAIT;
247 
248 
249 
250     tlinfo c1%ROWTYPE;
251 
252 
253 
254   BEGIN
255 
256 
257 
258     OPEN c1;
259 
260     FETCH c1 INTO tlinfo;
261 
262     IF (c1%notfound) THEN
263 
264       fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
265       igi_iac_debug_pkg.debug_other_msg(g_error_level,g_path||'lock_row',FALSE);
266       CLOSE c1;
267 
268       app_exception.raise_exception;
269 
270       RETURN;
271 
272     END IF;
273 
274     CLOSE c1;
275 
276 
277 
278     IF (
279 
280         (tlinfo.book_type_code = x_book_type_code)
281 
282         AND (tlinfo.gl_je_source = x_gl_je_source)
283 
284         AND (tlinfo.je_iac_deprn_category = x_je_iac_deprn_category)
285 
286         AND (tlinfo.je_iac_reval_category = x_je_iac_reval_category)
287 
288         AND (tlinfo.je_iac_txn_category = x_je_iac_txn_category)
289 
290         AND (tlinfo.period_num_for_catchup = x_period_num_for_catchup)
291 
292        ) THEN
293 
294       NULL;
295 
296     ELSE
297 
298       fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
299       igi_iac_debug_pkg.debug_other_msg(g_error_level,g_path||'lock_row',FALSE);
300       app_exception.raise_exception;
301 
302     END IF;
303 
304 
305 
306     RETURN;
307 
308 
309 
310   END lock_row;
311 
312 
313 
314 
315 
316   PROCEDURE update_row (
317 
318     x_rowid                             IN     VARCHAR2,
319 
320     x_book_type_code                    IN     VARCHAR2,
321 
322     x_gl_je_source                      IN     VARCHAR2,
323 
324     x_je_iac_deprn_category             IN     VARCHAR2,
325 
326     x_je_iac_reval_category             IN     VARCHAR2,
327 
328     x_je_iac_txn_category               IN     VARCHAR2,
329 
330     x_period_num_for_catchup            IN     NUMBER,
331 
332     x_mode                              IN     VARCHAR2
333 
334   ) AS
335 
336   /*
337 
338   ||  Created By :
339 
340   ||  Created On : 29-APR-2002
341 
342   ||  Purpose : Handles the UPDATE DML logic for the table.
343 
344   ||  Known limitations, enhancements or remarks :
345 
346   ||  Change History :
347 
348   ||  Who             When            What
349 
350   ||  (reverse chronological order - newest change first)
351 
352   */
353 
354     x_last_update_date           DATE ;
355 
356     x_last_updated_by            NUMBER;
357 
358     x_last_update_login          NUMBER;
359 
360 
361 
362   BEGIN
363 
364 
365 
366     x_last_update_date := SYSDATE;
367 
368     IF (X_MODE = 'I') THEN
369 
370       x_last_updated_by := 1;
371 
372       x_last_update_login := 0;
373 
374     ELSIF (x_mode = 'R') THEN
375 
376       x_last_updated_by := fnd_global.user_id;
377 
378       IF x_last_updated_by IS NULL THEN
379 
380         x_last_updated_by := -1;
381 
382       END IF;
383 
384       x_last_update_login := fnd_global.login_id;
385 
386       IF (x_last_update_login IS NULL) THEN
387 
388         x_last_update_login := -1;
389 
390       END IF;
391 
392     ELSE
393 
394       fnd_message.set_name( 'FND', 'SYSTEM-INVALID ARGS');
395       igi_iac_debug_pkg.debug_other_msg(g_error_level,g_path||'update_row',FALSE);
396       app_exception.raise_exception;
397 
398     END IF;
399 
400 
401 
402 
403 
404     UPDATE igi_iac_book_controls
405 
406       SET
407 
408         book_type_code                    = x_book_type_code,
409 
410         gl_je_source                      = x_gl_je_source,
411 
412         je_iac_deprn_category             = x_je_iac_deprn_category,
413 
414         je_iac_reval_category             = x_je_iac_reval_category,
415 
416         je_iac_txn_category               = x_je_iac_txn_category,
417 
418         period_num_for_catchup            = x_period_num_for_catchup,
419 
420         last_update_date                  = x_last_update_date,
421 
422         last_updated_by                   = x_last_updated_by,
423 
424         last_update_login                 = x_last_update_login
425 
426       WHERE rowid = x_rowid;
427 
428 
429 
430     IF (SQL%NOTFOUND) THEN
431 
432       RAISE NO_DATA_FOUND;
433 
434     END IF;
435 
436 
437 
438   END update_row;
439 
440 
441 
442 
443 
444 
445 
446   PROCEDURE delete_row (
447 
448     x_rowid IN VARCHAR2
449 
450   ) AS
451 
452   /*
453 
454   ||  Created By :
455 
456   ||  Created On : 29-APR-2002
457 
458   ||  Purpose : Handles the DELETE DML logic for the table.
459 
460   ||  Known limitations, enhancements or remarks :
461 
462   ||  Change History :
463 
464   ||  Who             When            What
465 
466   ||  (reverse chronological order - newest change first)
467 
468   */
469 
470   BEGIN
471 
472 
473 
474 
475 
476     DELETE FROM igi_iac_book_controls
477 
478     WHERE rowid = x_rowid;
479 
480 
481 
482     IF (SQL%NOTFOUND) THEN
483 
484       RAISE NO_DATA_FOUND;
485 
486     END IF;
487 
488 
489 
490   END delete_row;
491 
492 
493 
494 
495 
496   FUNCTION get_org_id RETURN NUMBER AS
497 
498     CURSOR cur_orgid IS
499 
500     SELECT
501 
502  NVL ( TO_NUMBER ( DECODE ( SUBSTRB ( USERENV ('CLIENT_INFO' ), 1, 1  ), ' ', NULL,  SUBSTRB (USERENV ('CLIENT_INFO'),1,10)  )   ), NULL  ) org_id FROM dual;
503 
504 
505 
506     lv_org_id Number(15);
507 
508 
509 
510   BEGIN
511 
512 
513 
514     OPEN cur_orgid;
515 
516     FETCH cur_orgid INTO lv_org_id;
517 
518     CLOSE cur_orgid;
519 
520 
521 
522  RETURN lv_org_id ;
523 
524 
525 
526 
527 
528 END get_org_id ;
529 
530 BEGIN
531 
532 g_state_level :=      FND_LOG.LEVEL_STATEMENT;
533 g_proc_level  :=      FND_LOG.LEVEL_PROCEDURE;
534 g_event_level :=      FND_LOG.LEVEL_EVENT;
535 g_excep_level :=      FND_LOG.LEVEL_EXCEPTION;
536 g_error_level :=      FND_LOG.LEVEL_ERROR;
537 g_unexp_level :=      FND_LOG.LEVEL_UNEXPECTED;
541 END igi_iac_book_controls_pkg;
538 g_path        :=      'IGI.PLSQL.igiiabcb.igi_iac_book_controls_pkg.';
539 
540 
542