951: active_end_date,
952: assignable_area
953: FROM pn_locations_all
954: WHERE location_type_lookup_code IN ('SECTION','OFFICE')
955: AND active_start_date < fnd_date.canonical_to_date(p_to_date)
956: AND active_end_date > fnd_date.canonical_to_date(p_from_date)
957: AND location_id IN
958: (SELECT location_id FROM pn_locations_all
959: START WITH (location_id = p_location_id OR
952: assignable_area
953: FROM pn_locations_all
954: WHERE location_type_lookup_code IN ('SECTION','OFFICE')
955: AND active_start_date < fnd_date.canonical_to_date(p_to_date)
956: AND active_end_date > fnd_date.canonical_to_date(p_from_date)
957: AND location_id IN
958: (SELECT location_id FROM pn_locations_all
959: START WITH (location_id = p_location_id OR
960: (property_id = p_property_id AND p_location_id IS NULL))
971: recovery_type_code,
972: recovery_space_std_code
973: FROM pn_space_assign_cust_all cust
974: WHERE cust.location_id = p_location_id
975: AND cust.cust_assign_start_date < fnd_date.canonical_to_date(p_to_date)
976: AND cust.fin_oblig_end_date > fnd_date.canonical_to_date(p_from_date);
977:
978: CURSOR get_uom_info_from_prop(p_property_id pn_locations.property_id%TYPE) IS
979: SELECT uom_code
972: recovery_space_std_code
973: FROM pn_space_assign_cust_all cust
974: WHERE cust.location_id = p_location_id
975: AND cust.cust_assign_start_date < fnd_date.canonical_to_date(p_to_date)
976: AND cust.fin_oblig_end_date > fnd_date.canonical_to_date(p_from_date);
977:
978: CURSOR get_uom_info_from_prop(p_property_id pn_locations.property_id%TYPE) IS
979: SELECT uom_code
980: FROM pn_locations_all
978: CURSOR get_uom_info_from_prop(p_property_id pn_locations.property_id%TYPE) IS
979: SELECT uom_code
980: FROM pn_locations_all
981: WHERE property_id = p_property_id
982: AND active_start_date < fnd_date.canonical_to_date(p_to_date)
983: AND active_end_date > fnd_date.canonical_to_date(p_from_date);
984:
985: CURSOR get_uom_info_from_locn(p_location_id pn_locations.location_id%TYPE) IS
986: SELECT uom_code
979: SELECT uom_code
980: FROM pn_locations_all
981: WHERE property_id = p_property_id
982: AND active_start_date < fnd_date.canonical_to_date(p_to_date)
983: AND active_end_date > fnd_date.canonical_to_date(p_from_date);
984:
985: CURSOR get_uom_info_from_locn(p_location_id pn_locations.location_id%TYPE) IS
986: SELECT uom_code
987: FROM pn_locations_all
989: (SELECT location_id FROM pn_locations_all
990: START WITH location_id = p_location_id
991: CONNECT BY location_id = PRIOR parent_location_id)
992: AND parent_location_id IS NULL
993: AND active_start_date < fnd_date.canonical_to_date(p_to_date)
994: AND active_end_date > fnd_date.canonical_to_date(p_from_date);
995:
996: CURSOR get_ovr_from_curnt IS
997: SELECT dtl.location_id,
990: START WITH location_id = p_location_id
991: CONNECT BY location_id = PRIOR parent_location_id)
992: AND parent_location_id IS NULL
993: AND active_start_date < fnd_date.canonical_to_date(p_to_date)
994: AND active_end_date > fnd_date.canonical_to_date(p_from_date);
995:
996: CURSOR get_ovr_from_curnt IS
997: SELECT dtl.location_id,
998: dtl.from_date,
1015: pn_rec_arcl_dtl_all hdr,
1016: pn_rec_arcl_all setup
1017: WHERE dtl.area_class_dtl_id (+) = hdr.area_class_dtl_id
1018: AND hdr.area_class_id = p_area_class_id
1019: AND TRUNC(hdr.as_of_date) = TRUNC(fnd_date.canonical_to_date(p_as_of_date))
1020: AND TRUNC(hdr.from_date) = TRUNC(fnd_date.canonical_to_date(p_from_date))
1021: AND TRUNC(hdr.to_date) = TRUNC(fnd_date.canonical_to_date(p_to_date))
1022: AND setup.area_class_id = hdr.area_class_id;
1023:
1016: pn_rec_arcl_all setup
1017: WHERE dtl.area_class_dtl_id (+) = hdr.area_class_dtl_id
1018: AND hdr.area_class_id = p_area_class_id
1019: AND TRUNC(hdr.as_of_date) = TRUNC(fnd_date.canonical_to_date(p_as_of_date))
1020: AND TRUNC(hdr.from_date) = TRUNC(fnd_date.canonical_to_date(p_from_date))
1021: AND TRUNC(hdr.to_date) = TRUNC(fnd_date.canonical_to_date(p_to_date))
1022: AND setup.area_class_id = hdr.area_class_id;
1023:
1024: CURSOR get_prior_cls_dtl_id IS
1017: WHERE dtl.area_class_dtl_id (+) = hdr.area_class_dtl_id
1018: AND hdr.area_class_id = p_area_class_id
1019: AND TRUNC(hdr.as_of_date) = TRUNC(fnd_date.canonical_to_date(p_as_of_date))
1020: AND TRUNC(hdr.from_date) = TRUNC(fnd_date.canonical_to_date(p_from_date))
1021: AND TRUNC(hdr.to_date) = TRUNC(fnd_date.canonical_to_date(p_to_date))
1022: AND setup.area_class_id = hdr.area_class_id;
1023:
1024: CURSOR get_prior_cls_dtl_id IS
1025: SELECT area_class_dtl_id
1023:
1024: CURSOR get_prior_cls_dtl_id IS
1025: SELECT area_class_dtl_id
1026: FROM pn_rec_arcl_dtl_all
1027: WHERE from_date < fnd_date.canonical_to_date(p_to_date)
1028: AND to_date <= fnd_date.canonical_to_date(p_to_date)
1029: AND as_of_date < fnd_date.canonical_to_date(p_as_of_date)
1030: AND area_class_id = p_area_class_id
1031: ORDER BY as_of_date DESC, to_date DESC , from_date DESC;
1024: CURSOR get_prior_cls_dtl_id IS
1025: SELECT area_class_dtl_id
1026: FROM pn_rec_arcl_dtl_all
1027: WHERE from_date < fnd_date.canonical_to_date(p_to_date)
1028: AND to_date <= fnd_date.canonical_to_date(p_to_date)
1029: AND as_of_date < fnd_date.canonical_to_date(p_as_of_date)
1030: AND area_class_id = p_area_class_id
1031: ORDER BY as_of_date DESC, to_date DESC , from_date DESC;
1032:
1025: SELECT area_class_dtl_id
1026: FROM pn_rec_arcl_dtl_all
1027: WHERE from_date < fnd_date.canonical_to_date(p_to_date)
1028: AND to_date <= fnd_date.canonical_to_date(p_to_date)
1029: AND as_of_date < fnd_date.canonical_to_date(p_as_of_date)
1030: AND area_class_id = p_area_class_id
1031: ORDER BY as_of_date DESC, to_date DESC , from_date DESC;
1032:
1033: CURSOR get_ovr_from_prior(p_prior_cls_dtl_id pn_rec_arcl_dtl.area_class_dtl_id%TYPE) IS
1261: p_date_table => l_vacancy_date_table,
1262: p_num_table => l_vacancy_num_table,
1263: p_ref_date_table => l_ref_vacancy_date_table,
1264: p_ref_num_table => l_ref_vacancy_num_table,
1265: p_from_date => fnd_date.canonical_to_date(p_from_date),
1266: p_to_date => fnd_date.canonical_to_date(p_to_date),
1267: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1268: p_assignable_area => l_temp_assignable_area,
1269: p_curnt_ovr => l_area_cls_ln_curnt_ovr,
1262: p_num_table => l_vacancy_num_table,
1263: p_ref_date_table => l_ref_vacancy_date_table,
1264: p_ref_num_table => l_ref_vacancy_num_table,
1265: p_from_date => fnd_date.canonical_to_date(p_from_date),
1266: p_to_date => fnd_date.canonical_to_date(p_to_date),
1267: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1268: p_assignable_area => l_temp_assignable_area,
1269: p_curnt_ovr => l_area_cls_ln_curnt_ovr,
1270: p_prior_ovr => l_area_cls_ln_prior_ovr,
1263: p_ref_date_table => l_ref_vacancy_date_table,
1264: p_ref_num_table => l_ref_vacancy_num_table,
1265: p_from_date => fnd_date.canonical_to_date(p_from_date),
1266: p_to_date => fnd_date.canonical_to_date(p_to_date),
1267: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1268: p_assignable_area => l_temp_assignable_area,
1269: p_curnt_ovr => l_area_cls_ln_curnt_ovr,
1270: p_prior_ovr => l_area_cls_ln_prior_ovr,
1271: p_data_tbl => l_area_cls_ln_data_tbl,
1331:
1332: IF NOT l_meets_criteria THEN l_excl_type := null; END IF;
1333:
1334: get_area_cls_dtl_calc(
1335: p_from_date => fnd_date.canonical_to_date(p_from_date),
1336: p_to_date => fnd_date.canonical_to_date(p_to_date),
1337: p_rec_from_date => l_from_date,
1338: p_rec_to_date => l_to_date,
1339: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1332: IF NOT l_meets_criteria THEN l_excl_type := null; END IF;
1333:
1334: get_area_cls_dtl_calc(
1335: p_from_date => fnd_date.canonical_to_date(p_from_date),
1336: p_to_date => fnd_date.canonical_to_date(p_to_date),
1337: p_rec_from_date => l_from_date,
1338: p_rec_to_date => l_to_date,
1339: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1340: p_assigned_area => space_assign_rec.allocated_area,
1335: p_from_date => fnd_date.canonical_to_date(p_from_date),
1336: p_to_date => fnd_date.canonical_to_date(p_to_date),
1337: p_rec_from_date => l_from_date,
1338: p_rec_to_date => l_to_date,
1339: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1340: p_assigned_area => space_assign_rec.allocated_area,
1341: p_exc_type_code => l_excl_type,
1342: p_occup_pct => l_occup_pct,
1343: p_weighted_avg => l_weighted_avg,
1524: p_date_table => l_vacancy_date_table,
1525: p_num_table => l_vacancy_num_table,
1526: p_ref_date_table => l_ref_vacancy_date_table,
1527: p_ref_num_table => l_ref_vacancy_num_table,
1528: p_from_date => fnd_date.canonical_to_date(p_from_date),
1529: p_to_date => fnd_date.canonical_to_date(p_to_date),
1530: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1531: p_assignable_area => l_temp_assignable_area,
1532: p_curnt_ovr => l_area_cls_ln_curnt_ovr,
1525: p_num_table => l_vacancy_num_table,
1526: p_ref_date_table => l_ref_vacancy_date_table,
1527: p_ref_num_table => l_ref_vacancy_num_table,
1528: p_from_date => fnd_date.canonical_to_date(p_from_date),
1529: p_to_date => fnd_date.canonical_to_date(p_to_date),
1530: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1531: p_assignable_area => l_temp_assignable_area,
1532: p_curnt_ovr => l_area_cls_ln_curnt_ovr,
1533: p_prior_ovr => l_area_cls_ln_prior_ovr,
1526: p_ref_date_table => l_ref_vacancy_date_table,
1527: p_ref_num_table => l_ref_vacancy_num_table,
1528: p_from_date => fnd_date.canonical_to_date(p_from_date),
1529: p_to_date => fnd_date.canonical_to_date(p_to_date),
1530: p_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1531: p_assignable_area => l_temp_assignable_area,
1532: p_curnt_ovr => l_area_cls_ln_curnt_ovr,
1533: p_prior_ovr => l_area_cls_ln_prior_ovr,
1534: p_data_tbl => l_area_cls_ln_data_tbl,
1551:
1552: pn_rec_arcl_dtl_pkg.update_row(
1553: x_area_class_id => p_area_class_id,
1554: x_area_class_dtl_id => l_area_class_dtl_id,
1555: x_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1556: x_from_date => fnd_date.canonical_to_date(p_from_date),
1557: x_to_date => fnd_date.canonical_to_date(p_to_date),
1558: x_status => 'OPEN',
1559: x_ttl_assignable_area => l_area_total_tbl(0).total_assignable_area,
1552: pn_rec_arcl_dtl_pkg.update_row(
1553: x_area_class_id => p_area_class_id,
1554: x_area_class_dtl_id => l_area_class_dtl_id,
1555: x_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1556: x_from_date => fnd_date.canonical_to_date(p_from_date),
1557: x_to_date => fnd_date.canonical_to_date(p_to_date),
1558: x_status => 'OPEN',
1559: x_ttl_assignable_area => l_area_total_tbl(0).total_assignable_area,
1560: x_ttl_occupied_area => l_area_total_tbl(0).total_occupied_area,
1553: x_area_class_id => p_area_class_id,
1554: x_area_class_dtl_id => l_area_class_dtl_id,
1555: x_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1556: x_from_date => fnd_date.canonical_to_date(p_from_date),
1557: x_to_date => fnd_date.canonical_to_date(p_to_date),
1558: x_status => 'OPEN',
1559: x_ttl_assignable_area => l_area_total_tbl(0).total_assignable_area,
1560: x_ttl_occupied_area => l_area_total_tbl(0).total_occupied_area,
1561: x_ttl_occupied_area_ovr => l_area_total_tbl(0).total_occupied_area_ovr,
1576: pn_rec_arcl_dtl_pkg.insert_row(
1577: x_org_id => pn_mo_cache_utils.get_current_org_id,
1578: x_area_class_id => p_area_class_id,
1579: x_area_class_dtl_id => l_area_class_dtl_id,
1580: x_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1581: x_from_date => fnd_date.canonical_to_date(p_from_date),
1582: x_to_date => fnd_date.canonical_to_date(p_to_date),
1583: x_status => 'OPEN',
1584: x_ttl_assignable_area => l_area_total_tbl(0).total_assignable_area,
1577: x_org_id => pn_mo_cache_utils.get_current_org_id,
1578: x_area_class_id => p_area_class_id,
1579: x_area_class_dtl_id => l_area_class_dtl_id,
1580: x_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1581: x_from_date => fnd_date.canonical_to_date(p_from_date),
1582: x_to_date => fnd_date.canonical_to_date(p_to_date),
1583: x_status => 'OPEN',
1584: x_ttl_assignable_area => l_area_total_tbl(0).total_assignable_area,
1585: x_ttl_occupied_area => l_area_total_tbl(0).total_occupied_area,
1578: x_area_class_id => p_area_class_id,
1579: x_area_class_dtl_id => l_area_class_dtl_id,
1580: x_as_of_date => fnd_date.canonical_to_date(p_as_of_date),
1581: x_from_date => fnd_date.canonical_to_date(p_from_date),
1582: x_to_date => fnd_date.canonical_to_date(p_to_date),
1583: x_status => 'OPEN',
1584: x_ttl_assignable_area => l_area_total_tbl(0).total_assignable_area,
1585: x_ttl_occupied_area => l_area_total_tbl(0).total_occupied_area,
1586: x_ttl_occupied_area_ovr => l_area_total_tbl(0).total_occupied_area_ovr,
2828: CURSOR get_locn_prop_id IS
2829: SELECT property_id,
2830: location_id
2831: FROM pn_locations_all
2832: WHERE active_start_date < fnd_date.canonical_to_date(p_to_date)
2833: AND active_end_date > fnd_date.canonical_to_date(p_from_date)
2834: START WITH location_id = p_location_id
2835: CONNECT BY location_id = PRIOR parent_location_id;
2836:
2829: SELECT property_id,
2830: location_id
2831: FROM pn_locations_all
2832: WHERE active_start_date < fnd_date.canonical_to_date(p_to_date)
2833: AND active_end_date > fnd_date.canonical_to_date(p_from_date)
2834: START WITH location_id = p_location_id
2835: CONNECT BY location_id = PRIOR parent_location_id;
2836:
2837: l_propid pn_rec_exp_line.property_id%TYPE;
2974: CURSOR get_locn_prop_id IS
2975: SELECT property_id,
2976: location_id
2977: FROM pn_locations_all
2978: WHERE active_start_date < fnd_date.canonical_to_date(p_to_date)
2979: AND active_end_date > fnd_date.canonical_to_date(p_from_date)
2980: START WITH location_id = p_location_id
2981: CONNECT BY location_id = PRIOR parent_location_id;
2982:
2975: SELECT property_id,
2976: location_id
2977: FROM pn_locations_all
2978: WHERE active_start_date < fnd_date.canonical_to_date(p_to_date)
2979: AND active_end_date > fnd_date.canonical_to_date(p_from_date)
2980: START WITH location_id = p_location_id
2981: CONNECT BY location_id = PRIOR parent_location_id;
2982:
2983: l_propid pn_rec_exp_line.property_id%TYPE;
3264: cust.recovery_type_code
3265: FROM pn_space_assign_cust_all cust
3266: WHERE cust.location_id IN
3267: (SELECT location_id FROM pn_locations_all locn
3268: WHERE locn.active_start_date < fnd_date.canonical_to_date(p_to_date)
3269: AND locn.active_end_date > fnd_date.canonical_to_date(p_from_date))
3270: AND cust.cust_assign_start_date < fnd_date.canonical_to_date(p_to_date)
3271: AND cust.fin_oblig_end_date > fnd_date.canonical_to_date(p_from_date)
3272: AND cust.recovery_space_std_code = p_rec_spc_std_code
3265: FROM pn_space_assign_cust_all cust
3266: WHERE cust.location_id IN
3267: (SELECT location_id FROM pn_locations_all locn
3268: WHERE locn.active_start_date < fnd_date.canonical_to_date(p_to_date)
3269: AND locn.active_end_date > fnd_date.canonical_to_date(p_from_date))
3270: AND cust.cust_assign_start_date < fnd_date.canonical_to_date(p_to_date)
3271: AND cust.fin_oblig_end_date > fnd_date.canonical_to_date(p_from_date)
3272: AND cust.recovery_space_std_code = p_rec_spc_std_code
3273: AND cust.recovery_type_code = p_rec_type_code
3266: WHERE cust.location_id IN
3267: (SELECT location_id FROM pn_locations_all locn
3268: WHERE locn.active_start_date < fnd_date.canonical_to_date(p_to_date)
3269: AND locn.active_end_date > fnd_date.canonical_to_date(p_from_date))
3270: AND cust.cust_assign_start_date < fnd_date.canonical_to_date(p_to_date)
3271: AND cust.fin_oblig_end_date > fnd_date.canonical_to_date(p_from_date)
3272: AND cust.recovery_space_std_code = p_rec_spc_std_code
3273: AND cust.recovery_type_code = p_rec_type_code
3274: AND cust.location_id IN
3267: (SELECT location_id FROM pn_locations_all locn
3268: WHERE locn.active_start_date < fnd_date.canonical_to_date(p_to_date)
3269: AND locn.active_end_date > fnd_date.canonical_to_date(p_from_date))
3270: AND cust.cust_assign_start_date < fnd_date.canonical_to_date(p_to_date)
3271: AND cust.fin_oblig_end_date > fnd_date.canonical_to_date(p_from_date)
3272: AND cust.recovery_space_std_code = p_rec_spc_std_code
3273: AND cust.recovery_type_code = p_rec_type_code
3274: AND cust.location_id IN
3275: (SELECT location_id FROM pn_locations_all
3817:
3818: l_info := ' validating inputs ';
3819: pnp_debug_pkg.log(l_info);
3820:
3821: l_from_date := fnd_date.canonical_to_date(p_from_date);
3822: l_to_date := fnd_date.canonical_to_date(p_to_date);
3823: l_as_of_date:= fnd_date.canonical_to_date(p_as_of_date);
3824: l_extract_code := p_extract_code;
3825:
3818: l_info := ' validating inputs ';
3819: pnp_debug_pkg.log(l_info);
3820:
3821: l_from_date := fnd_date.canonical_to_date(p_from_date);
3822: l_to_date := fnd_date.canonical_to_date(p_to_date);
3823: l_as_of_date:= fnd_date.canonical_to_date(p_as_of_date);
3824: l_extract_code := p_extract_code;
3825:
3826: IF p_location_code IS NOT NULL THEN
3819: pnp_debug_pkg.log(l_info);
3820:
3821: l_from_date := fnd_date.canonical_to_date(p_from_date);
3822: l_to_date := fnd_date.canonical_to_date(p_to_date);
3823: l_as_of_date:= fnd_date.canonical_to_date(p_as_of_date);
3824: l_extract_code := p_extract_code;
3825:
3826: IF p_location_code IS NOT NULL THEN
3827: FOR loc_rec IN derive_loc_id_from_loc_code LOOP
3994: l_info := ' figuring expense extract code';
3995: pnp_debug_pkg.log(l_info);
3996: l_extract_code := p_extract_code;
3997: l_transfer_flag := p_transfer_flag;
3998: l_from_date := fnd_date.canonical_to_date(p_from_date);
3999: l_to_date := fnd_date.canonical_to_date(p_to_date);
4000:
4001:
4002: IF p_extract_code IS NOT NULL THEN
3995: pnp_debug_pkg.log(l_info);
3996: l_extract_code := p_extract_code;
3997: l_transfer_flag := p_transfer_flag;
3998: l_from_date := fnd_date.canonical_to_date(p_from_date);
3999: l_to_date := fnd_date.canonical_to_date(p_to_date);
4000:
4001:
4002: IF p_extract_code IS NOT NULL THEN
4003: