1436: replace previously selected field(s) with their values
1437: */
1438: v_select_string := REPLACE(p_select_string,'$PREV',gv_prev);
1439: v_select_string := REPLACE(v_select_string,'$PPREV',gv_pprev);
1440: v_cursor := DBMS_SQL.OPEN_CURSOR;
1441: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.native);
1442: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1443: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1444: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1437: */
1438: v_select_string := REPLACE(p_select_string,'$PREV',gv_prev);
1439: v_select_string := REPLACE(v_select_string,'$PPREV',gv_pprev);
1440: v_cursor := DBMS_SQL.OPEN_CURSOR;
1441: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.native);
1442: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1443: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1444: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1445: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1438: v_select_string := REPLACE(p_select_string,'$PREV',gv_prev);
1439: v_select_string := REPLACE(v_select_string,'$PPREV',gv_pprev);
1440: v_cursor := DBMS_SQL.OPEN_CURSOR;
1441: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.native);
1442: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1443: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1444: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1445: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1446: LOOP
1439: v_select_string := REPLACE(v_select_string,'$PPREV',gv_pprev);
1440: v_cursor := DBMS_SQL.OPEN_CURSOR;
1441: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.native);
1442: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1443: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1444: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1445: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1446: LOOP
1447: v_count := v_count + 1;
1440: v_cursor := DBMS_SQL.OPEN_CURSOR;
1441: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.native);
1442: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1443: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1444: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1445: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1446: LOOP
1447: v_count := v_count + 1;
1448: DBMS_SQL.COLUMN_VALUE(v_cursor,1,v_value);
1441: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.native);
1442: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1443: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1444: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1445: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1446: LOOP
1447: v_count := v_count + 1;
1448: DBMS_SQL.COLUMN_VALUE(v_cursor,1,v_value);
1449: IF match_string_to_rule(v_value,p_rule)
1444: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1445: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1446: LOOP
1447: v_count := v_count + 1;
1448: DBMS_SQL.COLUMN_VALUE(v_cursor,1,v_value);
1449: IF match_string_to_rule(v_value,p_rule)
1450: THEN
1451: /*
1452: add selected value
1458: set previous selected values
1459: */
1460: gv_pprev := gv_prev;
1461: gv_prev := v_value;
1462: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1463: RETURN TRUE;
1464: END IF;
1465: DBMS_SQL.COLUMN_VALUE(v_cursor,2,v_description);
1466: make_LOV(p_rule,v_value,v_description,'Y');
1461: gv_prev := v_value;
1462: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1463: RETURN TRUE;
1464: END IF;
1465: DBMS_SQL.COLUMN_VALUE(v_cursor,2,v_description);
1466: make_LOV(p_rule,v_value,v_description,'Y');
1467: END LOOP;
1468: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1469: IF v_count = 0
1464: END IF;
1465: DBMS_SQL.COLUMN_VALUE(v_cursor,2,v_description);
1466: make_LOV(p_rule,v_value,v_description,'Y');
1467: END LOOP;
1468: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1469: IF v_count = 0
1470: THEN
1471: make_LOV(p_rule,
1472: '*** No values selected ***',
1500: replace previously selected field(s) with their values
1501: */
1502: v_select_string := REPLACE(p_select_string,'$PREV',gv_prev);
1503: v_select_string := REPLACE(v_select_string,'$PPREV',gv_pprev);
1504: v_cursor := DBMS_SQL.OPEN_CURSOR;
1505: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.v7);
1506: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1507: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1508: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1501: */
1502: v_select_string := REPLACE(p_select_string,'$PREV',gv_prev);
1503: v_select_string := REPLACE(v_select_string,'$PPREV',gv_pprev);
1504: v_cursor := DBMS_SQL.OPEN_CURSOR;
1505: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.v7);
1506: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1507: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1508: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1509: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1502: v_select_string := REPLACE(p_select_string,'$PREV',gv_prev);
1503: v_select_string := REPLACE(v_select_string,'$PPREV',gv_pprev);
1504: v_cursor := DBMS_SQL.OPEN_CURSOR;
1505: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.v7);
1506: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1507: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1508: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1509: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1510: LOOP
1503: v_select_string := REPLACE(v_select_string,'$PPREV',gv_pprev);
1504: v_cursor := DBMS_SQL.OPEN_CURSOR;
1505: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.v7);
1506: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1507: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1508: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1509: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1510: LOOP
1511: v_count := v_count + 1;
1504: v_cursor := DBMS_SQL.OPEN_CURSOR;
1505: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.v7);
1506: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1507: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1508: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1509: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1510: LOOP
1511: v_count := v_count + 1;
1512: DBMS_SQL.COLUMN_VALUE(v_cursor,1,v_value);
1505: DBMS_SQL.PARSE(v_cursor,v_select_string||' ORDER BY 1 DESC',dbms_sql.v7);
1506: DBMS_SQL.DEFINE_COLUMN(v_cursor,1,v_value,100);
1507: DBMS_SQL.DEFINE_COLUMN(v_cursor,2,v_description,100);
1508: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1509: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1510: LOOP
1511: v_count := v_count + 1;
1512: DBMS_SQL.COLUMN_VALUE(v_cursor,1,v_value);
1513: IF match_string_to_rule(v_value,p_rule)
1508: v_rows := DBMS_SQL.EXECUTE(v_cursor);
1509: WHILE DBMS_SQL.FETCH_ROWS(v_cursor) > 0
1510: LOOP
1511: v_count := v_count + 1;
1512: DBMS_SQL.COLUMN_VALUE(v_cursor,1,v_value);
1513: IF match_string_to_rule(v_value,p_rule)
1514: THEN
1515: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1516: RETURN TRUE;
1511: v_count := v_count + 1;
1512: DBMS_SQL.COLUMN_VALUE(v_cursor,1,v_value);
1513: IF match_string_to_rule(v_value,p_rule)
1514: THEN
1515: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1516: RETURN TRUE;
1517: END IF;
1518: DBMS_SQL.COLUMN_VALUE(v_cursor,2,v_description);
1519: make_LOV(p_rule,v_value,v_description,'Y');
1514: THEN
1515: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1516: RETURN TRUE;
1517: END IF;
1518: DBMS_SQL.COLUMN_VALUE(v_cursor,2,v_description);
1519: make_LOV(p_rule,v_value,v_description,'Y');
1520: END LOOP;
1521: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1522: IF v_count = 0
1517: END IF;
1518: DBMS_SQL.COLUMN_VALUE(v_cursor,2,v_description);
1519: make_LOV(p_rule,v_value,v_description,'Y');
1520: END LOOP;
1521: DBMS_SQL.CLOSE_CURSOR(v_cursor);
1522: IF v_count = 0
1523: THEN
1524: make_LOV(p_rule,
1525: '*** No values selected ***',