[Home] [Help]
PACKAGE BODY: APPS.OZF_ACCTNG_EVENTS_PVT
Source
1 PACKAGE BODY OZF_Acctng_Events_PVT as
2 /* $Header: ozfvaceb.pls 115.4 2004/07/13 10:26:03 upoluri ship $ */
3 -- ===============================================================
4 -- Start of Comments
5 -- Package name
6 -- OZF_Acctng_Events_PVT
7 -- Purpose
8 --
9 -- History
10 --
11 -- NOTE
12 --
13 -- End of Comments
14 -- ===============================================================
15
16
17 G_PKG_NAME CONSTANT VARCHAR2(30):= 'OZF_Acctng_Events_PVT';
18 G_FILE_NAME CONSTANT VARCHAR2(12) := 'ozfvaceb.pls';
19
20 G_DEBUG BOOLEAN := FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_debug_high);
21
22 -- Hint: Primary key needs to be returned.
23 PROCEDURE Create_Acctng_Events(
24 p_api_version_number IN NUMBER,
25 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
26 p_commit IN VARCHAR2 := FND_API.G_FALSE,
27 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
28
29 x_return_status OUT NOCOPY VARCHAR2,
30 x_msg_count OUT NOCOPY NUMBER,
31 x_msg_data OUT NOCOPY VARCHAR2,
32
33 p_acctng_event_rec IN acctng_event_rec_type := g_miss_acctng_event_rec,
34 x_accounting_event_id OUT NOCOPY NUMBER
35 )
36
37 IS
38 L_API_NAME CONSTANT VARCHAR2(30) := 'Create_Acctng_Events';
39 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
40 l_return_status_full VARCHAR2(1);
41 l_object_version_number NUMBER := 1;
42 l_org_id NUMBER := p_acctng_event_rec.org_id;
43 l_ACCOUNTING_EVENT_ID NUMBER;
44 l_dummy NUMBER;
45
46 CURSOR c_id IS
47 SELECT OZF_ACCTNG_EVENTS_ALL_s.NEXTVAL
48 FROM dual;
49
50 CURSOR c_id_exists (l_id IN NUMBER) IS
51 SELECT count(accounting_event_id) FROM OZF_ACCTNG_EVENTS_ALL
52 WHERE ACCOUNTING_EVENT_ID = l_id;
53
54 BEGIN
55 -- Standard Start of API savepoint
56 SAVEPOINT CREATE_Acctng_Events_PVT;
57
58 -- Standard call to check for call compatibility.
59 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
60 p_api_version_number,
61 l_api_name,
62 G_PKG_NAME)
63 THEN
64 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
65 END IF;
66
67 -- Initialize message list if p_init_msg_list is set to TRUE.
68 IF FND_API.to_Boolean( p_init_msg_list )
69 THEN
70 FND_MSG_PUB.initialize;
71 END IF;
72
73 -- Debug Message
74 IF g_debug THEN
75 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
76 END IF;
77
78
79 -- Initialize API return status to SUCCESS
80 x_return_status := FND_API.G_RET_STS_SUCCESS;
81
82 -- Local variable initialization
83
84 IF p_acctng_event_rec.ACCOUNTING_EVENT_ID IS NULL OR p_acctng_event_rec.ACCOUNTING_EVENT_ID = FND_API.g_miss_num THEN
85 LOOP
86 l_dummy := NULL;
87 OPEN c_id;
88 FETCH c_id INTO l_ACCOUNTING_EVENT_ID;
89 CLOSE c_id;
90
91 OPEN c_id_exists(l_ACCOUNTING_EVENT_ID);
92 FETCH c_id_exists INTO l_dummy;
93 CLOSE c_id_exists;
94 -- Exit when the identifier uniqueness is established
95 EXIT WHEN l_dummy = 0;
96 END LOOP;
97 END IF;
98
99 -- =========================================================================
100 -- Validate Environment
101 -- =========================================================================
102
103 IF FND_GLOBAL.User_Id IS NULL
104 THEN
105 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_USER_PROFILE_MISSING');
106 RAISE FND_API.G_EXC_ERROR;
107 END IF;
108
109 /*
110 IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
111 THEN
112 -- Debug message
113 IF g_debug THEN
114 OZF_UTILITY_PVT.debug_message('Private API: Validate_Acctng_Events');
115 END IF;
116
117 -- Invoke validation procedures
118 Validate_acctng_events(
119 p_api_version_number => 1.0,
120 p_init_msg_list => FND_API.G_FALSE,
121 p_validation_level => p_validation_level,
122 p_acctng_event_rec => p_acctng_event_rec,
123 x_return_status => x_return_status,
124 x_msg_count => x_msg_count,
125 x_msg_data => x_msg_data);
126 END IF;
127
128 IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
129 RAISE FND_API.G_EXC_ERROR;
130 END IF;
131 */
132
133 -- Debug Message
134 IF g_debug THEN
135 OZF_UTILITY_PVT.debug_message( 'Private API: Calling create table handler');
136 END IF;
137
138 -- Invoke table handler(OZF_ACCTNG_EVENTS_PKG.Insert_Row)
139 OZF_ACCTNG_EVENTS_PKG.Insert_Row(
140 px_accounting_event_id => l_accounting_event_id,
141 px_object_version_number => l_object_version_number,
142 p_last_update_date => SYSDATE,
143 p_last_updated_by => FND_GLOBAL.USER_ID,
144 p_creation_date => SYSDATE,
145 p_created_by => FND_GLOBAL.USER_ID,
146 p_last_update_login => FND_GLOBAL.CONC_LOGIN_ID,
147 p_request_id => p_acctng_event_rec.request_id,
148 p_program_application_id => p_acctng_event_rec.program_application_id,
149 p_program_update_date => p_acctng_event_rec.program_update_date,
150 p_program_id => p_acctng_event_rec.program_id,
151 p_accounting_date => p_acctng_event_rec.accounting_date,
152 p_event_number => p_acctng_event_rec.event_number,
153 p_event_status_code => p_acctng_event_rec.event_status_code,
154 p_event_type_code => p_acctng_event_rec.event_type_code,
155 px_org_id => l_org_id,
156 p_source_id => p_acctng_event_rec.source_id,
157 p_source_table => p_acctng_event_rec.source_table,
158 p_attribute_category => p_acctng_event_rec.attribute_category,
159 p_attribute1 => p_acctng_event_rec.attribute1,
160 p_attribute2 => p_acctng_event_rec.attribute2,
161 p_attribute3 => p_acctng_event_rec.attribute3,
162 p_attribute4 => p_acctng_event_rec.attribute4,
163 p_attribute5 => p_acctng_event_rec.attribute5,
164 p_attribute6 => p_acctng_event_rec.attribute6,
165 p_attribute7 => p_acctng_event_rec.attribute7,
166 p_attribute8 => p_acctng_event_rec.attribute8,
167 p_attribute9 => p_acctng_event_rec.attribute9,
168 p_attribute10 => p_acctng_event_rec.attribute10,
169 p_attribute11 => p_acctng_event_rec.attribute11,
170 p_attribute12 => p_acctng_event_rec.attribute12,
171 p_attribute13 => p_acctng_event_rec.attribute13,
172 p_attribute14 => p_acctng_event_rec.attribute14,
173 p_attribute15 => p_acctng_event_rec.attribute15);
174 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
175 RAISE FND_API.G_EXC_ERROR;
176 END IF;
177 x_accounting_event_id := l_accounting_event_id;
178 --
179 -- End of API body
180 --
181
182 -- Standard check for p_commit
183 IF FND_API.to_Boolean( p_commit )
184 THEN
185 COMMIT WORK;
186 END IF;
187
188 -- Debug Message
189 IF g_debug THEN
190 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
191 END IF;
192
193 -- Standard call to get message count and if count is 1, get message info.
194 FND_MSG_PUB.Count_And_Get
195 (p_count => x_msg_count,
196 p_data => x_msg_data
197 );
198 EXCEPTION
199 WHEN OZF_Utility_PVT.resource_locked THEN
200 x_return_status := FND_API.g_ret_sts_error;
201 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_API_RESOURCE_LOCKED');
202 WHEN FND_API.G_EXC_ERROR THEN
203 ROLLBACK TO CREATE_Acctng_Events_PVT;
204 x_return_status := FND_API.G_RET_STS_ERROR;
205 -- Standard call to get message count and if count=1, get the message
206 FND_MSG_PUB.Count_And_Get (
207 p_encoded => FND_API.G_FALSE,
208 p_count => x_msg_count,
209 p_data => x_msg_data
210 );
211 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
212 ROLLBACK TO CREATE_Acctng_Events_PVT;
213 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
214 -- Standard call to get message count and if count=1, get the message
215 FND_MSG_PUB.Count_And_Get (
216 p_encoded => FND_API.G_FALSE,
217 p_count => x_msg_count,
218 p_data => x_msg_data
219 );
220 WHEN OTHERS THEN
221 ROLLBACK TO CREATE_Acctng_Events_PVT;
222 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
223 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
224 THEN
225 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
226 END IF;
227 -- Standard call to get message count and if count=1, get the message
228 FND_MSG_PUB.Count_And_Get (
229 p_encoded => FND_API.G_FALSE,
230 p_count => x_msg_count,
231 p_data => x_msg_data
232 );
233 End Create_Acctng_Events;
234
235 PROCEDURE Update_Acctng_Events(
236 p_api_version_number IN NUMBER,
237 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
238 p_commit IN VARCHAR2 := FND_API.G_FALSE,
239 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
240
241 x_return_status OUT NOCOPY VARCHAR2,
242 x_msg_count OUT NOCOPY NUMBER,
243 x_msg_data OUT NOCOPY VARCHAR2,
244
245 p_acctng_event_rec IN acctng_event_rec_type,
246 x_object_version_number OUT NOCOPY NUMBER
247 )
248
249 IS
250
251 CURSOR c_get_acctng_events(p_accounting_event_id NUMBER) IS
252 SELECT *
253 FROM OZF_ACCTNG_EVENTS_ALL
254 WHERE accounting_event_id = p_accounting_event_id;
255
256 L_API_NAME CONSTANT VARCHAR2(30) := 'Update_Acctng_Events';
257 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
258 -- Local Variables
259 l_object_version_number NUMBER;
260 l_ACCOUNTING_EVENT_ID NUMBER;
261 l_ref_acctng_event_rec c_get_Acctng_Events%ROWTYPE ;
262 l_tar_acctng_event_rec OZF_Acctng_Events_PVT.acctng_event_rec_type := P_acctng_event_rec;
263 l_rowid ROWID;
264
265 BEGIN
266 -- Standard Start of API savepoint
267 SAVEPOINT UPDATE_Acctng_Events_PVT;
268
269 -- Standard call to check for call compatibility.
270 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
271 p_api_version_number,
272 l_api_name,
273 G_PKG_NAME)
274 THEN
275 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
276 END IF;
277
278 -- Initialize message list if p_init_msg_list is set to TRUE.
279 IF FND_API.to_Boolean( p_init_msg_list )
280 THEN
281 FND_MSG_PUB.initialize;
282 END IF;
283
284 -- Debug Message
285 IF g_debug THEN
286 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
287 END IF;
288
289
290 -- Initialize API return status to SUCCESS
291 x_return_status := FND_API.G_RET_STS_SUCCESS;
292
293 -- Debug Message
294 IF g_debug THEN
295 OZF_UTILITY_PVT.debug_message('Private API: - Open Cursor to Select');
296 END IF;
297
298 /*
299 OPEN c_get_Acctng_Events( l_tar_acctng_event_rec.accounting_event_id);
300
301 FETCH c_get_Acctng_Events INTO l_ref_acctng_event_rec ;
302
303 If ( c_get_Acctng_Events%NOTFOUND) THEN
304 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_API_RECORD_NOT_FOUND');
305 RAISE FND_API.G_EXC_ERROR;
306 END IF;
307 -- Debug Message
308 IF g_debug THEN
309 OZF_UTILITY_PVT.debug_message('Private API: - Close Cursor');
310 END IF;
311 CLOSE c_get_Acctng_Events;
312 */
313
314
315 If (l_tar_acctng_event_rec.object_version_number is NULL or
316 l_tar_acctng_event_rec.object_version_number = FND_API.G_MISS_NUM ) Then
317 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_API_NO_OBJ_VER_NUM');
318 raise FND_API.G_EXC_ERROR;
319 End if;
320 -- Check Whether record has been changed by someone else
321 If (l_tar_acctng_event_rec.object_version_number <> l_ref_acctng_event_rec.object_version_number) Then
322 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_API_RESOURCE_LOCKED');
323 raise FND_API.G_EXC_ERROR;
324 End if;
325 IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
326 THEN
327 -- Debug message
328 IF g_debug THEN
329 OZF_UTILITY_PVT.debug_message('Private API: Validate_Acctng_Events');
330 END IF;
331
332 -- Invoke validation procedures
333 Validate_acctng_events(
334 p_api_version_number => 1.0,
335 p_init_msg_list => FND_API.G_FALSE,
336 p_validation_level => p_validation_level,
337 p_acctng_event_rec => p_acctng_event_rec,
338 x_return_status => x_return_status,
339 x_msg_count => x_msg_count,
340 x_msg_data => x_msg_data);
341 END IF;
342
343 IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
344 RAISE FND_API.G_EXC_ERROR;
345 END IF;
346
347
348 -- Debug Message
349 IF g_debug THEN
350 OZF_UTILITY_PVT.debug_message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Private API: Calling update table handler');
351 END IF;
352
353 -- Invoke table handler(OZF_ACCTNG_EVENTS_PKG.Update_Row)
354 OZF_ACCTNG_EVENTS_PKG.Update_Row(
355 p_accounting_event_id => p_acctng_event_rec.accounting_event_id,
356 p_object_version_number => p_acctng_event_rec.object_version_number,
357 p_last_update_date => SYSDATE,
358 p_last_updated_by => FND_GLOBAL.USER_ID,
359 p_last_update_login => FND_GLOBAL.CONC_LOGIN_ID,
360 p_request_id => p_acctng_event_rec.request_id,
361 p_program_application_id => p_acctng_event_rec.program_application_id,
362 p_program_update_date => p_acctng_event_rec.program_update_date,
363 p_program_id => p_acctng_event_rec.program_id,
364 p_accounting_date => p_acctng_event_rec.accounting_date,
365 p_event_number => p_acctng_event_rec.event_number,
366 p_event_status_code => p_acctng_event_rec.event_status_code,
367 p_event_type_code => p_acctng_event_rec.event_type_code,
368 p_org_id => p_acctng_event_rec.org_id,
369 p_source_id => p_acctng_event_rec.source_id,
370 p_source_table => p_acctng_event_rec.source_table,
371 p_attribute_category => p_acctng_event_rec.attribute_category,
372 p_attribute1 => p_acctng_event_rec.attribute1,
373 p_attribute2 => p_acctng_event_rec.attribute2,
374 p_attribute3 => p_acctng_event_rec.attribute3,
375 p_attribute4 => p_acctng_event_rec.attribute4,
376 p_attribute5 => p_acctng_event_rec.attribute5,
377 p_attribute6 => p_acctng_event_rec.attribute6,
378 p_attribute7 => p_acctng_event_rec.attribute7,
379 p_attribute8 => p_acctng_event_rec.attribute8,
380 p_attribute9 => p_acctng_event_rec.attribute9,
381 p_attribute10 => p_acctng_event_rec.attribute10,
382 p_attribute11 => p_acctng_event_rec.attribute11,
383 p_attribute12 => p_acctng_event_rec.attribute12,
384 p_attribute13 => p_acctng_event_rec.attribute13,
385 p_attribute14 => p_acctng_event_rec.attribute14,
386 p_attribute15 => p_acctng_event_rec.attribute15);
387 --
388 -- End of API body.
389 --
390
391 -- Standard check for p_commit
392 IF FND_API.to_Boolean( p_commit )
393 THEN
394 COMMIT WORK;
395 END IF;
396
397
398 -- Debug Message
399 IF g_debug THEN
400 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
401 END IF;
402
403 -- Standard call to get message count and if count is 1, get message info.
404 FND_MSG_PUB.Count_And_Get
405 (p_count => x_msg_count,
406 p_data => x_msg_data
407 );
408 EXCEPTION
409
410 WHEN OZF_Utility_PVT.resource_locked THEN
411 x_return_status := FND_API.g_ret_sts_error;
412 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_API_RESOURCE_LOCKED');
413
414 WHEN FND_API.G_EXC_ERROR THEN
415 ROLLBACK TO UPDATE_Acctng_Events_PVT;
416 x_return_status := FND_API.G_RET_STS_ERROR;
417 -- Standard call to get message count and if count=1, get the message
418 FND_MSG_PUB.Count_And_Get (
419 p_encoded => FND_API.G_FALSE,
420 p_count => x_msg_count,
421 p_data => x_msg_data
422 );
423
424 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
425 ROLLBACK TO UPDATE_Acctng_Events_PVT;
426 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
427 -- Standard call to get message count and if count=1, get the message
428 FND_MSG_PUB.Count_And_Get (
429 p_encoded => FND_API.G_FALSE,
430 p_count => x_msg_count,
431 p_data => x_msg_data
432 );
433
434 WHEN OTHERS THEN
435 ROLLBACK TO UPDATE_Acctng_Events_PVT;
436 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
437 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
438 THEN
439 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
440 END IF;
441 -- Standard call to get message count and if count=1, get the message
442 FND_MSG_PUB.Count_And_Get (
443 p_encoded => FND_API.G_FALSE,
444 p_count => x_msg_count,
445 p_data => x_msg_data
446 );
447 End Update_Acctng_Events;
448
449
450 PROCEDURE Delete_Acctng_Events(
451 p_api_version_number IN NUMBER,
452 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
453 p_commit IN VARCHAR2 := FND_API.G_FALSE,
454 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
455 x_return_status OUT NOCOPY VARCHAR2,
456 x_msg_count OUT NOCOPY NUMBER,
457 x_msg_data OUT NOCOPY VARCHAR2,
458 p_accounting_event_id IN NUMBER,
459 p_object_version_number IN NUMBER
460 )
461
462 IS
463 L_API_NAME CONSTANT VARCHAR2(30) := 'Delete_Acctng_Events';
464 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
465 l_object_version_number NUMBER;
466
467 BEGIN
468 -- Standard Start of API savepoint
469 SAVEPOINT DELETE_Acctng_Events_PVT;
470
471 -- Standard call to check for call compatibility.
472 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
473 p_api_version_number,
474 l_api_name,
475 G_PKG_NAME)
476 THEN
477 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
478 END IF;
479
480 -- Initialize message list if p_init_msg_list is set to TRUE.
481 IF FND_API.to_Boolean( p_init_msg_list )
482 THEN
483 FND_MSG_PUB.initialize;
484 END IF;
485
486 -- Debug Message
487 IF g_debug THEN
488 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
489 END IF;
490
491
492 -- Initialize API return status to SUCCESS
493 x_return_status := FND_API.G_RET_STS_SUCCESS;
494
495 --
496 -- Api body
497 --
498 -- Debug Message
499 IF g_debug THEN
500 OZF_UTILITY_PVT.debug_message( 'Private API: Calling delete table handler');
501 END IF;
502
503 -- Invoke table handler(OZF_ACCTNG_EVENTS_PKG.Delete_Row)
504 OZF_ACCTNG_EVENTS_PKG.Delete_Row(
505 p_ACCOUNTING_EVENT_ID => p_ACCOUNTING_EVENT_ID);
506 --
507 -- End of API body
508 --
509
510 -- Standard check for p_commit
511 IF FND_API.to_Boolean( p_commit )
512 THEN
513 COMMIT WORK;
514 END IF;
515
516
517 -- Debug Message
518 IF g_debug THEN
519 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
520 END IF;
521
522 -- Standard call to get message count and if count is 1, get message info.
523 FND_MSG_PUB.Count_And_Get
524 (p_count => x_msg_count,
525 p_data => x_msg_data
526 );
527 EXCEPTION
528
529 WHEN OZF_Utility_PVT.resource_locked THEN
530 x_return_status := FND_API.g_ret_sts_error;
531 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_API_RESOURCE_LOCKED');
532
533 WHEN FND_API.G_EXC_ERROR THEN
534 ROLLBACK TO DELETE_Acctng_Events_PVT;
535 x_return_status := FND_API.G_RET_STS_ERROR;
536 -- Standard call to get message count and if count=1, get the message
537 FND_MSG_PUB.Count_And_Get (
538 p_encoded => FND_API.G_FALSE,
539 p_count => x_msg_count,
540 p_data => x_msg_data
541 );
542
543 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
544 ROLLBACK TO DELETE_Acctng_Events_PVT;
545 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
546 -- Standard call to get message count and if count=1, get the message
547 FND_MSG_PUB.Count_And_Get (
548 p_encoded => FND_API.G_FALSE,
549 p_count => x_msg_count,
550 p_data => x_msg_data
551 );
552
553 WHEN OTHERS THEN
554 ROLLBACK TO DELETE_Acctng_Events_PVT;
555 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
556 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
557 THEN
558 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
559 END IF;
560 -- Standard call to get message count and if count=1, get the message
561 FND_MSG_PUB.Count_And_Get (
562 p_encoded => FND_API.G_FALSE,
563 p_count => x_msg_count,
564 p_data => x_msg_data
565 );
566 End Delete_Acctng_Events;
567
568
569
570 -- Hint: Primary key needs to be returned.
571 PROCEDURE Lock_Acctng_Events(
572 p_api_version_number IN NUMBER,
573 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
574
575 x_return_status OUT NOCOPY VARCHAR2,
576 x_msg_count OUT NOCOPY NUMBER,
577 x_msg_data OUT NOCOPY VARCHAR2,
578
579 p_accounting_event_id IN NUMBER,
580 p_object_version IN NUMBER
581 )
582
583 IS
584 L_API_NAME CONSTANT VARCHAR2(30) := 'Lock_Acctng_Events';
585 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
586 L_FULL_NAME CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
587 l_ACCOUNTING_EVENT_ID NUMBER;
588
589 CURSOR c_Acctng_Events IS
590 SELECT ACCOUNTING_EVENT_ID
591 FROM OZF_ACCTNG_EVENTS_ALL
592 WHERE ACCOUNTING_EVENT_ID = p_ACCOUNTING_EVENT_ID
593 AND object_version_number = p_object_version
594 FOR UPDATE NOWAIT;
595
596 BEGIN
597
598 -- Debug Message
599 IF g_debug THEN
600 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
601 END IF;
602
603 -- Initialize message list if p_init_msg_list is set to TRUE.
604 IF FND_API.to_Boolean( p_init_msg_list )
605 THEN
606 FND_MSG_PUB.initialize;
607 END IF;
608
609 -- Standard call to check for call compatibility.
610 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
611 p_api_version_number,
612 l_api_name,
613 G_PKG_NAME)
614 THEN
615 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
616 END IF;
617
618
619 -- Initialize API return status to SUCCESS
620 x_return_status := FND_API.G_RET_STS_SUCCESS;
621
622
623 ------------------------ lock -------------------------
624
625 IF g_debug THEN
626 OZF_Utility_PVT.debug_message(l_full_name||': start');
627 END IF;
628 OPEN c_Acctng_Events;
629
630 FETCH c_Acctng_Events INTO l_ACCOUNTING_EVENT_ID;
631
632 IF (c_Acctng_Events%NOTFOUND) THEN
633 CLOSE c_Acctng_Events;
634 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
635 FND_MESSAGE.set_name('OZF', 'OZF_API_RECORD_NOT_FOUND');
636 FND_MSG_PUB.add;
637 END IF;
638 RAISE FND_API.g_exc_error;
639 END IF;
640
641 CLOSE c_Acctng_Events;
642
643 -------------------- finish --------------------------
644 FND_MSG_PUB.count_and_get(
645 p_encoded => FND_API.g_false,
646 p_count => x_msg_count,
647 p_data => x_msg_data);
648 IF g_debug THEN
649 OZF_Utility_PVT.debug_message(l_full_name ||': end');
650 END IF;
651 EXCEPTION
652
653 WHEN OZF_Utility_PVT.resource_locked THEN
654 x_return_status := FND_API.g_ret_sts_error;
655 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_API_RESOURCE_LOCKED');
656
657 WHEN FND_API.G_EXC_ERROR THEN
658 ROLLBACK TO LOCK_Acctng_Events_PVT;
659 x_return_status := FND_API.G_RET_STS_ERROR;
660 -- Standard call to get message count and if count=1, get the message
661 FND_MSG_PUB.Count_And_Get (
662 p_encoded => FND_API.G_FALSE,
663 p_count => x_msg_count,
664 p_data => x_msg_data
665 );
666
667 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
668 ROLLBACK TO LOCK_Acctng_Events_PVT;
669 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
670 -- Standard call to get message count and if count=1, get the message
671 FND_MSG_PUB.Count_And_Get (
672 p_encoded => FND_API.G_FALSE,
673 p_count => x_msg_count,
674 p_data => x_msg_data
675 );
676
677 WHEN OTHERS THEN
678 ROLLBACK TO LOCK_Acctng_Events_PVT;
679 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
680 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
681 THEN
682 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
683 END IF;
684 -- Standard call to get message count and if count=1, get the message
685 FND_MSG_PUB.Count_And_Get (
686 p_encoded => FND_API.G_FALSE,
687 p_count => x_msg_count,
688 p_data => x_msg_data
689 );
690 End Lock_Acctng_Events;
691
692
693 PROCEDURE check_acctng_event_uk_items(
694 p_acctng_event_rec IN acctng_event_rec_type,
695 p_validation_mode IN VARCHAR2 := JTF_PLSQL_API.g_create,
696 x_return_status OUT NOCOPY VARCHAR2)
697 IS
698 l_valid_flag VARCHAR2(1);
699
700 BEGIN
701 x_return_status := FND_API.g_ret_sts_success;
702 IF p_validation_mode = JTF_PLSQL_API.g_create THEN
703 l_valid_flag := OZF_Utility_PVT.check_uniqueness(
704 'OZF_ACCTNG_EVENTS_ALL',
705 'ACCOUNTING_EVENT_ID = ''' || p_acctng_event_rec.ACCOUNTING_EVENT_ID ||''''
706 );
707 ELSE
708 l_valid_flag := OZF_Utility_PVT.check_uniqueness(
709 'OZF_ACCTNG_EVENTS_ALL',
710 'ACCOUNTING_EVENT_ID = ''' || p_acctng_event_rec.ACCOUNTING_EVENT_ID ||
711 ''' AND ACCOUNTING_EVENT_ID <> ' || p_acctng_event_rec.ACCOUNTING_EVENT_ID
712 );
713 END IF;
714
715 IF l_valid_flag = FND_API.g_false THEN
716 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_ACCT_EVENT_ID_DUPLICATE');
717 x_return_status := FND_API.g_ret_sts_error;
718 RETURN;
719 END IF;
720
721 END check_acctng_event_uk_items;
722
723 PROCEDURE check_acctng_event_req_items(
724 p_acctng_event_rec IN acctng_event_rec_type,
725 p_validation_mode IN VARCHAR2 := JTF_PLSQL_API.g_create,
726 x_return_status OUT NOCOPY VARCHAR2
727 )
728 IS
729 BEGIN
730 x_return_status := FND_API.g_ret_sts_success;
731
732 IF p_validation_mode = JTF_PLSQL_API.g_create THEN
733
734
735 IF p_acctng_event_rec.accounting_event_id = FND_API.g_miss_num OR p_acctng_event_rec.accounting_event_id IS NULL THEN
736 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'ACCOUNTING_EVENT_ID' );
737 x_return_status := FND_API.g_ret_sts_error;
738 RETURN;
739 END IF;
740
741
742 IF p_acctng_event_rec.object_version_number = FND_API.g_miss_num OR p_acctng_event_rec.object_version_number IS NULL THEN
743 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'OBJECT_VERSION_NUMBER' );
744 x_return_status := FND_API.g_ret_sts_error;
745 RETURN;
746 END IF;
747
748
749 IF p_acctng_event_rec.last_update_date = FND_API.g_miss_date OR p_acctng_event_rec.last_update_date IS NULL THEN
750 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'LAST_UPDATE_DATE' );
751 x_return_status := FND_API.g_ret_sts_error;
752 RETURN;
753 END IF;
754
755
756 IF p_acctng_event_rec.last_updated_by = FND_API.g_miss_num OR p_acctng_event_rec.last_updated_by IS NULL THEN
757 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'LAST_UPDATED_BY' );
758 x_return_status := FND_API.g_ret_sts_error;
759 RETURN;
760 END IF;
761
762
763 IF p_acctng_event_rec.creation_date = FND_API.g_miss_date OR p_acctng_event_rec.creation_date IS NULL THEN
764 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'CREATION_DATE' );
765 x_return_status := FND_API.g_ret_sts_error;
766 RETURN;
767 END IF;
768
769
770 IF p_acctng_event_rec.created_by = FND_API.g_miss_num OR p_acctng_event_rec.created_by IS NULL THEN
771 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'CREATED_BY' );
772 x_return_status := FND_API.g_ret_sts_error;
773 RETURN;
774 END IF;
775
776
777 IF p_acctng_event_rec.accounting_date = FND_API.g_miss_date OR p_acctng_event_rec.accounting_date IS NULL THEN
778 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'ACCOUNTING_DATE' );
779 x_return_status := FND_API.g_ret_sts_error;
780 RETURN;
781 END IF;
782
783
784 IF p_acctng_event_rec.event_status_code = FND_API.g_miss_char OR p_acctng_event_rec.event_status_code IS NULL THEN
785 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'EVENT_STATUS_CODE' );
786 x_return_status := FND_API.g_ret_sts_error;
787 RETURN;
788 END IF;
789
790
791 IF p_acctng_event_rec.event_type_code = FND_API.g_miss_char OR p_acctng_event_rec.event_type_code IS NULL THEN
792 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'EVENT_TYPE_CODE' );
793 x_return_status := FND_API.g_ret_sts_error;
794 RETURN;
795 END IF;
796
797
798 IF p_acctng_event_rec.source_id = FND_API.g_miss_num OR p_acctng_event_rec.source_id IS NULL THEN
799 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'SOURCE_ID' );
800 x_return_status := FND_API.g_ret_sts_error;
801 RETURN;
802 END IF;
803
804
805 IF p_acctng_event_rec.source_table = FND_API.g_miss_char OR p_acctng_event_rec.source_table IS NULL THEN
806 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'SOURCE_TABLE' );
807 x_return_status := FND_API.g_ret_sts_error;
808 RETURN;
809 END IF;
810 ELSE
811
812
813 IF p_acctng_event_rec.accounting_event_id IS NULL THEN
814 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'ACCOUNTING_EVENT_ID' );
815 x_return_status := FND_API.g_ret_sts_error;
816 RETURN;
817 END IF;
818
819
820 IF p_acctng_event_rec.object_version_number IS NULL THEN
821 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'OBJECT_VERSION_NUMBER' );
822 x_return_status := FND_API.g_ret_sts_error;
823 RETURN;
824 END IF;
825
826
827 IF p_acctng_event_rec.last_update_date IS NULL THEN
828 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'LAST_UPDATE_DATE' );
829 x_return_status := FND_API.g_ret_sts_error;
830 RETURN;
831 END IF;
832
833
834 IF p_acctng_event_rec.last_updated_by IS NULL THEN
835 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'LAST_UPDATED_BY' );
836 x_return_status := FND_API.g_ret_sts_error;
837 RETURN;
838 END IF;
839
840
841 IF p_acctng_event_rec.creation_date IS NULL THEN
842 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'CREATION_DATE' );
843 x_return_status := FND_API.g_ret_sts_error;
844 RETURN;
845 END IF;
846
847
848 IF p_acctng_event_rec.created_by IS NULL THEN
849 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'CREATED_BY' );
850 x_return_status := FND_API.g_ret_sts_error;
851 RETURN;
852 END IF;
853
854
855 IF p_acctng_event_rec.accounting_date IS NULL THEN
856 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'ACCOUNTING_DATE' );
857 x_return_status := FND_API.g_ret_sts_error;
858 RETURN;
859 END IF;
860
861
862 IF p_acctng_event_rec.event_status_code IS NULL THEN
863 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'EVENT_STATUS_CODE' );
864 x_return_status := FND_API.g_ret_sts_error;
865 RETURN;
866 END IF;
867
868
869 IF p_acctng_event_rec.event_type_code IS NULL THEN
870 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'EVENT_TYPE_CODE' );
871 x_return_status := FND_API.g_ret_sts_error;
872 RETURN;
873 END IF;
874
875
876 IF p_acctng_event_rec.source_id IS NULL THEN
877 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'SOURCE_ID' );
878 x_return_status := FND_API.g_ret_sts_error;
879 RETURN;
880 END IF;
881
882
883 IF p_acctng_event_rec.source_table IS NULL THEN
884 OZF_Utility_PVT.Error_Message('OZF_API_MISSING_FIELD', 'MISS_FIELD', 'SOURCE_TABLE' );
885 x_return_status := FND_API.g_ret_sts_error;
886 RETURN;
887 END IF;
888 END IF;
889
890 END check_acctng_event_req_items;
891
892 PROCEDURE check_acctng_event_FK_items(
893 p_acctng_event_rec IN acctng_event_rec_type,
894 x_return_status OUT NOCOPY VARCHAR2
895 )
896 IS
897 BEGIN
898 x_return_status := FND_API.g_ret_sts_success;
899
900 -- Enter custom code here
901
902 END check_acctng_event_FK_items;
903
904 PROCEDURE check_acctng_event_Lk_items(
905 p_acctng_event_rec IN acctng_event_rec_type,
906 x_return_status OUT NOCOPY VARCHAR2
907 )
908 IS
909 BEGIN
910 x_return_status := FND_API.g_ret_sts_success;
911
912 -- Enter custom code here
913
914 END check_acctng_event_Lk_items;
915
916 PROCEDURE Check_acctng_event_Items (
917 P_acctng_event_rec IN acctng_event_rec_type,
918 p_validation_mode IN VARCHAR2,
919 x_return_status OUT NOCOPY VARCHAR2
920 )
921 IS
922 BEGIN
923
924 -- Check Items Uniqueness API calls
925
926 check_acctng_event_uk_items(
927 p_acctng_event_rec => p_acctng_event_rec,
928 p_validation_mode => p_validation_mode,
929 x_return_status => x_return_status);
930 IF x_return_status <> FND_API.g_ret_sts_success THEN
931 RETURN;
932 END IF;
933
934 -- Check Items Required/NOT NULL API calls
935
936 check_acctng_event_req_items(
937 p_acctng_event_rec => p_acctng_event_rec,
938 p_validation_mode => p_validation_mode,
939 x_return_status => x_return_status);
940 IF x_return_status <> FND_API.g_ret_sts_success THEN
941 RETURN;
942 END IF;
943 -- Check Items Foreign Keys API calls
944
945 check_acctng_event_FK_items(
946 p_acctng_event_rec => p_acctng_event_rec,
947 x_return_status => x_return_status);
948 IF x_return_status <> FND_API.g_ret_sts_success THEN
949 RETURN;
950 END IF;
951 -- Check Items Lookups
952
953 check_acctng_event_Lk_items(
954 p_acctng_event_rec => p_acctng_event_rec,
955 x_return_status => x_return_status);
956 IF x_return_status <> FND_API.g_ret_sts_success THEN
957 RETURN;
958 END IF;
959
960 END Check_acctng_event_Items;
961
962 PROCEDURE Complete_acctng_event_Rec (
963 p_acctng_event_rec IN acctng_event_rec_type,
964 x_complete_rec OUT NOCOPY acctng_event_rec_type)
965 IS
966 l_return_status VARCHAR2(1);
967
968 CURSOR c_complete IS
969 SELECT *
970 FROM ozf_acctng_events_all
971 WHERE accounting_event_id = p_acctng_event_rec.accounting_event_id;
972 l_acctng_event_rec c_complete%ROWTYPE;
973 BEGIN
974 x_complete_rec := p_acctng_event_rec;
975
976
977 OPEN c_complete;
978 FETCH c_complete INTO l_acctng_event_rec;
979 CLOSE c_complete;
980
981 -- accounting_event_id
982 IF p_acctng_event_rec.accounting_event_id = FND_API.g_miss_num THEN
983 x_complete_rec.accounting_event_id := NULL;
984 END IF;
985 IF p_acctng_event_rec.accounting_event_id IS NULL THEN
986 x_complete_rec.accounting_event_id := l_acctng_event_rec.accounting_event_id;
987 END IF;
988
989 -- object_version_number
990 IF p_acctng_event_rec.object_version_number = FND_API.g_miss_num THEN
991 x_complete_rec.object_version_number := NULL;
992 END IF;
993 IF p_acctng_event_rec.object_version_number IS NULL THEN
994 x_complete_rec.object_version_number := l_acctng_event_rec.object_version_number;
995 END IF;
996
997 -- last_update_date
998 IF p_acctng_event_rec.last_update_date = FND_API.g_miss_date THEN
999 x_complete_rec.last_update_date := NULL;
1000 END IF;
1001 IF p_acctng_event_rec.last_update_date IS NULL THEN
1002 x_complete_rec.last_update_date := l_acctng_event_rec.last_update_date;
1003 END IF;
1004
1005 -- last_updated_by
1006 IF p_acctng_event_rec.last_updated_by = FND_API.g_miss_num THEN
1007 x_complete_rec.last_updated_by := NULL;
1008 END IF;
1009 IF p_acctng_event_rec.last_updated_by IS NULL THEN
1010 x_complete_rec.last_updated_by := l_acctng_event_rec.last_updated_by;
1011 END IF;
1012
1013 -- creation_date
1014 IF p_acctng_event_rec.creation_date = FND_API.g_miss_date THEN
1015 x_complete_rec.creation_date := NULL;
1016 END IF;
1017 IF p_acctng_event_rec.creation_date IS NULL THEN
1018 x_complete_rec.creation_date := l_acctng_event_rec.creation_date;
1019 END IF;
1020
1021 -- created_by
1022 IF p_acctng_event_rec.created_by = FND_API.g_miss_num THEN
1023 x_complete_rec.created_by := NULL;
1024 END IF;
1025 IF p_acctng_event_rec.created_by IS NULL THEN
1026 x_complete_rec.created_by := l_acctng_event_rec.created_by;
1027 END IF;
1028
1029 -- last_update_login
1030 IF p_acctng_event_rec.last_update_login = FND_API.g_miss_num THEN
1031 x_complete_rec.last_update_login := NULL;
1032 END IF;
1033 IF p_acctng_event_rec.last_update_login IS NULL THEN
1034 x_complete_rec.last_update_login := l_acctng_event_rec.last_update_login;
1035 END IF;
1036
1037 -- request_id
1038 IF p_acctng_event_rec.request_id = FND_API.g_miss_num THEN
1039 x_complete_rec.request_id := NULL;
1040 END IF;
1041 IF p_acctng_event_rec.request_id IS NULL THEN
1042 x_complete_rec.request_id := l_acctng_event_rec.request_id;
1043 END IF;
1044
1045 -- program_application_id
1046 IF p_acctng_event_rec.program_application_id = FND_API.g_miss_num THEN
1047 x_complete_rec.program_application_id := NULL;
1048 END IF;
1049 IF p_acctng_event_rec.program_application_id IS NULL THEN
1050 x_complete_rec.program_application_id := l_acctng_event_rec.program_application_id;
1051 END IF;
1052
1053 -- program_update_date
1054 IF p_acctng_event_rec.program_update_date = FND_API.g_miss_date THEN
1055 x_complete_rec.program_update_date := NULL;
1056 END IF;
1057 IF p_acctng_event_rec.program_update_date IS NULL THEN
1058 x_complete_rec.program_update_date := l_acctng_event_rec.program_update_date;
1059 END IF;
1060
1061 -- program_id
1062 IF p_acctng_event_rec.program_id = FND_API.g_miss_num THEN
1063 x_complete_rec.program_id := NULL;
1064 END IF;
1065 IF p_acctng_event_rec.program_id IS NULL THEN
1066 x_complete_rec.program_id := l_acctng_event_rec.program_id;
1067 END IF;
1068
1069 -- accounting_date
1070 IF p_acctng_event_rec.accounting_date = FND_API.g_miss_date THEN
1071 x_complete_rec.accounting_date := NULL;
1072 END IF;
1073 IF p_acctng_event_rec.accounting_date IS NULL THEN
1074 x_complete_rec.accounting_date := l_acctng_event_rec.accounting_date;
1075 END IF;
1076
1077 -- event_number
1078 IF p_acctng_event_rec.event_number = FND_API.g_miss_num THEN
1079 x_complete_rec.event_number := NULL;
1080 END IF;
1081 IF p_acctng_event_rec.event_number IS NULL THEN
1082 x_complete_rec.event_number := l_acctng_event_rec.event_number;
1083 END IF;
1084
1085 -- event_status_code
1086 IF p_acctng_event_rec.event_status_code = FND_API.g_miss_char THEN
1087 x_complete_rec.event_status_code := NULL;
1088 END IF;
1089 IF p_acctng_event_rec.event_status_code IS NULL THEN
1090 x_complete_rec.event_status_code := l_acctng_event_rec.event_status_code;
1091 END IF;
1092
1093 -- event_type_code
1094 IF p_acctng_event_rec.event_type_code = FND_API.g_miss_char THEN
1095 x_complete_rec.event_type_code := NULL;
1096 END IF;
1097 IF p_acctng_event_rec.event_type_code IS NULL THEN
1098 x_complete_rec.event_type_code := l_acctng_event_rec.event_type_code;
1099 END IF;
1100
1101 -- org_id
1102 IF p_acctng_event_rec.org_id = FND_API.g_miss_num THEN
1103 x_complete_rec.org_id := NULL;
1104 END IF;
1105 IF p_acctng_event_rec.org_id IS NULL THEN
1106 x_complete_rec.org_id := l_acctng_event_rec.org_id;
1107 END IF;
1108
1109 -- source_id
1110 IF p_acctng_event_rec.source_id = FND_API.g_miss_num THEN
1111 x_complete_rec.source_id := NULL;
1112 END IF;
1113 IF p_acctng_event_rec.source_id IS NULL THEN
1114 x_complete_rec.source_id := l_acctng_event_rec.source_id;
1115 END IF;
1116
1117 -- source_table
1118 IF p_acctng_event_rec.source_table = FND_API.g_miss_char THEN
1119 x_complete_rec.source_table := NULL;
1120 END IF;
1121 IF p_acctng_event_rec.source_table IS NULL THEN
1122 x_complete_rec.source_table := l_acctng_event_rec.source_table;
1123 END IF;
1124
1125 -- attribute_category
1126 IF p_acctng_event_rec.attribute_category = FND_API.g_miss_char THEN
1127 x_complete_rec.attribute_category := NULL;
1128 END IF;
1129 IF p_acctng_event_rec.attribute_category IS NULL THEN
1130 x_complete_rec.attribute_category := l_acctng_event_rec.attribute_category;
1131 END IF;
1132
1133 -- attribute1
1134 IF p_acctng_event_rec.attribute1 = FND_API.g_miss_char THEN
1135 x_complete_rec.attribute1 := NULL;
1136 END IF;
1137 IF p_acctng_event_rec.attribute1 IS NULL THEN
1138 x_complete_rec.attribute1 := l_acctng_event_rec.attribute1;
1139 END IF;
1140
1141 -- attribute2
1142 IF p_acctng_event_rec.attribute2 = FND_API.g_miss_char THEN
1143 x_complete_rec.attribute2 := NULL;
1144 END IF;
1145 IF p_acctng_event_rec.attribute2 IS NULL THEN
1146 x_complete_rec.attribute2 := l_acctng_event_rec.attribute2;
1147 END IF;
1148
1149 -- attribute3
1150 IF p_acctng_event_rec.attribute3 = FND_API.g_miss_char THEN
1151 x_complete_rec.attribute3 := NULL;
1152 END IF;
1153 IF p_acctng_event_rec.attribute3 IS NULL THEN
1154 x_complete_rec.attribute3 := l_acctng_event_rec.attribute3;
1155 END IF;
1156
1157 -- attribute4
1158 IF p_acctng_event_rec.attribute4 = FND_API.g_miss_char THEN
1159 x_complete_rec.attribute4 := NULL;
1160 END IF;
1161 IF p_acctng_event_rec.attribute4 IS NULL THEN
1162 x_complete_rec.attribute4 := l_acctng_event_rec.attribute4;
1163 END IF;
1164
1165 -- attribute5
1166 IF p_acctng_event_rec.attribute5 = FND_API.g_miss_char THEN
1167 x_complete_rec.attribute5 := NULL;
1168 END IF;
1169 IF p_acctng_event_rec.attribute5 IS NULL THEN
1170 x_complete_rec.attribute5 := l_acctng_event_rec.attribute5;
1171 END IF;
1172
1173 -- attribute6
1174 IF p_acctng_event_rec.attribute6 = FND_API.g_miss_char THEN
1175 x_complete_rec.attribute6 := NULL;
1176 END IF;
1177 IF p_acctng_event_rec.attribute6 IS NULL THEN
1178 x_complete_rec.attribute6 := l_acctng_event_rec.attribute6;
1179 END IF;
1180
1181 -- attribute7
1182 IF p_acctng_event_rec.attribute7 = FND_API.g_miss_char THEN
1183 x_complete_rec.attribute7 := NULL;
1184 END IF;
1185 IF p_acctng_event_rec.attribute7 IS NULL THEN
1186 x_complete_rec.attribute7 := l_acctng_event_rec.attribute7;
1187 END IF;
1188
1189 -- attribute8
1190 IF p_acctng_event_rec.attribute8 = FND_API.g_miss_char THEN
1191 x_complete_rec.attribute8 := NULL;
1192 END IF;
1193 IF p_acctng_event_rec.attribute8 IS NULL THEN
1194 x_complete_rec.attribute8 := l_acctng_event_rec.attribute8;
1195 END IF;
1196
1197 -- attribute9
1198 IF p_acctng_event_rec.attribute9 = FND_API.g_miss_char THEN
1199 x_complete_rec.attribute9 := NULL;
1200 END IF;
1201 IF p_acctng_event_rec.attribute9 IS NULL THEN
1202 x_complete_rec.attribute9 := l_acctng_event_rec.attribute9;
1203 END IF;
1204
1205 -- attribute10
1206 IF p_acctng_event_rec.attribute10 = FND_API.g_miss_char THEN
1207 x_complete_rec.attribute10 := NULL;
1208 END IF;
1209 IF p_acctng_event_rec.attribute10 IS NULL THEN
1210 x_complete_rec.attribute10 := l_acctng_event_rec.attribute10;
1211 END IF;
1212
1213 -- attribute11
1214 IF p_acctng_event_rec.attribute11 = FND_API.g_miss_char THEN
1215 x_complete_rec.attribute11 := NULL;
1216 END IF;
1217 IF p_acctng_event_rec.attribute11 IS NULL THEN
1218 x_complete_rec.attribute11 := l_acctng_event_rec.attribute11;
1219 END IF;
1220
1221 -- attribute12
1222 IF p_acctng_event_rec.attribute12 = FND_API.g_miss_char THEN
1223 x_complete_rec.attribute12 := NULL;
1224 END IF;
1225 IF p_acctng_event_rec.attribute12 IS NULL THEN
1226 x_complete_rec.attribute12 := l_acctng_event_rec.attribute12;
1227 END IF;
1228
1229 -- attribute13
1230 IF p_acctng_event_rec.attribute13 = FND_API.g_miss_char THEN
1231 x_complete_rec.attribute13 := NULL;
1232 END IF;
1233 IF p_acctng_event_rec.attribute13 IS NULL THEN
1234 x_complete_rec.attribute13 := l_acctng_event_rec.attribute13;
1235 END IF;
1236
1237 -- attribute14
1238 IF p_acctng_event_rec.attribute14 = FND_API.g_miss_char THEN
1239 x_complete_rec.attribute14 := NULL;
1240 END IF;
1241 IF p_acctng_event_rec.attribute14 IS NULL THEN
1242 x_complete_rec.attribute14 := l_acctng_event_rec.attribute14;
1243 END IF;
1244
1245 -- attribute15
1246 IF p_acctng_event_rec.attribute15 = FND_API.g_miss_char THEN
1247 x_complete_rec.attribute15 := NULL;
1248 END IF;
1249 IF p_acctng_event_rec.attribute15 IS NULL THEN
1250 x_complete_rec.attribute15 := l_acctng_event_rec.attribute15;
1251 END IF;
1252
1253 -- Note: Developers need to modify the procedure
1254 -- to handle any business specific requirements.
1255 END Complete_acctng_event_Rec;
1256 PROCEDURE Validate_acctng_events(
1257 p_api_version_number IN NUMBER,
1258 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1259 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1260 p_acctng_event_rec IN acctng_event_rec_type,
1261 x_return_status OUT NOCOPY VARCHAR2,
1262 x_msg_count OUT NOCOPY NUMBER,
1263 x_msg_data OUT NOCOPY VARCHAR2
1264 )
1265 IS
1266 L_API_NAME CONSTANT VARCHAR2(30) := 'Validate_Acctng_Events';
1267 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
1268 l_object_version_number NUMBER;
1269 l_acctng_event_rec OZF_Acctng_Events_PVT.acctng_event_rec_type;
1270
1271 BEGIN
1272 -- Standard Start of API savepoint
1273 SAVEPOINT VALIDATE_Acctng_Events_;
1274
1275 -- Standard call to check for call compatibility.
1276 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
1277 p_api_version_number,
1278 l_api_name,
1279 G_PKG_NAME)
1280 THEN
1281 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1282 END IF;
1283
1284 -- Initialize message list if p_init_msg_list is set to TRUE.
1285 IF FND_API.to_Boolean( p_init_msg_list )
1286 THEN
1287 FND_MSG_PUB.initialize;
1288 END IF;
1289 IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1290 Check_acctng_event_Items(
1291 p_acctng_event_rec => p_acctng_event_rec,
1292 p_validation_mode => JTF_PLSQL_API.g_update,
1293 x_return_status => x_return_status
1294 );
1295
1296 IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1297 RAISE FND_API.G_EXC_ERROR;
1298 ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1299 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1300 END IF;
1301 END IF;
1302
1303 Complete_acctng_event_Rec(
1304 p_acctng_event_rec => p_acctng_event_rec,
1305 x_complete_rec => l_acctng_event_rec
1306 );
1307
1308 IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1309 Validate_acctng_event_Rec(
1310 p_api_version_number => 1.0,
1311 p_init_msg_list => FND_API.G_FALSE,
1312 x_return_status => x_return_status,
1313 x_msg_count => x_msg_count,
1314 x_msg_data => x_msg_data,
1315 p_acctng_event_rec => l_acctng_event_rec);
1316
1317 IF x_return_status = FND_API.G_RET_STS_ERROR THEN
1318 RAISE FND_API.G_EXC_ERROR;
1319 ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1320 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1321 END IF;
1322 END IF;
1323
1324
1325 -- Debug Message
1326 IF g_debug THEN
1327 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
1328 END IF;
1329
1330
1331 -- Initialize API return status to SUCCESS
1332 x_return_status := FND_API.G_RET_STS_SUCCESS;
1333
1334
1335 -- Debug Message
1336 IF g_debug THEN
1337 OZF_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
1338 END IF;
1339
1340 -- Standard call to get message count and if count is 1, get message info.
1341 FND_MSG_PUB.Count_And_Get
1342 (p_count => x_msg_count,
1343 p_data => x_msg_data
1344 );
1345 EXCEPTION
1346
1347 WHEN OZF_Utility_PVT.resource_locked THEN
1348 x_return_status := FND_API.g_ret_sts_error;
1349 OZF_Utility_PVT.Error_Message(p_message_name => 'OZF_API_RESOURCE_LOCKED');
1350
1351 WHEN FND_API.G_EXC_ERROR THEN
1352 ROLLBACK TO VALIDATE_Acctng_Events_;
1353 x_return_status := FND_API.G_RET_STS_ERROR;
1354 -- Standard call to get message count and if count=1, get the message
1355 FND_MSG_PUB.Count_And_Get (
1356 p_encoded => FND_API.G_FALSE,
1357 p_count => x_msg_count,
1358 p_data => x_msg_data
1359 );
1360
1361 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1362 ROLLBACK TO VALIDATE_Acctng_Events_;
1363 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1364 -- Standard call to get message count and if count=1, get the message
1365 FND_MSG_PUB.Count_And_Get (
1366 p_encoded => FND_API.G_FALSE,
1367 p_count => x_msg_count,
1368 p_data => x_msg_data
1369 );
1370
1371 WHEN OTHERS THEN
1372 ROLLBACK TO VALIDATE_Acctng_Events_;
1373 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1374 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1375 THEN
1376 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1377 END IF;
1378 -- Standard call to get message count and if count=1, get the message
1379 FND_MSG_PUB.Count_And_Get (
1380 p_encoded => FND_API.G_FALSE,
1381 p_count => x_msg_count,
1382 p_data => x_msg_data
1383 );
1384 End Validate_Acctng_Events;
1385
1386
1387 PROCEDURE Validate_acctng_event_rec(
1388 p_api_version_number IN NUMBER,
1389 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1390 x_return_status OUT NOCOPY VARCHAR2,
1391 x_msg_count OUT NOCOPY NUMBER,
1392 x_msg_data OUT NOCOPY VARCHAR2,
1393 p_acctng_event_rec IN acctng_event_rec_type
1394 )
1395 IS
1396 BEGIN
1397 -- Initialize message list if p_init_msg_list is set to TRUE.
1398 IF FND_API.to_Boolean( p_init_msg_list )
1399 THEN
1400 FND_MSG_PUB.initialize;
1401 END IF;
1402
1403 -- Initialize API return status to SUCCESS
1404 x_return_status := FND_API.G_RET_STS_SUCCESS;
1405
1406 -- Hint: Validate data
1407 -- If data not valid
1408 -- THEN
1409 -- x_return_status := FND_API.G_RET_STS_ERROR;
1410
1411 -- Debug Message
1412 IF g_debug THEN
1413 OZF_UTILITY_PVT.debug_message('Private API: Validate_dm_model_rec');
1414 END IF;
1415 -- Standard call to get message count and if count is 1, get message info.
1416 FND_MSG_PUB.Count_And_Get
1417 (p_count => x_msg_count,
1418 p_data => x_msg_data
1419 );
1420 END Validate_acctng_event_Rec;
1421
1422 END OZF_Acctng_Events_PVT;