Pessoal,
 
    Tenho uma procedure que realiza um select fazendo em seguida o tratamento do mesmo e retornando o resultado encontrado por meio de um loop com o comando ORACLE dbms_output.put_line (ex1).
ex1:    OPEN c_Permissoes;
          LOOP
             FETCH c_Permissoes INTO r_cursor;
             EXIT c_Permissoes WHEN %NOTFOUND;
         
             dbms_output.put_line(rpad(v_id_modulo,11)     || ' ' ||
                                             rpad(v_no_modulo,61)     || ' ' ||
                                             rpad(v_id_form,11)       || ' ' ||
                                             rpad(v_no_form,50)       || ' ' ||
                                             rpad(v_no_form_resum,20) || ' ' ||
                                             rpad(v _id_item,11)       || ' ' || 
                                             rpad(v_id_new,2)         || ' ' ||
                                             rpad(v_id_modify,2)      || ' ' ||
                                             rpad(v_id_delete,2)      || ' ' ||
                                             rpad(v_id_query,2)       || ' ' ||
                                            rpad(v_id_execute,2) );
         
          END LOOP;
          CLOSE c_Permissoes;
 
    Tentei utilizar o CallableStatement para recuperar o resultado (ex2) mas n�o funcionou.
ex2:  CallableStatement proce =  conn.prepareCall("{call <procedure>}");
         ResultSet rs = proce.executeQuery();
         if(!rs.next()){
              System.out.println("Vazio");
         }else{
              System.out.println("cheio");
         }
 
    Tentei utilizar o OracleCallableStatement (ex3) a� retornou o erro 'Recurso n�o suportado'
ex3: OracleCallableStatement cstmt = (OracleCallableStatement)conn.prepareCall("{call <procedure>}");
        int elemMaxLen = 250;
        int maxLen = 100;
        int elemSqlType = Types.VARCHAR;
        cstmt.registerIndexTableOutParameter(1, maxLen, elemSqlType, elemMaxLen);
        System.out.println("registerIndexTableOutParameterzou!!");
        cstmt.execute();
        String[] values = (String[])cstmt.getPlsqlIndexTable(1);
        for(int i=0; i<values.length; i++){
          System.out.println(values);
        }

    Ser� que algum de voc�s j� passou por uma situa��o deste tipo para me ajudar?
    Ou ser� que algum de voc�s tem id�ia de como fa�o para alcan�ar o objetivo?
    Desde j� agrade�o a aten��o.
    Espero que algu�m possa me ajudar.
 
 
====================
Um abra�o...
Rafael Esdras
"Come�e fazendo o necess�rio,
depois o que � poss�vel e, de repente,
voc� estar� fazendo o imposs�vel."

Responder a