[Home] [Help]
PACKAGE BODY: APPS.AMS_PS_POSTING_PVT
Source
1 PACKAGE BODY AMS_Ps_Posting_PVT as
2 /* $Header: amsvpstb.pls 115.10 2003/02/12 03:49:56 ryedator ship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30):= 'AMS_Ps_Posting_PVT';
5 G_FILE_NAME CONSTANT VARCHAR2(12) := 'amsvpstb.pls';
6
7 -- Hint: Primary key needs to be returned.
8 AMS_DEBUG_HIGH_ON constant boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH);
9 AMS_DEBUG_LOW_ON constant boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
10 AMS_DEBUG_MEDIUM_ON constant boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
11
12 PROCEDURE Create_Ps_Posting(
13 p_api_version_number IN NUMBER,
14 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
15 p_commit IN VARCHAR2 := FND_API.G_FALSE,
16 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
17
18 x_return_status OUT NOCOPY VARCHAR2,
19 x_msg_count OUT NOCOPY NUMBER,
20 x_msg_data OUT NOCOPY VARCHAR2,
21
22 p_ps_posting_rec IN ps_posting_rec_type := g_miss_ps_posting_rec,
23 x_posting_id OUT NOCOPY NUMBER
24 )
25
26 IS
27 l_api_name CONSTANT VARCHAR2(30) := 'Create_Ps_Posting';
28 l_api_version_number CONSTANT NUMBER := 1.0;
29 l_return_status_full VARCHAR2(1);
30 l_object_version_number NUMBER := 1;
31 l_org_id NUMBER := FND_API.G_MISS_NUM;
32 l_posting_id NUMBER;
33 l_dummy NUMBER;
34 l_tempchar VARCHAR2(1);
35
36 CURSOR c_id IS
37 SELECT AMS_IBA_PS_POSTINGS_B_s.NEXTVAL
38 FROM dual;
39
40 CURSOR c_id_exists (l_id IN NUMBER) IS
41 SELECT 1
42 FROM AMS_IBA_PS_POSTINGS_B
43 WHERE POSTING_ID = l_id;
44
45 BEGIN
46 -- Standard Start of API savepoint
47 SAVEPOINT CREATE_Ps_Posting_PVT;
48
49 -- Standard call to check for call compatibility.
50 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
51 p_api_version_number,
52 l_api_name,
53 G_PKG_NAME)
54 THEN
55 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
56 END IF;
57
58 -- Initialize message list if p_init_msg_list is set to TRUE.
59 IF FND_API.to_Boolean( p_init_msg_list )
60 THEN
61 FND_MSG_PUB.initialize;
62 END IF;
63
64 -- Debug Message
65 IF (AMS_DEBUG_HIGH_ON) THEN
66
67 AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
68 END IF;
69
70
71 -- Initialize API return status to SUCCESS
72 x_return_status := FND_API.G_RET_STS_SUCCESS;
73
74 -- Local variable initialization
75
76 IF p_ps_posting_rec.POSTING_ID IS NULL OR p_ps_posting_rec.POSTING_ID = FND_API.g_miss_num THEN
77 LOOP
78 l_dummy := NULL;
79 OPEN c_id;
80 FETCH c_id INTO l_posting_id;
81 CLOSE c_id;
82
83 OPEN c_id_exists(l_posting_id);
84 FETCH c_id_exists INTO l_dummy;
85 CLOSE c_id_exists;
86 EXIT WHEN l_dummy IS NULL;
87 END LOOP;
88 END IF;
89
90 -- ==============================================================
91 -- Validate Environment
92 -- ==============================================================
93
94 IF FND_GLOBAL.User_Id IS NULL
95 THEN
96 AMS_Utility_PVT.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
97 RAISE FND_API.G_EXC_ERROR;
98 END IF;
99
100 IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
101 THEN
102 -- Debug message
103 IF (AMS_DEBUG_HIGH_ON) THEN
104 AMS_UTILITY_PVT.debug_message('Private API: Calling Validate_Ps_Posting');
105 END IF;
106
107 -- Invoke validation procedures
108 Validate_ps_posting(
109 p_api_version_number => 1.0,
110 p_init_msg_list => FND_API.G_FALSE,
111 p_validation_level => p_validation_level,
112 p_ps_posting_rec => p_ps_posting_rec,
113 x_return_status => x_return_status,
114 x_msg_count => x_msg_count,
115 x_msg_data => x_msg_data);
116 END IF;
117
118 IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
119 RAISE FND_API.G_EXC_ERROR;
120 END IF;
121
122 -- Debug Message
123 IF (AMS_DEBUG_HIGH_ON) THEN
124 AMS_UTILITY_PVT.debug_message('Private API: Calling create table handler');
125 END IF;
126
127 BEGIN
128 select 'X' into l_tempchar
129 from AMS_IBA_PS_POSTINGS_TL ptl
130 where ptl.posting_name = p_ps_posting_rec.posting_name
131 and ptl.language = userenv('LANG');
132
133 EXCEPTION
134 WHEN NO_DATA_FOUND THEN
135 l_tempchar := null;
136 END;
137
138 IF (l_tempchar = 'X') THEN
139 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
140 THEN
141 FND_MESSAGE.set_name('AMS','AMS_POST_NAME_NOT_UNIQUE');
142 FND_MSG_PUB.add;
143 END IF;
144 RAISE FND_API.g_exc_error;
145 END IF;
146
147
148 -- Invoke table handler(AMS_IBA_PS_POSTINGS_B_PKG.Insert_Row)
149 AMS_IBA_PS_POSTINGS_B_PKG.Insert_Row(
150 p_created_by => FND_GLOBAL.user_id,
151 p_creation_date => SYSDATE,
152 p_last_updated_by => FND_GLOBAL.user_id,
153 p_last_update_date => SYSDATE,
154 p_last_update_login => FND_GLOBAL.conc_login_id,
155 px_object_version_number => l_object_version_number,
156 px_posting_id => l_posting_id,
157 p_max_no_contents => p_ps_posting_rec.max_no_contents,
158 p_posting_type => p_ps_posting_rec.posting_type,
159 p_content_type => p_ps_posting_rec.content_type,
160 p_default_content_id => p_ps_posting_rec.default_content_id,
161 p_status_code => p_ps_posting_rec.status_code,
162 p_posting_name => p_ps_posting_rec.posting_name,
163 p_display_name => p_ps_posting_rec.display_name,
164 p_posting_description => p_ps_posting_rec.posting_description,
165 p_attribute_category => p_ps_posting_rec.attribute_category,
166 p_attribute1 => p_ps_posting_rec.attribute1,
167 p_attribute2 => p_ps_posting_rec.attribute2,
168 p_attribute3 => p_ps_posting_rec.attribute3,
169 p_attribute4 => p_ps_posting_rec.attribute4,
170 p_attribute5 => p_ps_posting_rec.attribute5,
171 p_attribute6 => p_ps_posting_rec.attribute6,
172 p_attribute7 => p_ps_posting_rec.attribute7,
173 p_attribute8 => p_ps_posting_rec.attribute8,
174 p_attribute9 => p_ps_posting_rec.attribute9,
175 p_attribute10 => p_ps_posting_rec.attribute10,
176 p_attribute11 => p_ps_posting_rec.attribute11,
177 p_attribute12 => p_ps_posting_rec.attribute12,
178 p_attribute13 => p_ps_posting_rec.attribute13,
179 p_attribute14 => p_ps_posting_rec.attribute14,
180 p_attribute15 => p_ps_posting_rec.attribute15);
181
182 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
183 RAISE FND_API.G_EXC_ERROR;
184 END IF;
185 --
186 -- End of API body
187 --
188 x_posting_id := l_posting_id;
189
190 -- Standard check for p_commit
191 IF FND_API.to_Boolean( p_commit )
192 THEN
193 COMMIT WORK;
194 END IF;
195
196 -- Debug Message
197 IF (AMS_DEBUG_HIGH_ON) THEN
198
199 AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
200 END IF;
201
202 -- Standard call to get message count and if count is 1, get message info.
203 FND_MSG_PUB.Count_And_Get
204 (p_count => x_msg_count,
205 p_data => x_msg_data
206 );
207 EXCEPTION
208
209 WHEN AMS_Utility_PVT.resource_locked THEN
210 x_return_status := FND_API.g_ret_sts_error;
211 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
212
213 WHEN FND_API.G_EXC_ERROR THEN
214 ROLLBACK TO CREATE_Ps_Posting_PVT;
215 x_return_status := FND_API.G_RET_STS_ERROR;
216 -- Standard call to get message count and if count=1, get the message
217 FND_MSG_PUB.Count_And_Get (
218 p_encoded => FND_API.G_FALSE,
219 p_count => x_msg_count,
220 p_data => x_msg_data
221 );
222
223 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
224 ROLLBACK TO CREATE_Ps_Posting_PVT;
225 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
226 -- Standard call to get message count and if count=1, get the message
227 FND_MSG_PUB.Count_And_Get (
228 p_encoded => FND_API.G_FALSE,
229 p_count => x_msg_count,
230 p_data => x_msg_data
231 );
232
233 WHEN OTHERS THEN
234 ROLLBACK TO CREATE_Ps_Posting_PVT;
235 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
236 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
237 THEN
238 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
239 END IF;
240 -- Standard call to get message count and if count=1, get the message
241 FND_MSG_PUB.Count_And_Get (
242 p_encoded => FND_API.G_FALSE,
243 p_count => x_msg_count,
244 p_data => x_msg_data
245 );
246 End Create_Ps_Posting;
247
248
249 PROCEDURE Update_Ps_Posting(
250 p_api_version_number IN NUMBER,
251 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
252 p_commit IN VARCHAR2 := FND_API.G_FALSE,
253 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
254 x_return_status OUT NOCOPY VARCHAR2,
255 x_msg_count OUT NOCOPY NUMBER,
256 x_msg_data OUT NOCOPY VARCHAR2,
257 p_ps_posting_rec IN ps_posting_rec_type,
258 x_object_version_number OUT NOCOPY NUMBER
259 )
260 IS
261 l_api_name CONSTANT VARCHAR2(30) := 'Update_Ps_Posting';
262 l_api_version_number CONSTANT NUMBER := 1.0;
263 l_object_version NUMBER;
264 l_tempchar VARCHAR2(1);
265
266 CURSOR c_object_version(post_id IN NUMBER) IS
267 SELECT object_version_number
268 FROM AMS_IBA_PS_POSTINGS_B
269 WHERE posting_id = post_id;
270
271 BEGIN
272 -- Standard Start of API savepoint
273 SAVEPOINT UPDATE_Ps_Posting_PVT;
274
275 -- Standard call to check for call compatibility.
276 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
277 p_api_version_number,
278 l_api_name,
279 G_PKG_NAME)
280 THEN
281 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
282 END IF;
283
284 -- Initialize message list if p_init_msg_list is set to TRUE.
285 IF FND_API.to_Boolean( p_init_msg_list )
286 THEN
287 FND_MSG_PUB.initialize;
288 END IF;
289
290 -- Debug Message
291 IF (AMS_DEBUG_HIGH_ON) THEN
292 AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
293 END IF;
294
295
296 -- Initialize API return status to SUCCESS
297 x_return_status := FND_API.G_RET_STS_SUCCESS;
298
299 -- Debug Message
300 IF (AMS_DEBUG_HIGH_ON) THEN
301 AMS_UTILITY_PVT.debug_message('Private API: - Open Cursor to Select');
302 END IF;
303
304 OPEN c_object_version(p_ps_posting_rec.posting_id);
305
306 FETCH c_object_version INTO l_object_version;
307
308 If ( c_object_version%NOTFOUND) THEN
309 AMS_Utility_PVT.Error_Message(p_message_name => 'API_MISSING_UPDATE_TARGET',
310 p_token_name => 'INFO',
311 p_token_value => 'Ps_Posting') ;
312 RAISE FND_API.G_EXC_ERROR;
313 END IF;
314 -- Debug Message
315 IF (AMS_DEBUG_HIGH_ON) THEN
316 AMS_UTILITY_PVT.debug_message('Private API: - Close Cursor');
317 END IF;
318 CLOSE c_object_version;
319
320
321 IF (p_ps_posting_rec.object_version_number is NULL or
322 p_ps_posting_rec.object_version_number = FND_API.G_MISS_NUM ) THEN
323 AMS_Utility_PVT.Error_Message(p_message_name => 'API_VERSION_MISSING',
324 p_token_name => 'COLUMN',
325 p_token_value => 'object_version_number') ;
326 raise FND_API.G_EXC_ERROR;
327 END IF;
328
329 -- Check Whether record has been changed by someone else
330 IF (p_ps_posting_rec.object_version_number <> l_object_version) THEN
331 AMS_Utility_PVT.Error_Message(p_message_name => 'API_RECORD_CHANGED',
332 p_token_name => 'INFO',
333 p_token_value => 'Ps_Posting') ;
334 raise FND_API.G_EXC_ERROR;
335 END IF;
336
337 IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL) THEN
338 -- Debug message
339 IF (AMS_DEBUG_HIGH_ON) THEN
340 AMS_UTILITY_PVT.debug_message('Private API: Validate_Ps_Posting');
341 END IF;
342
343 -- Invoke validation procedures
344 Validate_ps_posting(
345 p_api_version_number => 1.0,
346 p_init_msg_list => FND_API.G_FALSE,
347 p_validation_level => p_validation_level,
348 p_ps_posting_rec => p_ps_posting_rec,
349 x_return_status => x_return_status,
350 x_msg_count => x_msg_count,
351 x_msg_data => x_msg_data);
352 END IF;
353
354 IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
355 RAISE FND_API.G_EXC_ERROR;
356 END IF;
357
358 -- Debug Message
359 IF (AMS_DEBUG_HIGH_ON) THEN
360 AMS_UTILITY_PVT.debug_message('Private API: Updating B and TL Tables');
361 END IF;
362
363 Update AMS_IBA_PS_POSTINGS_B
364 SET
365 last_updated_by = FND_GLOBAL.user_id,
366 last_update_date = SYSDATE,
367 last_update_login = FND_GLOBAL.conc_login_id,
368 object_version_number = p_ps_posting_rec.object_version_number+1,
372 default_content_id = DECODE( p_ps_posting_rec.default_content_id, FND_API.g_miss_num, default_content_id, p_ps_posting_rec.default_content_id),
369 max_no_contents = DECODE( p_ps_posting_rec.max_no_contents, FND_API.g_miss_num, max_no_contents, p_ps_posting_rec.max_no_contents),
370 posting_type = DECODE( p_ps_posting_rec.posting_type, FND_API.g_miss_char, posting_type, p_ps_posting_rec.posting_type),
371 content_type = DECODE( p_ps_posting_rec.content_type, FND_API.g_miss_char, content_type, p_ps_posting_rec.content_type),
373 status_code = DECODE( p_ps_posting_rec.status_code, FND_API.g_miss_char, status_code, p_ps_posting_rec.status_code),
374 attribute_category = DECODE( p_ps_posting_rec.attribute_category, FND_API.g_miss_char, attribute_category, p_ps_posting_rec.attribute_category),
375 attribute1 = DECODE( p_ps_posting_rec.attribute1, FND_API.g_miss_char, attribute1, p_ps_posting_rec.attribute1),
376 attribute2 = DECODE( p_ps_posting_rec.attribute2, FND_API.g_miss_char, attribute2, p_ps_posting_rec.attribute2),
377 attribute3 = DECODE( p_ps_posting_rec.attribute3, FND_API.g_miss_char, attribute3, p_ps_posting_rec.attribute3),
378 attribute4 = DECODE( p_ps_posting_rec.attribute4, FND_API.g_miss_char, attribute4, p_ps_posting_rec.attribute4),
379 attribute5 = DECODE( p_ps_posting_rec.attribute5, FND_API.g_miss_char, attribute5, p_ps_posting_rec.attribute5),
380 attribute6 = DECODE( p_ps_posting_rec.attribute6, FND_API.g_miss_char, attribute6, p_ps_posting_rec.attribute6),
381 attribute7 = DECODE( p_ps_posting_rec.attribute7, FND_API.g_miss_char, attribute7, p_ps_posting_rec.attribute7),
382 attribute8 = DECODE( p_ps_posting_rec.attribute8, FND_API.g_miss_char, attribute8, p_ps_posting_rec.attribute8),
383 attribute9 = DECODE( p_ps_posting_rec.attribute9, FND_API.g_miss_char, attribute9, p_ps_posting_rec.attribute9),
384 attribute10 = DECODE( p_ps_posting_rec.attribute10, FND_API.g_miss_char, attribute10, p_ps_posting_rec.attribute10),
385 attribute11 = DECODE( p_ps_posting_rec.attribute11, FND_API.g_miss_char, attribute11, p_ps_posting_rec.attribute11),
386 attribute12 = DECODE( p_ps_posting_rec.attribute12, FND_API.g_miss_char, attribute12, p_ps_posting_rec.attribute12),
387 attribute13 = DECODE( p_ps_posting_rec.attribute13, FND_API.g_miss_char, attribute13, p_ps_posting_rec.attribute13),
388 attribute14 = DECODE( p_ps_posting_rec.attribute14, FND_API.g_miss_char, attribute14, p_ps_posting_rec.attribute14),
389 attribute15 = DECODE( p_ps_posting_rec.attribute15, FND_API.g_miss_char, attribute15, p_ps_posting_rec.attribute15)
390
391 WHERE posting_id = p_ps_posting_rec.posting_id
392 AND object_version_number = p_ps_posting_rec.object_version_number;
393
394 IF (SQL%NOTFOUND) THEN
395 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
396 FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
397 FND_MSG_PUB.add;
398 END IF;
399 RAISE FND_API.g_exc_error;
400 END IF;
401
402 IF (AMS_DEBUG_HIGH_ON) THEN
403 AMS_UTILITY_PVT.debug_message('Private API: Updated B');
404 END IF;
405
406 BEGIN
407 select 'X' into l_tempchar
408 from AMS_IBA_PS_POSTINGS_TL ptl
409 where ptl.posting_name = p_ps_posting_rec.posting_name
410 and ptl.language = userenv('LANG')
411 and p_ps_posting_rec.posting_id <> ptl.posting_id;
412
413 EXCEPTION
414 WHEN NO_DATA_FOUND THEN
415 l_tempchar := null;
416 END;
417
418 IF (l_tempchar = 'X') THEN
419 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
420 THEN
421 FND_MESSAGE.set_name('AMS','AMS_POST_NAME_NOT_UNIQUE');
422 FND_MSG_PUB.add;
423 END IF;
424 RAISE FND_API.g_exc_error;
425 END IF;
426
427 UPDATE AMS_IBA_PS_POSTINGS_TL SET
428 posting_name = decode( p_ps_posting_rec.posting_name, FND_API.G_MISS_CHAR, posting_name, p_ps_posting_rec.posting_name),
429 display_name = decode( p_ps_posting_rec.display_name, FND_API.G_MISS_CHAR, display_name, p_ps_posting_rec.display_name),
430 posting_description = decode( p_ps_posting_rec.posting_description, FND_API.G_MISS_CHAR, posting_description, p_ps_posting_rec.posting_description),
431 last_update_date = SYSDATE,
432 last_updated_by = FND_GLOBAL.user_id,
433 last_update_login = FND_GLOBAL.conc_login_id,
434 source_lang = USERENV('LANG')
435 WHERE posting_id = p_ps_posting_rec.posting_id
436 AND USERENV('LANG') IN (language, source_lang);
437
438 IF (SQL%NOTFOUND) THEN
439 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
440 FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
441 FND_MSG_PUB.add;
442 END IF;
443 RAISE FND_API.g_exc_error;
444 END IF;
445
446 IF (AMS_DEBUG_HIGH_ON) THEN
447 AMS_UTILITY_PVT.debug_message('Private API: Updated TL');
448 END IF;
449
450 -- Standard check for p_commit
451 IF FND_API.to_Boolean( p_commit )
452 THEN
453 COMMIT WORK;
454 END IF;
455
456 -- Debug Message
457 IF (AMS_DEBUG_HIGH_ON) THEN
458 AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
459 END IF;
460
461 -- Standard call to get message count and if count is 1, get message info.
462 FND_MSG_PUB.Count_And_Get
463 (p_count => x_msg_count,
464 p_data => x_msg_data);
465
466 EXCEPTION
467
468 WHEN AMS_Utility_PVT.resource_locked THEN
469 x_return_status := FND_API.g_ret_sts_error;
470 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
471
472 WHEN FND_API.G_EXC_ERROR THEN
473 ROLLBACK TO UPDATE_Ps_Posting_PVT;
474 x_return_status := FND_API.G_RET_STS_ERROR;
475 -- Standard call to get message count and if count=1, get the message
476 FND_MSG_PUB.Count_And_Get (
480 );
477 p_encoded => FND_API.G_FALSE,
478 p_count => x_msg_count,
479 p_data => x_msg_data
481
482 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
483 ROLLBACK TO UPDATE_Ps_Posting_PVT;
484 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
485 -- Standard call to get message count and if count=1, get the message
486 FND_MSG_PUB.Count_And_Get (
487 p_encoded => FND_API.G_FALSE,
488 p_count => x_msg_count,
489 p_data => x_msg_data
490 );
491
492 WHEN OTHERS THEN
493 ROLLBACK TO UPDATE_Ps_Posting_PVT;
494 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
495 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
496 THEN
497 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
498 END IF;
499 -- Standard call to get message count and if count=1, get the message
500 FND_MSG_PUB.Count_And_Get (
501 p_encoded => FND_API.G_FALSE,
502 p_count => x_msg_count,
503 p_data => x_msg_data
504 );
505 End Update_Ps_Posting;
506
507
508 PROCEDURE Delete_Ps_Posting(
509 p_api_version_number IN NUMBER,
510 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
511 p_commit IN VARCHAR2 := FND_API.G_FALSE,
512 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
513 x_return_status OUT NOCOPY VARCHAR2,
514 x_msg_count OUT NOCOPY NUMBER,
515 x_msg_data OUT NOCOPY VARCHAR2,
516 p_posting_id IN NUMBER,
517 p_object_version_number IN NUMBER
518 )
519
520 IS
521 L_API_NAME CONSTANT VARCHAR2(30) := 'Delete_Ps_Posting';
522 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
523 l_is_used_count NUMBER;
524 l_rulegroup_id NUMBER;
525 l_object_version_number NUMBER;
526
527
528 CURSOR c_is_used_count(post_id IN NUMBER) IS
529 SELECT COUNT(*)
530 FROM AMS_IBA_PL_PLACEMENTS_B
531 where posting_id = post_id;
532
533 CURSOR c_object_version_number(post_id IN NUMBER) IS
534 SELECT object_version_number
535 FROM AMS_IBA_PS_POSTINGS_B
536 where posting_id = post_id;
537
538 CURSOR c_rulegroup_id(post_id IN NUMBER) IS
539 SELECT rulegroup_id
540 FROM AMS_IBA_PS_RULEGRPS_B
541 where posting_id = post_id;
542
543 BEGIN
544 -- Standard Start of API savepoint
545 SAVEPOINT DELETE_Ps_Posting_PVT;
546
547 -- Standard call to check for call compatibility.
548 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
549 p_api_version_number,
550 l_api_name,
551 G_PKG_NAME)
552 THEN
553 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
554 END IF;
555
556 -- Initialize message list if p_init_msg_list is set to TRUE.
557 IF FND_API.to_Boolean( p_init_msg_list )
558 THEN
559 FND_MSG_PUB.initialize;
560 END IF;
561
562 -- Debug Message
563 IF (AMS_DEBUG_HIGH_ON) THEN
564
565 AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
566 END IF;
567
568 -- Initialize API return status to SUCCESS
569 x_return_status := FND_API.G_RET_STS_SUCCESS;
570
571 --
572 -- Api body
573 --
574
575 OPEN c_is_used_count(p_posting_id);
576 FETCH c_is_used_count INTO l_is_used_count;
577 CLOSE c_is_used_count;
578
579 OPEN c_object_version_number(p_posting_id);
580 FETCH c_object_version_number INTO l_object_version_number;
581 CLOSE c_object_version_number;
582
583 IF l_is_used_count = 0 THEN -- IS NOT USED
584 IF l_object_version_number = p_object_version_number THEN -- VERSIONS MATCH
585 DELETE FROM AMS_IBA_PS_POSTINGS_B
586 WHERE posting_id = p_posting_id;
587
588 IF (SQL%NOTFOUND) THEN
589 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
590 FND_MESSAGE.set_name('AMS','AMS_API_RECORD_NOT_FOUND');
591 FND_MSG_PUB.add;
592 END IF;
593 RAISE FND_API.g_exc_error;
594 END IF;
595
596 DELETE FROM AMS_IBA_PS_POSTINGS_TL
597 WHERE posting_id = p_posting_id;
598
599 IF (SQL%NOTFOUND) THEN
600 RAISE FND_API.g_exc_error;
601 END IF;
602
603 FOR c_rulegroup_id_rec IN c_rulegroup_id(p_posting_id) LOOP
604 l_rulegroup_id := c_rulegroup_id_rec.rulegroup_id;
605
606 DELETE FROM AMS_IBA_PS_RULES
607 WHERE rulegroup_id = l_rulegroup_id;
608
609 DELETE FROM AMS_IBA_PS_RULEGRPS_TL
610 WHERE rulegroup_id = l_rulegroup_id;
611
612 DELETE FROM AMS_IBA_PS_RL_ST_PARAMS
613 WHERE rulegroup_id = l_rulegroup_id;
614
615 DELETE FROM AMS_IBA_PS_RL_ST_FLTRS
616 WHERE rulegroup_id = l_rulegroup_id;
617
618 END LOOP;
619
620 DELETE FROM AMS_IBA_PS_RULEGRPS_B
621 WHERE posting_id = p_posting_id;
622
623 ELSE -- VERSIONS DON'T MATCH
624 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
625 FND_MESSAGE.set_name('AMS','AMS_API_VERS_DONT_MATCH');
626 FND_MSG_PUB.add;
627 END IF;
628 RAISE FND_API.g_exc_error;
629 END IF;
633 FND_MSG_PUB.add;
630 ELSE -- IS USED
631 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
632 FND_MESSAGE.set_name('AMS','AMS_POSTING_IN_USE');
634 END IF;
635 RAISE FND_API.g_exc_error;
636 END IF;
637
638 -- End of API body
639 --
640
641 -- Standard check for p_commit
642 IF FND_API.to_Boolean( p_commit )
643 THEN
644 COMMIT;
645 END IF;
646
647
648 -- Debug Message
649 IF (AMS_DEBUG_HIGH_ON) THEN
650
651 AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
652 END IF;
653
654 -- Standard call to get message count and if count is 1, get message info.
655 FND_MSG_PUB.Count_And_Get
656 (p_count => x_msg_count,
657 p_data => x_msg_data
658 );
659 EXCEPTION
660
661 WHEN AMS_Utility_PVT.resource_locked THEN
662 x_return_status := FND_API.g_ret_sts_error;
663 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
664
665 WHEN FND_API.G_EXC_ERROR THEN
666 ROLLBACK TO DELETE_Ps_Posting_PVT;
667 x_return_status := FND_API.G_RET_STS_ERROR;
668 -- Standard call to get message count and if count=1, get the message
669 FND_MSG_PUB.Count_And_Get (
670 p_encoded => FND_API.G_FALSE,
671 p_count => x_msg_count,
672 p_data => x_msg_data
673 );
674
675 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
676 ROLLBACK TO DELETE_Ps_Posting_PVT;
677 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
678 -- Standard call to get message count and if count=1, get the message
679 FND_MSG_PUB.Count_And_Get (
680 p_encoded => FND_API.G_FALSE,
681 p_count => x_msg_count,
682 p_data => x_msg_data
683 );
684
685 WHEN OTHERS THEN
686 ROLLBACK TO DELETE_Ps_Posting_PVT;
687 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
688 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
689 THEN
690 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
691 END IF;
692 -- Standard call to get message count and if count=1, get the message
693 FND_MSG_PUB.Count_And_Get (
694 p_encoded => FND_API.G_FALSE,
695 p_count => x_msg_count,
696 p_data => x_msg_data
697 );
698 End Delete_Ps_Posting;
699
700
701
702 -- Hint: Primary key needs to be returned.
703 PROCEDURE Lock_Ps_Posting(
704 p_api_version_number IN NUMBER,
705 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
706
707 x_return_status OUT NOCOPY VARCHAR2,
708 x_msg_count OUT NOCOPY NUMBER,
709 x_msg_data OUT NOCOPY VARCHAR2,
710
711 p_posting_id IN NUMBER,
712 p_object_version IN NUMBER
713 )
714
715 IS
716 L_API_NAME CONSTANT VARCHAR2(30) := 'Lock_Ps_Posting';
717 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
718 L_FULL_NAME CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
719 l_POSTING_ID NUMBER;
720
721 CURSOR c_Ps_Posting IS
722 SELECT POSTING_ID
723 FROM AMS_IBA_PS_POSTINGS_B
724 WHERE POSTING_ID = p_POSTING_ID
725 AND object_version_number = p_object_version
726 FOR UPDATE NOWAIT;
727
728 BEGIN
729
730 -- Debug Message
731 IF (AMS_DEBUG_HIGH_ON) THEN
732
733 AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
734 END IF;
735
736 -- Initialize message list if p_init_msg_list is set to TRUE.
737 IF FND_API.to_Boolean( p_init_msg_list )
738 THEN
739 FND_MSG_PUB.initialize;
740 END IF;
741
742 -- Standard call to check for call compatibility.
743 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
744 p_api_version_number,
745 l_api_name,
746 G_PKG_NAME)
747 THEN
748 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
749 END IF;
750
751
752 -- Initialize API return status to SUCCESS
753 x_return_status := FND_API.G_RET_STS_SUCCESS;
754
755
756 ------------------------ lock -------------------------
757
758 IF (AMS_DEBUG_HIGH_ON) THEN
759 AMS_Utility_PVT.debug_message(l_full_name||': start');
760 END IF;
761 OPEN c_Ps_Posting;
762
763 FETCH c_Ps_Posting INTO l_POSTING_ID;
764
765 IF (c_Ps_Posting%NOTFOUND) THEN
766 CLOSE c_Ps_Posting;
767 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
768 FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
769 FND_MSG_PUB.add;
770 END IF;
771 RAISE FND_API.g_exc_error;
772 END IF;
773
774 CLOSE c_Ps_Posting;
775
776 -------------------- finish --------------------------
777 FND_MSG_PUB.count_and_get(
778 p_encoded => FND_API.g_false,
779 p_count => x_msg_count,
780 p_data => x_msg_data);
781 IF (AMS_DEBUG_HIGH_ON) THEN
782
783 AMS_Utility_PVT.debug_message(l_full_name ||': end');
784 END IF;
785 EXCEPTION
786
787 WHEN AMS_Utility_PVT.resource_locked THEN
788 x_return_status := FND_API.g_ret_sts_error;
789 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
790
791 WHEN FND_API.G_EXC_ERROR THEN
795 FND_MSG_PUB.Count_And_Get (
792 ROLLBACK TO LOCK_Ps_Posting_PVT;
793 x_return_status := FND_API.G_RET_STS_ERROR;
794 -- Standard call to get message count and if count=1, get the message
796 p_encoded => FND_API.G_FALSE,
797 p_count => x_msg_count,
798 p_data => x_msg_data
799 );
800
801 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
802 ROLLBACK TO LOCK_Ps_Posting_PVT;
803 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
804 -- Standard call to get message count and if count=1, get the message
805 FND_MSG_PUB.Count_And_Get (
806 p_encoded => FND_API.G_FALSE,
807 p_count => x_msg_count,
808 p_data => x_msg_data
809 );
810
811 WHEN OTHERS THEN
812 ROLLBACK TO LOCK_Ps_Posting_PVT;
813 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
814 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
815 THEN
816 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
817 END IF;
818 -- Standard call to get message count and if count=1, get the message
819 FND_MSG_PUB.Count_And_Get (
820 p_encoded => FND_API.G_FALSE,
821 p_count => x_msg_count,
822 p_data => x_msg_data
823 );
824 End Lock_Ps_Posting;
825
826
827 PROCEDURE Complete_ps_posting_Rec (
828 p_ps_posting_rec IN ps_posting_rec_type,
829 x_complete_rec OUT NOCOPY ps_posting_rec_type)
830 IS
831 l_return_status VARCHAR2(1);
832
833 CURSOR c_complete IS
834 SELECT *
835 FROM ams_iba_ps_postings_b
836 WHERE posting_id = p_ps_posting_rec.posting_id;
837 l_ps_posting_rec c_complete%ROWTYPE;
838 BEGIN
839 x_complete_rec := p_ps_posting_rec;
840
841
842 OPEN c_complete;
843 FETCH c_complete INTO l_ps_posting_rec;
844 CLOSE c_complete;
845
846 -- created_by
847 IF p_ps_posting_rec.created_by = FND_API.g_miss_num THEN
848 x_complete_rec.created_by := l_ps_posting_rec.created_by;
849 END IF;
850
851 -- creation_date
852 IF p_ps_posting_rec.creation_date = FND_API.g_miss_date THEN
853 x_complete_rec.creation_date := l_ps_posting_rec.creation_date;
854 END IF;
855
856 -- last_updated_by
857 IF p_ps_posting_rec.last_updated_by = FND_API.g_miss_num THEN
858 x_complete_rec.last_updated_by := l_ps_posting_rec.last_updated_by;
859 END IF;
860
861 -- last_update_date
862 IF p_ps_posting_rec.last_update_date = FND_API.g_miss_date THEN
863 x_complete_rec.last_update_date := l_ps_posting_rec.last_update_date;
864 END IF;
865
866 -- last_update_login
867 IF p_ps_posting_rec.last_update_login = FND_API.g_miss_num THEN
868 x_complete_rec.last_update_login := l_ps_posting_rec.last_update_login;
869 END IF;
870
871 -- object_version_number
872 IF p_ps_posting_rec.object_version_number = FND_API.g_miss_num THEN
873 x_complete_rec.object_version_number := l_ps_posting_rec.object_version_number;
874 END IF;
875
876 -- posting_id
877 IF p_ps_posting_rec.posting_id = FND_API.g_miss_num THEN
878 x_complete_rec.posting_id := l_ps_posting_rec.posting_id;
879 END IF;
880
881 -- max_no_contents
882 IF p_ps_posting_rec.max_no_contents = FND_API.g_miss_num THEN
883 x_complete_rec.max_no_contents := l_ps_posting_rec.max_no_contents;
884 END IF;
885
886 -- posting_type
887 IF p_ps_posting_rec.posting_type = FND_API.g_miss_char THEN
888 x_complete_rec.posting_type := l_ps_posting_rec.posting_type;
889 END IF;
890
891 -- content_type
892 IF p_ps_posting_rec.content_type = FND_API.g_miss_char THEN
893 x_complete_rec.content_type := l_ps_posting_rec.content_type;
894 END IF;
895
896 -- default_content_id
897 IF p_ps_posting_rec.default_content_id = FND_API.g_miss_num THEN
898 x_complete_rec.default_content_id := l_ps_posting_rec.default_content_id;
899 END IF;
900
901 -- status_code
902 IF p_ps_posting_rec.status_code = FND_API.g_miss_char THEN
903 x_complete_rec.status_code := l_ps_posting_rec.status_code;
904 END IF;
905 -- Note: Developers need to modify the procedure
906 -- to handle any business specific requirements.
907 END Complete_ps_posting_Rec;
908
909 PROCEDURE Validate_ps_posting(
910 p_api_version_number IN NUMBER,
911 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
912 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
913 p_ps_posting_rec IN ps_posting_rec_type,
914 x_return_status OUT NOCOPY VARCHAR2,
915 x_msg_count OUT NOCOPY NUMBER,
916 x_msg_data OUT NOCOPY VARCHAR2
917 )
918 IS
919 L_API_NAME CONSTANT VARCHAR2(30) := 'Validate_Ps_Posting';
920 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
921 l_object_version_number NUMBER;
922 l_ps_posting_rec AMS_Ps_Posting_PVT.ps_posting_rec_type;
923
924 BEGIN
925 -- Standard Start of API savepoint
926 SAVEPOINT VALIDATE_Ps_Posting_;
927
928 IF (AMS_DEBUG_HIGH_ON) THEN
929
930
931
932 AMS_Utility_PVT.debug_message('In '||L_API_NAME);
933
934 END IF;
935
936 -- Standard call to check for call compatibility.
937 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
938 p_api_version_number,
939 l_api_name,
940 G_PKG_NAME)
941 THEN
942 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
946 IF FND_API.to_Boolean( p_init_msg_list )
943 END IF;
944
945 -- Initialize message list if p_init_msg_list is set to TRUE.
947 THEN
948 FND_MSG_PUB.initialize;
949 END IF;
950
951 ---------------------- validate ------------------------
952 IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
953 Check_ps_posting_Items
954 (
955 p_ps_posting_rec => p_ps_posting_rec,
956 p_validation_mode => JTF_PLSQL_API.g_create,
957 x_return_status => x_return_status
958 );
959
960 IF x_return_status = FND_API.g_ret_sts_unexp_error THEN
961 RAISE FND_API.g_exc_unexpected_error;
962 ELSIF x_return_status = FND_API.g_ret_sts_error THEN
963 RAISE FND_API.g_exc_error;
964 END IF;
965 END IF;
966
967 IF (AMS_DEBUG_HIGH_ON) THEN
968 AMS_Utility_PVT.debug_message(L_API_NAME || ': validation done');
969 END IF;
970
971 -------------------- finish --------------------------
972 FND_MSG_PUB.count_and_get
973 (
974 p_encoded => FND_API.g_false,
975 p_count => x_msg_count,
976 p_data => x_msg_data
977 );
978
979 EXCEPTION
980
981 WHEN AMS_Utility_PVT.resource_locked THEN
982 x_return_status := FND_API.g_ret_sts_error;
983 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
984
985 WHEN FND_API.G_EXC_ERROR THEN
986 ROLLBACK TO VALIDATE_Ps_Posting_;
987 x_return_status := FND_API.G_RET_STS_ERROR;
988 -- Standard call to get message count and if count=1, get the message
989 FND_MSG_PUB.Count_And_Get (
990 p_encoded => FND_API.G_FALSE,
991 p_count => x_msg_count,
992 p_data => x_msg_data
993 );
994
995 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
996 ROLLBACK TO VALIDATE_Ps_Posting_;
997 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
998 -- Standard call to get message count and if count=1, get the message
999 FND_MSG_PUB.Count_And_Get (
1000 p_encoded => FND_API.G_FALSE,
1001 p_count => x_msg_count,
1002 p_data => x_msg_data
1003 );
1004
1005 WHEN OTHERS THEN
1006 ROLLBACK TO VALIDATE_Ps_Posting_;
1007 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1008 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1009 THEN
1010 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1011 END IF;
1012 -- Standard call to get message count and if count=1, get the message
1013 FND_MSG_PUB.Count_And_Get (
1014 p_encoded => FND_API.G_FALSE,
1015 p_count => x_msg_count,
1016 p_data => x_msg_data
1017 );
1018 End Validate_Ps_Posting;
1019
1020 PROCEDURE Validate_ps_posting_rec(
1021 p_api_version_number IN NUMBER,
1022 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1023 x_return_status OUT NOCOPY VARCHAR2,
1024 x_msg_count OUT NOCOPY NUMBER,
1025 x_msg_data OUT NOCOPY VARCHAR2,
1026 p_ps_posting_rec IN ps_posting_rec_type
1027 )
1028 IS
1029 BEGIN
1030 -- Initialize message list if p_init_msg_list is set to TRUE.
1031 IF FND_API.to_Boolean( p_init_msg_list )
1032 THEN
1033 FND_MSG_PUB.initialize;
1034 END IF;
1035
1036 -- Initialize API return status to SUCCESS
1037 x_return_status := FND_API.G_RET_STS_SUCCESS;
1038
1039 -- Hint: Validate data
1040 -- If data not valid
1041 -- THEN
1042 -- x_return_status := FND_API.G_RET_STS_ERROR;
1043
1044 -- Debug Message
1045 IF (AMS_DEBUG_HIGH_ON) THEN
1046
1047 AMS_UTILITY_PVT.debug_message('Private API: Validate_ps_Posting_rec');
1048 END IF;
1049 -- Standard call to get message count and if count is 1, get message info.
1050 FND_MSG_PUB.Count_And_Get
1051 (p_count => x_msg_count,
1052 p_data => x_msg_data
1053 );
1054 END Validate_ps_posting_Rec;
1055
1056 /***********************************************************************/
1057 -- Procedure: Check_ps_posting_Items
1058 --
1059 -- History
1060 -- 05/07/2001 asaha created
1061 -------------------------------------------------------------------------
1062 PROCEDURE Check_ps_posting_Items
1063 (
1064 p_ps_posting_rec IN ps_posting_rec_type,
1065 p_validation_mode IN VARCHAR2,
1066 x_return_status OUT NOCOPY VARCHAR2
1067 )
1068 IS
1069 l_api_version CONSTANT NUMBER := 1.0;
1070 l_api_name CONSTANT VARCHAR2(30) := 'check_ps_posting_items';
1071 l_full_name CONSTANT VARCHAR2(60) := g_pkg_name || '.' || l_api_name;
1072
1073 BEGIN
1074 -- initialize
1075 IF (AMS_DEBUG_HIGH_ON) THEN
1076
1077 AMS_Utility_PVT.debug_message(l_full_name || ': start');
1078 END IF;
1079
1080 x_return_status := FND_API.g_ret_sts_success;
1081
1082 -- check required items
1083 IF (AMS_DEBUG_HIGH_ON) THEN
1084
1085 AMS_Utility_PVT.debug_message(l_full_name || ': check required items');
1086 END IF;
1087 check_ps_posting_req_items
1088 (
1089 p_validation_mode => p_validation_mode,
1090 p_ps_posting_rec => p_ps_posting_rec,
1091 x_return_status => x_return_status
1092 );
1093
1094 IF x_return_status <> FND_API.g_ret_sts_success THEN
1095 RETURN;
1096 END IF;
1097
1098 -- check foreign key items
1099 IF (AMS_DEBUG_HIGH_ON) THEN
1100
1101 AMS_Utility_PVT.debug_message(l_full_name || ': check fk items');
1102 END IF;
1103 check_ps_posting_fk_items
1104 (
1105 p_ps_posting_rec => p_ps_posting_rec,
1106 x_return_status => x_return_status
1107 );
1108
1109 IF (AMS_DEBUG_HIGH_ON) THEN
1110
1111
1112
1113 AMS_Utility_PVT.debug_message(l_full_name || ': done with checking items');
1114
1115 END IF;
1116
1117 IF x_return_status <> FND_API.g_ret_sts_success THEN
1118 RETURN;
1119 END IF;
1120
1121 END Check_ps_posting_Items;
1122
1123
1124 /*****************************************************************************/
1125 -- Procedure: check_ps_posting_req_items
1126 --
1127 -- History
1128 -- 05/07/2001 asaha created
1129 -------------------------------------------------------------------------------
1130 PROCEDURE check_ps_posting_req_items
1131 (
1132 p_validation_mode IN VARCHAR2,
1133 p_ps_posting_rec IN ps_posting_rec_type,
1134 x_return_status OUT NOCOPY VARCHAR2
1135 )
1136 IS
1137 l_api_version CONSTANT NUMBER := 1.0;
1138 l_api_name CONSTANT VARCHAR2(30) := 'check_ps_posting_req_items';
1139 l_full_name CONSTANT VARCHAR2(60) := g_pkg_name || '.' || l_api_name;
1140 BEGIN
1141
1142 x_return_status := FND_API.g_ret_sts_success;
1143
1144 END check_ps_posting_req_items;
1145
1146
1147 /*****************************************************************************/
1148 -- Procedure: check_ps_posting_fk_items
1149 --
1150 -- History
1151 -- 05/07/2001 asaha created
1152 -------------------------------------------------------------------------------
1153 PROCEDURE check_ps_posting_fk_items
1154 (
1155 p_ps_posting_rec IN ps_posting_rec_type,
1156 x_return_status OUT NOCOPY VARCHAR2
1157 )
1158 IS
1159 l_api_version CONSTANT NUMBER := 1.0;
1160 l_api_name CONSTANT VARCHAR2(30) := 'check_ps_posting_fk_items';
1161 l_full_name CONSTANT VARCHAR2(60) := g_pkg_name || '.' || l_api_name;
1162 BEGIN
1163
1164 x_return_status := FND_API.g_ret_sts_success;
1165
1166 END check_ps_posting_fk_items;
1167
1168 END AMS_Ps_Posting_PVT;