271:
272: pa_debug.debug('Purging Interface Tables For OADW ' || x_table_name);
273:
274: -- prepare a cursor to delete from the source table
275: source_cursor := dbms_sql.open_cursor;
276: sql_command :=
277: 'DELETE FROM '|| x_table_name
278: || ' WHERE WH_UPDATE_DATE <= :x_wh_update_date';
279: dbms_sql.parse(source_cursor,sql_command,dbms_sql.native);
275: source_cursor := dbms_sql.open_cursor;
276: sql_command :=
277: 'DELETE FROM '|| x_table_name
278: || ' WHERE WH_UPDATE_DATE <= :x_wh_update_date';
279: dbms_sql.parse(source_cursor,sql_command,dbms_sql.native);
280: dbms_sql.bind_variable(source_cursor, 'x_wh_update_date', x_wh_update_date);
281: rows_deleted := dbms_sql.execute(source_cursor);
282: pa_debug.debug('Rows deleted:= ' || to_char(rows_deleted));
283: dbms_sql.close_cursor(source_cursor);
276: sql_command :=
277: 'DELETE FROM '|| x_table_name
278: || ' WHERE WH_UPDATE_DATE <= :x_wh_update_date';
279: dbms_sql.parse(source_cursor,sql_command,dbms_sql.native);
280: dbms_sql.bind_variable(source_cursor, 'x_wh_update_date', x_wh_update_date);
281: rows_deleted := dbms_sql.execute(source_cursor);
282: pa_debug.debug('Rows deleted:= ' || to_char(rows_deleted));
283: dbms_sql.close_cursor(source_cursor);
284: EXCEPTION
277: 'DELETE FROM '|| x_table_name
278: || ' WHERE WH_UPDATE_DATE <= :x_wh_update_date';
279: dbms_sql.parse(source_cursor,sql_command,dbms_sql.native);
280: dbms_sql.bind_variable(source_cursor, 'x_wh_update_date', x_wh_update_date);
281: rows_deleted := dbms_sql.execute(source_cursor);
282: pa_debug.debug('Rows deleted:= ' || to_char(rows_deleted));
283: dbms_sql.close_cursor(source_cursor);
284: EXCEPTION
285: WHEN OTHERS THEN
279: dbms_sql.parse(source_cursor,sql_command,dbms_sql.native);
280: dbms_sql.bind_variable(source_cursor, 'x_wh_update_date', x_wh_update_date);
281: rows_deleted := dbms_sql.execute(source_cursor);
282: pa_debug.debug('Rows deleted:= ' || to_char(rows_deleted));
283: dbms_sql.close_cursor(source_cursor);
284: EXCEPTION
285: WHEN OTHERS THEN
286: IF dbms_sql.is_open(source_cursor) THEN
287: dbms_sql.close_cursor(source_cursor);
282: pa_debug.debug('Rows deleted:= ' || to_char(rows_deleted));
283: dbms_sql.close_cursor(source_cursor);
284: EXCEPTION
285: WHEN OTHERS THEN
286: IF dbms_sql.is_open(source_cursor) THEN
287: dbms_sql.close_cursor(source_cursor);
288: END IF;
289: RAISE;
290: END purge_it_OADW;
283: dbms_sql.close_cursor(source_cursor);
284: EXCEPTION
285: WHEN OTHERS THEN
286: IF dbms_sql.is_open(source_cursor) THEN
287: dbms_sql.close_cursor(source_cursor);
288: END IF;
289: RAISE;
290: END purge_it_OADW;
291:
318: /* Get the Warehouse Update DATE */
319: /* Get the warehouse update date using a dynamic SQL, since
320: WH_RT_VERSIONS_V2 is available in the OADW Warehouse Database */
321:
322: oadw_wh_cursor := dbms_sql.open_cursor;
323: dbms_sql.parse(oadw_wh_cursor,
324: 'SELECT earliest_collect_time FROM wh_rt_versions_v2@PA_TO_WH',dbms_sql.native);
325: dbms_sql.define_column(oadw_wh_cursor, 1, earliest_collect_time);
326: rows_processed := dbms_sql.execute(oadw_wh_cursor);
319: /* Get the warehouse update date using a dynamic SQL, since
320: WH_RT_VERSIONS_V2 is available in the OADW Warehouse Database */
321:
322: oadw_wh_cursor := dbms_sql.open_cursor;
323: dbms_sql.parse(oadw_wh_cursor,
324: 'SELECT earliest_collect_time FROM wh_rt_versions_v2@PA_TO_WH',dbms_sql.native);
325: dbms_sql.define_column(oadw_wh_cursor, 1, earliest_collect_time);
326: rows_processed := dbms_sql.execute(oadw_wh_cursor);
327:
320: WH_RT_VERSIONS_V2 is available in the OADW Warehouse Database */
321:
322: oadw_wh_cursor := dbms_sql.open_cursor;
323: dbms_sql.parse(oadw_wh_cursor,
324: 'SELECT earliest_collect_time FROM wh_rt_versions_v2@PA_TO_WH',dbms_sql.native);
325: dbms_sql.define_column(oadw_wh_cursor, 1, earliest_collect_time);
326: rows_processed := dbms_sql.execute(oadw_wh_cursor);
327:
328: if ( dbms_sql.fetch_rows(oadw_wh_cursor) > 0 ) then
321:
322: oadw_wh_cursor := dbms_sql.open_cursor;
323: dbms_sql.parse(oadw_wh_cursor,
324: 'SELECT earliest_collect_time FROM wh_rt_versions_v2@PA_TO_WH',dbms_sql.native);
325: dbms_sql.define_column(oadw_wh_cursor, 1, earliest_collect_time);
326: rows_processed := dbms_sql.execute(oadw_wh_cursor);
327:
328: if ( dbms_sql.fetch_rows(oadw_wh_cursor) > 0 ) then
329: dbms_sql.column_value(oadw_wh_cursor, 1, earliest_collect_time);
322: oadw_wh_cursor := dbms_sql.open_cursor;
323: dbms_sql.parse(oadw_wh_cursor,
324: 'SELECT earliest_collect_time FROM wh_rt_versions_v2@PA_TO_WH',dbms_sql.native);
325: dbms_sql.define_column(oadw_wh_cursor, 1, earliest_collect_time);
326: rows_processed := dbms_sql.execute(oadw_wh_cursor);
327:
328: if ( dbms_sql.fetch_rows(oadw_wh_cursor) > 0 ) then
329: dbms_sql.column_value(oadw_wh_cursor, 1, earliest_collect_time);
330: end if;
324: 'SELECT earliest_collect_time FROM wh_rt_versions_v2@PA_TO_WH',dbms_sql.native);
325: dbms_sql.define_column(oadw_wh_cursor, 1, earliest_collect_time);
326: rows_processed := dbms_sql.execute(oadw_wh_cursor);
327:
328: if ( dbms_sql.fetch_rows(oadw_wh_cursor) > 0 ) then
329: dbms_sql.column_value(oadw_wh_cursor, 1, earliest_collect_time);
330: end if;
331: dbms_sql.close_cursor(oadw_wh_cursor);
332:
325: dbms_sql.define_column(oadw_wh_cursor, 1, earliest_collect_time);
326: rows_processed := dbms_sql.execute(oadw_wh_cursor);
327:
328: if ( dbms_sql.fetch_rows(oadw_wh_cursor) > 0 ) then
329: dbms_sql.column_value(oadw_wh_cursor, 1, earliest_collect_time);
330: end if;
331: dbms_sql.close_cursor(oadw_wh_cursor);
332:
333: IF (earliest_collect_time IS NOT NULL) THEN
327:
328: if ( dbms_sql.fetch_rows(oadw_wh_cursor) > 0 ) then
329: dbms_sql.column_value(oadw_wh_cursor, 1, earliest_collect_time);
330: end if;
331: dbms_sql.close_cursor(oadw_wh_cursor);
332:
333: IF (earliest_collect_time IS NOT NULL) THEN
334: /* Purge Interface table */
335: /* Project Dimension */
396: x_err_stack := x_old_err_stack;
397:
398: EXCEPTION
399: WHEN OTHERS THEN
400: IF dbms_sql.is_open(oadw_wh_cursor) THEN
401: dbms_sql.close_cursor(oadw_wh_cursor);
402: END IF;
403: x_err_code := SQLCODE;
404: RAISE;
397:
398: EXCEPTION
399: WHEN OTHERS THEN
400: IF dbms_sql.is_open(oadw_wh_cursor) THEN
401: dbms_sql.close_cursor(oadw_wh_cursor);
402: END IF;
403: x_err_code := SQLCODE;
404: RAISE;
405: END purge_interface_tables_OADW;