346: l_old_rec get_old%ROWTYPE;
347:
348: BEGIN
349: -- Initialize API return status to success
350: x_return_status := FND_API.G_RET_STS_SUCCESS;
351: x_loading_status := p_loading_status;
352: -- API body
353:
354: IF p_quota_pay_element_rec.quota_name IS NULL THEN
356: FND_MESSAGE.Set_Name('CN', 'CN_QUOTA_NAME_NOT_NULL');
357: FND_MSG_PUB.Add;
358: END IF;
359: x_loading_status := 'CN_QUOTA_NAME_NOT_NULL';
360: RAISE FND_API.G_EXC_ERROR ;
361: END IF;
362:
363:
364: IF p_quota_pay_element_rec.pay_element_name IS NULL THEN
366: FND_MESSAGE.Set_Name('CN', 'CN_PAY_ELEMENT_NAME_NOT_NULL');
367: FND_MSG_PUB.Add;
368: END IF;
369: x_loading_status := 'CN_PAY_ELEMENT_NAME_NOT_NULL';
370: RAISE FND_API.G_EXC_ERROR ;
371: END IF;
372:
373:
374: IF p_quota_pay_element_rec.quota_name IS NOT NULL and
377: FND_MESSAGE.Set_Name('CN', 'CN_QUOTA_NOT_EXISTS');
378: FND_MSG_PUB.Add;
379: END IF;
380: x_loading_status := 'CN_QUOTA_NOT_EXISTS';
381: RAISE FND_API.G_EXC_ERROR ;
382: END IF;
383:
384:
385: IF p_quota_pay_element_rec.start_date IS NULL THEN
387: FND_MESSAGE.Set_Name('CN', 'CN_PAY_ELEMENT_SD_NOT_NULL');
388: FND_MSG_PUB.Add;
389: END IF;
390: x_loading_status := 'CN_PAY_ELEMENT_SD_NOT_NULL';
391: RAISE FND_API.G_EXC_ERROR ;
392: END IF;
393:
394: IF p_quota_pay_element_rec.end_date IS NULL THEN
395: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
396: FND_MESSAGE.Set_Name('CN', 'CN_PAY_ELEMENT_ED_NOT_NULL');
397: FND_MSG_PUB.Add;
398: END IF;
399: x_loading_status := 'CN_PAY_ELEMENT_ED_NOT_NULL';
400: RAISE FND_API.G_EXC_ERROR ;
401: END IF;
402:
403: -- Invalid Date Range
404: IF p_quota_pay_element_rec.pay_start_date IS NOT NULL AND
414: FND_MESSAGE.Set_Name('CN', 'CN_PE_DATE_NOT_WITHIN_PAY_PE');
415: FND_MSG_PUB.Add;
416: END IF;
417: x_loading_status := 'CN_PE_DATE_NOT_WITHIN_PAY_PE';
418: RAISE FND_API.G_EXC_ERROR ;
419: END IF;
420:
421: END IF;
422:
427: FND_MESSAGE.Set_Name('CN', 'CN_PAY_ELEMENT_NOT_EXISTS');
428: FND_MSG_PUB.Add;
429: END IF;
430: x_loading_status := 'CN_PAY_ELEMENT_NOT_EXISTS';
431: RAISE FND_API.G_EXC_ERROR ;
432: END IF;
433:
434:
435:
456: FND_MESSAGE.Set_Name('CN', 'CN_QUOTA_PAY_ELEMENT_EXISTS');
457: FND_MSG_PUB.Add;
458: END IF;
459: x_loading_status := 'CN_QUOTA_PAY_ELEMENT_EXISTS';
460: RAISE FND_API.G_EXC_ERROR ;
461: END;
462:
463: -- Check if date range invalid
464: -- will check : if start_date is null
466: -- if start_date > end_date
467: IF ( (cn_api.invalid_date_range
468: (p_start_date => p_quota_pay_element_rec.start_date,
469: p_end_date => p_quota_pay_element_rec.end_date,
470: p_end_date_nullable => FND_API.G_TRUE,
471: p_loading_status => x_loading_status,
472: x_loading_status => x_loading_status)) = FND_API.G_TRUE ) THEN
473: RAISE FND_API.G_EXC_ERROR ;
474: END IF;
468: (p_start_date => p_quota_pay_element_rec.start_date,
469: p_end_date => p_quota_pay_element_rec.end_date,
470: p_end_date_nullable => FND_API.G_TRUE,
471: p_loading_status => x_loading_status,
472: x_loading_status => x_loading_status)) = FND_API.G_TRUE ) THEN
473: RAISE FND_API.G_EXC_ERROR ;
474: END IF;
475:
476: -- Check for Overlap
469: p_end_date => p_quota_pay_element_rec.end_date,
470: p_end_date_nullable => FND_API.G_TRUE,
471: p_loading_status => x_loading_status,
472: x_loading_status => x_loading_status)) = FND_API.G_TRUE ) THEN
473: RAISE FND_API.G_EXC_ERROR ;
474: END IF;
475:
476: -- Check for Overlap
477: BEGIN
520: FND_MESSAGE.SET_NAME ('CN' , 'CN_QUOTA_PAY_ELEMENT_OVERLAPS');
521: FND_MSG_PUB.Add;
522: END IF;
523: x_loading_status := 'CN_QUOTA_PAY_ELEMENT_OVERLAPS';
524: RAISE FND_API.G_EXC_ERROR ;
525: END;
526:
527: IF p_quota_pay_element_rec.quota_pay_element_id IS NOT NULL
528: AND p_quota_pay_element_rec.quota_pay_element_id <> 0 THEN
545: FND_MESSAGE.SET_NAME ('CN' , 'CN_PAY_ELEMENT_ALREADY_USED');
546: FND_MSG_PUB.Add;
547: END IF;
548: x_loading_status := 'CN_PAY_ELEMENT_ALREADY_USED';
549: RAISE FND_API.G_EXC_ERROR ;
550: end if;
551:
552: if p_quota_pay_element_rec.pay_element_type_id <> l_old_rec.pay_element_type_id THEN
553: if check_input_exists(p_quota_pay_element_rec.quota_pay_element_id) > 0 THEN
555: FND_MESSAGE.SET_NAME ('CN' , 'CN_ELEMENT_INPUT_EXISTS');
556: FND_MSG_PUB.Add;
557: END IF;
558: x_loading_status := 'CN_ELEMENT_INPUT_EXISTS';
559: RAISE FND_API.G_EXC_ERROR ;
560: end if;
561:
562: end if;
563: end if;
568: -- End of API body.
569: << end_valid_pp_assign >>
570: NULL ;
571: EXCEPTION
572: WHEN FND_API.G_EXC_ERROR THEN
573: x_return_status := FND_API.G_RET_STS_ERROR ;
574: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
575: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
576: x_loading_status := 'UNEXPECTED_ERR';
569: << end_valid_pp_assign >>
570: NULL ;
571: EXCEPTION
572: WHEN FND_API.G_EXC_ERROR THEN
573: x_return_status := FND_API.G_RET_STS_ERROR ;
574: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
575: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
576: x_loading_status := 'UNEXPECTED_ERR';
577: WHEN OTHERS THEN
570: NULL ;
571: EXCEPTION
572: WHEN FND_API.G_EXC_ERROR THEN
573: x_return_status := FND_API.G_RET_STS_ERROR ;
574: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
575: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
576: x_loading_status := 'UNEXPECTED_ERR';
577: WHEN OTHERS THEN
578: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
571: EXCEPTION
572: WHEN FND_API.G_EXC_ERROR THEN
573: x_return_status := FND_API.G_RET_STS_ERROR ;
574: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
575: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
576: x_loading_status := 'UNEXPECTED_ERR';
577: WHEN OTHERS THEN
578: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
579: x_loading_status := 'UNEXPECTED_ERR';
574: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
575: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
576: x_loading_status := 'UNEXPECTED_ERR';
577: WHEN OTHERS THEN
578: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
579: x_loading_status := 'UNEXPECTED_ERR';
580: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
581: THEN
582: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
618: BEGIN
619: -- Standard Start of API savepoint
620: SAVEPOINT Create_quota_pay_element;
621: -- Standard call to check for call compatibility.
622: IF NOT FND_API.compatible_api_call
623: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
624: THEN
625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
626: END IF;
621: -- Standard call to check for call compatibility.
622: IF NOT FND_API.compatible_api_call
623: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
624: THEN
625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
626: END IF;
627: -- Initialize message list if p_init_msg_list is set to TRUE.
628: IF FND_API.to_Boolean( p_init_msg_list ) THEN
629: FND_MSG_PUB.initialize;
624: THEN
625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
626: END IF;
627: -- Initialize message list if p_init_msg_list is set to TRUE.
628: IF FND_API.to_Boolean( p_init_msg_list ) THEN
629: FND_MSG_PUB.initialize;
630: END IF;
631: -- Initialize API return status to success
632: x_return_status := FND_API.G_RET_STS_SUCCESS;
628: IF FND_API.to_Boolean( p_init_msg_list ) THEN
629: FND_MSG_PUB.initialize;
630: END IF;
631: -- Initialize API return status to success
632: x_return_status := FND_API.G_RET_STS_SUCCESS;
633: x_loading_status := 'CN_INSERTED';
634: -- Assign the parameter to a local variable
635:
636: l_quota_pay_element_rec := p_quota_pay_element_rec;
637:
638: -- Trim spaces before/after user input string, get Value-Id para assigned
639: SELECT
640: Decode(p_quota_pay_element_rec.quota_pay_element_id,
641: FND_API.G_MISS_NUM, NULL ,
642: p_quota_pay_element_rec.quota_pay_element_id),
643: Decode(p_quota_pay_element_rec.quota_id,
644: FND_API.G_MISS_NUM, NULL ,
645: p_quota_pay_element_rec.quota_id ),
640: Decode(p_quota_pay_element_rec.quota_pay_element_id,
641: FND_API.G_MISS_NUM, NULL ,
642: p_quota_pay_element_rec.quota_pay_element_id),
643: Decode(p_quota_pay_element_rec.quota_id,
644: FND_API.G_MISS_NUM, NULL ,
645: p_quota_pay_element_rec.quota_id ),
646: Decode(p_quota_pay_element_rec.pay_element_type_id,
647: FND_API.G_MISS_NUM, NULL ,
648: p_quota_pay_element_rec.pay_element_type_id),
643: Decode(p_quota_pay_element_rec.quota_id,
644: FND_API.G_MISS_NUM, NULL ,
645: p_quota_pay_element_rec.quota_id ),
646: Decode(p_quota_pay_element_rec.pay_element_type_id,
647: FND_API.G_MISS_NUM, NULL ,
648: p_quota_pay_element_rec.pay_element_type_id),
649: Decode(p_quota_pay_element_rec.status,
650: FND_API.G_MISS_CHAR, NULL ,
651: p_quota_pay_element_rec.status),
646: Decode(p_quota_pay_element_rec.pay_element_type_id,
647: FND_API.G_MISS_NUM, NULL ,
648: p_quota_pay_element_rec.pay_element_type_id),
649: Decode(p_quota_pay_element_rec.status,
650: FND_API.G_MISS_CHAR, NULL ,
651: p_quota_pay_element_rec.status),
652: Decode(p_quota_pay_element_rec.start_date,
653: FND_API.G_MISS_DATE,To_date(NULL) ,
654: trunc(p_quota_pay_element_rec.start_date)),
649: Decode(p_quota_pay_element_rec.status,
650: FND_API.G_MISS_CHAR, NULL ,
651: p_quota_pay_element_rec.status),
652: Decode(p_quota_pay_element_rec.start_date,
653: FND_API.G_MISS_DATE,To_date(NULL) ,
654: trunc(p_quota_pay_element_rec.start_date)),
655: Decode(p_quota_pay_element_rec.end_date,
656: FND_API.G_MISS_DATE,To_date(NULL) ,
657: trunc(p_quota_pay_element_rec.end_date)),
652: Decode(p_quota_pay_element_rec.start_date,
653: FND_API.G_MISS_DATE,To_date(NULL) ,
654: trunc(p_quota_pay_element_rec.start_date)),
655: Decode(p_quota_pay_element_rec.end_date,
656: FND_API.G_MISS_DATE,To_date(NULL) ,
657: trunc(p_quota_pay_element_rec.end_date)),
658: Decode(p_quota_pay_element_rec.quota_name,
659: FND_API.G_MISS_CHAR, NULL ,
660: p_quota_pay_element_rec.quota_name),
655: Decode(p_quota_pay_element_rec.end_date,
656: FND_API.G_MISS_DATE,To_date(NULL) ,
657: trunc(p_quota_pay_element_rec.end_date)),
658: Decode(p_quota_pay_element_rec.quota_name,
659: FND_API.G_MISS_CHAR, NULL ,
660: p_quota_pay_element_rec.quota_name),
661: Decode(p_quota_pay_element_rec.pay_element_name,
662: FND_API.G_MISS_CHAR, NULL ,
663: p_quota_pay_element_rec.pay_element_name),
658: Decode(p_quota_pay_element_rec.quota_name,
659: FND_API.G_MISS_CHAR, NULL ,
660: p_quota_pay_element_rec.quota_name),
661: Decode(p_quota_pay_element_rec.pay_element_name,
662: FND_API.G_MISS_CHAR, NULL ,
663: p_quota_pay_element_rec.pay_element_name),
664: Decode(p_quota_pay_element_rec.pay_start_date,
665: FND_API.G_MISS_DATE, NULL ,
666: p_quota_pay_element_rec.pay_start_date),
661: Decode(p_quota_pay_element_rec.pay_element_name,
662: FND_API.G_MISS_CHAR, NULL ,
663: p_quota_pay_element_rec.pay_element_name),
664: Decode(p_quota_pay_element_rec.pay_start_date,
665: FND_API.G_MISS_DATE, NULL ,
666: p_quota_pay_element_rec.pay_start_date),
667: Decode(p_quota_pay_element_rec.pay_end_date,
668: FND_API.G_MISS_DATE, NULL ,
669: p_quota_pay_element_rec.pay_end_date)
664: Decode(p_quota_pay_element_rec.pay_start_date,
665: FND_API.G_MISS_DATE, NULL ,
666: p_quota_pay_element_rec.pay_start_date),
667: Decode(p_quota_pay_element_rec.pay_end_date,
668: FND_API.G_MISS_DATE, NULL ,
669: p_quota_pay_element_rec.pay_end_date)
670: INTO
671: l_quota_pay_element_rec.quota_pay_element_id,
672: l_quota_pay_element_rec.quota_id,
703: p_action => l_action,
704: p_loading_status => x_loading_status,
705: x_loading_status => x_loading_status
706: );
707: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
708: RAISE FND_API.G_EXC_ERROR ;
709: ELSE
710: -- Create cn_quota_pay_elements
711: cn_quota_pay_elements_pkg.insert_row
704: p_loading_status => x_loading_status,
705: x_loading_status => x_loading_status
706: );
707: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
708: RAISE FND_API.G_EXC_ERROR ;
709: ELSE
710: -- Create cn_quota_pay_elements
711: cn_quota_pay_elements_pkg.insert_row
712: (x_quota_pay_element_id => l_quota_pay_element_rec.quota_pay_element_id
726: -- End of API body.
727: --
728:
729: -- Standard check of p_commit.
730: IF FND_API.To_Boolean( p_commit ) THEN
731: COMMIT WORK;
732: END IF;
733: -- Standard call to get message count and if count is 1, get message info.
734: FND_MSG_PUB.Count_And_Get
734: FND_MSG_PUB.Count_And_Get
735: (
736: p_count => x_msg_count ,
737: p_data => x_msg_data ,
738: p_encoded => FND_API.G_FALSE
739: );
740:
741: EXCEPTION
742: WHEN FND_API.G_EXC_ERROR THEN
738: p_encoded => FND_API.G_FALSE
739: );
740:
741: EXCEPTION
742: WHEN FND_API.G_EXC_ERROR THEN
743: ROLLBACK TO Create_quota_pay_element;
744: x_return_status := FND_API.G_RET_STS_ERROR ;
745: FND_MSG_PUB.Count_And_Get
746: (
740:
741: EXCEPTION
742: WHEN FND_API.G_EXC_ERROR THEN
743: ROLLBACK TO Create_quota_pay_element;
744: x_return_status := FND_API.G_RET_STS_ERROR ;
745: FND_MSG_PUB.Count_And_Get
746: (
747: p_count => x_msg_count ,
748: p_data => x_msg_data ,
745: FND_MSG_PUB.Count_And_Get
746: (
747: p_count => x_msg_count ,
748: p_data => x_msg_data ,
749: p_encoded => FND_API.G_FALSE
750: );
751:
752: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
753: ROLLBACK TO Create_quota_pay_element;
748: p_data => x_msg_data ,
749: p_encoded => FND_API.G_FALSE
750: );
751:
752: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
753: ROLLBACK TO Create_quota_pay_element;
754: x_loading_status := 'UNEXPECTED_ERR';
755: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
756: FND_MSG_PUB.Count_And_Get
751:
752: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
753: ROLLBACK TO Create_quota_pay_element;
754: x_loading_status := 'UNEXPECTED_ERR';
755: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
756: FND_MSG_PUB.Count_And_Get
757: (
758: p_count => x_msg_count ,
759: p_data => x_msg_data ,
756: FND_MSG_PUB.Count_And_Get
757: (
758: p_count => x_msg_count ,
759: p_data => x_msg_data ,
760: p_encoded => FND_API.G_FALSE
761: );
762: WHEN OTHERS THEN
763: ROLLBACK TO Create_quota_pay_element;
764: x_loading_status := 'UNEXPECTED_ERR';
761: );
762: WHEN OTHERS THEN
763: ROLLBACK TO Create_quota_pay_element;
764: x_loading_status := 'UNEXPECTED_ERR';
765: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
766: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
767: THEN
768: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
769: END IF;
770: FND_MSG_PUB.Count_And_Get
771: (
772: p_count => x_msg_count ,
773: p_data => x_msg_data ,
774: p_encoded => FND_API.G_FALSE
775: );
776:
777: END create_quota_pay_element;
778:
806:
807: -- Standard Start of API savepoint
808: SAVEPOINT Update_quota_pay_element;
809: -- Standard call to check for call compatibility.
810: IF NOT FND_API.compatible_api_call
811: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
812: THEN
813: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814: END IF;
809: -- Standard call to check for call compatibility.
810: IF NOT FND_API.compatible_api_call
811: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
812: THEN
813: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814: END IF;
815: -- Initialize message list if p_init_msg_list is set to TRUE.
816: IF FND_API.to_Boolean( p_init_msg_list ) THEN
817: FND_MSG_PUB.initialize;
812: THEN
813: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814: END IF;
815: -- Initialize message list if p_init_msg_list is set to TRUE.
816: IF FND_API.to_Boolean( p_init_msg_list ) THEN
817: FND_MSG_PUB.initialize;
818: END IF;
819: -- Initialize API return status to success
820: x_return_status := FND_API.G_RET_STS_SUCCESS;
816: IF FND_API.to_Boolean( p_init_msg_list ) THEN
817: FND_MSG_PUB.initialize;
818: END IF;
819: -- Initialize API return status to success
820: x_return_status := FND_API.G_RET_STS_SUCCESS;
821: x_loading_status := 'CN_UPDATED';
822:
823: -- Assign the parameter to a local variable
824: l_quota_pay_element_rec := p_quota_pay_element_rec;
827: -- assign the old value into it
828:
829: SELECT
830: Decode(p_quota_pay_element_rec.quota_pay_element_id,
831: FND_API.G_MISS_NUM, null,
832: p_quota_pay_element_rec.quota_pay_element_id),
833: Decode(p_quota_pay_element_rec.quota_id,
834: FND_API.G_MISS_NUM, null,
835: p_quota_pay_element_rec.quota_id),
830: Decode(p_quota_pay_element_rec.quota_pay_element_id,
831: FND_API.G_MISS_NUM, null,
832: p_quota_pay_element_rec.quota_pay_element_id),
833: Decode(p_quota_pay_element_rec.quota_id,
834: FND_API.G_MISS_NUM, null,
835: p_quota_pay_element_rec.quota_id),
836: Decode(p_quota_pay_element_rec.pay_element_type_id,
837: FND_API.G_MISS_NUM, null,
838: p_quota_pay_element_rec.pay_element_type_id),
833: Decode(p_quota_pay_element_rec.quota_id,
834: FND_API.G_MISS_NUM, null,
835: p_quota_pay_element_rec.quota_id),
836: Decode(p_quota_pay_element_rec.pay_element_type_id,
837: FND_API.G_MISS_NUM, null,
838: p_quota_pay_element_rec.pay_element_type_id),
839: Decode(p_quota_pay_element_rec.status,
840: FND_API.G_MISS_CHAR, p_quota_pay_element_rec.status,
841: Ltrim(Rtrim(p_quota_pay_element_rec.status))),
836: Decode(p_quota_pay_element_rec.pay_element_type_id,
837: FND_API.G_MISS_NUM, null,
838: p_quota_pay_element_rec.pay_element_type_id),
839: Decode(p_quota_pay_element_rec.status,
840: FND_API.G_MISS_CHAR, p_quota_pay_element_rec.status,
841: Ltrim(Rtrim(p_quota_pay_element_rec.status))),
842: Decode(p_quota_pay_element_rec.start_date,
843: FND_API.G_MISS_DATE, p_quota_pay_element_rec.start_date,
844: trunc(p_quota_pay_element_rec.start_date)),
839: Decode(p_quota_pay_element_rec.status,
840: FND_API.G_MISS_CHAR, p_quota_pay_element_rec.status,
841: Ltrim(Rtrim(p_quota_pay_element_rec.status))),
842: Decode(p_quota_pay_element_rec.start_date,
843: FND_API.G_MISS_DATE, p_quota_pay_element_rec.start_date,
844: trunc(p_quota_pay_element_rec.start_date)),
845: Decode(p_quota_pay_element_rec.end_date,
846: FND_API.G_MISS_DATE, p_quota_pay_element_rec.end_date,
847: trunc(p_quota_pay_element_rec.end_date)),
842: Decode(p_quota_pay_element_rec.start_date,
843: FND_API.G_MISS_DATE, p_quota_pay_element_rec.start_date,
844: trunc(p_quota_pay_element_rec.start_date)),
845: Decode(p_quota_pay_element_rec.end_date,
846: FND_API.G_MISS_DATE, p_quota_pay_element_rec.end_date,
847: trunc(p_quota_pay_element_rec.end_date)),
848: Decode(p_quota_pay_element_rec.quota_name,
849: FND_API.G_MISS_CHAR, NULL ,
850: p_quota_pay_element_rec.quota_name),
845: Decode(p_quota_pay_element_rec.end_date,
846: FND_API.G_MISS_DATE, p_quota_pay_element_rec.end_date,
847: trunc(p_quota_pay_element_rec.end_date)),
848: Decode(p_quota_pay_element_rec.quota_name,
849: FND_API.G_MISS_CHAR, NULL ,
850: p_quota_pay_element_rec.quota_name),
851: Decode(p_quota_pay_element_rec.pay_element_name,
852: FND_API.G_MISS_CHAR, NULL ,
853: p_quota_pay_element_rec.pay_element_name)
848: Decode(p_quota_pay_element_rec.quota_name,
849: FND_API.G_MISS_CHAR, NULL ,
850: p_quota_pay_element_rec.quota_name),
851: Decode(p_quota_pay_element_rec.pay_element_name,
852: FND_API.G_MISS_CHAR, NULL ,
853: p_quota_pay_element_rec.pay_element_name)
854: INTO
855: l_quota_pay_element_rec.quota_pay_element_id,
856: l_quota_pay_element_rec.quota_id,
884: p_loading_status => x_loading_status,
885: x_loading_status => x_loading_status
886: );
887:
888: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
889: RAISE FND_API.G_EXC_ERROR ;
890: ELSE
891: -- Update
892: cn_quota_pay_elements_pkg.update_row
885: x_loading_status => x_loading_status
886: );
887:
888: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
889: RAISE FND_API.G_EXC_ERROR ;
890: ELSE
891: -- Update
892: cn_quota_pay_elements_pkg.update_row
893: (p_quota_pay_element_id => l_quota_pay_element_rec.quota_pay_element_id
901: ,p_last_update_login => G_LAST_UPDATE_LOGIN
902: );
903: END IF;
904: -- Standard check of p_commit.
905: IF FND_API.To_Boolean( p_commit ) THEN
906: COMMIT WORK;
907: END IF;
908: -- Standard call to get message count and if count is 1, get message info.
909: FND_MSG_PUB.Count_And_Get
909: FND_MSG_PUB.Count_And_Get
910: (
911: p_count => x_msg_count ,
912: p_data => x_msg_data ,
913: p_encoded => FND_API.G_FALSE
914: );
915:
916: EXCEPTION
917: WHEN FND_API.G_EXC_ERROR THEN
913: p_encoded => FND_API.G_FALSE
914: );
915:
916: EXCEPTION
917: WHEN FND_API.G_EXC_ERROR THEN
918: ROLLBACK TO Update_quota_pay_element;
919: x_return_status := FND_API.G_RET_STS_ERROR ;
920: FND_MSG_PUB.Count_And_Get
921: (
915:
916: EXCEPTION
917: WHEN FND_API.G_EXC_ERROR THEN
918: ROLLBACK TO Update_quota_pay_element;
919: x_return_status := FND_API.G_RET_STS_ERROR ;
920: FND_MSG_PUB.Count_And_Get
921: (
922: p_count => x_msg_count ,
923: p_data => x_msg_data ,
920: FND_MSG_PUB.Count_And_Get
921: (
922: p_count => x_msg_count ,
923: p_data => x_msg_data ,
924: p_encoded => FND_API.G_FALSE
925: );
926: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
927: ROLLBACK TO Update_quota_pay_element;
928: x_loading_status := 'UNEXPECTED_ERR';
922: p_count => x_msg_count ,
923: p_data => x_msg_data ,
924: p_encoded => FND_API.G_FALSE
925: );
926: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
927: ROLLBACK TO Update_quota_pay_element;
928: x_loading_status := 'UNEXPECTED_ERR';
929: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
930: FND_MSG_PUB.Count_And_Get
925: );
926: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
927: ROLLBACK TO Update_quota_pay_element;
928: x_loading_status := 'UNEXPECTED_ERR';
929: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
930: FND_MSG_PUB.Count_And_Get
931: (
932: p_count => x_msg_count ,
933: p_data => x_msg_data ,
930: FND_MSG_PUB.Count_And_Get
931: (
932: p_count => x_msg_count ,
933: p_data => x_msg_data ,
934: p_encoded => FND_API.G_FALSE
935: );
936: WHEN OTHERS THEN
937: ROLLBACK TO Update_quota_pay_element;
938: x_loading_status := 'UNEXPECTED_ERR';
935: );
936: WHEN OTHERS THEN
937: ROLLBACK TO Update_quota_pay_element;
938: x_loading_status := 'UNEXPECTED_ERR';
939: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
940: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
941: THEN
942: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
943: END IF;
944: FND_MSG_PUB.Count_And_Get
945: (
946: p_count => x_msg_count ,
947: p_data => x_msg_data ,
948: p_encoded => FND_API.G_FALSE
949: );
950: END Update_quota_pay_element;
951: --============================================================================
952: --| Procedure : Delete_quota_pay_element
973: -- Standard Start of API savepoint
974: SAVEPOINT Delete_Quota_Pay_element;
975:
976: -- Standard call to check for call compatibility.
977: IF NOT FND_API.compatible_api_call
978: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
979: THEN
980: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
981: END IF;
976: -- Standard call to check for call compatibility.
977: IF NOT FND_API.compatible_api_call
978: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
979: THEN
980: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
981: END IF;
982: -- Initialize message list if p_init_msg_list is set to TRUE.
983: IF FND_API.to_Boolean( p_init_msg_list ) THEN
984: FND_MSG_PUB.initialize;
979: THEN
980: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
981: END IF;
982: -- Initialize message list if p_init_msg_list is set to TRUE.
983: IF FND_API.to_Boolean( p_init_msg_list ) THEN
984: FND_MSG_PUB.initialize;
985: END IF;
986: -- Initialize API return status to success
987: x_return_status := FND_API.G_RET_STS_SUCCESS;
983: IF FND_API.to_Boolean( p_init_msg_list ) THEN
984: FND_MSG_PUB.initialize;
985: END IF;
986: -- Initialize API return status to success
987: x_return_status := FND_API.G_RET_STS_SUCCESS;
988: x_loading_status := 'CN_DELETED';
989:
990: IF p_quota_pay_element_id IS NOT NULL THEN
991:
994: FND_MESSAGE.SET_NAME ('CN' , 'CN_PAY_ELEMENT_ALREADY_USED');
995: FND_MSG_PUB.Add;
996: END IF;
997: x_loading_status := 'CN_PAY_ELEMENT_ALREADY_USED';
998: RAISE FND_API.G_EXC_ERROR ;
999: end if;
1000:
1001: if check_input_exists(p_quota_pay_element_id) > 0 THEN
1002: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
1003: FND_MESSAGE.SET_NAME ('CN' , 'CN_ELEMENT_INPUT_EXISTS');
1004: FND_MSG_PUB.Add;
1005: END IF;
1006: x_loading_status := 'CN_ELEMENT_INPUT_EXISTS';
1007: RAISE FND_API.G_EXC_ERROR ;
1008: end if;
1009:
1010:
1011: END IF;
1016: --
1017: -- End of API body.
1018: --
1019: -- Standard check of p_commit.
1020: IF FND_API.To_Boolean( p_commit ) THEN
1021: COMMIT WORK;
1022: END IF;
1023: -- Standard call to get message count and if count is 1, get message info.
1024: FND_MSG_PUB.Count_And_Get
1024: FND_MSG_PUB.Count_And_Get
1025: (
1026: p_count => x_msg_count ,
1027: p_data => x_msg_data ,
1028: p_encoded => FND_API.G_FALSE
1029: );
1030:
1031: EXCEPTION
1032: WHEN FND_API.G_EXC_ERROR THEN
1028: p_encoded => FND_API.G_FALSE
1029: );
1030:
1031: EXCEPTION
1032: WHEN FND_API.G_EXC_ERROR THEN
1033: ROLLBACK TO Delete_Quota_Pay_element;
1034: x_return_status := FND_API.G_RET_STS_ERROR ;
1035: FND_MSG_PUB.Count_And_Get
1036: (
1030:
1031: EXCEPTION
1032: WHEN FND_API.G_EXC_ERROR THEN
1033: ROLLBACK TO Delete_Quota_Pay_element;
1034: x_return_status := FND_API.G_RET_STS_ERROR ;
1035: FND_MSG_PUB.Count_And_Get
1036: (
1037: p_count => x_msg_count ,
1038: p_data => x_msg_data ,
1035: FND_MSG_PUB.Count_And_Get
1036: (
1037: p_count => x_msg_count ,
1038: p_data => x_msg_data ,
1039: p_encoded => FND_API.G_FALSE
1040: );
1041: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1042: ROLLBACK TO Delete_Quota_Pay_Element;
1043: x_loading_status := 'UNEXPECTED_ERR';
1037: p_count => x_msg_count ,
1038: p_data => x_msg_data ,
1039: p_encoded => FND_API.G_FALSE
1040: );
1041: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1042: ROLLBACK TO Delete_Quota_Pay_Element;
1043: x_loading_status := 'UNEXPECTED_ERR';
1044: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1045: FND_MSG_PUB.Count_And_Get
1040: );
1041: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1042: ROLLBACK TO Delete_Quota_Pay_Element;
1043: x_loading_status := 'UNEXPECTED_ERR';
1044: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1045: FND_MSG_PUB.Count_And_Get
1046: (
1047: p_count => x_msg_count ,
1048: p_data => x_msg_data ,
1045: FND_MSG_PUB.Count_And_Get
1046: (
1047: p_count => x_msg_count ,
1048: p_data => x_msg_data ,
1049: p_encoded => FND_API.G_FALSE
1050: );
1051: WHEN OTHERS THEN
1052: ROLLBACK TO Delete_Quota_Pay_element;
1053: x_loading_status := 'UNEXPECTED_ERR';
1050: );
1051: WHEN OTHERS THEN
1052: ROLLBACK TO Delete_Quota_Pay_element;
1053: x_loading_status := 'UNEXPECTED_ERR';
1054: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1055: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1056: THEN
1057: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
1058: END IF;
1059: FND_MSG_PUB.Count_And_Get
1060: (
1061: p_count => x_msg_count ,
1062: p_data => x_msg_data ,
1063: p_encoded => FND_API.G_FALSE
1064: );
1065:
1066: END Delete_Quota_Pay_Element;
1067: --============================================================================
1165: SAVEPOINT Get_quota_pay_element;
1166: --
1167: -- Standard call to check for call compatibility.
1168: --
1169: IF NOT FND_API.Compatible_API_Call ( l_api_version ,
1170: p_api_version ,
1171: l_api_name ,
1172: G_PKG_NAME )
1173: THEN
1170: p_api_version ,
1171: l_api_name ,
1172: G_PKG_NAME )
1173: THEN
1174: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1175: END IF;
1176: --
1177: -- Initialize message list if p_init_msg_list is set to TRUE.
1178: --
1175: END IF;
1176: --
1177: -- Initialize message list if p_init_msg_list is set to TRUE.
1178: --
1179: IF FND_API.to_Boolean( p_init_msg_list ) THEN
1180: FND_MSG_PUB.initialize;
1181: END IF;
1182: --
1183: -- Initialize API return status to success
1181: END IF;
1182: --
1183: -- Initialize API return status to success
1184: --
1185: x_return_status := FND_API.G_RET_STS_SUCCESS;
1186: x_loading_status := 'SELECTED';
1187: --
1188: -- API body
1189: --
1268:
1269: -- End of API body.
1270:
1271: -- Standard check of p_commit.
1272: IF FND_API.To_Boolean( p_commit ) THEN
1273: COMMIT WORK;
1274: END IF;
1275: FND_MSG_PUB.Count_And_Get
1276: (
1275: FND_MSG_PUB.Count_And_Get
1276: (
1277: p_count => x_msg_count ,
1278: p_data => x_msg_data ,
1279: p_encoded => FND_API.G_FALSE
1280: );
1281:
1282: EXCEPTION
1283: WHEN FND_API.G_EXC_ERROR THEN
1279: p_encoded => FND_API.G_FALSE
1280: );
1281:
1282: EXCEPTION
1283: WHEN FND_API.G_EXC_ERROR THEN
1284: ROLLBACK TO Get_quota_pay_element;
1285: x_return_status := FND_API.G_RET_STS_ERROR ;
1286: FND_MSG_PUB.Count_And_Get
1287: (
1281:
1282: EXCEPTION
1283: WHEN FND_API.G_EXC_ERROR THEN
1284: ROLLBACK TO Get_quota_pay_element;
1285: x_return_status := FND_API.G_RET_STS_ERROR ;
1286: FND_MSG_PUB.Count_And_Get
1287: (
1288: p_count => x_msg_count ,
1289: p_data => x_msg_data ,
1286: FND_MSG_PUB.Count_And_Get
1287: (
1288: p_count => x_msg_count ,
1289: p_data => x_msg_data ,
1290: p_encoded => FND_API.G_FALSE
1291: );
1292: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1293: ROLLBACK TO Get_quota_pay_element;
1294: x_loading_status := 'UNEXPECTED_ERR';
1288: p_count => x_msg_count ,
1289: p_data => x_msg_data ,
1290: p_encoded => FND_API.G_FALSE
1291: );
1292: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1293: ROLLBACK TO Get_quota_pay_element;
1294: x_loading_status := 'UNEXPECTED_ERR';
1295: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1296: FND_MSG_PUB.Count_And_Get
1291: );
1292: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1293: ROLLBACK TO Get_quota_pay_element;
1294: x_loading_status := 'UNEXPECTED_ERR';
1295: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1296: FND_MSG_PUB.Count_And_Get
1297: (
1298: p_count => x_msg_count ,
1299: p_data => x_msg_data ,
1296: FND_MSG_PUB.Count_And_Get
1297: (
1298: p_count => x_msg_count ,
1299: p_data => x_msg_data ,
1300: p_encoded => FND_API.G_FALSE
1301: );
1302: WHEN OTHERS THEN
1303: ROLLBACK TO Get_quota_pay_element;
1304: x_loading_status := 'UNEXPECTED_ERR';
1301: );
1302: WHEN OTHERS THEN
1303: ROLLBACK TO Get_quota_pay_element;
1304: x_loading_status := 'UNEXPECTED_ERR';
1305: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1306: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1307: THEN
1308: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
1309: END IF;
1309: END IF;
1310: FND_MSG_PUB.Count_And_Get (
1311: p_count => x_msg_count ,
1312: p_data => x_msg_data ,
1313: p_encoded => FND_API.G_FALSE
1314: );
1315: END Get_quota_pay_element;
1316:
1317: END CN_QUOTA_PAY_ELEMENTS_PVT ;