539: var_ps_node_key NUMBER;
540: var_parent_key NUMBER;
541: col_cnt INTEGER;
542: var_counter INTEGER;
543: rec_tab dbms_sql.desc_tab;
544: var_rec dbms_sql.desc_rec;
545: var_col_name VARCHAR2(255);
546: var_col_num NUMBER;
547: var_col_length NUMBER;
540: var_parent_key NUMBER;
541: col_cnt INTEGER;
542: var_counter INTEGER;
543: rec_tab dbms_sql.desc_tab;
544: var_rec dbms_sql.desc_rec;
545: var_col_name VARCHAR2(255);
546: var_col_num NUMBER;
547: var_col_length NUMBER;
548: var_rule_id NUMBER;
675: var_sql:=var_view_name;
676: END IF;
677:
678: BEGIN
679: var_cursor := DBMS_SQL.OPEN_CURSOR;
680: DBMS_SQL.PARSE(var_cursor, 'SELECT * FROM '||var_sql||' ORDER BY name', dbms_sql.native);
681: var_exec := DBMS_SQL.EXECUTE(var_cursor);
682: DBMS_SQL.DESCRIBE_COLUMNS(var_cursor, col_cnt, rec_tab);
683: EXCEPTION
676: END IF;
677:
678: BEGIN
679: var_cursor := DBMS_SQL.OPEN_CURSOR;
680: DBMS_SQL.PARSE(var_cursor, 'SELECT * FROM '||var_sql||' ORDER BY name', dbms_sql.native);
681: var_exec := DBMS_SQL.EXECUTE(var_cursor);
682: DBMS_SQL.DESCRIBE_COLUMNS(var_cursor, col_cnt, rec_tab);
683: EXCEPTION
684: WHEN OTHERS THEN
677:
678: BEGIN
679: var_cursor := DBMS_SQL.OPEN_CURSOR;
680: DBMS_SQL.PARSE(var_cursor, 'SELECT * FROM '||var_sql||' ORDER BY name', dbms_sql.native);
681: var_exec := DBMS_SQL.EXECUTE(var_cursor);
682: DBMS_SQL.DESCRIBE_COLUMNS(var_cursor, col_cnt, rec_tab);
683: EXCEPTION
684: WHEN OTHERS THEN
685: rcode:=SQLERRM;
678: BEGIN
679: var_cursor := DBMS_SQL.OPEN_CURSOR;
680: DBMS_SQL.PARSE(var_cursor, 'SELECT * FROM '||var_sql||' ORDER BY name', dbms_sql.native);
681: var_exec := DBMS_SQL.EXECUTE(var_cursor);
682: DBMS_SQL.DESCRIBE_COLUMNS(var_cursor, col_cnt, rec_tab);
683: EXCEPTION
684: WHEN OTHERS THEN
685: rcode:=SQLERRM;
686: RAISE WRONG_SQL;
694: t_col(var_col_num).col_name:=var_col_name;
695: t_col(var_col_num).col_num:=var_col_num;
696:
697: IF var_col_name='property_id' THEN
698: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_property_ptr);
699: END IF;
700: IF var_col_name='name' THEN
701: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_name,var_col_length);
702: END IF;
697: IF var_col_name='property_id' THEN
698: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_property_ptr);
699: END IF;
700: IF var_col_name='name' THEN
701: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_name,var_col_length);
702: END IF;
703: IF var_col_name='item_type_id' THEN
704: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_item_type_ptr);
705: END IF;
700: IF var_col_name='name' THEN
701: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_name,var_col_length);
702: END IF;
703: IF var_col_name='item_type_id' THEN
704: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_item_type_ptr);
705: END IF;
706: IF var_col_name='item_id' THEN
707: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_item_id);
708: END IF;
703: IF var_col_name='item_type_id' THEN
704: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_item_type_ptr);
705: END IF;
706: IF var_col_name='item_id' THEN
707: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_item_id);
708: END IF;
709: IF var_col_name='desc_text' THEN
710: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_desc_text,var_col_length);
711: END IF;
706: IF var_col_name='item_id' THEN
707: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_item_id);
708: END IF;
709: IF var_col_name='desc_text' THEN
710: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_desc_text,var_col_length);
711: END IF;
712: IF var_col_name='primary_uom_code' THEN
713: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_primary_uom_code,var_col_length);
714: END IF;
709: IF var_col_name='desc_text' THEN
710: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_desc_text,var_col_length);
711: END IF;
712: IF var_col_name='primary_uom_code' THEN
713: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_primary_uom_code,var_col_length);
714: END IF;
715: IF var_col_name='quoteable_flag' THEN
716: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_quoteable_flag,var_col_length);
717: END IF;
712: IF var_col_name='primary_uom_code' THEN
713: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_primary_uom_code,var_col_length);
714: END IF;
715: IF var_col_name='quoteable_flag' THEN
716: DBMS_SQL.DEFINE_COLUMN(var_cursor,var_col_num,var_quoteable_flag,var_col_length);
717: END IF;
718: var_col_num := rec_tab.next(var_col_num);
719: EXIT WHEN (var_col_num is null);
720: END LOOP;
723: var_tree_seq := 0;
724:
725: LOOP
726: BEGIN
727: IF DBMS_SQL.FETCH_ROWS(var_cursor)=0 THEN
728: EXIT;
729: ELSE
730: IF t_col.Count>0 THEN
731: FOR i IN t_col.First..t_col.Last
734: var_col_name:=t_col(i).col_name;
735: var_col_num:=t_col(i).col_num;
736: rcode:=var_col_name;
737: IF var_col_name='property_id' THEN
738: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_property_ptr);
739: END IF;
740: IF var_col_name='name' THEN
741: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_name);
742: END IF;
737: IF var_col_name='property_id' THEN
738: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_property_ptr);
739: END IF;
740: IF var_col_name='name' THEN
741: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_name);
742: END IF;
743: IF var_col_name='item_type_id' THEN
744: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_item_type_ptr);
745: END IF;
740: IF var_col_name='name' THEN
741: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_name);
742: END IF;
743: IF var_col_name='item_type_id' THEN
744: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_item_type_ptr);
745: END IF;
746: IF var_col_name='item_id' THEN
747: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_item_id);
748: END IF;
743: IF var_col_name='item_type_id' THEN
744: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_item_type_ptr);
745: END IF;
746: IF var_col_name='item_id' THEN
747: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_item_id);
748: END IF;
749: IF var_col_name='desc_text' THEN
750: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_desc_text);
751: END IF;
746: IF var_col_name='item_id' THEN
747: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_item_id);
748: END IF;
749: IF var_col_name='desc_text' THEN
750: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_desc_text);
751: END IF;
752: IF var_col_name='primary_uom_code' THEN
753: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_primary_uom_code);
754: END IF;
749: IF var_col_name='desc_text' THEN
750: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_desc_text);
751: END IF;
752: IF var_col_name='primary_uom_code' THEN
753: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_primary_uom_code);
754: END IF;
755: IF var_col_name='quoteable_flag' THEN
756: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_quoteable_flag);
757: END IF;
752: IF var_col_name='primary_uom_code' THEN
753: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_primary_uom_code);
754: END IF;
755: IF var_col_name='quoteable_flag' THEN
756: DBMS_SQL.COLUMN_VALUE(var_cursor,var_col_num,var_quoteable_flag);
757: END IF;
758: EXCEPTION
759: WHEN OTHERS THEN
760: RAISE WRONG_COLUMN_TYPE;
952: WHEN SKIP_IT THEN
953: NULL;
954: END;
955: END LOOP;
956: DBMS_SQL.CLOSE_CURSOR(var_cursor);
957:
958: --
959: -- set descriptive fields --
960: --
964: --WHERE populator_id=p_populator_id;
965:
966: EXCEPTION
967: WHEN WRONG_COLUMN_TYPE THEN
968: IF DBMS_SQL.IS_OPEN(var_cursor) THEN
969: DBMS_SQL.CLOSE_CURSOR(var_cursor);
970: END IF;
971: p_err:=mRUN_ID;
972: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" - wrong type of column '||rcode);
965:
966: EXCEPTION
967: WHEN WRONG_COLUMN_TYPE THEN
968: IF DBMS_SQL.IS_OPEN(var_cursor) THEN
969: DBMS_SQL.CLOSE_CURSOR(var_cursor);
970: END IF;
971: p_err:=mRUN_ID;
972: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" - wrong type of column '||rcode);
973: WHEN WRONG_SQL THEN
970: END IF;
971: p_err:=mRUN_ID;
972: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" - wrong type of column '||rcode);
973: WHEN WRONG_SQL THEN
974: IF DBMS_SQL.IS_OPEN(var_cursor) THEN
975: DBMS_SQL.CLOSE_CURSOR(var_cursor);
976: END IF;
977: p_err:=mRUN_ID;
978: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" - wrong SQL query is used : '||rcode);
971: p_err:=mRUN_ID;
972: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" - wrong type of column '||rcode);
973: WHEN WRONG_SQL THEN
974: IF DBMS_SQL.IS_OPEN(var_cursor) THEN
975: DBMS_SQL.CLOSE_CURSOR(var_cursor);
976: END IF;
977: p_err:=mRUN_ID;
978: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" - wrong SQL query is used : '||rcode);
979: WHEN OTHERS THEN
976: END IF;
977: p_err:=mRUN_ID;
978: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" - wrong SQL query is used : '||rcode);
979: WHEN OTHERS THEN
980: IF DBMS_SQL.IS_OPEN(var_cursor) THEN
981: DBMS_SQL.CLOSE_CURSOR(var_cursor);
982: END IF;
983: p_err:=mRUN_ID;
984: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" failed :'||SQLERRM);
977: p_err:=mRUN_ID;
978: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" - wrong SQL query is used : '||rcode);
979: WHEN OTHERS THEN
980: IF DBMS_SQL.IS_OPEN(var_cursor) THEN
981: DBMS_SQL.CLOSE_CURSOR(var_cursor);
982: END IF;
983: p_err:=mRUN_ID;
984: LOG_REPORT('CZ_POPULATORS_PKG.Preview','Preview populator "'||var_pop_name||'" failed :'||SQLERRM);
985: END Preview_unsec;