[Home] [Help]
1: PACKAGE BODY EAM_METERS_UTIL AS
2: /* $Header: EAMETERB.pls 120.27.12020000.4 2012/11/28 09:57:05 srkotika ship $ */
3:
4: -- Standard who
5: g_last_updated_by NUMBER(15) := FND_GLOBAL.USER_ID;
8: g_request_id NUMBER(15) := FND_GLOBAL.CONC_REQUEST_ID;
9: g_program_application_id NUMBER(15) := FND_GLOBAL.PROG_APPL_ID;
10: g_program_id NUMBER(15) := FND_GLOBAL.CONC_PROGRAM_ID;
11:
12: G_PKG_NAME CONSTANT VARCHAR2(30):='EAM_METERS_UTIL';
13:
14:
15: /**
16: * This is a private helper function that retrieves the activity association id
408: l_api_name CONSTANT VARCHAR2(30) := 'Meter_Utils';
409: l_api_version CONSTANT NUMBER := 1.0;
410: l_last_service_end_date date;
411: begin
412: SAVEPOINT EAM_METERS_UTIL;
413: x_assoc_id := get_activity_assoc_id(p_wip_entity_id);
414:
415: x_return_status := FND_API.G_RET_STS_SUCCESS;
416: --bug 3762560: if x_assoc_id is null, then don't process anything, just return
431: p_data => x_msg_data
432: );
433: EXCEPTION
434: WHEN FND_API.G_EXC_ERROR THEN
435: ROLLBACK TO EAM_METERS_UTIL;
436: x_return_status := FND_API.G_RET_STS_ERROR ;
437: FND_MSG_PUB.Count_And_Get
438: ( p_count => x_msg_count ,
439: p_data => x_msg_data
438: ( p_count => x_msg_count ,
439: p_data => x_msg_data
440: );
441: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
442: ROLLBACK TO EAM_METERS_UTIL;
443: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
444: FND_MSG_PUB.Count_And_Get
445: ( p_count => x_msg_count ,
446: p_data => x_msg_data
445: ( p_count => x_msg_count ,
446: p_data => x_msg_data
447: );
448: WHEN OTHERS THEN
449: ROLLBACK TO EAM_METERS_UTIL;
450: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
451: IF FND_MSG_PUB.Check_Msg_Level
452: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
453: THEN
487: l_pm_seq_id NUMBER;
488: l_pm_seq number;
489: l_wo_seq number;
490: begin
491: SAVEPOINT EAM_METERS_UTIL;
492:
493: x_assoc_id := get_activity_assoc_id(p_wip_entity_id);
494:
495: if x_assoc_id is not null then
560: p_data => x_msg_data
561: );
562: EXCEPTION
563: WHEN FND_API.G_EXC_ERROR THEN
564: ROLLBACK TO EAM_METERS_UTIL;
565: x_return_status := FND_API.G_RET_STS_ERROR ;
566: FND_MSG_PUB.Count_And_Get
567: ( p_count => x_msg_count ,
568: p_data => x_msg_data
567: ( p_count => x_msg_count ,
568: p_data => x_msg_data
569: );
570: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
571: ROLLBACK TO EAM_METERS_UTIL;
572: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
573: FND_MSG_PUB.Count_And_Get
574: ( p_count => x_msg_count ,
575: p_data => x_msg_data
574: ( p_count => x_msg_count ,
575: p_data => x_msg_data
576: );
577: WHEN OTHERS THEN
578: ROLLBACK TO EAM_METERS_UTIL;
579: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
580: IF FND_MSG_PUB.Check_Msg_Level
581: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
582: THEN
610: l_pm_schedule_id NUMBER;
611: l_cycle_id NUMBER;
612: l_seq_id NUMBER;
613: begin
614: SAVEPOINT EAM_METERS_UTIL_NEW;
615: x_assoc_id := get_activity_assoc_id(p_wip_entity_id);
616:
617: if x_assoc_id is not null then
618: update_last_service_dates(p_wip_entity_id, x_assoc_id, p_start_date, p_end_date);
658:
659: IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
660: COMMIT;
661: ELSE
662: ROLLBACK TO EAM_METERS_UTIL_NEW;
663: END IF;
664: END IF;
665:
666: -- Standard call to get message count and if count is 1, get message info.
669: p_data => x_msg_data
670: );
671: EXCEPTION
672: WHEN FND_API.G_EXC_ERROR THEN
673: ROLLBACK TO EAM_METERS_UTIL_NEW;
674: x_return_status := FND_API.G_RET_STS_ERROR ;
675: FND_MSG_PUB.Count_And_Get
676: ( p_count => x_msg_count ,
677: p_data => x_msg_data
676: ( p_count => x_msg_count ,
677: p_data => x_msg_data
678: );
679: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
680: ROLLBACK TO EAM_METERS_UTIL_NEW;
681: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
682: FND_MSG_PUB.Count_And_Get
683: ( p_count => x_msg_count ,
684: p_data => x_msg_data
683: ( p_count => x_msg_count ,
684: p_data => x_msg_data
685: );
686: WHEN OTHERS THEN
687: ROLLBACK TO EAM_METERS_UTIL_NEW;
688: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
689: IF FND_MSG_PUB.Check_Msg_Level
690: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
691: THEN
1087: and NVL(disabled_flag,'N')<>'Y';
1088:
1089:
1090:
1091: if (eam_meters_util.reset_reading_exists(p_meter_id,p_reading_date) = true
1092: and prev_ceiling_reading_date is not null) then
1093: return_val := true;
1094: end if;
1095: return return_val;
1545: );
1546: END VALIDATE_USED_IN_SCHEDULING;
1547:
1548:
1549: END eam_meters_util;
1550:
1551: