[Home] [Help]
2468:
2469:
2470:
2471: -- check for the uniqueness
2472: /*SELECT count(*) INTO l_count from hz_geography_ranges
2473: WHERE geography_id = p_geography_range_rec.zone_id
2474: AND geography_from = p_geography_range_rec.geography_from
2475: AND to_char(start_date,'DD-MON-YYYY') = to_char(p_geography_range_rec.start_date,'DD_MON-YYYY');
2476:
2501: SELECT geography_use INTO l_geography_use
2502: FROM hz_geography_types_b
2503: WHERE geography_type=l_zone_type;
2504:
2505: hz_geography_ranges_pkg.insert_row (
2506: x_rowid => l_rowid,
2507: x_geography_id => p_geography_range_rec.zone_id,
2508: x_geography_from => p_geography_range_rec.geography_from,
2509: x_start_date => p_geography_range_rec.start_date,
2578: -- check if the row exists
2579: BEGIN
2580:
2581: SELECT rowid,start_date,end_date,object_version_number INTO l_rowid,l_start_date,l_end_date,l_object_version_number
2582: FROM hz_geography_ranges
2583: WHERE geography_id = p_geography_id
2584: AND geography_from = p_geography_from
2585: AND start_date = p_start_date
2586: FOR UPDATE OF geography_id,geography_from,start_date NOWAIT;
2587:
2588: --validate object_version_number
2589: IF l_object_version_number <> p_object_version_number THEN
2590: FND_MESSAGE.SET_NAME('AR', 'HZ_API_RECORD_CHANGED');
2591: FND_MESSAGE.SET_TOKEN('TABLE', 'hz_geography_ranges');
2592: FND_MSG_PUB.ADD;
2593: RAISE FND_API.G_EXC_ERROR;
2594: ELSE
2595: p_object_version_number := l_object_version_number + 1;
2620: RAISE FND_API.G_EXC_ERROR;
2621: END IF;
2622:
2623: -- call table handler to update the row
2624: HZ_GEOGRAPHY_RANGES_PKG.update_row(
2625: x_rowid => l_rowid,
2626: x_geography_id => p_geography_id,
2627: x_geography_from => p_geography_from,
2628: x_start_date => p_start_date,
4033: WHEN DUP_VAL_ON_INDEX THEN
4034: ROLLBACK TO create_geography_range;
4035: x_return_status := FND_API.G_RET_STS_ERROR;
4036: HZ_UTILITY_V2PUB.find_index_name(p_index_name);
4037: IF p_index_name = 'HZ_GEOGRAPHY_RANGES_U1' THEN
4038: FND_MESSAGE.SET_NAME('AR', 'HZ_API_DUPLICATE_COLUMN');
4039: FND_MESSAGE.SET_TOKEN('COLUMN', 'geography_id,geography_from and start_date');
4040: FND_MSG_PUB.ADD;
4041: END IF;