SELECT REVENUE_CATEGORY_CODE , REVENUE_CATEGORY_M , 'N' , NULL , 'N' FROM PA_REVENUE_CATEGORIES_V RC WHERE DECODE(PA_GET_RESOURCE.INCLUDE_INACTIVE_RESOURCES , 'Y' , START_DATE_ACTIVE , TRUNC(SYSDATE)) BETWEEN START_DATE_ACTIVE AND NVL(END_DATE_ACTIVE , TRUNC(SYSDATE)) AND NOT EXISTS (SELECT REVENUE_CATEGORY_CODE FROM PA_EXPENDITURE_TYPES_RES_V ET WHERE RC.REVENUE_CATEGORY_CODE = ET.REVENUE_CATEGORY_CODE AND ET.TRACK_AS_LABOR_FLAG = 'Y') UNION ALL SELECT REVENUE_CATEGORY_CODE , REVENUE_CATEGORY_M , 'Y' , 'HOURS' , 'Y' FROM PA_REVENUE_CATEGORIES_V RC WHERE DECODE(PA_GET_RESOURCE.INCLUDE_INACTIVE_RESOURCES , 'Y' , START_DATE_ACTIVE , TRUNC(SYSDATE)) BETWEEN START_DATE_ACTIVE AND NVL(END_DATE_ACTIVE , TRUNC(SYSDATE)) AND EXISTS (SELECT REVENUE_CATEGORY_CODE FROM PA_EXPENDITURE_TYPES_RES_V ET WHERE RC.REVENUE_CATEGORY_CODE = ET.REVENUE_CATEGORY_CODE AND ET.TRACK_AS_LABOR_FLAG = 'Y')