[Home] [Help]
322: CURSOR is_earliest_period_c( c_hierarchy_id NUMBER,
323: c_entity_id NUMBER,
324: c_currency_code VARCHAR2) IS
325: SELECT decode(earliest_ever_period_id, p_cal_period_id, 'Y', 'N')
326: FROM gcs_translation_track_h
327: WHERE hierarchy_id = c_hierarchy_id
328: AND entity_id = c_entity_id
329: AND currency_code = c_currency_code
330: AND dataset_code = p_hier_dataset_code;
659:
660: write_to_log(module, FND_LOG.LEVEL_STATEMENT,
661: 'SELECT decode(earliest_ever_period_id, ' || p_cal_period_id ||
662: ', ''Y'', ''N'')' || g_nl ||
663: 'FROM gcs_translation_track_h' || g_nl ||
664: 'WHERE cons_relationship_id = ' || p_cons_relationship_id || g_nl ||
665: 'AND dataset_code = ' || p_hier_dataset_code);
666:
667: -- Check if this is the first ever translated period. If so, this program
2162: -- Check the translation tracking information for an entity
2163: CURSOR tracking_check_c IS
2164: SELECT earliest_ever_period_id,
2165: earliest_never_period_id
2166: FROM gcs_translation_track_h
2167: WHERE hierarchy_id = p_hierarchy_id
2168: AND entity_id = p_entity_id
2169: AND currency_code = p_currency_code
2170: AND dataset_code = p_hier_dataset_code;
2213: OPEN tracking_check_c;
2214: FETCH tracking_check_c INTO earliest_period_id, never_period_id;
2215: IF tracking_check_c%NOTFOUND THEN
2216: CLOSE tracking_check_c;
2217: INSERT INTO gcs_translation_track_h(
2218: hierarchy_id, entity_id, currency_code, dataset_code,
2219: earliest_ever_period_id, earliest_never_period_id, created_by,
2220: creation_date, last_updated_by, last_update_date, last_update_login)
2221: VALUES(
2234: -- forward to the appropriate spot.
2235: IF p_cal_period_year < earliest_period_info.cal_period_year OR
2236: (p_cal_period_year = earliest_period_info.cal_period_year AND
2237: p_cal_period_number < earliest_period_info.cal_period_number) THEN
2238: UPDATE gcs_translation_track_h
2239: SET earliest_ever_period_id = p_cal_period_id
2240: WHERE hierarchy_id = p_hierarchy_id
2241: AND entity_id = p_entity_id
2242: AND currency_code = p_currency_code
2245: -- Now, if the period after the period just translated is not the
2246: -- previous first-ever translated period,then update the earliest-
2247: -- never period accordingly
2248: IF p_next_cal_period_id <> earliest_period_info.cal_period_id THEN
2249: UPDATE gcs_translation_track_h
2250: SET earliest_never_period_id = p_next_cal_period_id
2251: WHERE hierarchy_id = p_hierarchy_id
2252: AND entity_id = p_entity_id
2253: AND currency_code = p_currency_code
2268: CLOSE status_check_c;
2269:
2270: IF next_period_id <> -1 THEN
2271: -- Now we have found the next period that has not been translated
2272: UPDATE gcs_translation_track_h
2273: SET earliest_never_period_id = next_period_id
2274: WHERE hierarchy_id = p_hierarchy_id
2275: AND entity_id = p_entity_id
2276: AND currency_code = p_currency_code
2514: p_specific_interco_id => specific_interco_id,
2515: p_entry_id => p_new_entry_id);
2516: END IF;
2517:
2518: -- Create or update rows in the gcs_translation_track_h and
2519: -- gcs_translation_statuses tables
2520: update_status_tracking(
2521: p_hierarchy_id => hierarchy_id,
2522: p_entity_id => child_entity_id,