DBA Data[Home] [Help]

PACKAGE BODY: APPS.XLA_MPA_JLT_ASSGNS_F_PVT

Source


1 PACKAGE BODY XLA_MPA_JLT_ASSGNS_F_PVT AS
2 /* $Header: xlathmjl.pkb 120.0 2005/06/24 01:28:16 eklau noship $ */
3 
4 --=============================================================================
5 --               *********** Local Trace Routine **********
6 --=============================================================================
7 C_LEVEL_STATEMENT     CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
8 C_LEVEL_PROCEDURE     CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
9 C_LEVEL_EVENT         CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
10 C_LEVEL_EXCEPTION     CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
11 C_LEVEL_ERROR         CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
12 C_LEVEL_UNEXPECTED    CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
13 
14 C_LEVEL_LOG_DISABLED  CONSTANT NUMBER := 99;
15 C_DEFAULT_MODULE      CONSTANT VARCHAR2(240) := 'xla.plsql.XLA_MPA_JLT_ASSGNS_F_PVT';
16 
17 g_log_level           NUMBER;
18 g_log_enabled         BOOLEAN;
19 
20 PROCEDURE trace
21   (p_msg                        IN VARCHAR2
22   ,p_module                     IN VARCHAR2
23   ,p_level                      IN NUMBER) IS
24 BEGIN
25   ----------------------------------------------------------------------------
26   -- Following is for FND log.
27   ----------------------------------------------------------------------------
28   IF (p_msg IS NULL AND p_level >= g_log_level) THEN
29     fnd_log.message(p_level, p_module);
30   ELSIF p_level >= g_log_level THEN
31     fnd_log.string(p_level, p_module, p_msg);
32   END IF;
33 
34 EXCEPTION
35   WHEN xla_exceptions_pkg.application_exception THEN
36     RAISE;
37 
38   WHEN OTHERS THEN
39     xla_exceptions_pkg.raise_message
40       (p_location   => 'XLA_MPA_JLT_ASSGNS_F_PVT.trace');
41 END trace;
42 
43 
44 
45 PROCEDURE Insert_Row (
46     x_rowid				IN OUT NOCOPY VARCHAR2,
47     x_amb_context_code			IN VARCHAR2,
48     x_application_id			IN NUMBER,
49     x_event_class_code			IN VARCHAR2,
50     x_event_type_code			IN VARCHAR2,
51     x_line_definition_owner_code	IN VARCHAR2,
52     x_line_definition_code		IN VARCHAR2,
53     x_accounting_line_type_code		IN VARCHAR2,
54     x_accounting_line_code		IN VARCHAR2,
55     x_mpa_accounting_line_type_co	IN VARCHAR2,
56     x_mpa_accounting_line_code		IN VARCHAR2,
57     x_inherit_desc_flag			IN VARCHAR2,
58     x_description_type_code		IN VARCHAR2,
59     x_description_code			IN VARCHAR2,
60     x_creation_date			IN DATE,
61     x_created_by			IN NUMBER,
62     x_last_update_date			IN DATE,
63     x_last_updated_by			IN NUMBER,
64     x_last_update_login			IN NUMBER
65 ) IS
66 
67    Cursor C is
68    Select rowid
69      from xla_mpa_jlt_assgns
70     where amb_context_code		= x_amb_context_code
71       and application_id		= x_application_id
72       and event_type_code		= x_event_type_code
73       and line_definition_owner_code	= x_line_definition_owner_code
74       and line_definition_code		= x_line_definition_code
75       and accounting_line_type_code	= x_accounting_line_type_code
76       and accounting_line_code		= x_accounting_line_code
77       and mpa_accounting_line_type_code	= x_mpa_accounting_line_type_co
78       and mpa_accounting_line_code	= x_mpa_accounting_line_code;
79 
80    l_log_module                    VARCHAR2(240);
81 
82 BEGIN
83 
84    If (g_log_enabled) then
85       l_log_module := C_DEFAULT_MODULE||'.insert_row';
86    End If;
87 
88    If (C_LEVEL_PROCEDURE >= g_log_level) then
89       trace(p_msg    => 'BEGIN of procedure insert_row',
90             p_module => l_log_module,
91             p_level  => C_LEVEL_PROCEDURE);
92    End If;
93 
94    INSERT INTO XLA_MPA_JLT_ASSGNS (
95        AMB_CONTEXT_CODE,
96        APPLICATION_ID,
97        EVENT_CLASS_CODE,
98        EVENT_TYPE_CODE,
99        LINE_DEFINITION_OWNER_CODE,
100        LINE_DEFINITION_CODE,
101        ACCOUNTING_LINE_TYPE_CODE,
102        ACCOUNTING_LINE_CODE,
103        MPA_ACCOUNTING_LINE_TYPE_CODE,
104        MPA_ACCOUNTING_LINE_CODE,
105        INHERIT_DESC_FLAG,
106        DESCRIPTION_TYPE_CODE,
107        DESCRIPTION_CODE,
108        OBJECT_VERSION_NUMBER,
109        CREATION_DATE,
110        CREATED_BY,
111        LAST_UPDATE_DATE,
112        LAST_UPDATED_BY,
113        LAST_UPDATE_LOGIN
114     )
115     VALUES (
116        X_AMB_CONTEXT_CODE,
117        X_APPLICATION_ID,
118        X_EVENT_CLASS_CODE,
119        X_EVENT_TYPE_CODE,
120        X_LINE_DEFINITION_OWNER_CODE,
121        X_LINE_DEFINITION_CODE,
122        X_ACCOUNTING_LINE_TYPE_CODE,
123        X_ACCOUNTING_LINE_CODE,
124        X_MPA_ACCOUNTING_LINE_TYPE_CO,
125        X_MPA_ACCOUNTING_LINE_CODE,
126        X_INHERIT_DESC_FLAG,
127        X_DESCRIPTION_TYPE_CODE,
128        X_DESCRIPTION_CODE,
129        1,
130        X_CREATION_DATE,
131        X_CREATED_BY,
132        X_LAST_UPDATE_DATE,
133        X_LAST_UPDATED_BY,
134        X_LAST_UPDATE_LOGIN);
135 
136     Open  C;
137     Fetch C into x_rowid;
138 
139     If (C%NOTFOUND) then
140       Close C;
141       Raise NO_DATA_FOUND;
142    End If;
143    Close C;
144 
145    If (C_LEVEL_PROCEDURE >= g_log_level) then
146       trace(p_msg    => 'END of procedure insert_row',
147             p_module => l_log_module,
148             p_level  => C_LEVEL_PROCEDURE);
149    End If;
150 END Insert_Row;
151 
152 
153 PROCEDURE Update_Row (
154     x_amb_context_code			IN VARCHAR2,
155     x_application_id			IN NUMBER,
156     x_event_class_code			IN VARCHAR2,
157     x_event_type_code			IN VARCHAR2,
158     x_line_definition_owner_code	IN VARCHAR2,
159     x_line_definition_code		IN VARCHAR2,
160     x_accounting_line_type_code		IN VARCHAR2,
161     x_accounting_line_code		IN VARCHAR2,
162     x_mpa_accounting_line_type_co	IN VARCHAR2,
163     x_mpa_accounting_line_code		IN VARCHAR2,
164     x_inherit_desc_flag			IN VARCHAR2,
165     x_description_type_code		IN VARCHAR2,
166     x_description_code			IN VARCHAR2,
167     x_last_update_date			IN DATE,
168     x_last_updated_by			IN NUMBER,
169     x_last_update_login			IN NUMBER
170 ) IS
171 
172    l_log_module		varchar2(240);
173 
174 BEGIN
175 
176    IF g_log_enabled THEN
177      l_log_module := C_DEFAULT_MODULE||'.update_row';
178    END IF;
179 
180    IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
181       trace(p_msg    => 'BEGIN of procedure update_row',
182             p_module => l_log_module,
183             p_level  => C_LEVEL_PROCEDURE);
184    END IF;
185 
186    UPDATE XLA_MPA_JLT_ASSGNS
187       SET inherit_desc_flag	= x_inherit_desc_flag,
188           description_type_code	= x_description_type_code,
189           description_code	= x_description_code,
190 	  last_update_date	= x_last_update_date,
191 	  object_version_number	= object_version_number + 1,
192 	  last_updated_by	= x_last_updated_by,
193 	  last_update_login	= x_last_update_login
194     WHERE amb_context_code		= x_amb_context_code
195       and application_id		= x_application_id
196       and event_type_code		= x_event_type_code
197       and line_definition_owner_code	= x_line_definition_owner_code
198       and line_definition_code		= x_line_definition_code
199       and accounting_line_type_code	= x_accounting_line_type_code
200       and accounting_line_code		= x_accounting_line_code
201       and mpa_accounting_line_type_code	= x_mpa_accounting_line_type_co
202       and mpa_accounting_line_code	= x_mpa_accounting_line_code;
203 
204 
205    IF ( SQL%NOTFOUND ) THEN
206        RAISE NO_DATA_FOUND;
207    END IF;
208 
209    IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
210      trace(p_msg    => 'END of procedure update_row',
211            p_module => l_log_module,
212            p_level  => C_LEVEL_PROCEDURE);
213    END IF;
214 
215 END Update_Row;
216 
217 
218 PROCEDURE Lock_Row (
219     x_amb_context_code			IN VARCHAR2,
220     x_application_id			IN NUMBER,
221     x_event_type_code			IN VARCHAR2,
222     x_line_definition_owner_code	IN VARCHAR2,
223     x_line_definition_code		IN VARCHAR2,
224     x_accounting_line_type_code		IN VARCHAR2,
225     x_accounting_line_code		IN VARCHAR2,
226     x_mpa_accounting_line_type_co	IN VARCHAR2,
227     x_mpa_accounting_line_code		IN VARCHAR2,
228     x_description_type_code		IN VARCHAR2,
229     x_description_code			IN VARCHAR2
230 ) IS
231 
232    Cursor C is
233    Select *
234      from xla_mpa_jlt_assgns
235     where amb_context_code			= x_amb_context_code
236       and application_id			= x_application_id
237       and event_type_code			= x_event_type_code
238       and line_definition_owner_code		= x_line_definition_owner_code
239       and line_definition_code			= x_line_definition_code
240       and accounting_line_type_code		= x_accounting_line_type_code
241       and accounting_line_code			= x_accounting_line_code
242       and mpa_accounting_line_type_code		= x_mpa_accounting_line_type_co
243       and mpa_accounting_line_code		= x_mpa_accounting_line_code
244       for update of event_class_code nowait;
245 
246    l_rec		C%ROWTYPE;
247    l_log_module		varchar2(240);
248 
249 BEGIN
250    If g_log_enabled then
251       l_log_module := C_DEFAULT_MODULE||'.lock_row';
252    End If;
253 
254    If (C_LEVEL_PROCEDURE >= g_log_level) then
255       trace(p_msg    => 'BEGIN of procedure lock_row',
256             p_module => l_log_module,
257             p_level  => C_LEVEL_PROCEDURE);
258    End If;
259 
260    Open  C;
261    Fetch C into l_rec;
262    If (C%NOTFOUND) then
263       Close C;
264       fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
265       app_exception.raise_exception;
266    End If;
267    Close C;
268 
269    IF (nvl(l_rec.description_type_code,'@') = nvl(x_description_type_code,'@') AND
270        nvl(l_rec.description_code,'@') = nvl(x_description_code,'@')) then
271       NULL;
272    ELSE
273       fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
274       app_exception.raise_exception;
275    END IF;
276 
277    IF (C_LEVEL_PROCEDURE >= g_log_level) THEN
278       trace(p_msg    => 'END of procedure lock_row',
279             p_module => l_log_module,
280             p_level  => C_LEVEL_PROCEDURE);
281    END IF;
282 
283 END Lock_Row;
284 
285 
286 PROCEDURE Delete_Row (
287     x_amb_context_code			IN VARCHAR2,
288     x_application_id			IN NUMBER,
289     x_event_type_code			IN VARCHAR2,
290     x_line_definition_owner_code	IN VARCHAR2,
291     x_line_definition_code		IN VARCHAR2,
292     x_accounting_line_type_code		IN VARCHAR2,
293     x_accounting_line_code		IN VARCHAR2,
294     x_mpa_accounting_line_type_co	IN VARCHAR2,
295     x_mpa_accounting_line_code		IN VARCHAR2
296 ) IS
297 
298    l_log_module       VARCHAR2(240);
299 
300 BEGIN
301    If g_log_enabled then
302       l_log_module := C_DEFAULT_MODULE||'.delete_row';
303    End If;
304 
305    If (C_LEVEL_PROCEDURE >= g_log_level) then
306       trace(p_msg    => 'BEGIN of procedure delete_row',
307             p_module => l_log_module,
308             p_level  => C_LEVEL_PROCEDURE);
309    End If;
310 
311    DELETE from XLA_MPA_JLT_ASSGNS
312     where amb_context_code		= x_amb_context_code
313       and application_id		= x_application_id
314       and event_type_code		= x_event_type_code
315       and line_definition_owner_code	= x_line_definition_owner_code
316       and line_definition_code		= x_line_definition_code
317       and accounting_line_type_code	= x_accounting_line_type_code
318       and accounting_line_code		= x_accounting_line_code
319       and mpa_accounting_line_type_code	= x_mpa_accounting_line_type_co
320       and mpa_accounting_line_code	= x_mpa_accounting_line_code;
321 
322     If ( SQL%NOTFOUND ) then
323        Raise NO_DATA_FOUND;
324     End If;
325 
326     If (C_LEVEL_PROCEDURE >= g_log_level) then
327        trace(p_msg    => 'END of procedure delete_row',
328              p_module => l_log_module,
329              p_level  => C_LEVEL_PROCEDURE);
330     End If;
331 
332 END Delete_Row;
333 
334 
335 --=============================================================================
336 --
337 -- Following code is executed when the package body is referenced for the first
338 -- time
339 --
340 --=============================================================================
341 
342 BEGIN
343    g_log_level          := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
344    g_log_enabled        := fnd_log.test
345                           (log_level  => g_log_level
346                           ,module     => C_DEFAULT_MODULE);
347 
348    IF NOT g_log_enabled THEN
349       g_log_level := C_LEVEL_LOG_DISABLED;
350    END IF;
351 
352 END XLA_MPA_JLT_ASSGNS_F_PVT;