FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Asignar parametros al TSession y al TDataBase por codigo me da error
Hola
Siguiendo algunos tutoriales me he decidido a asignar los valores de mi base de datos paradox en tiempo de ejecucion. En el OnCreate del DataModule pongo el siguiente codigo q es el q saque de un articulo:
Despues, con cada tabla hago esto:
Me da el error: "UnNkow DataBase Alias: Server" Antes cuando lo tenia en el programa el TDabaBase le puse el Alias q cree. Pero metiendo los parametros a mano no hace falta el alias ¿no? |
#2
|
||||
|
||||
Saludos,
Mi estimado iniciado en Delphi, el error que estás cometiendo es que no has definido un alias en le utilidad SQLExplorer en el menú de Borland Delphi 7. Cuando hayas abierto la aplicación has de crear un nuevo 'Alias' que apunte al directorio donde residen tus tablas de Paradox. Esperando haberte ayudado, un saludo,
__________________
ø¤º° Moesis °º¤ø Dios nos ha dado dos orejas y una boca para escuchar el doble de lo que hablamos. Consulta la Guía de Estilo. |
#3
|
|||
|
|||
Gracias
Pero no me rula Ya tengo los Alias Creados y con ellos funcionaba bien asignando los parametros en la aplicacion. Pero al asignarle los parametros en tiempo de ejecucion leyendolos de un .ini me da el error q dicho antes. Antes de leer tu respuesta al hacerlo con el .ini le quite el parametro Alias al TDabaBase, por que pense q al asignarle la ruta y demas parametros no hacia falta el Alias. Al leer tu respuesta he puesto el Alias otra vez pero tampoco rula |
#4
|
|||
|
|||
Está bien que se quieran poner ciertas cosas por código, pero si no es necesario, tampoco hay que ser más papitas que el papa
Creo (no se como tienes la aplicación) que la mayoría de esos parámetros son fijos "esté donde esté" la aplicación, por lo que yo los configuraría en el Inspentor de Objetos. Otra história es, por ejemplo, la ruta de la base de datos (si no queremos usar alias), que eso sí puede cambiar de instalación a instalación. Para ello puedes hacer algo así (si suponemos que están en el mismo Path que la app.):
Espero que te sirva |
#5
|
|||
|
|||
holas a todos
images : tu problema consiste en que tu le esta asignando el tsession a los table , no se los asigne , deja que el TDatabase tome la seccion por default. Este lo que hace es si no existe un TSession entonces crea una en tiempo de ejecucion.. todos tus parametros estan bien.. a excepcion de esto.: Try Tpv.DatabaseName:='SERVER'; // TPV Tpv.SessionName:='SessionServer'; Tpv.Active:=True; Except ShowMessage('NO SE PUDO ABRIR LA TABLA TPV') End; FormSplash.ProgressBar.StepIt; FormSplash.update; o sea no le asite el tsession a nadie.. suerte... |
#6
|
|||
|
|||
a mi tambien me paso lo mismo
Yo también tuve un problema parecido, vereis, os cuento: Al igual que el compañero que hace la pregunta, yo tambien queria conectar mi BD por codigo, intenté hacerlo en el evento OnCreate del formulario con este codigo(decir que no tengo alias, solo queria poner el path de la BD):
Código:
//lo pongo en el evento Activate porque en el Create da error DataModule1.dbNoteLinks.DatabaseName:=ExtractFilePath(Application.ExeName) + 'bd'; DataModule1.dbNoteLinks.Connected:=true; DataModule1.tblCategorias.Open; DataModule1.tblLinks.Open; Código:
if activo=false then begin self.Top:=self.Top-10; //lo pongo en el evento Activate porque en el Create da error DataModule1.dbNoteLinks.DatabaseName:=ExtractFilePath(Application.ExeName) + 'bd'; DataModule1.dbNoteLinks.Connected:=true; DataModule1.tblCategorias.Open; DataModule1.tblLinks.Open; end; activo:= true; |
|
|
|