114:
115:
116: BEGIN
117:
118: pnp_debug_pkg.debug('PN_TENANCIES_PKG.INSERT_ROW (+)');
119:
120:
121: IF x_org_id IS NULL THEN
122: FOR rec IN org_cur LOOP
290: RAISE NO_DATA_FOUND;
291: END IF;
292: CLOSE c;
293:
294: pnp_debug_pkg.debug('PN_TENANCIES_PKG.INSERT_ROW (-)');
295:
296: END Insert_Row;
297:
298: -------------------------------------------------------------------------------
356:
357: tlinfo c1%ROWTYPE;
358:
359: BEGIN
360: pnp_debug_pkg.debug('PN_TENANCIES_PKG.LOCK_ROW (+)');
361:
362: OPEN c1;
363: FETCH c1 INTO tlinfo;
364: IF (c1%NOTFOUND) THEN
550: OR ((tlinfo.LEASE_LOAD_FACTOR IS NULL) AND (X_LEASE_LOAD_FACTOR IS NULL))) THEN
551: pn_var_rent_pkg.lock_row_exception('LEASE_LOAD_FACTOR',tlinfo.LEASE_LOAD_FACTOR);
552: END IF;
553:
554: pnp_debug_pkg.debug('PN_TENANCIES_PKG.LOCK_ROW (-)');
555:
556: END Lock_Row;
557:
558: -------------------------------------------------------------------------------
630: l_leaseStatus VARCHAR2(30) := NULL;
631: l_returnStatus VARCHAR2(30) := NULL;
632: BEGIN
633:
634: pnp_debug_pkg.debug('PN_TENANCIES_PKG.UPDATE_ROW (+)');
635:
636: x_tenancy_ovelap_wrn := NULL;
637:
638: ---------------------------------------------------
850: IF (SQL%NOTFOUND) THEN
851: RAISE NO_DATA_FOUND;
852: END IF;
853:
854: pnp_debug_pkg.debug('PN_TENANCIES_PKG.UPDATE_ROW (-)');
855: END Update_Row;
856:
857: -------------------------------------------------------------------------------
858: -- PROCDURE : Delete_Row
865: X_TENANCY_ID IN NUMBER
866: )
867: IS
868: BEGIN
869: pnp_debug_pkg.debug('PN_TENANCIES_PKG.DELETE_ROW (+)');
870:
871: DELETE FROM pn_tenancies_all
872: WHERE tenancy_id = x_tenancy_id;
873:
874: IF (SQL%NOTFOUND) THEN
875: RAISE NO_DATA_FOUND;
876: END IF;
877:
878: pnp_debug_pkg.debug('PN_TENANCIES_PKG.DELETE_ROW (-)');
879: END Delete_Row;
880:
881:
882: -------------------------------------------------------------------------------
892: )
893: IS
894: l_dummy NUMBER;
895: BEGIN
896: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CHECK_UNIQUE_PRIMARY_LOCATION (+)');
897: BEGIN
898: SELECT 1
899: INTO l_dummy
900: FROM DUAL
912: fnd_message.set_name ('PN', 'PN_DUPLEASE_PRIMARY_TENANCY');
913: x_return_status := 'E';
914: END;
915:
916: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CHECK_UNIQUE_PRIMARY_LOCATION (-)');
917: END CHECK_UNIQUE_PRIMARY_LOCATION;
918:
919: -------------------------------------------------------------------------------
920: -- PROCDURE : CHECK_FOR_OVELAP_OF_TENANCY
955:
956: l_org_id NUMBER;
957:
958: BEGIN
959: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CHECK_FOR_OVELAP_OF_TENANCY (+)');
960:
961: FOR rec IN org_cur LOOP
962: l_org_id := rec.org_id;
963: END LOOP;
1210: END IF;
1211:
1212: END IF;
1213:
1214: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CHECK_FOR_OVELAP_OF_TENANCY (-) X_RETURN_STATUS: '||X_RETURN_STATUS);
1215:
1216: END check_for_ovelap_of_tenancy;
1217:
1218: -------------------------------------------------------------------------------
1229: ,X_EXPIRATION_DATE IN DATE
1230: )
1231: IS
1232: BEGIN
1233: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CHECK_TENANCY_DATES (+)');
1234:
1235: IF (X_ESTIMATED_OCCUPANCY_DATE IS NULL) THEN
1236: fnd_message.set_name('PN', 'PN_LEASE_TENANCY_EST_DT_NULL');
1237: x_return_status := 'E';
1246: x_return_status := 'E';
1247: END IF;
1248:
1249:
1250: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CHECK_TENANCY_DATES (-)');
1251: END check_tenancy_dates;
1252:
1253: -------------------------------------------------------------------------------
1254: -- FUNCTION : get_loc_type_code
1274: l_location_code pn_locations_all.location_code%TYPE;
1275: l_loc_type_code pn_locations_all.location_type_lookup_code%TYPE;
1276:
1277: BEGIN
1278: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_LOC_TYPE_CODE (+)');
1279:
1280: OPEN get_location_type_csr;
1281: FETCH get_location_type_csr INTO l_location_code, l_loc_type_code;
1282: CLOSE get_location_type_csr;
1280: OPEN get_location_type_csr;
1281: FETCH get_location_type_csr INTO l_location_code, l_loc_type_code;
1282: CLOSE get_location_type_csr;
1283:
1284: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_LOC_TYPE_CODE (-) Loc_Type_Code: '||l_loc_type_code);
1285:
1286: RETURN l_loc_type_code;
1287:
1288: END get_loc_type_code;
1406: l_prior_assignable_area pn_locations_all.assignable_area%TYPE:=0;
1407: i NUMBER := 0;
1408:
1409: BEGIN
1410: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_LOC_INFO (+)');
1411:
1412: loc_info_tbl.delete;
1413:
1414: FOR rec_loc_info IN csr_loc_info
1431: END IF;
1432: l_prior_assignable_area := rec_loc_info.assignable_area;
1433:
1434: END LOOP;
1435: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_LOC_INFO (-)');
1436:
1437: EXCEPTION
1438: WHEN OTHERS THEN
1439: pnp_debug_pkg.log('Get_loc_info - Errmsg: ' || sqlerrm);
1435: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_LOC_INFO (-)');
1436:
1437: EXCEPTION
1438: WHEN OTHERS THEN
1439: pnp_debug_pkg.log('Get_loc_info - Errmsg: ' || sqlerrm);
1440: RAISE;
1441:
1442: END get_loc_info;
1443:
1456: IS
1457: i NUMBER := 0;
1458: l_min_area NUMBER := -1;
1459: BEGIN
1460: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_ALLOCATED_AREA_PCT (+)');
1461:
1462: p_alloc_area_pct := -1;
1463: FOR i IN 0 .. loc_info_tbl.count-1
1464: LOOP
1482: IF p_alloc_area_pct < 0 THEN
1483: p_alloc_area_pct := ROUND(((p_allocated_area * 100 )/l_min_area),2);
1484: END IF;
1485:
1486: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_ALLOCATED_AREA_PCT (-)');
1487: END get_allocated_area_pct;
1488:
1489: -------------------------------------------------------------------
1490: -- PROCEDURE : POPULATE_SPACE_ASSIGN_INFO
1538: i NUMBER := 0;
1539: j NUMBER := 0;
1540:
1541: BEGIN
1542: pnp_debug_pkg.debug('PN_TENANCIES_PKG.POPULATE_SPACE_ASSIGN_INFO (+)');
1543:
1544: get_loc_info(p_location_id => p_location_id,
1545: p_from_date => p_from_date,
1546: p_to_date => p_to_date,
1620: space_assign_info_tbl(j).allocated_area_pct := NULL;
1621: END IF;
1622: p_loc_type_code := l_loc_type_code; -- 3242535
1623:
1624: pnp_debug_pkg.debug('PN_TENANCIES_PKG.POPULATE_SPACE_ASSIGN_INFO (-)');
1625: EXCEPTION
1626: WHEN OTHERS THEN
1627: pnp_debug_pkg.log('Populate_space_assign_info - Errmsg: ' || sqlerrm);
1628: RAISE;
1623:
1624: pnp_debug_pkg.debug('PN_TENANCIES_PKG.POPULATE_SPACE_ASSIGN_INFO (-)');
1625: EXCEPTION
1626: WHEN OTHERS THEN
1627: pnp_debug_pkg.log('Populate_space_assign_info - Errmsg: ' || sqlerrm);
1628: RAISE;
1629:
1630: END populate_space_assign_info;
1631:
1662: l_rowid ROWID := NULL;
1663: l_cust_space_assign_id NUMBER := NULL;
1664: i NUMBER := 0;
1665: BEGIN
1666: pnp_debug_pkg.debug('PN_TENANCIES_PKG.INSERT_SPACE_ASSIGN_ROW (+)');
1667:
1668: i := 0;
1669: FOR i IN 0 .. p_space_assign_info_tbl.count-1
1670: LOOP
1720: l_rowid := NULL;
1721: l_cust_space_assign_id := NULL;
1722: END LOOP;
1723:
1724: pnp_debug_pkg.debug('PN_TENANCIES_PKG.INSERT_SPACE_ASSIGN_ROW (-)');
1725: END insert_space_assign_row;
1726:
1727: -------------------------------------------------------------------
1728: -- PROCEDURE : GET_ALLOCATED_AREA
1739: IS
1740: i NUMBER := 0;
1741: l_min_area NUMBER := -1;
1742: BEGIN
1743: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_ALLOCATED_AREA (+)');
1744:
1745: p_allocated_area := -1;
1746: FOR i IN 0 .. loc_info_tbl.count-1
1747: LOOP
1759: END LOOP;
1760: IF p_allocated_area < 0 THEN
1761: p_allocated_area := ROUND(((p_allocated_area_pct * l_min_area)/100),2);
1762: END IF;
1763: pnp_debug_pkg.debug('PN_TENANCIES_PKG.GET_ALLOCATED_AREA (-)');
1764: END get_allocated_area;
1765:
1766: -------------------------------------------------------------------
1767: -- PROCEDURE : Manual_space_assign
1788: i NUMBER := 0;
1789: j NUMBER := 0;
1790:
1791: BEGIN
1792: pnp_debug_pkg.debug('PN_TENANCIES_PKG.MANUAL_SPACE_ASSIGN (+)');
1793:
1794: get_loc_info(p_location_id => p_location_id,
1795: p_from_date => p_from_date,
1796: p_to_date => p_to_date,
1848: space_assign_info_tbl(j).allocated_area_pct := NULL;
1849: END IF;
1850: p_loc_type_code := l_loc_type_code;
1851:
1852: pnp_debug_pkg.debug('PN_TENANCIES_PKG.MANUAL_SPACE_ASSIGN (-)');
1853: EXCEPTION
1854: WHEN OTHERS THEN
1855: pnp_debug_pkg.log('Manual_space_assign - Errmsg: ' || sqlerrm);
1856: RAISE;
1851:
1852: pnp_debug_pkg.debug('PN_TENANCIES_PKG.MANUAL_SPACE_ASSIGN (-)');
1853: EXCEPTION
1854: WHEN OTHERS THEN
1855: pnp_debug_pkg.log('Manual_space_assign - Errmsg: ' || sqlerrm);
1856: RAISE;
1857:
1858: END manual_space_assign;
1859:
1939: l_org_id NUMBER;
1940:
1941:
1942: BEGIN
1943: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CHK_MULTI_TENANCY_PROFILE (+)');
1944:
1945: FOR rec IN org_cur LOOP
1946: l_org_id := rec.org_id;
1947: END LOOP;
1998:
1999: END IF;
2000: p_loc_type_code := l_loc_type_code; -- 3242535
2001:
2002: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CHK_MULTI_TENANCY_PROFILE (-)');
2003: END chk_multi_tenancy_profile;
2004:
2005: -------------------------------------------------------------------------------
2006: -- PROCEDURE : CREATE_AUTO_SPACE_ASSIGN
2057: l_org_id := rec.org_id;
2058: END LOOP;
2059:
2060: l_auto_space_dist := NVL(pn_mo_cache_utils.get_profile_value('PN_AUTOMATIC_SPACE_DISTRIBUTION',l_org_id),'N');
2061: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CREATE_AUTO_SPACE_ASSIGN (+) Auto_Space_Dist: '
2062: ||l_auto_space_dist);
2063:
2064: IF p_customer_id IS NULL THEN
2065: RETURN;
2139: p_end_date => p_cust_assign_end_dt);
2140:
2141: END IF;
2142:
2143: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CREATE_AUTO_SPACE_ASSIGN (-)');
2144: EXCEPTION
2145: WHEN OTHERS THEN
2146: p_msg := sqlerrm;
2147: pnp_debug_pkg.log('Create_auto_space_assign - Errmsg: ' || p_msg);
2143: pnp_debug_pkg.debug('PN_TENANCIES_PKG.CREATE_AUTO_SPACE_ASSIGN (-)');
2144: EXCEPTION
2145: WHEN OTHERS THEN
2146: p_msg := sqlerrm;
2147: pnp_debug_pkg.log('Create_auto_space_assign - Errmsg: ' || p_msg);
2148: RAISE;
2149:
2150: END create_auto_space_assign;
2151:
2190: l_org_id := rec.org_id;
2191: END LOOP;
2192:
2193: l_auto_space_dist := NVL(pn_mo_cache_utils.get_profile_value('PN_AUTOMATIC_SPACE_DISTRIBUTION',l_org_id),'N');
2194: pnp_debug_pkg.debug('PN_TENANCIES_PKG.DELETE_AUTO_SPACE_ASSIGN (+) Auto_Space_Dist: '
2195: ||l_auto_space_dist||', TenancyId: '||p_tenancy_id);
2196:
2197: DELETE FROM pn_rec_expcl_dtlln_all
2198: WHERE cust_space_assign_id IN (SELECT cust_space_assign_id
2225: IF l_count > 0 THEN
2226: p_action := 'R';
2227: END IF;
2228:
2229: pnp_debug_pkg.debug('PN_TENANCIES_PKG.DELETE_AUTO_SPACE_ASSIGN (-) Deleted '||l_del_count||
2230: ' Space Assgn Rows');
2231: EXCEPTION
2232: WHEN OTHERS THEN
2233: pnp_debug_pkg.log('Delete_auto_space_assign - Errmsg: ' || sqlerrm);
2229: pnp_debug_pkg.debug('PN_TENANCIES_PKG.DELETE_AUTO_SPACE_ASSIGN (-) Deleted '||l_del_count||
2230: ' Space Assgn Rows');
2231: EXCEPTION
2232: WHEN OTHERS THEN
2233: pnp_debug_pkg.log('Delete_auto_space_assign - Errmsg: ' || sqlerrm);
2234: RAISE;
2235: END delete_auto_space_assign;
2236:
2237: --------------------------------------------------------------------------------
2352: l_org_id := rec.org_id;
2353: END LOOP;
2354:
2355: l_auto_space_dist := NVL(pn_mo_cache_utils.get_profile_value('PN_AUTOMATIC_SPACE_DISTRIBUTION',l_org_id),'N');
2356: pnp_debug_pkg.debug('PN_TENANCIES_PKG.UPDATE_AUTO_SPACE_ASSIGN (+) Auto_Space_Dist: '
2357: ||l_auto_space_dist);
2358: p_action := NULL;
2359:
2360: OPEN csr_spc_assign_exists;
2390: -- with the new location.
2391: ----------------------------------------------------------------------------------------
2392: ELSIF (p_location_id <> p_location_id_old) THEN
2393:
2394: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 1: Location is changed.');
2395: ---------------------------------------------------------------------------------
2396: -- Check if the assignment is associated with a locked Area or Expense Class in
2397: -- Recoveries. If yes then Stop.
2398: ---------------------------------------------------------------------------------
2462: IF (p_cust_assign_start_dt <> p_cust_assign_start_dt_old) OR
2463: (p_cust_assign_end_dt <> p_cust_assign_end_dt_old)
2464: THEN
2465:
2466: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 2: Tenancy start/end dates are changed.');
2467: ---------------------------------------------------------------------------------
2468: -- Check if the assignment is associated with a any Area or Expense Class in
2469: -- Recoveries. If yes then need to show message to regenerate Area/Expense class.
2470: ---------------------------------------------------------------------------------
2482: -- Recoveries, remove all the assignments prior to new tenancy start date.
2483: ---------------------------------------------------------------------------------
2484: IF p_cust_assign_start_dt > p_cust_assign_start_dt_old THEN
2485:
2486: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 2: 1. Tenancy Start date brought in.');
2487:
2488: IF cust_assign_assoc_exp_area_dt(
2489: p_tenancy_id => p_tenancy_id
2490: ,p_chk_locked => TRUE
2500: WHERE tenancy_id = p_tenancy_id
2501: AND cust_assign_end_date < p_cust_assign_start_dt;
2502: l_count := 0;
2503: l_count := SQL%ROWCOUNT;
2504: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 2: 1. Rows Deleted: '||l_count);
2505:
2506: UPDATE pn_space_assign_cust_all
2507: SET cust_assign_start_date = p_cust_assign_start_dt
2508: ,last_update_date = SYSDATE
2511: AND cust_assign_start_date < p_cust_assign_start_dt
2512: AND cust_assign_end_date >= p_cust_assign_start_dt;
2513: l_count := 0;
2514: l_count := SQL%ROWCOUNT;
2515: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 2: 1. Rows Updated: '||l_count);
2516:
2517: END IF;
2518:
2519: ---------------------------------------------------------------------------------
2531: -- Note: Update the fin_oblig_end_date for the last assignment.
2532: ---------------------------------------------------------------------------------
2533: IF p_cust_assign_end_dt < p_cust_assign_end_dt_old THEN
2534:
2535: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 2: 3. Tenancy End date brought in.');
2536:
2537: IF cust_assign_assoc_exp_area_dt(
2538: p_tenancy_id => p_tenancy_id
2539: ,p_chk_locked => TRUE
2549: WHERE tenancy_id = p_tenancy_id
2550: AND cust_assign_start_date > p_cust_assign_end_dt;
2551: l_count := 0;
2552: l_count := SQL%ROWCOUNT;
2553: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 2: 3. Rows Deleted: '||l_count);
2554:
2555: UPDATE pn_space_assign_cust_all
2556: SET cust_assign_end_date = p_cust_assign_end_dt
2557: ,fin_oblig_end_date = p_fin_oblig_end_date
2561: AND cust_assign_start_date <= p_cust_assign_end_dt
2562: AND cust_assign_end_date > p_cust_assign_end_dt;
2563: l_count := 0;
2564: l_count := SQL%ROWCOUNT;
2565: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 2: 3. Rows Updated: '||l_count);
2566:
2567: END IF;
2568:
2569: ---------------------------------------------------------------------------------
2579: -- 4. Tenancy End date expanded out: Need to extend the last assignment.
2580: ---------------------------------------------------------------------------------
2581: IF l_extend_assgn THEN
2582:
2583: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 2: 2/4. Tenancy Start/End'
2584: ||' expanded out.');
2585: ---------------------------------------------------------------------------------
2586: -- Initialize the PL/SQL table space_assign_tbl.
2587: ---------------------------------------------------------------------------------
2641: IF l_min_cust_start_date = space_assign_info_tbl(i).cust_assign_end_date+1 AND
2642: l_allocated_area = space_assign_info_tbl(i).allocated_area
2643: THEN
2644:
2645: pnp_debug_pkg.debug(' Case: 2. Update Space Assgn... i: '||i
2646: ||', start_date: '||space_assign_info_tbl(i).cust_assign_start_date
2647: ||', end_date: '||space_assign_info_tbl(i).cust_assign_end_date
2648: ||', area: '||space_assign_info_tbl(i).allocated_area
2649: ||',');
2652: SET cust_assign_start_date = space_assign_info_tbl(i).cust_assign_start_date
2653: WHERE cust_space_assign_id = l_min_cust_assign_id;
2654: ELSE
2655:
2656: pnp_debug_pkg.debug(' Case: 2. Create Space Assgn... i: '||i
2657: ||', start_date: '||space_assign_info_tbl(i).cust_assign_start_date
2658: ||', end_date: '||space_assign_info_tbl(i).cust_assign_end_date
2659: ||', area: '||space_assign_info_tbl(i).allocated_area
2660: ||',');
2672: j := j + 1;
2673: END IF;
2674:
2675: ELSE
2676: pnp_debug_pkg.debug(' Case: 2. no space assgn... i: '||i
2677: ||', start_date: '||space_assign_info_tbl(i).cust_assign_start_date
2678: ||', end_date: '||space_assign_info_tbl(i).cust_assign_end_date
2679: ||', area: '||space_assign_info_tbl(i).allocated_area
2680: ||',');
2695: l_max_cust_end_date,
2696: l_allocated_area;
2697: CLOSE csr_max_cust_assign;
2698:
2699: pnp_debug_pkg.debug('Case: 4. Tenancy End expanded out. '
2700: ||', l_max_assign_id: '||l_max_cust_assign_id
2701: ||', l_max_start_date: '||l_max_cust_start_date
2702: ||', l_max_end_date: '||l_max_cust_end_date
2703: ||', l_area: '||l_allocated_area
2714: space_assign_info_tbl(i).cust_assign_start_date AND
2715: l_allocated_area = space_assign_info_tbl(i).allocated_area
2716: THEN
2717:
2718: pnp_debug_pkg.debug(' Case: 4. Update Space Assgn... i: '||i
2719: ||', start_date: '||space_assign_info_tbl(i).cust_assign_start_date
2720: ||', end_date: '||space_assign_info_tbl(i).cust_assign_end_date
2721: ||', area: '||space_assign_info_tbl(i).allocated_area
2722: ||',');
2736: WHERE cust_space_assign_id = l_max_cust_assign_id;
2737:
2738: ELSE
2739:
2740: pnp_debug_pkg.debug(' Case: 4. Create Space Assgn... i: '||i
2741: ||', start_date: '||space_assign_info_tbl(i).cust_assign_start_date
2742: ||', end_date: '||space_assign_info_tbl(i).cust_assign_end_date
2743: ||', area: '||space_assign_info_tbl(i).allocated_area
2744: ||',');
2768:
2769: END IF;
2770:
2771: ELSE
2772: pnp_debug_pkg.debug(' Case: 4. no space assgn... i: '||i
2773: ||', start_date: '||space_assign_info_tbl(i).cust_assign_start_date
2774: ||', end_date: '||space_assign_info_tbl(i).cust_assign_end_date
2775: ||', area: '||space_assign_info_tbl(i).allocated_area
2776: ||',');
2819: ----------------------------------------------------------------------------------------
2820: IF (NVL(p_fin_oblig_end_date, l_StartOfTime) <>
2821: NVL(p_fin_oblig_end_date_old, l_StartOfTime)) THEN
2822:
2823: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 3: fin_oblig_end_date is changed.');
2824:
2825: IF p_fin_oblig_end_date_old IS NOT NULL THEN
2826: UPDATE pn_space_assign_cust_all
2827: SET fin_oblig_end_date = p_fin_oblig_end_date
2855: (NVL(p_recovery_type_code, ' ') <>
2856: NVL(p_recovery_type_code_old, ' '))
2857: THEN
2858:
2859: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 4: customer_id/cust_site_use_id/'
2860: ||'space_std/recovery_type is changed.');
2861:
2862: /*IF (NVL(p_customer_id, -99) <> NVL(p_customer_id_old, -99)) THEN
2863:
2892: -- Update all space assignment records with new value for that tenanct_id.
2893: ----------------------------------------------------------------------------------------
2894: IF (nvl(p_allocated_pct,-1) <> nvl(p_allocated_pct_old,-1)) THEN
2895:
2896: pnp_debug_pkg.debug('Update_Auto_Space_Assign : Check# 5: allocated_area_pct is changed.');
2897:
2898: IF p_allocated_pct IS NOT NULL THEN
2899: FOR rec_alloc_area IN cur_alloc_area LOOP
2900: l_cust_assign_start_date := rec_alloc_area.cust_assign_start_date;
2918: END IF;
2919:
2920: END IF;
2921:
2922: pnp_debug_pkg.debug('l_auto_space_dist: '||l_auto_space_dist||', l_loc_type_code: '||l_loc_type_code);
2923: IF l_loc_type_code IS NULL THEN
2924: l_loc_type_code := get_loc_type_code(p_location_id, p_cust_assign_start_dt);
2925: END IF;
2926:
2935: p_end_date => p_cust_assign_end_dt);
2936:
2937: END IF;
2938:
2939: pnp_debug_pkg.debug('PN_TENANCIES_PKG.UPDATE_AUTO_SPACE_ASSIGN (-)');
2940: EXCEPTION
2941: WHEN OTHERS THEN
2942: pnp_debug_pkg.log('Update_auto_space_assign - Errmsg: ' || sqlerrm);
2943: RAISE;
2938:
2939: pnp_debug_pkg.debug('PN_TENANCIES_PKG.UPDATE_AUTO_SPACE_ASSIGN (-)');
2940: EXCEPTION
2941: WHEN OTHERS THEN
2942: pnp_debug_pkg.log('Update_auto_space_assign - Errmsg: ' || sqlerrm);
2943: RAISE;
2944: END update_auto_space_assign;
2945:
2946:
3007: l_org_id := rec.org_id;
3008: END LOOP;
3009:
3010: l_auto_space_dist := NVL(pn_mo_cache_utils.get_profile_value('PN_AUTOMATIC_SPACE_DISTRIBUTION',l_org_id),'N');
3011: pnp_debug_pkg.debug('PN_TENANCIES_PKG.UPDATE_DUP_SPACE_ASSIGN (+) Auto_Space_Dist: '
3012: ||l_auto_space_dist);
3013: p_action := NULL;
3014:
3015: OPEN get_cust_space_assign_id;
3064:
3065:
3066: END IF;
3067:
3068: pnp_debug_pkg.debug('PN_TENANCIES_PKG.UPDATE_DUP_SPACE_ASSIGN (-)');
3069:
3070: END Update_Dup_Space_Assign;
3071:
3072: -------------------------------------------------------------------------------
3098: WHERE leases.lease_id = tenant.lease_id
3099: AND tenant.tenancy_id = p_tenancy_id;
3100:
3101: BEGIN
3102: pnp_debug_pkg.debug('PN_TENANCIES_PKG.Auto_Allocated_Area_Pct (+)');
3103:
3104: --
3105: FOR rec_allocated_area_pct IN cur_allocated_area_pct LOOP
3106: l_allocated_area_pct := rec_allocated_area_pct.min_area_pct;
3114: IF l_lease_class_code = 'DIRECT' THEN
3115: l_allocated_area_pct := NULL;
3116: END IF;
3117:
3118: pnp_debug_pkg.debug('PN_TENANCIES_PKG.Auto_Allocated_Area_Pct (-)');
3119:
3120: RETURN l_allocated_area_pct;
3121:
3122: END Auto_Allocated_Area_Pct;
3151: AND tenant.tenancy_id = p_tenancy_id;
3152:
3153:
3154: BEGIN
3155: pnp_debug_pkg.debug('PN_TENANCIES_PKG.Auto_Allocated_Area (+)');
3156:
3157: --
3158: FOR rec_allocated_area IN cur_allocated_area LOOP
3159: l_allocated_area := rec_allocated_area.min_area;
3167: IF l_lease_class_code = 'DIRECT' THEN
3168: l_allocated_area := NULL;
3169: END IF;
3170:
3171: pnp_debug_pkg.debug('PN_TENANCIES_PKG.Auto_Allocated_Area (-)');
3172:
3173: RETURN l_allocated_area;
3174:
3175: END Auto_Allocated_Area;
3213: i NUMBER := 0;
3214: j NUMBER := 0;
3215:
3216: BEGIN
3217: pnp_debug_pkg.debug('PN_TENANCIES_PKG.Availaible_Space (+)');
3218:
3219: get_loc_info(p_location_id => p_location_id,
3220: p_from_date => p_from_date,
3221: p_to_date => p_to_date,
3271: p_alloc_area_pct => p_min_pct);
3272:
3273: END IF;
3274:
3275: pnp_debug_pkg.debug('PN_TENANCIES_PKG.Availaible_Space (-)');
3276: EXCEPTION
3277: WHEN OTHERS THEN
3278: pnp_debug_pkg.log('Availaible_Space - Errmsg: ' || sqlerrm);
3279: RAISE;
3274:
3275: pnp_debug_pkg.debug('PN_TENANCIES_PKG.Availaible_Space (-)');
3276: EXCEPTION
3277: WHEN OTHERS THEN
3278: pnp_debug_pkg.log('Availaible_Space - Errmsg: ' || sqlerrm);
3279: RAISE;
3280:
3281: END Availaible_Space;
3282: