FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Conectarse en ADO a través de un DLL
Salu2 nuevamente amigos foristas.
Estoy trabajando con ADO para conectarme a una BD en Access. Uso un DataModule, donde tengo un ADO Connection y una Query. En mi sistema tengo una DLL con varias funciones, como validar RUT(Chile), validar fecha, etc. Tengo varios formularios en los cuales debo llenar algunos combobox's y memo's con datos de la BD. Entonces para no repetir esas rutinas de llenado de datos, quiero crear una función en mi DLL para esto. Tengo creada la función para llenar los combobox's pero me arroja un error de violación de memoria. Aqui les dejo el codigo de la función. Código:
Function Rellena( Combo: TComboBox; Buscar: String; Tabla: String ): String; begin // Try ShowMessage('1'); DM.Query.Close; ShowMessage('2'); DM.Query.SQL.Clear; DM.Query.SQL.Add( 'Select ' + Buscar + ' From ' + Tabla + ' Where 1 = 1 Order By ' + Buscar ); DM.Query.Open; While Not DM.Query.Eof Do Begin Combo.Items.Add( DM.Query.FieldByName( Buscar ).AsString ); DM.Query.Next; End; { Except Application.MessageBox( '¡Error en el Procedimiento Llenar ComboBox!, Contacte a su Proveedor de Servicio', 'Error', Mb_Ok + Mb_IconError ); End;} End; Por si acaso, tengo incluido en el uses de la DLL, la unit Data_Module. Necesito de su ayuda amigos. Salu2 desde Chile |
#2
|
|||
|
|||
Ya solucioné el problema, amigos.
Lo que pasa es que estaba usando el ADOConnection y la Query de mi sistema, por eso me arrojaba el error, así es que opté x crear el ADOConnection y la Query en tiempo de ejecución en la DLL. Salu2 desde Chile. |
|
|
|