696: END IF;
697:
698: d_progress := 10;
699:
700: v_query_hdl2 := DBMS_SQL.open_cursor;
701: DBMS_SQL.parse(v_query_hdl2, p_sql_str, DBMS_SQL.native);
702: DBMS_SQL.define_column(v_query_hdl2, 1, v_attr_group_id);
703: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl2);
704: x_attr_grp_ids := PO_TBL_NUMBER();
697:
698: d_progress := 10;
699:
700: v_query_hdl2 := DBMS_SQL.open_cursor;
701: DBMS_SQL.parse(v_query_hdl2, p_sql_str, DBMS_SQL.native);
702: DBMS_SQL.define_column(v_query_hdl2, 1, v_attr_group_id);
703: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl2);
704: x_attr_grp_ids := PO_TBL_NUMBER();
705:
698: d_progress := 10;
699:
700: v_query_hdl2 := DBMS_SQL.open_cursor;
701: DBMS_SQL.parse(v_query_hdl2, p_sql_str, DBMS_SQL.native);
702: DBMS_SQL.define_column(v_query_hdl2, 1, v_attr_group_id);
703: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl2);
704: x_attr_grp_ids := PO_TBL_NUMBER();
705:
706: d_progress := 20;
699:
700: v_query_hdl2 := DBMS_SQL.open_cursor;
701: DBMS_SQL.parse(v_query_hdl2, p_sql_str, DBMS_SQL.native);
702: DBMS_SQL.define_column(v_query_hdl2, 1, v_attr_group_id);
703: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl2);
704: x_attr_grp_ids := PO_TBL_NUMBER();
705:
706: d_progress := 20;
707:
711:
712: -- Loop to fetch the PL SQL Table of attribute groups
713: LOOP
714:
715: IF DBMS_SQL.fetch_rows(v_query_hdl2) > 0 THEN
716: DBMS_SQL.column_value(v_query_hdl2, 1, v_attr_group_id);
717: v_count_attr_grp_ids := v_count_attr_grp_ids + 1;
718: x_attr_grp_ids.extend(1);
719: x_attr_grp_ids(v_count_attr_grp_ids) := v_attr_group_id;
712: -- Loop to fetch the PL SQL Table of attribute groups
713: LOOP
714:
715: IF DBMS_SQL.fetch_rows(v_query_hdl2) > 0 THEN
716: DBMS_SQL.column_value(v_query_hdl2, 1, v_attr_group_id);
717: v_count_attr_grp_ids := v_count_attr_grp_ids + 1;
718: x_attr_grp_ids.extend(1);
719: x_attr_grp_ids(v_count_attr_grp_ids) := v_attr_group_id;
720:
727: END IF;
728:
729: END LOOP;
730:
731: DBMS_SQL.CLOSE_CURSOR(v_query_hdl2);
732:
733: d_progress := 30;
734:
735: IF PO_LOG.d_stmt THEN
771: IF PO_LOG.d_stmt THEN
772: PO_LOG.stmt(d_module, d_progress, 'v_sql_pg', v_sql_pg);
773: END IF;
774:
775: v_query_hdl1 := DBMS_SQL.open_cursor;
776: DBMS_SQL.parse(v_query_hdl1, v_sql_pg, DBMS_SQL.native);
777: DBMS_SQL.define_column(v_query_hdl1, 1, v_page_id);
778: DBMS_SQL.define_column(v_query_hdl1, 2, v_page_count);
779: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl1);
772: PO_LOG.stmt(d_module, d_progress, 'v_sql_pg', v_sql_pg);
773: END IF;
774:
775: v_query_hdl1 := DBMS_SQL.open_cursor;
776: DBMS_SQL.parse(v_query_hdl1, v_sql_pg, DBMS_SQL.native);
777: DBMS_SQL.define_column(v_query_hdl1, 1, v_page_id);
778: DBMS_SQL.define_column(v_query_hdl1, 2, v_page_count);
779: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl1);
780:
773: END IF;
774:
775: v_query_hdl1 := DBMS_SQL.open_cursor;
776: DBMS_SQL.parse(v_query_hdl1, v_sql_pg, DBMS_SQL.native);
777: DBMS_SQL.define_column(v_query_hdl1, 1, v_page_id);
778: DBMS_SQL.define_column(v_query_hdl1, 2, v_page_count);
779: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl1);
780:
781: d_progress := 70;
774:
775: v_query_hdl1 := DBMS_SQL.open_cursor;
776: DBMS_SQL.parse(v_query_hdl1, v_sql_pg, DBMS_SQL.native);
777: DBMS_SQL.define_column(v_query_hdl1, 1, v_page_id);
778: DBMS_SQL.define_column(v_query_hdl1, 2, v_page_count);
779: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl1);
780:
781: d_progress := 70;
782:
775: v_query_hdl1 := DBMS_SQL.open_cursor;
776: DBMS_SQL.parse(v_query_hdl1, v_sql_pg, DBMS_SQL.native);
777: DBMS_SQL.define_column(v_query_hdl1, 1, v_page_id);
778: DBMS_SQL.define_column(v_query_hdl1, 2, v_page_count);
779: v_rows_processed := DBMS_SQL.EXECUTE(v_query_hdl1);
780:
781: d_progress := 70;
782:
783: IF PO_LOG.d_stmt THEN
786:
787: -- Loop to fetch the actual page id
788: LOOP
789:
790: IF DBMS_SQL.fetch_rows(v_query_hdl1) > 0 THEN
791: DBMS_SQL.column_value(v_query_hdl1, 1, v_page_id);
792: DBMS_SQL.column_value(v_query_hdl1, 2, v_page_count);
793: IF v_page_count = v_count_attr_grp_ids THEN
794: IF v_count_attr_grp_ids = v_page_count THEN
787: -- Loop to fetch the actual page id
788: LOOP
789:
790: IF DBMS_SQL.fetch_rows(v_query_hdl1) > 0 THEN
791: DBMS_SQL.column_value(v_query_hdl1, 1, v_page_id);
792: DBMS_SQL.column_value(v_query_hdl1, 2, v_page_count);
793: IF v_page_count = v_count_attr_grp_ids THEN
794: IF v_count_attr_grp_ids = v_page_count THEN
795: v_final_page_id := v_page_id;
788: LOOP
789:
790: IF DBMS_SQL.fetch_rows(v_query_hdl1) > 0 THEN
791: DBMS_SQL.column_value(v_query_hdl1, 1, v_page_id);
792: DBMS_SQL.column_value(v_query_hdl1, 2, v_page_count);
793: IF v_page_count = v_count_attr_grp_ids THEN
794: IF v_count_attr_grp_ids = v_page_count THEN
795: v_final_page_id := v_page_id;
796: v_count_attr_pg_ids := v_count_attr_pg_ids + 1;
800: EXIT;
801: END IF;
802:
803: END LOOP;
804: DBMS_SQL.CLOSE_CURSOR(v_query_hdl1);
805:
806: d_progress := 80;
807:
808: IF PO_LOG.d_stmt THEN