DBA Data[Home] [Help]

PACKAGE BODY: APPS.GL_TRANS_STATUSES_PKG

Source


1 PACKAGE BODY GL_TRANS_STATUSES_PKG AS
2 /*  $Header: glitrstb.pls 120.3 2005/05/05 01:28:56 kvora ship $  */
3 
4 
5   --
6   -- PUBLIC FUNCTIONS
7   --
8 
9   PROCEDURE set_translation_status( x_chart_of_accounts_id NUMBER,
10 				 x_ccid	             NUMBER,
11 				 x_ledger_id         NUMBER,
12                                  x_currency          VARCHAR2,
13                                  x_period_year       NUMBER,
14                                  x_period_num        NUMBER,
15 				 x_period_name	     VARCHAR2,
16                                  x_last_updated_by   NUMBER,
17 				 x_usage_code        VARCHAR2) IS
18     bsv		VARCHAR2(25);
19 
20   BEGIN
21     IF (fnd_flex_keyval.validate_ccid('SQLGL',
22 				      'GL#',
23 				      x_chart_of_accounts_id,
24 				      x_ccid,
25 				      'GL_BALANCING') = TRUE) THEN
26     	bsv := fnd_flex_keyval.concatenated_values;
27     ELSE
28 	fnd_message.set_name('SQLGL', fnd_flex_keyval.encoded_error_message);
29 	app_exception.raise_exception;
30     END IF;
31 
32     UPDATE GL_TRANSLATION_STATUSES TS
33        SET TS.status  		= 'U',
34            TS.LAST_UPDATE_DATE  = sysdate,
35            TS.LAST_UPDATED_BY   = x_last_updated_by
36      WHERE TS.LEDGER_ID                = x_ledger_id
37        AND TS.BAL_SEG_VALUE            = bsv
38        AND TS.TARGET_CURRENCY          = x_currency
39        AND TS.AVERAGE_TRANSLATION_FLAG = decode(x_usage_code, 'A', 'Y', 'N')
40        AND TS.ACTUAL_FLAG              = 'A'
41        AND TS.period_name IN
42 	   ( SELECT PS.period_name
43 	     FROM   GL_PERIOD_STATUSES PS
44 	     WHERE  PS.application_id       = 101
45 	     AND    PS.ledger_id      = x_ledger_id
46 	     AND    PS.effective_period_num >=
47                     (x_period_year * 10000 + x_period_num));
48 
49   EXCEPTION
50     WHEN app_exceptions.application_exception THEN
51       RAISE;
52     WHEN NO_DATA_FOUND THEN
53       NULL;
54     WHEN OTHERS THEN
55       fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
56       fnd_message.set_token('PROCEDURE',
57         'GL_TRANS_STATUS_PKG.set_translation_status');
58       RAISE;
59 
60   END set_translation_status;
61 
62 END GL_TRANS_STATUSES_PKG;