![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
ADO parámetros para Oracle Stored Procedure
Gracias a todos por su ayuda pero parece que con Delphi 2007 no es facil acceder a un Stored Procedure Oracle, ni con BDE ni con ADO.
Para probar la conección con ADO he creado una aplicación muy sencilla. Al correr el código: procedure TForm1.Button1Click(Sender: TObject);Hay un error que dice que hay incompatibilidad en el número o tipo de parámetros. Luego de mucha busqueda en la Internet he encontrado una posible solución a este error y esta sería añadir a ConnectionString: Extended Properties="PLSQLRSet=1" pero luego de ejecutar el código el error es el mismo!! Agradezco enormemente a alguien que pueda proporcionar alguna información para resolver este problema Los controles TADOStoredProc y TADOConnection están definidos en Design view: (Tanto la conección como el acceso a los diferentes Procedures del banco de datos estan correctos) object ADOConn1: TADOConnection Connected = True ConnectionString = 'Provider=OraOLEDB.Oracle.1;Password=password;Persist Security Inf' + 'o=True;User ID=userid;Data Source=prk_server;Extended Properties="' + 'PLSQLRSet=1"' Provider = 'OraOLEDB.Oracle.1' Left = 16 Top = 8 end object StpShowParking: TADOStoredProc Connection = ADOConn1 ProcedureName = 'SHOW_PARKING' Parameters = < item Name = 'CSR' Attributes = [paNullable] DataType = ftInterface Direction = pdInputOutput Value = Null end> El Stored Procedure de Oracle es: CREATE OR REPLACE PROCEDURE "SHOW_PARKING" / ( csr IN OUT pck_int_cursors.csr_all) AS BEGIN OPEN csr FOR SELECT parking.prk_id, ... |
|
#2
|
|||
|
|||
|
Fijate como ejecutas el SP
Yo lo hice con SQL Server y no Oracle a traves de ADO
utilizando un comando, pero es lo mismo si ejecutas desde la conexion ADO Supongamos q tu conexion se denomina Conx: Conx.Execute( 'mySP ' + param1 + ', ' + param2 + ', ' + paramN ); Donde mySP es el nombre del Stored Procedure Te copio un poco de codigo y perdon por el desorden, pero al editar no te muestran las etiquetas de codigo with Data.adoCMD do begin CommandType := cmdStoredProc; CommandText := 'dbo.SP_COMPRAS_INSERT'; Parameters.Clear; Parameters.CreateParameter( '@Id_Compra' , ftLargeInt , pdOutput , 20, 0 ); Parameters.CreateParameter( '@Id_Proveedor' , ftLargeInt , pdInput , 20, StrToInt( txtProveedor.Text ) ); Parameters.CreateParameter( '@Tipo_Comprobante' , ftString , pdInput , 3 , cbTipoDOC.Text ); Parameters.CreateParameter( '@Nro_Comprobante' , ftString , pdInput , 13, txtComprobante.Text ); Parameters.CreateParameter( '@FechaRecepcion' , ftDate , pdInput , 10, Date ); Parameters.CreateParameter( '@MontoIVA' , ftCurrency , pdInput , 20, StrToFloat( txtIVAGral.Text ) ); Execute; end; adoCMD es un adocommand q esta en un datamodule Saludos y Exitos Última edición por waly2k1 fecha: 19-09-2007 a las 11:10:16. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Lanzamiento Delphi 2007, PHP y JBuilder 2007 R2 Santiago - Chile | Andreano | Noticias | 4 | 14-05-2007 09:25:23 |
| delphi 2006 / delphi 2007 y Visual estudio 2005 | avmm2004 | Varios | 2 | 13-04-2007 20:50:07 |
| Lanzamiento de Delphi 2007 y Delphi para PHP en Bogotá - Colombia | Andreano | Noticias | 9 | 25-02-2007 19:09:42 |
| Conección de Datos Delphi - Rave | gaps2k | Impresión | 0 | 14-02-2007 17:05:45 |
| problemas en coneccion delphi 6.0 con interbase 6.0 | onasis | Firebird e Interbase | 1 | 02-06-2005 22:50:47 |
|