Prezados, ver se vocês conseguem me ajudar. Já rodei bastante ai nos fórums da vida, e queria uma solução para o meu pro.
Seguinte: eu tenho esta procedure, que monta um select dinâmico e executa o mesmo dentro da SP. Sendo que, eu tenho que jogar o retorno desta execução numa variável de cursor types.ref_cursor. Segue abaixo a procedure e o código que to usando p testá-la. Se tiver uma solução, ficarei grato pela ajuda Wink abração.
TESTE:
DECLARE
OPA types.ref_cursor;
BEGIN
SP_EMPRESATIPO_SelectWhere('id_empresatipo = 2','NOME',OPA);
END;
CREATE OR REPLACE PROCEDURE SP_EMPRESATIPO_SelectWhere (WhereCondition VARCHAR2, OrderByExpression VARCHAR2, cur_EMPRESATIPO OUT types.ref_cursor) IS
VAR_SQL VARCHAR2(200);
BEGIN
VAR_SQL := 'SELECT * FROM EMPRESATIPO WHERE ';
IF (WhereCondition IS NOT NULL) THEN
VAR_SQL := VAR_SQL || WhereCondition;
END IF;
IF(OrderByExpression IS NOT NULL) THEN
VAR_SQL := VAR_SQL || ' ORDER BY '|| OrderByExpression;
END IF;
EXECUTE IMMEDIATE VAR_SQL;
dbms_output.put_line(VAR_SQL);
END SP_EMPRESATIPO_SelectWhere;