La Web del Programador: Comunidad de Programadores
 
    Pregunta:  28942 - PROCEDIMIENTOS ALMACENADOS ORACLE
Autor:  Danilo Alarcon Lopez
Mi consulta es como puedo ejecutar un procedimiento almacenado en Oracle y enlazarlo con Crystal Reports. Esto yo lo hacia en SQL Server y no tenia mayores problemas. ahora en Oracle me reclama por un cursor cerrado y otras cosas, lo mismo e tratado de hacer desde Visual Basic y me reclama por lo mismo. Por lo menos en Visual Basic se puede hacer con un Package, pero el Crystal no los reconoce.
Alguien me pudiera ayudar por favor, ya que necesito hacer algunos informes y no quiero hacerlo con el típico sistema de enlazar tablas, ya que me es mas practico en caso de modificación, modificar el procedimiento y actualizar el informe.

Por su ayuda de antemano gracias.

  Respuesta:  Hector Shamir Perez
Hola Danilo,

Prueba lo siguiente para que no te de problemas en VB, para Crystal te recomiendo crear en el procedimiento una vista, y esa vista la llamas desde el reporte, eso entre otras cosas, te va ahorrar mucho tiempo de espera por el reporte.

Espero te sirva.

Public db As Connection
Public R As Recordset
Public SQL As String

'Dentro de un Sub
Set db = New Connection
db.CursorLocation = adUseClient
PROVIDER=MSDASQL;driver={Microsoft ODBC para Oracle};server=<servidor>uid=<usuario>pwd=<password>

SQL = ""
SQL = SQL + " Begin "
SQL = SQL + " Poceso(<parametros>);"
SQL = SQL + " End; "
Set R = db.Execute(SQL)