259: l_tot_child_amt NUMBER;
260: BEGIN
261: Write_Log(l_full_name, 'start');
262:
263: x_return_status := FND_API.G_RET_STS_SUCCESS;
264: -- Now sync the amount_adjusted for each parent
265: FOR ref_parent_claim IN parent_claim_csr(l_deduction_rec.claim_id)
266: LOOP
267: OPEN child_claim_csr(ref_parent_claim.claim_id);
288:
289: --Call Update_Claim to reflect the changes.
290: OZF_claim_PVT.Update_claim(
291: p_api_version => 1.0,
292: p_init_msg_list => FND_API.G_FALSE,
293: p_commit => FND_API.G_FALSE,
294: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
295: x_return_status => l_return_status,
296: x_msg_count => x_msg_count,
289: --Call Update_Claim to reflect the changes.
290: OZF_claim_PVT.Update_claim(
291: p_api_version => 1.0,
292: p_init_msg_list => FND_API.G_FALSE,
293: p_commit => FND_API.G_FALSE,
294: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
295: x_return_status => l_return_status,
296: x_msg_count => x_msg_count,
297: x_msg_data => x_msg_data,
290: OZF_claim_PVT.Update_claim(
291: p_api_version => 1.0,
292: p_init_msg_list => FND_API.G_FALSE,
293: p_commit => FND_API.G_FALSE,
294: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
295: x_return_status => l_return_status,
296: x_msg_count => x_msg_count,
297: x_msg_data => x_msg_data,
298: p_claim => l_pvt_claim_Rec,
299: p_event => G_SUBSEQUENT_APPLY_EVENT, --G_UPDATE_EVENT
300: p_mode => OZF_CLAIM_UTILITY_PVT.G_AUTO_MODE,
301: x_object_version_number => l_object_version_number
302: );
303: IF l_return_status = FND_API.G_RET_STS_ERROR then
304: RAISE FND_API.G_EXC_ERROR;
305: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
306: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
307: END IF;
300: p_mode => OZF_CLAIM_UTILITY_PVT.G_AUTO_MODE,
301: x_object_version_number => l_object_version_number
302: );
303: IF l_return_status = FND_API.G_RET_STS_ERROR then
304: RAISE FND_API.G_EXC_ERROR;
305: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
306: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
307: END IF;
308:
301: x_object_version_number => l_object_version_number
302: );
303: IF l_return_status = FND_API.G_RET_STS_ERROR then
304: RAISE FND_API.G_EXC_ERROR;
305: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
306: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
307: END IF;
308:
309: Write_log(l_full_name,l_notes);
302: );
303: IF l_return_status = FND_API.G_RET_STS_ERROR then
304: RAISE FND_API.G_EXC_ERROR;
305: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
306: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
307: END IF;
308:
309: Write_log(l_full_name,l_notes);
310: JTF_NOTES_PUB.create_note(
328: END IF;
329: END LOOP; -- Now sync the amount_adjusted for each parent
330: Write_Log(l_full_name, 'end');
331: EXCEPTION
332: WHEN FND_API.G_EXC_ERROR THEN
333: x_return_status := FND_API.G_RET_STS_ERROR;
334: -- Standard call to get message count and if count=1, get the message
335: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
336: ,p_count => x_msg_count
329: END LOOP; -- Now sync the amount_adjusted for each parent
330: Write_Log(l_full_name, 'end');
331: EXCEPTION
332: WHEN FND_API.G_EXC_ERROR THEN
333: x_return_status := FND_API.G_RET_STS_ERROR;
334: -- Standard call to get message count and if count=1, get the message
335: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
336: ,p_count => x_msg_count
337: ,p_data => x_msg_data
331: EXCEPTION
332: WHEN FND_API.G_EXC_ERROR THEN
333: x_return_status := FND_API.G_RET_STS_ERROR;
334: -- Standard call to get message count and if count=1, get the message
335: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
336: ,p_count => x_msg_count
337: ,p_data => x_msg_data
338: );
339:
336: ,p_count => x_msg_count
337: ,p_data => x_msg_data
338: );
339:
340: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
341: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
342: -- Standard call to get message count and if count=1, get the message
343: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
344: ,p_count => x_msg_count
337: ,p_data => x_msg_data
338: );
339:
340: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
341: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
342: -- Standard call to get message count and if count=1, get the message
343: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
344: ,p_count => x_msg_count
345: ,p_data => x_msg_data
339:
340: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
341: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
342: -- Standard call to get message count and if count=1, get the message
343: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
344: ,p_count => x_msg_count
345: ,p_data => x_msg_data
346: );
347:
345: ,p_data => x_msg_data
346: );
347:
348: WHEN OTHERS THEN
349: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
350: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
351: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
352: FND_MSG_PUB.add;
353: END IF;
351: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
352: FND_MSG_PUB.add;
353: END IF;
354: -- Standard call to get message count and if count=1, get the message
355: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
356: ,p_count => x_msg_count
357: ,p_data => x_msg_data
358: );
359: END update_parent_amounts;
367:
368: -- PARAMETERS:
369: -- IN:
370: -- p_api_version_number IN NUMBER Required
371: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
372: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
373: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
374: -- P_deduction_Rec IN DEDUCTION_REC_TYPE Required
375: --
368: -- PARAMETERS:
369: -- IN:
370: -- p_api_version_number IN NUMBER Required
371: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
372: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
373: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
374: -- P_deduction_Rec IN DEDUCTION_REC_TYPE Required
375: --
376: -- OUT:
369: -- IN:
370: -- p_api_version_number IN NUMBER Required
371: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
372: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
373: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
374: -- P_deduction_Rec IN DEDUCTION_REC_TYPE Required
375: --
376: -- OUT:
377: -- x_return_status OUT VARCHAR2
402: x_claim_reason_name VARCHAR2(80);
403:
404: BEGIN
405: -- Initialize API return status to SUCCESS
406: x_return_status := FND_API.G_RET_STS_SUCCESS;
407:
408: OZF_CLAIM_GRP.Create_Deduction(
409: p_api_version_number,
410: p_init_msg_list,
421: );
422:
423: EXCEPTION
424: WHEN OTHERS THEN
425: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
426: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
427: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_CRE_DEDU_ERR');
428: FND_MSG_PUB.add;
429: END IF;
428: FND_MSG_PUB.add;
429: END IF;
430: -- Standard call to get message count and if count=1, get the message
431: FND_MSG_PUB.Count_And_Get (
432: p_encoded => FND_API.G_FALSE,
433: p_count => x_msg_count,
434: p_data => x_msg_data
435: );
436: End Create_Deduction;
449: --
450: -- PARAMETERS:
451: -- IN
452: -- p_api_version_number IN NUMBER Required
453: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
454: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
455: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
456: -- P_deduction_Rec IN DEDUCTION_REC_TYPE Required
457: --
450: -- PARAMETERS:
451: -- IN
452: -- p_api_version_number IN NUMBER Required
453: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
454: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
455: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
456: -- P_deduction_Rec IN DEDUCTION_REC_TYPE Required
457: --
458: -- OUT:
451: -- IN
452: -- p_api_version_number IN NUMBER Required
453: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
454: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
455: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
456: -- P_deduction_Rec IN DEDUCTION_REC_TYPE Required
457: --
458: -- OUT:
459: -- x_return_status OUT NOCOPY VARCHAR2
530:
531: Write_Log(l_full_name, 'start');
532:
533: -- Standard call to check for call compatibility.
534: IF NOT FND_API.Compatible_API_Call ( l_api_version,
535: p_api_version_number,
536: l_api_name,
537: G_PKG_NAME)
538: THEN
535: p_api_version_number,
536: l_api_name,
537: G_PKG_NAME)
538: THEN
539: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
540: END IF;
541:
542: -- Initialize message list if p_init_msg_list is set to TRUE.
543: IF FND_API.to_Boolean( p_init_msg_list ) THEN
539: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
540: END IF;
541:
542: -- Initialize message list if p_init_msg_list is set to TRUE.
543: IF FND_API.to_Boolean( p_init_msg_list ) THEN
544: FND_MSG_PUB.initialize;
545: END IF;
546:
547: -- Initialize API return status to SUCCESS
544: FND_MSG_PUB.initialize;
545: END IF;
546:
547: -- Initialize API return status to SUCCESS
548: x_return_status := FND_API.G_RET_STS_SUCCESS;
549:
550: ------------------------- start -------------------------------
551:
552: -----------------------------
606:
607: -- Get default value of assignment manager for a deduction record
608: OZF_ASSIGNMENT_QUALIFIER_PUB.Get_Deduction_Value(
609: p_api_version_number => l_api_version,
610: p_init_msg_list => FND_API.G_FALSE,
611: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
612: p_commit => FND_API.G_FALSE,
613: x_return_status => l_return_status,
614: x_msg_count => x_msg_count,
607: -- Get default value of assignment manager for a deduction record
608: OZF_ASSIGNMENT_QUALIFIER_PUB.Get_Deduction_Value(
609: p_api_version_number => l_api_version,
610: p_init_msg_list => FND_API.G_FALSE,
611: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
612: p_commit => FND_API.G_FALSE,
613: x_return_status => l_return_status,
614: x_msg_count => x_msg_count,
615: x_msg_data => x_msg_data,
608: OZF_ASSIGNMENT_QUALIFIER_PUB.Get_Deduction_Value(
609: p_api_version_number => l_api_version,
610: p_init_msg_list => FND_API.G_FALSE,
611: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
612: p_commit => FND_API.G_FALSE,
613: x_return_status => l_return_status,
614: x_msg_count => x_msg_count,
615: x_msg_data => x_msg_data,
616: p_deduction => l_qual_deduction_rec,
615: x_msg_data => x_msg_data,
616: p_deduction => l_qual_deduction_rec,
617: x_qualifier => l_qualifier
618: );
619: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
620: RAISE FND_API.G_EXC_ERROR;
621: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
623: END IF;
616: p_deduction => l_qual_deduction_rec,
617: x_qualifier => l_qualifier
618: );
619: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
620: RAISE FND_API.G_EXC_ERROR;
621: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
623: END IF;
624:
617: x_qualifier => l_qualifier
618: );
619: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
620: RAISE FND_API.G_EXC_ERROR;
621: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
623: END IF;
624:
625: -- assigned the changed values.
618: );
619: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
620: RAISE FND_API.G_EXC_ERROR;
621: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
623: END IF;
624:
625: -- assigned the changed values.
626: l_deduction_rec.claim_date := l_qualifier.claim_date;
656: IF FND_MSG_PUB.Check_Msg_level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
657: FND_MESSAGE.Set_Name('OZF','OZF_REQUIRED_FIELDS_MISSING');
658: FND_MSG_PUB.Add;
659: END IF;
660: RAISE FND_API.g_exc_error;
661: ELSIF l_deduction_rec.source_object_id IS NOT NULL AND
662: l_deduction_rec.source_object_type_id IS NULL THEN
663: -- source_object_type_id is required for transaction-related deduction.
664: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
664: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
665: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_SRC_INFO_MISSING');
666: FND_MSG_PUB.add;
667: END IF;
668: RAISE FND_API.g_exc_error;
669: END IF;
670:
671: ------------------------------------------
672: -- 3. Default and derive column valude --
782: -- 5. Check claim common element thought private api --
783: -------------------------------------------------------
784: OZF_CLAIM_PVT.Check_Claim_Common_Element (
785: p_api_version => l_api_version,
786: p_init_msg_list => FND_API.g_false,
787: p_validation_level => FND_API.g_valid_level_full,
788: x_return_status => l_return_status,
789: x_msg_count => x_msg_count,
790: x_msg_data => x_msg_data,
783: -------------------------------------------------------
784: OZF_CLAIM_PVT.Check_Claim_Common_Element (
785: p_api_version => l_api_version,
786: p_init_msg_list => FND_API.g_false,
787: p_validation_level => FND_API.g_valid_level_full,
788: x_return_status => l_return_status,
789: x_msg_count => x_msg_count,
790: x_msg_data => x_msg_data,
791: p_claim => l_pvt_claim_rec,
790: x_msg_data => x_msg_data,
791: p_claim => l_pvt_claim_rec,
792: x_claim => l_cre_claim_rec
793: );
794: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
795: RAISE FND_API.G_EXC_ERROR;
796: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
797: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
798: END IF;
791: p_claim => l_pvt_claim_rec,
792: x_claim => l_cre_claim_rec
793: );
794: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
795: RAISE FND_API.G_EXC_ERROR;
796: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
797: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
798: END IF;
799:
792: x_claim => l_cre_claim_rec
793: );
794: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
795: RAISE FND_API.G_EXC_ERROR;
796: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
797: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
798: END IF;
799:
800: -------------------------------------------------------
793: );
794: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
795: RAISE FND_API.G_EXC_ERROR;
796: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
797: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
798: END IF;
799:
800: -------------------------------------------------------
801: -- 6. Create claim
801: -- 6. Create claim
802: -------------------------------------------------------
803: OZF_CLAIM_PVT.Create_Claim(
804: p_api_version => l_api_version,
805: p_init_msg_list => FND_API.g_false,
806: p_commit => FND_API.g_false,
807: p_validation_level => FND_API.g_valid_level_full,
808: x_return_status => l_return_status,
809: x_msg_count => x_msg_count,
802: -------------------------------------------------------
803: OZF_CLAIM_PVT.Create_Claim(
804: p_api_version => l_api_version,
805: p_init_msg_list => FND_API.g_false,
806: p_commit => FND_API.g_false,
807: p_validation_level => FND_API.g_valid_level_full,
808: x_return_status => l_return_status,
809: x_msg_count => x_msg_count,
810: x_msg_data => x_msg_data,
803: OZF_CLAIM_PVT.Create_Claim(
804: p_api_version => l_api_version,
805: p_init_msg_list => FND_API.g_false,
806: p_commit => FND_API.g_false,
807: p_validation_level => FND_API.g_valid_level_full,
808: x_return_status => l_return_status,
809: x_msg_count => x_msg_count,
810: x_msg_data => x_msg_data,
811: p_claim => l_cre_claim_rec,
811: p_claim => l_cre_claim_rec,
812: x_claim_id => x_claim_id
813: );
814: -- Check return status from the above procedure call
815: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
816: RAISE FND_API.G_EXC_ERROR;
817: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
818: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
819: END IF;
812: x_claim_id => x_claim_id
813: );
814: -- Check return status from the above procedure call
815: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
816: RAISE FND_API.G_EXC_ERROR;
817: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
818: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
819: END IF;
820:
813: );
814: -- Check return status from the above procedure call
815: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
816: RAISE FND_API.G_EXC_ERROR;
817: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
818: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
819: END IF;
820:
821: -------------------------------------------------------
814: -- Check return status from the above procedure call
815: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
816: RAISE FND_API.G_EXC_ERROR;
817: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
818: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
819: END IF;
820:
821: -------------------------------------------------------
822: -- 7. Assign value to OUT parameters
848: -- 9. Create claim line
849: -------------------------------------------------------
850: OZF_CLAIM_Line_PVT.Create_Claim_Line(
851: p_api_version => l_api_version,
852: p_init_msg_list => FND_API.g_false,
853: p_commit => FND_API.g_false,
854: p_validation_level => FND_API.g_valid_level_full,
855: x_return_status => l_return_status,
856: x_msg_count => x_msg_count,
849: -------------------------------------------------------
850: OZF_CLAIM_Line_PVT.Create_Claim_Line(
851: p_api_version => l_api_version,
852: p_init_msg_list => FND_API.g_false,
853: p_commit => FND_API.g_false,
854: p_validation_level => FND_API.g_valid_level_full,
855: x_return_status => l_return_status,
856: x_msg_count => x_msg_count,
857: x_msg_data => x_msg_data,
850: OZF_CLAIM_Line_PVT.Create_Claim_Line(
851: p_api_version => l_api_version,
852: p_init_msg_list => FND_API.g_false,
853: p_commit => FND_API.g_false,
854: p_validation_level => FND_API.g_valid_level_full,
855: x_return_status => l_return_status,
856: x_msg_count => x_msg_count,
857: x_msg_data => x_msg_data,
858: p_claim_line_rec => l_claim_line_rec,
857: x_msg_data => x_msg_data,
858: p_claim_line_rec => l_claim_line_rec,
859: x_claim_line_id => l_dummy_number
860: );
861: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
862: RAISE FND_API.G_EXC_ERROR;
863: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
864: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
865: END IF;
858: p_claim_line_rec => l_claim_line_rec,
859: x_claim_line_id => l_dummy_number
860: );
861: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
862: RAISE FND_API.G_EXC_ERROR;
863: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
864: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
865: END IF;
866:
859: x_claim_line_id => l_dummy_number
860: );
861: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
862: RAISE FND_API.G_EXC_ERROR;
863: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
864: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
865: END IF;
866:
867: ------------------------- finish -------------------------------
860: );
861: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
862: RAISE FND_API.G_EXC_ERROR;
863: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
864: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
865: END IF;
866:
867: ------------------------- finish -------------------------------
868: Write_Log(l_full_name, 'end');
868: Write_Log(l_full_name, 'end');
869:
870:
871: -- Standard check for p_commit
872: IF FND_API.to_Boolean(p_commit) THEN
873: COMMIT WORK;
874: END IF;
875:
876: -- Debug Message
886: p_data => x_msg_data
887: );
888:
889: EXCEPTION
890: WHEN FND_API.G_EXC_ERROR THEN
891: ROLLBACK TO CREATE_CLAIM_GRP;
892: x_return_status := FND_API.G_RET_STS_ERROR;
893: FND_MSG_PUB.Count_And_Get (
894: p_encoded => FND_API.G_FALSE,
888:
889: EXCEPTION
890: WHEN FND_API.G_EXC_ERROR THEN
891: ROLLBACK TO CREATE_CLAIM_GRP;
892: x_return_status := FND_API.G_RET_STS_ERROR;
893: FND_MSG_PUB.Count_And_Get (
894: p_encoded => FND_API.G_FALSE,
895: p_count => x_msg_count,
896: p_data => x_msg_data
890: WHEN FND_API.G_EXC_ERROR THEN
891: ROLLBACK TO CREATE_CLAIM_GRP;
892: x_return_status := FND_API.G_RET_STS_ERROR;
893: FND_MSG_PUB.Count_And_Get (
894: p_encoded => FND_API.G_FALSE,
895: p_count => x_msg_count,
896: p_data => x_msg_data
897: );
898:
895: p_count => x_msg_count,
896: p_data => x_msg_data
897: );
898:
899: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
900: ROLLBACK TO CREATE_CLAIM_GRP;
901: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
902: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
903: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_CRE_DEDU_ERR');
897: );
898:
899: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
900: ROLLBACK TO CREATE_CLAIM_GRP;
901: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
902: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
903: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_CRE_DEDU_ERR');
904: FND_MSG_PUB.add;
905: END IF;
903: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_CRE_DEDU_ERR');
904: FND_MSG_PUB.add;
905: END IF;
906: FND_MSG_PUB.Count_And_Get (
907: p_encoded => FND_API.G_FALSE,
908: p_count => x_msg_count,
909: p_data => x_msg_data
910: );
911:
910: );
911:
912: WHEN OTHERS THEN
913: ROLLBACK TO CREATE_CLAIM_GRP;
914: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
915: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
916: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_CRE_DEDU_ERR');
917: FND_MSG_PUB.add;
918: END IF;
916: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_CRE_DEDU_ERR');
917: FND_MSG_PUB.add;
918: END IF;
919: FND_MSG_PUB.Count_And_Get (
920: p_encoded => FND_API.G_FALSE,
921: p_count => x_msg_count,
922: p_data => x_msg_data
923: );
924:
989: BEGIN
990: --------------------- initialize -----------------------
991: Write_Log(l_full_name, 'start');
992:
993: x_return_status := FND_API.G_RET_STS_SUCCESS;
994:
995:
996:
997: l_ar_receipt_amount := l_deduction_rec.amount_applied;
1070: END IF; --- l_root_amount > 0
1071:
1072:
1073: IF l_deduction_rec.source_object_id IS NOT NULL AND
1074: l_deduction_rec.source_object_id <> FND_API.G_MISS_NUM THEN
1075: -- Build Notes :for transaction releated deduction
1076:
1077: IF l_deduction_rec.receipt_number <> ref_split_claim_csr.receipt_number THEN
1078: l_notes := l_notes||' Receipt Reference is Changed '||
1146:
1147: Write_Log(l_full_name, 'end');
1148:
1149: EXCEPTION
1150: WHEN FND_API.G_EXC_ERROR THEN
1151: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1152: WHEN OTHERS THEN
1153: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1154: FND_MESSAGE.set_name('OZF', 'OZF_API_DEBUG_MESSAGE');
1147: Write_Log(l_full_name, 'end');
1148:
1149: EXCEPTION
1150: WHEN FND_API.G_EXC_ERROR THEN
1151: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1152: WHEN OTHERS THEN
1153: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1154: FND_MESSAGE.set_name('OZF', 'OZF_API_DEBUG_MESSAGE');
1155: FND_MESSAGE.set_token('TEXT', l_full_name||'An error happened in '||l_full_name);
1149: EXCEPTION
1150: WHEN FND_API.G_EXC_ERROR THEN
1151: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1152: WHEN OTHERS THEN
1153: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1154: FND_MESSAGE.set_name('OZF', 'OZF_API_DEBUG_MESSAGE');
1155: FND_MESSAGE.set_token('TEXT', l_full_name||'An error happened in '||l_full_name);
1156: FND_MSG_PUB.add;
1157:
1167: --
1168: -- PARAMETERS:
1169: -- IN:
1170: -- p_api_version_number IN NUMBER Required
1171: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
1172: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
1173: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
1174: -- P_deduction IN DEDUCTION_REC_TYPE Required
1175: --
1168: -- PARAMETERS:
1169: -- IN:
1170: -- p_api_version_number IN NUMBER Required
1171: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
1172: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
1173: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
1174: -- P_deduction IN DEDUCTION_REC_TYPE Required
1175: --
1176: -- OUT:
1169: -- IN:
1170: -- p_api_version_number IN NUMBER Required
1171: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
1172: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
1173: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
1174: -- P_deduction IN DEDUCTION_REC_TYPE Required
1175: --
1176: -- OUT:
1177: -- x_return_status OUT VARCHAR2
1183: --
1184: ----------------------------------------------------------------------------------------------
1185: PROCEDURE Perform_Subsequent_Apply(
1186: p_api_version IN NUMBER,
1187: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1188: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1189:
1190: x_return_status OUT NOCOPY VARCHAR2,
1191: x_msg_count OUT NOCOPY NUMBER,
1184: ----------------------------------------------------------------------------------------------
1185: PROCEDURE Perform_Subsequent_Apply(
1186: p_api_version IN NUMBER,
1187: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1188: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1189:
1190: x_return_status OUT NOCOPY VARCHAR2,
1191: x_msg_count OUT NOCOPY NUMBER,
1192: x_msg_data OUT NOCOPY VARCHAR2,
1282: BEGIN
1283: --------------------- initialize -----------------------
1284: Write_Log(l_full_name, 'start');
1285:
1286: x_return_status := FND_API.G_RET_STS_SUCCESS;
1287:
1288: -- Check if the claim has any splits.
1289: OPEN get_claim_count_csr(l_deduction_rec.claim_id);
1290: FETCH get_claim_count_csr INTO l_claim_count;
1314: l_deduction_rec.amount := l_deduction_rec.amount * -1;
1315: l_deduction_rec.amount_applied := l_deduction_rec.amount_applied * -1;
1316: END IF;
1317: ELSIF l_claim_class = 'DEDUCTION' AND
1318: (l_source_object_id IS NULL OR l_source_object_id = FND_API.g_miss_num) THEN
1319: IF l_deduction_rec.amount < 0 THEN
1320: l_deduction_rec.amount := l_deduction_rec.amount * -1;
1321: END IF;
1322: END IF;
1337: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1338: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_STATUS_PENDING_CLOSE');
1339: FND_MSG_PUB.add;
1340: END IF;
1341: RAISE FND_API.G_EXC_ERROR;
1342: END IF;
1343:
1344: -- ---------------------
1345: -- Fully Apply
1422: l_pvt_claim_rec.exchange_rate := l_deduction_rec.exchange_rate;
1423: l_pvt_claim_rec.status_code := l_new_status_code;
1424:
1425: IF l_deduction_rec.source_object_id IS NOT NULL AND
1426: l_deduction_rec.source_object_id <> FND_API.G_MISS_NUM THEN
1427: --Transaction 8/22/2005Releated deduction
1428: l_pvt_claim_rec.receipt_id := l_deduction_rec.receipt_id;
1429: l_pvt_claim_rec.receipt_number := l_deduction_rec.receipt_number;
1430:
1463:
1464: -- Call Update_Claim to reflect the changes.
1465: OZF_claim_PVT.Update_claim(
1466: p_api_version => 1.0,
1467: p_init_msg_list => FND_API.G_FALSE,
1468: p_commit => FND_API.G_FALSE,
1469: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1470: x_return_status => l_return_status,
1471: x_msg_count => x_msg_count,
1464: -- Call Update_Claim to reflect the changes.
1465: OZF_claim_PVT.Update_claim(
1466: p_api_version => 1.0,
1467: p_init_msg_list => FND_API.G_FALSE,
1468: p_commit => FND_API.G_FALSE,
1469: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1470: x_return_status => l_return_status,
1471: x_msg_count => x_msg_count,
1472: x_msg_data => x_msg_data,
1465: OZF_claim_PVT.Update_claim(
1466: p_api_version => 1.0,
1467: p_init_msg_list => FND_API.G_FALSE,
1468: p_commit => FND_API.G_FALSE,
1469: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1470: x_return_status => l_return_status,
1471: x_msg_count => x_msg_count,
1472: x_msg_data => x_msg_data,
1473: p_claim => l_pvt_claim_rec,
1474: p_event => g_subsequent_apply_event, --g_update_event
1475: p_mode => OZF_CLAIM_UTILITY_PVT.G_AUTO_MODE,
1476: x_object_version_number => l_object_version_number
1477: );
1478: IF l_return_status = FND_API.G_RET_STS_ERROR then
1479: RAISE FND_API.G_EXC_ERROR;
1480: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1481: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1482: END IF;
1475: p_mode => OZF_CLAIM_UTILITY_PVT.G_AUTO_MODE,
1476: x_object_version_number => l_object_version_number
1477: );
1478: IF l_return_status = FND_API.G_RET_STS_ERROR then
1479: RAISE FND_API.G_EXC_ERROR;
1480: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1481: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1482: END IF;
1483:
1476: x_object_version_number => l_object_version_number
1477: );
1478: IF l_return_status = FND_API.G_RET_STS_ERROR then
1479: RAISE FND_API.G_EXC_ERROR;
1480: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1481: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1482: END IF;
1483:
1484: ELSE
1477: );
1478: IF l_return_status = FND_API.G_RET_STS_ERROR then
1479: RAISE FND_API.G_EXC_ERROR;
1480: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1481: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1482: END IF;
1483:
1484: ELSE
1485: --Build Notes. (34)
1526: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
1527: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_STATUS_PENDING_CLOSE');
1528: FND_MSG_PUB.add;
1529: END IF;
1530: RAISE FND_API.G_EXC_ERROR;
1531: END IF;
1532: END LOOP;
1533:
1534: -- ---------------------
1578: l_pvt_claim_rec.exchange_rate_date := l_deduction_rec.exchange_rate_date;
1579: l_pvt_claim_rec.exchange_rate := l_deduction_rec.exchange_rate;
1580:
1581: IF l_deduction_rec.source_object_id IS NOT NULL AND
1582: l_deduction_rec.source_object_id <> FND_API.G_MISS_NUM THEN
1583: --Transaction Releated deduction
1584: l_pvt_claim_rec.receipt_id := l_deduction_rec.receipt_id;
1585: l_pvt_claim_rec.receipt_number := l_deduction_rec.receipt_number;
1586:
1623:
1624: --Call Update_Claim to reflect the changes.
1625: OZF_claim_PVT.Update_claim(
1626: p_api_version => 1.0,
1627: p_init_msg_list => FND_API.G_FALSE,
1628: p_commit => FND_API.G_FALSE,
1629: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1630: x_return_status => l_return_status,
1631: x_msg_count => x_msg_count,
1624: --Call Update_Claim to reflect the changes.
1625: OZF_claim_PVT.Update_claim(
1626: p_api_version => 1.0,
1627: p_init_msg_list => FND_API.G_FALSE,
1628: p_commit => FND_API.G_FALSE,
1629: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1630: x_return_status => l_return_status,
1631: x_msg_count => x_msg_count,
1632: x_msg_data => x_msg_data,
1625: OZF_claim_PVT.Update_claim(
1626: p_api_version => 1.0,
1627: p_init_msg_list => FND_API.G_FALSE,
1628: p_commit => FND_API.G_FALSE,
1629: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1630: x_return_status => l_return_status,
1631: x_msg_count => x_msg_count,
1632: x_msg_data => x_msg_data,
1633: p_claim => l_pvt_claim_Rec,
1634: p_event => G_SUBSEQUENT_APPLY_EVENT, --G_UPDATE_EVENT
1635: p_mode => OZF_CLAIM_UTILITY_PVT.G_AUTO_MODE,
1636: x_object_version_number => l_object_version_number
1637: );
1638: IF l_return_status = FND_API.G_RET_STS_ERROR then
1639: RAISE FND_API.G_EXC_ERROR;
1640: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1641: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1642: END IF;
1635: p_mode => OZF_CLAIM_UTILITY_PVT.G_AUTO_MODE,
1636: x_object_version_number => l_object_version_number
1637: );
1638: IF l_return_status = FND_API.G_RET_STS_ERROR then
1639: RAISE FND_API.G_EXC_ERROR;
1640: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1641: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1642: END IF;
1643:
1636: x_object_version_number => l_object_version_number
1637: );
1638: IF l_return_status = FND_API.G_RET_STS_ERROR then
1639: RAISE FND_API.G_EXC_ERROR;
1640: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1641: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1642: END IF;
1643:
1644:
1637: );
1638: IF l_return_status = FND_API.G_RET_STS_ERROR then
1639: RAISE FND_API.G_EXC_ERROR;
1640: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1641: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1642: END IF;
1643:
1644:
1645: --Call Create Notes API.
1675: ,x_notes_tbl => l_notes_tbl
1676: ,x_update_allowed_flag => l_update_allowed_flag
1677: ,x_return_status => l_return_status
1678: );
1679: IF l_return_status = FND_API.G_RET_STS_ERROR then
1680: RAISE FND_API.G_EXC_ERROR;
1681: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1682: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1683: END IF;
1676: ,x_update_allowed_flag => l_update_allowed_flag
1677: ,x_return_status => l_return_status
1678: );
1679: IF l_return_status = FND_API.G_RET_STS_ERROR then
1680: RAISE FND_API.G_EXC_ERROR;
1681: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1682: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1683: END IF;
1684:
1677: ,x_return_status => l_return_status
1678: );
1679: IF l_return_status = FND_API.G_RET_STS_ERROR then
1680: RAISE FND_API.G_EXC_ERROR;
1681: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1682: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1683: END IF;
1684:
1685: write_log(l_full_name, l_applicable_claims_tbl.count);
1678: );
1679: IF l_return_status = FND_API.G_RET_STS_ERROR then
1680: RAISE FND_API.G_EXC_ERROR;
1681: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1682: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1683: END IF;
1684:
1685: write_log(l_full_name, l_applicable_claims_tbl.count);
1686: FOR i in 1..l_applicable_claims_tbl.count LOOP
1719:
1720: --Call Update_Claim to reflect the changes.
1721: OZF_claim_PVT.Update_claim(
1722: p_api_version => 1.0,
1723: p_init_msg_list => FND_API.G_FALSE,
1724: p_commit => FND_API.G_FALSE,
1725: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1726: x_return_status => l_return_status,
1727: x_msg_count => x_msg_count,
1720: --Call Update_Claim to reflect the changes.
1721: OZF_claim_PVT.Update_claim(
1722: p_api_version => 1.0,
1723: p_init_msg_list => FND_API.G_FALSE,
1724: p_commit => FND_API.G_FALSE,
1725: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1726: x_return_status => l_return_status,
1727: x_msg_count => x_msg_count,
1728: x_msg_data => x_msg_data,
1721: OZF_claim_PVT.Update_claim(
1722: p_api_version => 1.0,
1723: p_init_msg_list => FND_API.G_FALSE,
1724: p_commit => FND_API.G_FALSE,
1725: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1726: x_return_status => l_return_status,
1727: x_msg_count => x_msg_count,
1728: x_msg_data => x_msg_data,
1729: p_claim => l_pvt_claim_Rec,
1730: p_event => G_SUBSEQUENT_APPLY_EVENT, --G_UPDATE_EVENT
1731: p_mode => OZF_CLAIM_UTILITY_PVT.G_AUTO_MODE,
1732: x_object_version_number => l_object_version_number
1733: );
1734: IF l_return_status = FND_API.G_RET_STS_ERROR then
1735: RAISE FND_API.G_EXC_ERROR;
1736: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1737: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1738: END IF;
1731: p_mode => OZF_CLAIM_UTILITY_PVT.G_AUTO_MODE,
1732: x_object_version_number => l_object_version_number
1733: );
1734: IF l_return_status = FND_API.G_RET_STS_ERROR then
1735: RAISE FND_API.G_EXC_ERROR;
1736: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1737: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1738: END IF;
1739:
1732: x_object_version_number => l_object_version_number
1733: );
1734: IF l_return_status = FND_API.G_RET_STS_ERROR then
1735: RAISE FND_API.G_EXC_ERROR;
1736: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1737: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1738: END IF;
1739:
1740: IF i <= l_notes_tbl.COUNT THEN
1733: );
1734: IF l_return_status = FND_API.G_RET_STS_ERROR then
1735: RAISE FND_API.G_EXC_ERROR;
1736: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1737: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1738: END IF;
1739:
1740: IF i <= l_notes_tbl.COUNT THEN
1741: --Call Create Notes API.
1765: x_return_status => l_return_status
1766: ,x_msg_count => x_msg_count
1767: ,x_msg_data => x_msg_data
1768: ,p_deduction_rec => l_deduction_rec);
1769: IF l_return_status = FND_API.G_RET_STS_ERROR then
1770: RAISE FND_API.G_EXC_ERROR;
1771: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1772: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1773: END IF;
1766: ,x_msg_count => x_msg_count
1767: ,x_msg_data => x_msg_data
1768: ,p_deduction_rec => l_deduction_rec);
1769: IF l_return_status = FND_API.G_RET_STS_ERROR then
1770: RAISE FND_API.G_EXC_ERROR;
1771: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1772: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1773: END IF;
1774:
1767: ,x_msg_data => x_msg_data
1768: ,p_deduction_rec => l_deduction_rec);
1769: IF l_return_status = FND_API.G_RET_STS_ERROR then
1770: RAISE FND_API.G_EXC_ERROR;
1771: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1772: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1773: END IF;
1774:
1775: END IF; --IF l_split_flag = 'YES' THEN
1768: ,p_deduction_rec => l_deduction_rec);
1769: IF l_return_status = FND_API.G_RET_STS_ERROR then
1770: RAISE FND_API.G_EXC_ERROR;
1771: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1772: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1773: END IF;
1774:
1775: END IF; --IF l_split_flag = 'YES' THEN
1776:
1775: END IF; --IF l_split_flag = 'YES' THEN
1776:
1777:
1778: FND_MSG_PUB.count_and_get(
1779: p_encoded => FND_API.g_false,
1780: p_count => x_msg_count,
1781: p_data => x_msg_data
1782: );
1783:
1784: Write_Log(l_full_name, 'end');
1785:
1786:
1787: EXCEPTION
1788: WHEN FND_API.G_EXC_ERROR THEN
1789: x_return_status := FND_API.G_RET_STS_ERROR;
1790: -- Standard call to get message count and if count=1, get the message
1791: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1792: ,p_count => x_msg_count
1785:
1786:
1787: EXCEPTION
1788: WHEN FND_API.G_EXC_ERROR THEN
1789: x_return_status := FND_API.G_RET_STS_ERROR;
1790: -- Standard call to get message count and if count=1, get the message
1791: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1792: ,p_count => x_msg_count
1793: ,p_data => x_msg_data
1787: EXCEPTION
1788: WHEN FND_API.G_EXC_ERROR THEN
1789: x_return_status := FND_API.G_RET_STS_ERROR;
1790: -- Standard call to get message count and if count=1, get the message
1791: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1792: ,p_count => x_msg_count
1793: ,p_data => x_msg_data
1794: );
1795:
1792: ,p_count => x_msg_count
1793: ,p_data => x_msg_data
1794: );
1795:
1796: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1797: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1798: -- Standard call to get message count and if count=1, get the message
1799: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1800: ,p_count => x_msg_count
1793: ,p_data => x_msg_data
1794: );
1795:
1796: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1797: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1798: -- Standard call to get message count and if count=1, get the message
1799: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1800: ,p_count => x_msg_count
1801: ,p_data => x_msg_data
1795:
1796: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1797: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1798: -- Standard call to get message count and if count=1, get the message
1799: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1800: ,p_count => x_msg_count
1801: ,p_data => x_msg_data
1802: );
1803:
1801: ,p_data => x_msg_data
1802: );
1803:
1804: WHEN OTHERS THEN
1805: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1806: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1807: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
1808: FND_MSG_PUB.add;
1809: END IF;
1807: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
1808: FND_MSG_PUB.add;
1809: END IF;
1810: -- Standard call to get message count and if count=1, get the message
1811: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
1812: ,p_count => x_msg_count
1813: ,p_data => x_msg_data
1814: );
1815:
1825: --
1826: -- PARAMETERS:
1827: -- IN:
1828: -- p_api_version_number IN NUMBER Required
1829: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
1830: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
1831: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
1832: -- P_deduction IN DEDUCTION_REC_TYPE Required
1833: --
1826: -- PARAMETERS:
1827: -- IN:
1828: -- p_api_version_number IN NUMBER Required
1829: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
1830: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
1831: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
1832: -- P_deduction IN DEDUCTION_REC_TYPE Required
1833: --
1834: -- OUT:
1827: -- IN:
1828: -- p_api_version_number IN NUMBER Required
1829: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
1830: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
1831: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
1832: -- P_deduction IN DEDUCTION_REC_TYPE Required
1833: --
1834: -- OUT:
1835: -- x_return_status OUT VARCHAR2
1841: --
1842: ----------------------------------------------------------------------------------------------
1843: PROCEDURE Perform_Subsequent_Unapply(
1844: p_api_version IN NUMBER,
1845: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1846: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1847:
1848: x_return_status OUT NOCOPY VARCHAR2,
1849: x_msg_count OUT NOCOPY NUMBER,
1842: ----------------------------------------------------------------------------------------------
1843: PROCEDURE Perform_Subsequent_Unapply(
1844: p_api_version IN NUMBER,
1845: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1846: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1847:
1848: x_return_status OUT NOCOPY VARCHAR2,
1849: x_msg_count OUT NOCOPY NUMBER,
1850: x_msg_data OUT NOCOPY VARCHAR2,
1880: l_split_claim_id NUMBER;
1881: l_split_claim_number VARCHAR2(30);
1882: l_x_note_id NUMBER;
1883: l_amount_remaining NUMBER:=0;
1884: l_claim_type_id NUMBER:=FND_API.g_miss_num;
1885: l_source_object_id NUMBER;
1886: l_invoice_amount_due NUMBER:=0; --Added on 21-Apr-2003 (aadhawad)
1887:
1888: -- get Count for given claim_id
1980: BEGIN
1981: --------------------- initialize -----------------------
1982: Write_Log(l_full_name, 'start');
1983:
1984: x_return_status := FND_API.G_RET_STS_SUCCESS;
1985:
1986:
1987: -- Check if the claim has any splits.
1988: OPEN get_claim_count_csr(l_deduction_rec.claim_id);
2036: END IF;
2037:
2038: --Fixed:Date:12-Mar-2003. Partial application for claim investigation.
2039: IF ( l_claim_class = 'DEDUCTION' and
2040: (l_source_object_id is NULL or l_source_object_id = FND_API.g_miss_num)) THEN
2041: IF l_deduction_rec.AMOUNT < 0 THEN
2042: l_deduction_rec.AMOUNT := l_deduction_rec.AMOUNT * -1;
2043: --l_deduction_rec.AMOUNT_APPLIED := l_deduction_rec.AMOUNT_APPLIED * -1;
2044: END IF;
2048: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2049: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_STATUS_PENDING_CLOSE');
2050: FND_MSG_PUB.add;
2051: END IF;
2052: RAISE FND_API.G_EXC_ERROR;
2053: END IF;
2054:
2055: --- BUG 4157743 FIXING
2056: IF l_status_code <> 'CLOSED' THEN
2102: END IF;
2103:
2104: --Check for Transaction Related Claim.
2105: IF l_deduction_rec.SOURCE_OBJECT_ID is NOT NULL AND
2106: l_deduction_rec.SOURCE_OBJECT_ID <> FND_API.G_MISS_NUM THEN
2107: --Transaction Related Claim.
2108: l_pvt_claim_Rec.RECEIPT_ID := l_deduction_rec.RECEIPT_ID;
2109: l_pvt_claim_Rec.RECEIPT_NUMBER := nvl(l_deduction_rec.RECEIPT_NUMBER,l_receipt_number);
2110:
2147:
2148: --Call Update_Claim to reflect the changes.
2149: OZF_claim_PVT.Update_claim(
2150: P_Api_Version => 1.0,
2151: P_Init_Msg_List => FND_API.G_FALSE,
2152: P_Commit => FND_API.G_FALSE,
2153: P_Validation_Level => FND_API.G_VALID_LEVEL_FULL,
2154: X_Return_Status => x_return_status,
2155: X_Msg_Count => x_msg_count,
2148: --Call Update_Claim to reflect the changes.
2149: OZF_claim_PVT.Update_claim(
2150: P_Api_Version => 1.0,
2151: P_Init_Msg_List => FND_API.G_FALSE,
2152: P_Commit => FND_API.G_FALSE,
2153: P_Validation_Level => FND_API.G_VALID_LEVEL_FULL,
2154: X_Return_Status => x_return_status,
2155: X_Msg_Count => x_msg_count,
2156: X_Msg_Data => x_msg_data,
2149: OZF_claim_PVT.Update_claim(
2150: P_Api_Version => 1.0,
2151: P_Init_Msg_List => FND_API.G_FALSE,
2152: P_Commit => FND_API.G_FALSE,
2153: P_Validation_Level => FND_API.G_VALID_LEVEL_FULL,
2154: X_Return_Status => x_return_status,
2155: X_Msg_Count => x_msg_count,
2156: X_Msg_Data => x_msg_data,
2157: P_claim => l_pvt_claim_Rec,
2159: p_mode => OZF_claim_Utility_pvt.G_AUTO_MODE,
2160: X_Object_Version_Number => l_object_version_number );
2161:
2162: -- Check return status from the above procedure call
2163: IF x_return_status = FND_API.G_RET_STS_ERROR then
2164: raise FND_API.G_EXC_ERROR;
2165: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2166: raise FND_API.G_EXC_UNEXPECTED_ERROR;
2167: END IF;
2160: X_Object_Version_Number => l_object_version_number );
2161:
2162: -- Check return status from the above procedure call
2163: IF x_return_status = FND_API.G_RET_STS_ERROR then
2164: raise FND_API.G_EXC_ERROR;
2165: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2166: raise FND_API.G_EXC_UNEXPECTED_ERROR;
2167: END IF;
2168: ELSE
2161:
2162: -- Check return status from the above procedure call
2163: IF x_return_status = FND_API.G_RET_STS_ERROR then
2164: raise FND_API.G_EXC_ERROR;
2165: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2166: raise FND_API.G_EXC_UNEXPECTED_ERROR;
2167: END IF;
2168: ELSE
2169: --Build Notes.(44)
2162: -- Check return status from the above procedure call
2163: IF x_return_status = FND_API.G_RET_STS_ERROR then
2164: raise FND_API.G_EXC_ERROR;
2165: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2166: raise FND_API.G_EXC_UNEXPECTED_ERROR;
2167: END IF;
2168: ELSE
2169: --Build Notes.(44)
2170: --l_notes := '[Claim:'||l_deduction_rec.CLAIM_NUMBER||' Remark:';
2224: Write_Log(l_full_name, 'Cancel All ? ' || l_cancel_all_claim );
2225:
2226: --Fixed:Date:12-Mar-2003. Partial application for claim investigation.
2227: IF ( l_claim_class = 'DEDUCTION' and
2228: (l_source_object_id is NULL or l_source_object_id = FND_API.g_miss_num)) THEN
2229: IF l_deduction_rec.AMOUNT < 0 THEN
2230: l_deduction_rec.AMOUNT := l_deduction_rec.AMOUNT * -1;
2231: --l_deduction_rec.AMOUNT_APPLIED := l_deduction_rec.AMOUNT_APPLIED * -1;
2232: END IF;
2251: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2252: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_STATUS_PENDING_CLOSE');
2253: FND_MSG_PUB.add;
2254: END IF;
2255: RAISE FND_API.G_EXC_ERROR;
2256: END IF;
2257:
2258: FOR ref_split_claim_csr in split_claim_csr(l_deduction_rec.CLAIM_ID) LOOP
2259: -- If cancel all claim flag is Y, then cancel all non closed claims
2284:
2285: --Call Update_Claim to reflect the changes.
2286: OZF_claim_PVT.Update_claim(
2287: p_api_version => 1.0,
2288: p_init_msg_list => FND_API.G_FALSE,
2289: p_commit => FND_API.G_FALSE,
2290: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2291: x_return_status => x_return_status,
2292: x_msg_count => x_msg_count,
2285: --Call Update_Claim to reflect the changes.
2286: OZF_claim_PVT.Update_claim(
2287: p_api_version => 1.0,
2288: p_init_msg_list => FND_API.G_FALSE,
2289: p_commit => FND_API.G_FALSE,
2290: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2291: x_return_status => x_return_status,
2292: x_msg_count => x_msg_count,
2293: x_msg_data => x_msg_data,
2286: OZF_claim_PVT.Update_claim(
2287: p_api_version => 1.0,
2288: p_init_msg_list => FND_API.G_FALSE,
2289: p_commit => FND_API.G_FALSE,
2290: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2291: x_return_status => x_return_status,
2292: x_msg_count => x_msg_count,
2293: x_msg_data => x_msg_data,
2294: p_claim => l_pvt_claim_Rec,
2296: p_mode => OZF_claim_Utility_pvt.G_AUTO_MODE,
2297: x_object_version_number => l_object_version_number
2298: );
2299: -- Check return status from the above procedure call
2300: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2301: RAISE FND_API.G_EXC_ERROR;
2302: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2303: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2304: END IF;
2297: x_object_version_number => l_object_version_number
2298: );
2299: -- Check return status from the above procedure call
2300: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2301: RAISE FND_API.G_EXC_ERROR;
2302: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2303: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2304: END IF;
2305:
2298: );
2299: -- Check return status from the above procedure call
2300: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2301: RAISE FND_API.G_EXC_ERROR;
2302: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2303: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2304: END IF;
2305:
2306: --Call Create Notes API.
2299: -- Check return status from the above procedure call
2300: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2301: RAISE FND_API.G_EXC_ERROR;
2302: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2303: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2304: END IF;
2305:
2306: --Call Create Notes API.
2307: Write_log(l_full_name,l_notes);
2379: l_pvt_claim_Rec.EXCHANGE_RATE := l_deduction_rec.EXCHANGE_RATE;
2380:
2381:
2382: IF l_deduction_rec.source_object_id IS NOT NULL AND
2383: l_deduction_rec.source_object_id <> FND_API.G_MISS_NUM THEN
2384: -- Build Notes :for transaction releated deduction
2385:
2386: IF l_deduction_rec.receipt_number <> ref_split_claim_csr.receipt_number THEN
2387: l_notes := l_notes|| Build_Note('OZF_CLAM_NOTES_RCPT_CHANGE', TO_CHAR(ref_split_claim_csr.RECEIPT_NUMBER), TO_CHAR(l_deduction_rec.RECEIPT_NUMBER));
2403:
2404: --Call Update_Claim to reflect the changes.
2405: OZF_claim_PVT.Update_claim(
2406: P_Api_Version => 1.0,
2407: P_Init_Msg_List => FND_API.G_FALSE,
2408: P_Commit => FND_API.G_FALSE,
2409: P_Validation_Level => FND_API.G_VALID_LEVEL_FULL,
2410: X_Return_Status => x_return_status,
2411: X_Msg_Count => x_msg_count,
2404: --Call Update_Claim to reflect the changes.
2405: OZF_claim_PVT.Update_claim(
2406: P_Api_Version => 1.0,
2407: P_Init_Msg_List => FND_API.G_FALSE,
2408: P_Commit => FND_API.G_FALSE,
2409: P_Validation_Level => FND_API.G_VALID_LEVEL_FULL,
2410: X_Return_Status => x_return_status,
2411: X_Msg_Count => x_msg_count,
2412: X_Msg_Data => x_msg_data,
2405: OZF_claim_PVT.Update_claim(
2406: P_Api_Version => 1.0,
2407: P_Init_Msg_List => FND_API.G_FALSE,
2408: P_Commit => FND_API.G_FALSE,
2409: P_Validation_Level => FND_API.G_VALID_LEVEL_FULL,
2410: X_Return_Status => x_return_status,
2411: X_Msg_Count => x_msg_count,
2412: X_Msg_Data => x_msg_data,
2413: P_claim => l_pvt_claim_Rec,
2415: p_mode => OZF_claim_Utility_pvt.G_AUTO_MODE,
2416: X_Object_Version_Number => l_object_version_number );
2417:
2418: -- Check return status from the above procedure call
2419: IF x_return_status = FND_API.G_RET_STS_ERROR then
2420: raise FND_API.G_EXC_ERROR;
2421: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2422: raise FND_API.G_EXC_UNEXPECTED_ERROR;
2423: END IF;
2416: X_Object_Version_Number => l_object_version_number );
2417:
2418: -- Check return status from the above procedure call
2419: IF x_return_status = FND_API.G_RET_STS_ERROR then
2420: raise FND_API.G_EXC_ERROR;
2421: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2422: raise FND_API.G_EXC_UNEXPECTED_ERROR;
2423: END IF;
2424:
2417:
2418: -- Check return status from the above procedure call
2419: IF x_return_status = FND_API.G_RET_STS_ERROR then
2420: raise FND_API.G_EXC_ERROR;
2421: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2422: raise FND_API.G_EXC_UNEXPECTED_ERROR;
2423: END IF;
2424:
2425: --Call Create Notes API.
2418: -- Check return status from the above procedure call
2419: IF x_return_status = FND_API.G_RET_STS_ERROR then
2420: raise FND_API.G_EXC_ERROR;
2421: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2422: raise FND_API.G_EXC_UNEXPECTED_ERROR;
2423: END IF;
2424:
2425: --Call Create Notes API.
2426: Write_log(l_full_name,l_notes);
2447: x_return_status => l_return_status
2448: ,x_msg_count => x_msg_count
2449: ,x_msg_data => x_msg_data
2450: ,p_deduction_rec => l_deduction_rec);
2451: IF l_return_status = FND_API.G_RET_STS_ERROR then
2452: RAISE FND_API.G_EXC_ERROR;
2453: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2454: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2455: END IF;
2448: ,x_msg_count => x_msg_count
2449: ,x_msg_data => x_msg_data
2450: ,p_deduction_rec => l_deduction_rec);
2451: IF l_return_status = FND_API.G_RET_STS_ERROR then
2452: RAISE FND_API.G_EXC_ERROR;
2453: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2454: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2455: END IF;
2456:
2449: ,x_msg_data => x_msg_data
2450: ,p_deduction_rec => l_deduction_rec);
2451: IF l_return_status = FND_API.G_RET_STS_ERROR then
2452: RAISE FND_API.G_EXC_ERROR;
2453: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2454: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2455: END IF;
2456:
2457: EXIT; -- Work is done !
2450: ,p_deduction_rec => l_deduction_rec);
2451: IF l_return_status = FND_API.G_RET_STS_ERROR then
2452: RAISE FND_API.G_EXC_ERROR;
2453: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
2454: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2455: END IF;
2456:
2457: EXIT; -- Work is done !
2458: END IF; -- Is claim open/complete/pending_approval?
2468:
2469: Write_Log(l_full_name, 'end');
2470:
2471: EXCEPTION
2472: WHEN FND_API.G_EXC_ERROR THEN
2473: x_return_status := FND_API.G_RET_STS_ERROR;
2474: -- Standard call to get message count and if count=1, get the message
2475: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
2476: ,p_count => x_msg_count
2469: Write_Log(l_full_name, 'end');
2470:
2471: EXCEPTION
2472: WHEN FND_API.G_EXC_ERROR THEN
2473: x_return_status := FND_API.G_RET_STS_ERROR;
2474: -- Standard call to get message count and if count=1, get the message
2475: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
2476: ,p_count => x_msg_count
2477: ,p_data => x_msg_data
2471: EXCEPTION
2472: WHEN FND_API.G_EXC_ERROR THEN
2473: x_return_status := FND_API.G_RET_STS_ERROR;
2474: -- Standard call to get message count and if count=1, get the message
2475: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
2476: ,p_count => x_msg_count
2477: ,p_data => x_msg_data
2478: );
2479:
2476: ,p_count => x_msg_count
2477: ,p_data => x_msg_data
2478: );
2479:
2480: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2481: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2482: -- Standard call to get message count and if count=1, get the message
2483: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
2484: ,p_count => x_msg_count
2477: ,p_data => x_msg_data
2478: );
2479:
2480: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2481: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2482: -- Standard call to get message count and if count=1, get the message
2483: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
2484: ,p_count => x_msg_count
2485: ,p_data => x_msg_data
2479:
2480: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2481: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2482: -- Standard call to get message count and if count=1, get the message
2483: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
2484: ,p_count => x_msg_count
2485: ,p_data => x_msg_data
2486: );
2487: WHEN OTHERS THEN
2484: ,p_count => x_msg_count
2485: ,p_data => x_msg_data
2486: );
2487: WHEN OTHERS THEN
2488: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2489: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2490: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
2491: FND_MSG_PUB.add;
2492: END IF;
2490: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
2491: FND_MSG_PUB.add;
2492: END IF;
2493: -- Standard call to get message count and if count=1, get the message
2494: FND_MSG_PUB.Count_And_Get(p_encoded => FND_API.G_FALSE
2495: ,p_count => x_msg_count
2496: ,p_data => x_msg_data
2497: );
2498:
2507: --
2508: -- PARAMETERS:
2509: -- IN
2510: -- p_api_version_number IN NUMBER Required
2511: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
2512: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
2513: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
2514: -- P_deduction IN DEDUCTION_REC_TYPE Required
2515: --
2508: -- PARAMETERS:
2509: -- IN
2510: -- p_api_version_number IN NUMBER Required
2511: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
2512: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
2513: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
2514: -- P_deduction IN DEDUCTION_REC_TYPE Required
2515: --
2516: -- OUT:
2509: -- IN
2510: -- p_api_version_number IN NUMBER Required
2511: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
2512: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
2513: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
2514: -- P_deduction IN DEDUCTION_REC_TYPE Required
2515: --
2516: -- OUT:
2517: -- x_return_status OUT VARCHAR2
2542: x_claim_number VARCHAR2(30);
2543:
2544: BEGIN
2545: -- Initialize API return status to SUCCESS
2546: x_return_status := FND_API.G_RET_STS_SUCCESS;
2547:
2548: OZF_Claim_GRP.Update_Deduction(
2549: p_api_version_number,
2550: p_init_msg_list,
2562: );
2563:
2564: EXCEPTION
2565: WHEN OTHERS THEN
2566: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2567: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2568: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
2569: FND_MSG_PUB.add;
2570: END IF;
2568: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
2569: FND_MSG_PUB.add;
2570: END IF;
2571: FND_MSG_PUB.Count_And_Get (
2572: p_encoded => FND_API.G_FALSE,
2573: p_count => x_msg_count,
2574: p_data => x_msg_data
2575: );
2576: End Update_Deduction;
2584: --
2585: -- PARAMETERS:
2586: -- IN:
2587: -- p_api_version_number IN NUMBER Required
2588: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
2589: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
2590: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
2591: -- P_deduction IN DEDUCTION_REC_TYPE Required
2592: --
2585: -- PARAMETERS:
2586: -- IN:
2587: -- p_api_version_number IN NUMBER Required
2588: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
2589: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
2590: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
2591: -- P_deduction IN DEDUCTION_REC_TYPE Required
2592: --
2593: -- OUT:
2586: -- IN:
2587: -- p_api_version_number IN NUMBER Required
2588: -- p_init_msg_list IN VARCHAR2 Optional Default = FND_API_G_FALSE
2589: -- p_validation_level IN NUMBER Optional Default = FND_API.G_VALID_LEVEL_FULL
2590: -- p_commit IN VARCHAR2 Optional Default = FND_API.G_FALSE
2591: -- P_deduction IN DEDUCTION_REC_TYPE Required
2592: --
2593: -- OUT:
2594: -- x_return_status OUT NOCOPY VARCHAR2
2604: --
2605: ---------------------------------------------------------------------
2606: PROCEDURE Update_Deduction(
2607: p_api_version_number IN NUMBER,
2608: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
2609: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2610: p_commit IN VARCHAR2 := FND_API.G_FALSE,
2611:
2612: x_return_status OUT NOCOPY VARCHAR2,
2605: ---------------------------------------------------------------------
2606: PROCEDURE Update_Deduction(
2607: p_api_version_number IN NUMBER,
2608: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
2609: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2610: p_commit IN VARCHAR2 := FND_API.G_FALSE,
2611:
2612: x_return_status OUT NOCOPY VARCHAR2,
2613: x_msg_count OUT NOCOPY NUMBER,
2606: PROCEDURE Update_Deduction(
2607: p_api_version_number IN NUMBER,
2608: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
2609: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2610: p_commit IN VARCHAR2 := FND_API.G_FALSE,
2611:
2612: x_return_status OUT NOCOPY VARCHAR2,
2613: x_msg_count OUT NOCOPY NUMBER,
2614: x_msg_data OUT NOCOPY VARCHAR2,
2672: WHERE claim_id = cv_claim_id;
2673:
2674: l_object_version_number NUMBER;
2675: l_pvt_claim_rec OZF_CLAIM_PVT.claim_Rec_Type;
2676: l_user_status_id NUMBER :=FND_API.G_MISS_NUM;
2677: l_custom_setup_id NUMBER;
2678: l_claim_obj_ver_num NUMBER;
2679:
2680: -- Fix for 5182492
2729:
2730: Write_Log(l_full_name, 'start');
2731:
2732: -- Standard call to check for call compatibility.
2733: IF NOT FND_API.Compatible_API_Call ( l_api_version,
2734: p_api_version_number,
2735: l_api_name,
2736: G_PKG_NAME ) THEN
2737: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2733: IF NOT FND_API.Compatible_API_Call ( l_api_version,
2734: p_api_version_number,
2735: l_api_name,
2736: G_PKG_NAME ) THEN
2737: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2738: END IF;
2739:
2740: -- Initialize message list if p_init_msg_list is set to TRUE.
2741: IF FND_API.to_Boolean( p_init_msg_list ) THEN
2737: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2738: END IF;
2739:
2740: -- Initialize message list if p_init_msg_list is set to TRUE.
2741: IF FND_API.to_Boolean( p_init_msg_list ) THEN
2742: FND_MSG_PUB.initialize;
2743: END IF;
2744:
2745: -- Initialize API return status to SUCCESS
2742: FND_MSG_PUB.initialize;
2743: END IF;
2744:
2745: -- Initialize API return status to SUCCESS
2746: x_return_status := FND_API.G_RET_STS_SUCCESS;
2747:
2748: -----------------------------------------
2749: -- 1. Minimum required fields checking --
2750: -----------------------------------------
2754: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2755: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INSUFFICIENT_VAL');
2756: FND_MSG_PUB.add;
2757: END IF;
2758: RAISE FND_API.G_EXC_ERROR;
2759: END IF;
2760:
2761: IF l_deduction_rec.applied_action_type IS NULL OR
2762: l_deduction_rec.applied_action_type NOT IN ('A','U') THEN
2763: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2764: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INVALID_ACTION');
2765: FND_MSG_PUB.add;
2766: END IF;
2767: RAISE FND_API.G_EXC_ERROR;
2768: ELSE
2769: IF l_deduction_rec.applied_action_type = 'A' THEN
2770: IF l_deduction_rec.amount IS NULL OR
2771: l_deduction_rec.receipt_id IS NULL THEN
2772: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2773: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_INSUFFICIENT_VAL_A');
2774: FND_MSG_PUB.add;
2775: END IF;
2776: RAISE FND_API.G_EXC_ERROR;
2777: END IF;
2778: ELSIF l_deduction_rec.applied_action_type = 'U' THEN
2779: IF l_deduction_rec.amount IS NULL OR
2780: l_deduction_rec.amount_applied IS NULL OR
2782: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2783: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_INSUFFICIENT_VAL_U');
2784: FND_MSG_PUB.add;
2785: END IF;
2786: RAISE FND_API.G_EXC_ERROR;
2787: END IF;
2788: END IF;
2789: END IF;
2790:
2829: ----------------------------------------------------------
2830: -- 3. Required Fields checking for Apply or Unapply Action
2831: ----------------------------------------------------------
2832: IF (l_deduction_rec.claim_id IS NULL OR
2833: l_deduction_rec.claim_id = FND_API.G_MISS_NUM
2834: ) OR
2835: (l_deduction_rec.amount IS NULL OR
2836: l_deduction_rec.amount = FND_API.G_MISS_NUM
2837: ) THEN
2832: IF (l_deduction_rec.claim_id IS NULL OR
2833: l_deduction_rec.claim_id = FND_API.G_MISS_NUM
2834: ) OR
2835: (l_deduction_rec.amount IS NULL OR
2836: l_deduction_rec.amount = FND_API.G_MISS_NUM
2837: ) THEN
2838: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2839: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INSUF_VAL_UPD');
2840: FND_MSG_PUB.add;
2838: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2839: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INSUF_VAL_UPD');
2840: FND_MSG_PUB.add;
2841: END IF;
2842: RAISE FND_API.G_EXC_ERROR;
2843: ELSE
2844: IF l_deduction_rec.applied_action_type = 'A' THEN
2845: IF (l_deduction_rec.amount_applied IS NULL OR
2846: l_deduction_rec.amount_applied = FND_API.G_MISS_NUM
2842: RAISE FND_API.G_EXC_ERROR;
2843: ELSE
2844: IF l_deduction_rec.applied_action_type = 'A' THEN
2845: IF (l_deduction_rec.amount_applied IS NULL OR
2846: l_deduction_rec.amount_applied = FND_API.G_MISS_NUM
2847: ) OR
2848: (l_deduction_rec.applied_receipt_id IS NULL OR
2849: l_deduction_rec.applied_receipt_id = FND_API.G_MISS_NUM
2850: ) THEN
2845: IF (l_deduction_rec.amount_applied IS NULL OR
2846: l_deduction_rec.amount_applied = FND_API.G_MISS_NUM
2847: ) OR
2848: (l_deduction_rec.applied_receipt_id IS NULL OR
2849: l_deduction_rec.applied_receipt_id = FND_API.G_MISS_NUM
2850: ) THEN
2851: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2852: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INSUF_VAL_UPD');
2853: FND_MSG_PUB.add;
2851: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2852: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INSUF_VAL_UPD');
2853: FND_MSG_PUB.add;
2854: END IF;
2855: RAISE FND_API.G_EXC_ERROR;
2856: END IF;
2857: ELSIF l_deduction_rec.applied_action_type = 'U' THEN
2858: IF (l_deduction_rec.amount_applied IS NULL OR
2859: l_deduction_rec.amount_applied = FND_API.G_MISS_NUM
2855: RAISE FND_API.G_EXC_ERROR;
2856: END IF;
2857: ELSIF l_deduction_rec.applied_action_type = 'U' THEN
2858: IF (l_deduction_rec.amount_applied IS NULL OR
2859: l_deduction_rec.amount_applied = FND_API.G_MISS_NUM
2860: ) OR
2861: (l_deduction_rec.applied_receipt_id IS NULL OR
2862: l_deduction_rec.applied_receipt_id = FND_API.G_MISS_NUM
2863: ) THEN
2858: IF (l_deduction_rec.amount_applied IS NULL OR
2859: l_deduction_rec.amount_applied = FND_API.G_MISS_NUM
2860: ) OR
2861: (l_deduction_rec.applied_receipt_id IS NULL OR
2862: l_deduction_rec.applied_receipt_id = FND_API.G_MISS_NUM
2863: ) THEN
2864: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2865: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INSUF_VAL_UPD');
2866: FND_MSG_PUB.add;
2864: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2865: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INSUF_VAL_UPD');
2866: FND_MSG_PUB.add;
2867: END IF;
2868: RAISE FND_API.G_EXC_ERROR;
2869: END IF;
2870: ELSE
2871: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2872: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INVALID_ACTION_UPD');
2871: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2872: FND_MESSAGE.set_name('OZF', 'OZF_CLAIM_INVALID_ACTION_UPD');
2873: FND_MSG_PUB.add;
2874: END IF;
2875: RAISE FND_API.G_EXC_ERROR;
2876: END IF;
2877: END IF;
2878:
2879: IF l_deduction_rec.applied_action_type = 'A' THEN
2900: IF SIGN(l_deduction_rec.amount) <> SIGN(l_claim_old_amount * -1) THEN
2901:
2902: Write_Log(l_full_name, 'Creating a new Claim');
2903: l_perform_subs_apply := FALSE;
2904: l_deduction_rec.claim_id := FND_API.G_MISS_NUM;
2905: l_deduction_rec.claim_number := FND_API.G_MISS_CHAR;
2906: l_deduction_rec.claim_date := l_claim_old_date;
2907: l_deduction_rec.due_date := l_claim_old_duedate;
2908: l_deduction_rec.claim_type_id := l_claim_old_typeId;
2901:
2902: Write_Log(l_full_name, 'Creating a new Claim');
2903: l_perform_subs_apply := FALSE;
2904: l_deduction_rec.claim_id := FND_API.G_MISS_NUM;
2905: l_deduction_rec.claim_number := FND_API.G_MISS_CHAR;
2906: l_deduction_rec.claim_date := l_claim_old_date;
2907: l_deduction_rec.due_date := l_claim_old_duedate;
2908: l_deduction_rec.claim_type_id := l_claim_old_typeId;
2909: l_deduction_rec.reason_code_id := l_claim_old_reasonId;
2911: l_deduction_rec.cust_account_id := l_claim_old_accId;
2912:
2913: Create_Deduction(
2914: p_api_version_number => 1.0,
2915: p_init_msg_list => FND_API.g_false,
2916: p_validation_level => FND_API.g_valid_level_full,
2917: p_commit => FND_API.g_false,
2918: x_return_status => x_return_status,
2919: x_msg_count => x_msg_count,
2912:
2913: Create_Deduction(
2914: p_api_version_number => 1.0,
2915: p_init_msg_list => FND_API.g_false,
2916: p_validation_level => FND_API.g_valid_level_full,
2917: p_commit => FND_API.g_false,
2918: x_return_status => x_return_status,
2919: x_msg_count => x_msg_count,
2920: x_msg_data => x_msg_data,
2913: Create_Deduction(
2914: p_api_version_number => 1.0,
2915: p_init_msg_list => FND_API.g_false,
2916: p_validation_level => FND_API.g_valid_level_full,
2917: p_commit => FND_API.g_false,
2918: x_return_status => x_return_status,
2919: x_msg_count => x_msg_count,
2920: x_msg_data => x_msg_data,
2921: p_deduction => l_deduction_rec,
2923: x_claim_number => x_claim_number,
2924: x_claim_reason_code_id => x_claim_reason_code_id,
2925: x_claim_reason_name => x_claim_reason_name
2926: );
2927: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2928: RAISE FND_API.G_EXC_ERROR;
2929: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2930: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2931: END IF;
2924: x_claim_reason_code_id => x_claim_reason_code_id,
2925: x_claim_reason_name => x_claim_reason_name
2926: );
2927: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2928: RAISE FND_API.G_EXC_ERROR;
2929: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2930: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2931: END IF;
2932: END IF; -- amount sign has changed
2925: x_claim_reason_name => x_claim_reason_name
2926: );
2927: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2928: RAISE FND_API.G_EXC_ERROR;
2929: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2930: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2931: END IF;
2932: END IF; -- amount sign has changed
2933: END IF ; -- is inv deduction
2926: );
2927: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
2928: RAISE FND_API.G_EXC_ERROR;
2929: ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2930: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2931: END IF;
2932: END IF; -- amount sign has changed
2933: END IF ; -- is inv deduction
2934:
2934:
2935: IF l_perform_subs_apply THEN
2936: Perform_Subsequent_Apply(
2937: p_api_version => l_api_version
2938: ,p_init_msg_list => FND_API.g_false
2939: ,p_validation_level => FND_API.g_valid_level_full
2940: ,x_return_status => l_return_status
2941: ,x_msg_count => x_msg_count
2942: ,x_msg_data => x_msg_data
2935: IF l_perform_subs_apply THEN
2936: Perform_Subsequent_Apply(
2937: p_api_version => l_api_version
2938: ,p_init_msg_list => FND_API.g_false
2939: ,p_validation_level => FND_API.g_valid_level_full
2940: ,x_return_status => l_return_status
2941: ,x_msg_count => x_msg_count
2942: ,x_msg_data => x_msg_data
2943: ,p_deduction => l_deduction_rec
2941: ,x_msg_count => x_msg_count
2942: ,x_msg_data => x_msg_data
2943: ,p_deduction => l_deduction_rec
2944: );
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR;
2947: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2949: END IF;
2942: ,x_msg_data => x_msg_data
2943: ,p_deduction => l_deduction_rec
2944: );
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR;
2947: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2949: END IF;
2950: END IF;
2943: ,p_deduction => l_deduction_rec
2944: );
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR;
2947: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2949: END IF;
2950: END IF;
2951:
2944: );
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR;
2947: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2949: END IF;
2950: END IF;
2951:
2952: ELSIF l_deduction_rec.applied_action_type = 'U' THEN
2954: -- 4.2. Unpply --
2955: -----------------
2956: Perform_Subsequent_Unapply(
2957: p_api_version => l_api_version
2958: ,p_init_msg_list => FND_API.g_false
2959: ,p_validation_level => FND_API.g_valid_level_full
2960: ,x_return_status => l_return_status
2961: ,x_msg_count => x_msg_count
2962: ,x_msg_data => x_msg_data
2955: -----------------
2956: Perform_Subsequent_Unapply(
2957: p_api_version => l_api_version
2958: ,p_init_msg_list => FND_API.g_false
2959: ,p_validation_level => FND_API.g_valid_level_full
2960: ,x_return_status => l_return_status
2961: ,x_msg_count => x_msg_count
2962: ,x_msg_data => x_msg_data
2963: ,p_deduction => l_deduction_rec
2961: ,x_msg_count => x_msg_count
2962: ,x_msg_data => x_msg_data
2963: ,p_deduction => l_deduction_rec
2964: );
2965: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2966: RAISE FND_API.G_EXC_ERROR;
2967: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2968: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2969: END IF;
2962: ,x_msg_data => x_msg_data
2963: ,p_deduction => l_deduction_rec
2964: );
2965: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2966: RAISE FND_API.G_EXC_ERROR;
2967: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2968: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2969: END IF;
2970: END IF;
2963: ,p_deduction => l_deduction_rec
2964: );
2965: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2966: RAISE FND_API.G_EXC_ERROR;
2967: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2968: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2969: END IF;
2970: END IF;
2971:
2964: );
2965: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2966: RAISE FND_API.G_EXC_ERROR;
2967: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2968: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2969: END IF;
2970: END IF;
2971:
2972: ---------------------------------------
2988:
2989: Write_Log(l_full_name, 'end');
2990:
2991: -- Standard check for p_commit
2992: IF FND_API.to_Boolean(p_commit) THEN
2993: COMMIT WORK;
2994: END IF;
2995:
2996: -- Standard call to get message count and if count is 1, get message info.
2999: p_data => x_msg_data
3000: );
3001:
3002: EXCEPTION
3003: WHEN FND_API.G_EXC_ERROR THEN
3004: ROLLBACK TO UPDATE_CLAIM_GRP;
3005: x_return_status := FND_API.G_RET_STS_ERROR;
3006: FND_MSG_PUB.Count_And_Get (
3007: p_encoded => FND_API.G_FALSE,
3001:
3002: EXCEPTION
3003: WHEN FND_API.G_EXC_ERROR THEN
3004: ROLLBACK TO UPDATE_CLAIM_GRP;
3005: x_return_status := FND_API.G_RET_STS_ERROR;
3006: FND_MSG_PUB.Count_And_Get (
3007: p_encoded => FND_API.G_FALSE,
3008: p_count => x_msg_count,
3009: p_data => x_msg_data
3003: WHEN FND_API.G_EXC_ERROR THEN
3004: ROLLBACK TO UPDATE_CLAIM_GRP;
3005: x_return_status := FND_API.G_RET_STS_ERROR;
3006: FND_MSG_PUB.Count_And_Get (
3007: p_encoded => FND_API.G_FALSE,
3008: p_count => x_msg_count,
3009: p_data => x_msg_data
3010: );
3011:
3008: p_count => x_msg_count,
3009: p_data => x_msg_data
3010: );
3011:
3012: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3013: ROLLBACK TO UPDATE_CLAIM_GRP;
3014: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3015: FND_MSG_PUB.Count_And_Get (
3016: p_encoded => FND_API.G_FALSE,
3010: );
3011:
3012: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3013: ROLLBACK TO UPDATE_CLAIM_GRP;
3014: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3015: FND_MSG_PUB.Count_And_Get (
3016: p_encoded => FND_API.G_FALSE,
3017: p_count => x_msg_count,
3018: p_data => x_msg_data
3012: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3013: ROLLBACK TO UPDATE_CLAIM_GRP;
3014: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3015: FND_MSG_PUB.Count_And_Get (
3016: p_encoded => FND_API.G_FALSE,
3017: p_count => x_msg_count,
3018: p_data => x_msg_data
3019: );
3020:
3019: );
3020:
3021: WHEN OTHERS THEN
3022: ROLLBACK TO UPDATE_claim_GRP;
3023: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3024: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
3025: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
3026: FND_MSG_PUB.add;
3027: END IF;
3025: FND_MESSAGE.set_name('AMS', 'AMS_CLAIM_UPD_DEDU_ERR');
3026: FND_MSG_PUB.add;
3027: END IF;
3028: FND_MSG_PUB.Count_And_Get (
3029: p_encoded => FND_API.G_FALSE,
3030: p_count => x_msg_count,
3031: p_data => x_msg_data
3032: );
3033: