9: ------------------------------------------------------------------------------
10: PROCEDURE RUN_QUERY (p_sql IN CLOB,
11: p_dimVset IN VARCHAR2)
12: IS
13: l_text DBMS_SQL.VARCHAR2S;
14: l_cursor INTEGER;
15: l_member VARCHAR2(60);
16: l_members VARCHAR2(4000);
17: l_ignore1 INTEGER;
29: l_count := l_count+1;
30: l_pos := l_pos+150;
31: end loop;
32:
33: l_cursor := DBMS_SQL.OPEN_CURSOR;
34: DBMS_SQL.PARSE(l_cursor, l_text, l_text.FIRST, l_text.LAST, FALSE,
35: DBMS_SQL.NATIVE);
36: DBMS_SQL.DEFINE_COLUMN(l_cursor, 1, l_member, 60);
37: DBMS_SQL.DEFINE_COLUMN(l_cursor, 2, l_ignore1);
30: l_pos := l_pos+150;
31: end loop;
32:
33: l_cursor := DBMS_SQL.OPEN_CURSOR;
34: DBMS_SQL.PARSE(l_cursor, l_text, l_text.FIRST, l_text.LAST, FALSE,
35: DBMS_SQL.NATIVE);
36: DBMS_SQL.DEFINE_COLUMN(l_cursor, 1, l_member, 60);
37: DBMS_SQL.DEFINE_COLUMN(l_cursor, 2, l_ignore1);
38: DBMS_SQL.DEFINE_COLUMN(l_cursor, 3, l_ignore2);
31: end loop;
32:
33: l_cursor := DBMS_SQL.OPEN_CURSOR;
34: DBMS_SQL.PARSE(l_cursor, l_text, l_text.FIRST, l_text.LAST, FALSE,
35: DBMS_SQL.NATIVE);
36: DBMS_SQL.DEFINE_COLUMN(l_cursor, 1, l_member, 60);
37: DBMS_SQL.DEFINE_COLUMN(l_cursor, 2, l_ignore1);
38: DBMS_SQL.DEFINE_COLUMN(l_cursor, 3, l_ignore2);
39: l_ignore1 := DBMS_SQL.EXECUTE(l_cursor);
32:
33: l_cursor := DBMS_SQL.OPEN_CURSOR;
34: DBMS_SQL.PARSE(l_cursor, l_text, l_text.FIRST, l_text.LAST, FALSE,
35: DBMS_SQL.NATIVE);
36: DBMS_SQL.DEFINE_COLUMN(l_cursor, 1, l_member, 60);
37: DBMS_SQL.DEFINE_COLUMN(l_cursor, 2, l_ignore1);
38: DBMS_SQL.DEFINE_COLUMN(l_cursor, 3, l_ignore2);
39: l_ignore1 := DBMS_SQL.EXECUTE(l_cursor);
40: loop
33: l_cursor := DBMS_SQL.OPEN_CURSOR;
34: DBMS_SQL.PARSE(l_cursor, l_text, l_text.FIRST, l_text.LAST, FALSE,
35: DBMS_SQL.NATIVE);
36: DBMS_SQL.DEFINE_COLUMN(l_cursor, 1, l_member, 60);
37: DBMS_SQL.DEFINE_COLUMN(l_cursor, 2, l_ignore1);
38: DBMS_SQL.DEFINE_COLUMN(l_cursor, 3, l_ignore2);
39: l_ignore1 := DBMS_SQL.EXECUTE(l_cursor);
40: loop
41: exit when (DBMS_SQL.FETCH_ROWS(l_cursor) = 0);
34: DBMS_SQL.PARSE(l_cursor, l_text, l_text.FIRST, l_text.LAST, FALSE,
35: DBMS_SQL.NATIVE);
36: DBMS_SQL.DEFINE_COLUMN(l_cursor, 1, l_member, 60);
37: DBMS_SQL.DEFINE_COLUMN(l_cursor, 2, l_ignore1);
38: DBMS_SQL.DEFINE_COLUMN(l_cursor, 3, l_ignore2);
39: l_ignore1 := DBMS_SQL.EXECUTE(l_cursor);
40: loop
41: exit when (DBMS_SQL.FETCH_ROWS(l_cursor) = 0);
42: DBMS_SQL.COLUMN_VALUE(l_cursor, 1, l_member);
35: DBMS_SQL.NATIVE);
36: DBMS_SQL.DEFINE_COLUMN(l_cursor, 1, l_member, 60);
37: DBMS_SQL.DEFINE_COLUMN(l_cursor, 2, l_ignore1);
38: DBMS_SQL.DEFINE_COLUMN(l_cursor, 3, l_ignore2);
39: l_ignore1 := DBMS_SQL.EXECUTE(l_cursor);
40: loop
41: exit when (DBMS_SQL.FETCH_ROWS(l_cursor) = 0);
42: DBMS_SQL.COLUMN_VALUE(l_cursor, 1, l_member);
43: l_members := l_members||' '''||l_member||'''';
37: DBMS_SQL.DEFINE_COLUMN(l_cursor, 2, l_ignore1);
38: DBMS_SQL.DEFINE_COLUMN(l_cursor, 3, l_ignore2);
39: l_ignore1 := DBMS_SQL.EXECUTE(l_cursor);
40: loop
41: exit when (DBMS_SQL.FETCH_ROWS(l_cursor) = 0);
42: DBMS_SQL.COLUMN_VALUE(l_cursor, 1, l_member);
43: l_members := l_members||' '''||l_member||'''';
44: if (length(l_members) > 3900) then
45: zpb_aw.execute ('lmt '||p_dimVset||' add '||l_members);
38: DBMS_SQL.DEFINE_COLUMN(l_cursor, 3, l_ignore2);
39: l_ignore1 := DBMS_SQL.EXECUTE(l_cursor);
40: loop
41: exit when (DBMS_SQL.FETCH_ROWS(l_cursor) = 0);
42: DBMS_SQL.COLUMN_VALUE(l_cursor, 1, l_member);
43: l_members := l_members||' '''||l_member||'''';
44: if (length(l_members) > 3900) then
45: zpb_aw.execute ('lmt '||p_dimVset||' add '||l_members);
46: l_members := null;
48: end loop;
49: if (l_members is not null) then
50: zpb_aw.execute ('lmt '||p_dimVset||' add '||l_members);
51: end if;
52: DBMS_SQL.CLOSE_CURSOR(l_cursor);
53: END RUN_QUERY;
54:
55: ------------------------------------------------------------------------------
56: -- GET_STATUS