143: OR (p_object_version_number = l_object_version_number))
144: THEN
145: FND_MESSAGE.SET_NAME('FUN', 'FUN_RULE_API_RECORD_CHANGED');
146: FND_MESSAGE.SET_TOKEN('TABLE', 'FUN_RULE_DETAILS');
147: FND_MSG_PUB.ADD;
148: RAISE FND_API.G_EXC_ERROR;
149: END IF;
150:
151: p_object_version_number := nvl(l_object_version_number, 1) + 1;
153: EXCEPTION WHEN NO_DATA_FOUND THEN
154: FND_MESSAGE.SET_NAME('FUN', 'FUN_RULE_API_NO_RECORD');
155: FND_MESSAGE.SET_TOKEN('RECORD', 'FUN_RULE_DETAILS');
156: FND_MESSAGE.SET_TOKEN('VALUE', 'rule_name');
157: FND_MSG_PUB.ADD;
158: RAISE FND_API.G_EXC_ERROR;
159: END;
160:
161: -- call for validations.
235: SAVEPOINT create_rule_detail;
236:
237: -- initialize message list if p_init_msg_list is set to TRUE.
238: IF FND_API.to_Boolean(p_init_msg_list) THEN
239: FND_MSG_PUB.initialize;
240: END IF;
241:
242: -- initialize API return status to success.
243: x_return_status := FND_API.G_RET_STS_SUCCESS;
248: x_rule_detail_id,
249: x_return_status);
250:
251: -- standard call to get message count and if count is 1, get message info.
252: FND_MSG_PUB.Count_And_Get(
253: p_encoded => FND_API.G_FALSE,
254: p_count => x_msg_count,
255: p_data => x_msg_data);
256:
258: EXCEPTION
259: WHEN FND_API.G_EXC_ERROR THEN
260: ROLLBACK TO create_rule_detail;
261: x_return_status := FND_API.G_RET_STS_ERROR;
262: FND_MSG_PUB.Count_And_Get(
263: p_encoded => FND_API.G_FALSE,
264: p_count => x_msg_count,
265: p_data => x_msg_data);
266:
266:
267: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
268: ROLLBACK TO create_rule_detail;
269: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
270: FND_MSG_PUB.Count_And_Get(
271: p_encoded => FND_API.G_FALSE,
272: p_count => x_msg_count,
273: p_data => x_msg_data);
274:
276: ROLLBACK TO create_rule_detail;
277: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
278: FND_MESSAGE.SET_NAME('FUN', 'FUN_RULE_API_OTHERS_EXCEP');
279: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
280: FND_MSG_PUB.ADD;
281: FND_MSG_PUB.Count_And_Get(
282: p_encoded => FND_API.G_FALSE,
283: p_count => x_msg_count,
284: p_data => x_msg_data);
277: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
278: FND_MESSAGE.SET_NAME('FUN', 'FUN_RULE_API_OTHERS_EXCEP');
279: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
280: FND_MSG_PUB.ADD;
281: FND_MSG_PUB.Count_And_Get(
282: p_encoded => FND_API.G_FALSE,
283: p_count => x_msg_count,
284: p_data => x_msg_data);
285: END create_rule_detail;
332: SAVEPOINT update_rule_detail;
333:
334: -- initialize message list if p_init_msg_list is set to TRUE.
335: IF FND_API.to_Boolean(p_init_msg_list) THEN
336: FND_MSG_PUB.initialize;
337: END IF;
338:
339: -- initialize API return status to success.
340: x_return_status := FND_API.G_RET_STS_SUCCESS;
362:
363: IF x_return_status = FND_API.G_RET_STS_SUCCESS THEN
364:
365: -- standard call to get message count and if count is 1, get message info.
366: FND_MSG_PUB.Count_And_Get(
367: p_encoded => FND_API.G_FALSE,
368: p_count => x_msg_count,
369: p_data => x_msg_data);
370: END IF;
373: EXCEPTION
374: WHEN FND_API.G_EXC_ERROR THEN
375: ROLLBACK TO update_rule_detail;
376: x_return_status := FND_API.G_RET_STS_ERROR;
377: FND_MSG_PUB.Count_And_Get(
378: p_encoded => FND_API.G_FALSE,
379: p_count => x_msg_count,
380: p_data => x_msg_data);
381:
381:
382: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
383: ROLLBACK TO update_rule_detail;
384: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
385: FND_MSG_PUB.Count_And_Get(
386: p_encoded => FND_API.G_FALSE,
387: p_count => x_msg_count,
388: p_data => x_msg_data);
389:
397: FND_MESSAGE.SET_NAME('FUN', 'FUN_RULE_API_OTHERS_EXCEP');
398: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
399: END IF;
400:
401: FND_MSG_PUB.ADD;
402: FND_MSG_PUB.Count_And_Get(
403: p_encoded => FND_API.G_FALSE,
404: p_count => x_msg_count,
405: p_data => x_msg_data);
398: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
399: END IF;
400:
401: FND_MSG_PUB.ADD;
402: FND_MSG_PUB.Count_And_Get(
403: p_encoded => FND_API.G_FALSE,
404: p_count => x_msg_count,
405: p_data => x_msg_data);
406: END update_rule_detail;
451: BEGIN
452:
453: --Initialize message list if p_init_msg_list is set to TRUE.
454: IF FND_API.to_Boolean(p_init_msg_list) THEN
455: FND_MSG_PUB.initialize;
456: END IF;
457:
458: --Initialize API return status to success.
459: x_return_status := FND_API.G_RET_STS_SUCCESS;
465: IF p_rule_detail_id IS NULL OR
466: p_rule_detail_id = FND_API.G_MISS_NUM THEN
467: FND_MESSAGE.SET_NAME( 'FUN', 'FUN_RULE_API_MISSING_COLUMN' );
468: FND_MESSAGE.SET_TOKEN( 'COLUMN', 'rule_name' );
469: FND_MSG_PUB.ADD;
470: RAISE FND_API.G_EXC_ERROR;
471: END IF;
472: */
473:
487: );
488:
489:
490: --Standard call to get message count and if count is 1, get message info.
491: FND_MSG_PUB.Count_And_Get(
492: p_encoded => FND_API.G_FALSE,
493: p_count => x_msg_count,
494: p_data => x_msg_data );
495:
496: EXCEPTION
497: WHEN FND_API.G_EXC_ERROR THEN
498: x_return_status := FND_API.G_RET_STS_ERROR;
499:
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:
504:
505: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
506: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
507:
508: FND_MSG_PUB.Count_And_Get(
509: p_encoded => FND_API.G_FALSE,
510: p_count => x_msg_count,
511: p_data => x_msg_data );
512:
513: WHEN OTHERS THEN
514: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
515: FND_MESSAGE.SET_NAME( 'FUN', 'FUN_RULE_API_OTHERS_EXCEP' );
516: FND_MESSAGE.SET_TOKEN( 'ERROR' ,SQLERRM );
517: FND_MSG_PUB.ADD;
518:
519: FND_MSG_PUB.Count_And_Get(
520: p_encoded => FND_API.G_FALSE,
521: p_count => x_msg_count,
515: FND_MESSAGE.SET_NAME( 'FUN', 'FUN_RULE_API_OTHERS_EXCEP' );
516: FND_MESSAGE.SET_TOKEN( 'ERROR' ,SQLERRM );
517: FND_MSG_PUB.ADD;
518:
519: FND_MSG_PUB.Count_And_Get(
520: p_encoded => FND_API.G_FALSE,
521: p_count => x_msg_count,
522: p_data => x_msg_data );
523:
573: SAVEPOINT delete_rule_detail;
574:
575: -- initialize message list if p_init_msg_list is set to TRUE.
576: IF FND_API.to_Boolean(p_init_msg_list) THEN
577: FND_MSG_PUB.initialize;
578: END IF;
579:
580: -- initialize API return status to success.
581: x_return_status := FND_API.G_RET_STS_SUCCESS;
591: );
592:
593:
594: -- standard call to get message count and if count is 1, get message info.
595: FND_MSG_PUB.Count_And_Get(
596: p_encoded => FND_API.G_FALSE,
597: p_count => x_msg_count,
598: p_data => x_msg_data);
599:
601: EXCEPTION
602: WHEN FND_API.G_EXC_ERROR THEN
603: ROLLBACK TO delete_rule_detail;
604: x_return_status := FND_API.G_RET_STS_ERROR;
605: FND_MSG_PUB.Count_And_Get(
606: p_encoded => FND_API.G_FALSE,
607: p_count => x_msg_count,
608: p_data => x_msg_data);
609:
609:
610: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
611: ROLLBACK TO delete_rule_detail;
612: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
613: FND_MSG_PUB.Count_And_Get(
614: p_encoded => FND_API.G_FALSE,
615: p_count => x_msg_count,
616: p_data => x_msg_data);
617:
619: ROLLBACK TO delete_rule_detail;
620: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
621: FND_MESSAGE.SET_NAME('FUN', 'FUN_RULE_API_OTHERS_EXCEP');
622: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
623: FND_MSG_PUB.ADD;
624: FND_MSG_PUB.Count_And_Get(
625: p_encoded => FND_API.G_FALSE,
626: p_count => x_msg_count,
627: p_data => x_msg_data);
620: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
621: FND_MESSAGE.SET_NAME('FUN', 'FUN_RULE_API_OTHERS_EXCEP');
622: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
623: FND_MSG_PUB.ADD;
624: FND_MSG_PUB.Count_And_Get(
625: p_encoded => FND_API.G_FALSE,
626: p_count => x_msg_count,
627: p_data => x_msg_data);
628: END delete_rule_detail;