DBA Data[Home] [Help]

PACKAGE BODY: APPS.GL_MOVEMERGE_ACCOUNTS_PKG

Source


1 PACKAGE BODY gl_movemerge_accounts_pkg AS
2 /* $Header: glimmacb.pls 120.3 2005/05/05 01:17:22 kvora ship $ */
3 
4  --
5  -- PRIVATE DATA DECLARATIONS
6  --
7 
8  -- throw away number value
9  dumdum NUMBER;
10 
11  --
12  -- PRIVATE METHODS
13  --
14 
15  --
16  -- PUBLIC METHODS
17  --
18 
19  PROCEDURE line_number_is_unique  (
20    mm_id  IN NUMBER,
21    lineno IN NUMBER,
22    row_id IN CHAR
23  ) IS
24    CURSOR line_count IS
25      SELECT 1
26      FROM DUAL
27      WHERE EXISTS (SELECT 1
28                    FROM gl_movemerge_accounts p
29                    WHERE movemerge_request_id = mm_id
30                    AND   line_number          = lineno
31                    AND   (rowid <> row_id OR row_id IS NULL));
32  BEGIN
33    OPEN line_count;
34    FETCH line_count INTO dumdum;
35    IF line_count%FOUND THEN
36      CLOSE line_count;
37      FND_MESSAGE.set_name('SQLGL', 'GL_DUPLICATE_JE_LINE_NUM');
38      APP_EXCEPTION.raise_exception;
39    ELSE
40      CLOSE line_count;
41    END IF;
42  EXCEPTION
43    WHEN app_exceptions.application_exception THEN
44      RAISE;
45    WHEN OTHERS THEN
46      fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
47      fnd_message.set_token(
48          'PROCEDURE',
49          'gl_movemerge_accounts_pkg.line_number_is_unique');
50      RAISE;
51  END line_number_is_unique;
52 
53 
54  PROCEDURE source_spec_is_unique (
55    mm_id IN NUMBER,     row_id IN CHAR,
56    ss1   IN VARCHAR2,   ss2    IN VARCHAR2,
57    ss3   IN VARCHAR2,   ss4    IN VARCHAR2,
58    ss5   IN VARCHAR2,   ss6    IN VARCHAR2,
59    ss7   IN VARCHAR2,   ss8    IN VARCHAR2,
60    ss9   IN VARCHAR2,   ss10   IN VARCHAR2,
61    ss11  IN VARCHAR2,   ss12   IN VARCHAR2,
62    ss13  IN VARCHAR2,   ss14   IN VARCHAR2,
63    ss15  IN VARCHAR2,   ss16   IN VARCHAR2,
64    ss17  IN VARCHAR2,   ss18   IN VARCHAR2,
65    ss19  IN VARCHAR2,   ss20   IN VARCHAR2,
66    ss21  IN VARCHAR2,   ss22   IN VARCHAR2,
67    ss23  IN VARCHAR2,   ss24   IN VARCHAR2,
68    ss25  IN VARCHAR2,   ss26   IN VARCHAR2,
69    ss27  IN VARCHAR2,   ss28   IN VARCHAR2,
70    ss29  IN VARCHAR2,   ss30   IN VARCHAR2
71  ) IS
72    CURSOR source_count IS
73      SELECT 1
74      FROM DUAL
75      WHERE EXISTS (SELECT 1
76                    FROM gl_movemerge_accounts p
77                    WHERE movemerge_request_id      = mm_id
78                    AND   (rowid <> row_id OR row_id IS NULL)
79                    AND   nvl(source_segment1, ' ') = nvl(ss1, ' ')
80                    AND   nvl(source_segment2, ' ') = nvl(ss2, ' ')
81                    AND   nvl(source_segment3, ' ') = nvl(ss3, ' ')
82                    AND   nvl(source_segment4, ' ') = nvl(ss4, ' ')
83                    AND   nvl(source_segment5, ' ') = nvl(ss5, ' ')
84                    AND   nvl(source_segment6, ' ') = nvl(ss6, ' ')
85                    AND   nvl(source_segment7, ' ') = nvl(ss7, ' ')
86                    AND   nvl(source_segment8, ' ') = nvl(ss8, ' ')
87                    AND   nvl(source_segment9, ' ') = nvl(ss9, ' ')
88                    AND   nvl(source_segment10,' ') = nvl(ss10,' ')
89                    AND   nvl(source_segment11,' ') = nvl(ss11,' ')
90                    AND   nvl(source_segment12,' ') = nvl(ss12,' ')
91                    AND   nvl(source_segment13,' ') = nvl(ss13,' ')
92                    AND   nvl(source_segment14,' ') = nvl(ss14,' ')
93                    AND   nvl(source_segment15,' ') = nvl(ss15,' ')
94                    AND   nvl(source_segment16,' ') = nvl(ss16,' ')
95                    AND   nvl(source_segment17,' ') = nvl(ss17,' ')
96                    AND   nvl(source_segment18,' ') = nvl(ss18,' ')
97                    AND   nvl(source_segment19,' ') = nvl(ss19,' ')
98                    AND   nvl(source_segment20,' ') = nvl(ss20,' ')
99                    AND   nvl(source_segment21,' ') = nvl(ss21,' ')
100                    AND   nvl(source_segment22,' ') = nvl(ss22,' ')
101                    AND   nvl(source_segment23,' ') = nvl(ss23,' ')
102                    AND   nvl(source_segment24,' ') = nvl(ss24,' ')
103                    AND   nvl(source_segment25,' ') = nvl(ss25,' ')
104                    AND   nvl(source_segment26,' ') = nvl(ss26,' ')
105                    AND   nvl(source_segment27,' ') = nvl(ss27,' ')
106                    AND   nvl(source_segment28,' ') = nvl(ss28,' ')
107                    AND   nvl(source_segment29,' ') = nvl(ss29,' ')
108                    AND   nvl(source_segment30,' ') = nvl(ss30,' '));
109  BEGIN
110    OPEN source_count;
111    FETCH source_count INTO dumdum;
112    IF source_count%FOUND THEN
113      CLOSE source_count;
114      FND_MESSAGE.set_name('SQLGL', 'GL_MM_SOURCE_NOT_UNIQUE');
115      APP_EXCEPTION.raise_exception;
116    ELSE
117      CLOSE source_count;
118    END IF;
119  EXCEPTION
120    WHEN app_exceptions.application_exception THEN
121      RAISE;
122    WHEN OTHERS THEN
123      fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
124      fnd_message.set_token(
125          'PROCEDURE',
126          'gl_movemerge_accounts_pkg.source_spec_is_unique');
127      RAISE;
128  END source_spec_is_unique;
129 
130 
131  PROCEDURE pre_insert (mm_id  IN NUMBER,
132   	               lineno IN NUMBER,
133     		       row_id IN CHAR ) IS
134  BEGIN
135    line_number_is_unique(mm_id, lineno, row_id);
136  END pre_insert;
137 
138 END gl_movemerge_accounts_pkg;