Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-01-2024
delphi001 delphi001 is offline
Registrado
 
Registrado: nov 2023
Posts: 7
Poder: 0
delphi001 Va por buen camino
Thumbs up Levantar Proyecto Pascal - Borland Delphi 7 y Componentes

Hola a todos, espero sea un apartado correcto dentro del foro para publicar el tema.

Resulta que en mi emocionante viaje como programador novato, me aventuré en el vasto mundo de Pascal. Mi tarea actual: levantar un proyecto existente el cual cuenta con formularios (entre muchos otros componentes) en Pascal utilizando Delphi 7, junto con una intrigante serie de componentes. Pero aquí está el desafío: ¡una base de datos en Firebird 2.0! Mis primeros pasos fueron como los de un explorador en tierras desconocidas. Con cada problema que surgía al intentar levantar el proyecto, surgían preguntas. Sin embargo, con la magia de Internet y la ayuda de foros devotos, he superado obstáculos. Ahora, me encuentro en un nuevo dilema, uno que me tiene perplejo: ¿cómo identificar la conexión de Pascal con Firebird? ¿Cómo cambio esas enigmáticas cadenas de conexión? Me encuentro en la encrucijada de mi viaje y apelo a la comunidad. ¿Alguna alma amable puede señalarme hacia una URL / Manual que ilumine mi camino y me guíe en la identificación de componentes de conexión a bases de datos?

¡Vuestra ayuda será mi faro en esta travesía!
Responder Con Cita
  #2  
Antiguo 10-01-2024
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Hola, da pocas pistas (ninguna), deberías poner algo de código, o nombres, o algo.
De todas formas, los más habituales son los IBX que vienen con el propio delphi en la pestaña Interbase.

Puede que tengas otros, pero mejor que nos des más información.
Por cierto, bienvenido a clubdelphi.

Última edición por Casimiro Notevi fecha: 10-01-2024 a las 14:30:03. Razón: Corregir error sintáctico :-P
Responder Con Cita
  #3  
Antiguo 10-01-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.549
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por delphi001 Ver Mensaje
¿cómo identificar la conexión de Pascal con Firebird?
¿Cómo cambio esas enigmáticas cadenas de conexión?
No se si te refieres a buscarlos manualmente o a buscarlos de forma automática.
Lo primero y primordial es saber si estás utilizando 1 o varios frameworks de conexión y cuales son:
* BDE
* ADO
* IBExpress
* FIBPlus
* ....

Si es uno nos centramos ese ese, si son varios nos centramos en ellos.

Lo digo porque dependiendo del framework (grupo de componentes) es posible conectarse con:
* Un componente de conexión del tipo TADOConnection, TConnection, TDatabase, ...
* También con un derivado de TDataset (TADOQuery o TADOTable por poner un ejemplo) utilizando una cadena de conexión.

Osea que lo primero es aclarar eso.
Si no sabes cómo, dilo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 11-01-2024
Delphi01 Delphi01 is offline
Miembro
 
Registrado: nov 2015
Ubicación: Barcelona,España
Posts: 68
Poder: 9
Delphi01 Va por buen camino
Cita:
Empezado por delphi001 Ver Mensaje
Hola a todos, espero sea un apartado correcto dentro del foro para publicar el tema.

Resulta que en mi emocionante viaje como programador novato, me aventuré en el vasto mundo de Pascal. Mi tarea actual: levantar un proyecto existente el cual cuenta con formularios (entre muchos otros componentes) en Pascal utilizando Delphi 7, junto con una intrigante serie de componentes. Pero aquí está el desafío: ¡una base de datos en Firebird 2.0! Mis primeros pasos fueron como los de un explorador en tierras desconocidas. Con cada problema que surgía al intentar levantar el proyecto, surgían preguntas. Sin embargo, con la magia de Internet y la ayuda de foros devotos, he superado obstáculos. Ahora, me encuentro en un nuevo dilema, uno que me tiene perplejo: ¿cómo identificar la conexión de Pascal con Firebird? ¿Cómo cambio esas enigmáticas cadenas de conexión? Me encuentro en la encrucijada de mi viaje y apelo a la comunidad. ¿Alguna alma amable puede señalarme hacia una URL / Manual que ilumine mi camino y me guíe en la identificación de componentes de conexión a bases de datos?

¡Vuestra ayuda será mi faro en esta travesía!
Hola,
Puedes conectar tu aplicación desarrollada en Delphi 7 a una base de datos Firebird 2.0. Para lograrlo, necesitarás un componente de conexión compatible con Firebird en tu entorno de desarrollo (IDE). En Delphi, el componente adecuado para trabajar con bases de datos Firebird se llama "IBDatabase" y pertenece a la biblioteca "InterBase Express" (IBX).

Aquí te muestro cómo puedes utilizar el componente IBDatabase para conectarte a tu base de datos Firebird 2.0 desde Delphi 7:

1. Asegúrate de tener instalado el paquete IBX en tu IDE Delphi 7. Puedes encontrar el archivo de instalación en el sitio web oficial de Embarcadero o en otros repositorios de software.
http://cc.embarcadero.com/Item/20227

2. En tu formulario de Delphi, coloca un componente IBDatabase desde la paleta de componentes. Busca el componente dentro de la categoría "InterBase" o "Firebird".

3. Configura las propiedades del componente IBDatabase para establecer la ruta de acceso a tu base de datos Firebird, el nombre de usuario y la contraseña para acceder a la base de datos. Algunas propiedades importantes pueden ser: DatabaseName, UserName y Password.

4. Puedes conectar el componente IBDatabase en el evento OnCreate del formulario o en cualquier otro lugar adecuado según tus necesidades.

5. Utiliza otros componentes de la biblioteca IBX, como IBQuery o IBDataset, para ejecutar consultas SQL en tu base de datos y manipular los datos.

Aquí tienes un ejemplo de código para conectarte a la base de datos Firebird utilizando el componente IBDatabase:



Código:
uses
  IBDatabase;

procedure TForm1.FormCreate(Sender: TObject);
begin
  IBDatabase1.DatabaseName := 'ruta_a_tu_base_de_datos.fdb';
  IBDatabase1.UserName := 'tu_usuario';
  IBDatabase1.Password := 'tu_contraseña';
  
  try
    IBDatabase1.Connected := True;
    ShowMessage('Conexión exitosa con Firebird');
  except
    on E: Exception do
      ShowMessage('Error al conectar con Firebird: ' + E.Message);
  end;
end;
Suerte.
Responder Con Cita
  #5  
Antiguo 11-01-2024
delphi001 delphi001 is offline
Registrado
 
Registrado: nov 2023
Posts: 7
Poder: 0
delphi001 Va por buen camino
Smile

Gracias Casimiro Notevi!
Gracias Neftali [Germán.Estévez]!
Gracias Delphi01!


¡Saludos!

No estoy seguro de como púedo saber que tipo de tecnología(s) se encuentran aplicadas para la conexión con Firebird, pero he encontrado estos componentes en el código base:
TIBQuery (Tengo entendido se trata de IBX)
TDataSource (Tengo entendido se trata de VCL)
IB_Connection (Tengo entendido se trata de Interbase)
TIBOQuery (Tengo entendido se trata de Interbase)
DatabaseName = '192.168.1.2:Mi-BD' (La BD utilizada)


En cuanto al código base, dejo un par de fragmentos que me indican que se usa una serie de parámetros especificados en alguna parte que aun no logro comprender. Archivo: proyecto.dpr

Código:
 frmSplash:=TfrmSplash.Create(Application);
  frmSplash.Caption:=sNomSystem;
  PreparaSplash(True, 1, 1, 1); // Mostrar, nMin, nMax, posIni
  ActSplash('Conectando con el Servidor...',' ',0);
  ActSplash('','Revisar que tenga todos los parámetros',1);
    If ParamCount<2 then
      begin
        myMessageDlg('Faltan Parámetros: '+_Enter+sNomSystem, mtError ,'',0);        
      end;

  ActSplash('','...',1);
    //PRIMER parámetro: Indica se esta ejecutando desde RunSystem
    Try
      sTmp:=myUpperCase(ParamStr(1));      
    Except
      Raise Exception.Create(Incorrecto);
    end;
    //SEGUNDO parámetro: Path de la base de datos
    Case myStrIndex(sTmp,[_NomExeRun,'PALABRA']) Of
    0:begin        
        Try
          getDBPath:=ParamStr(2);          
          DatosIni:=TStringlist.Create;
          k:=Pos(':',getDBPath);
          If k=0 then
            begin
              DatosIni.Add('');
              DatosIni.Add(getDBPath);
            end
          else
            begin
              DatosIni.Add(Copy(getDBPath,1,k-1));
              DatosIni.Add(Copy(getDBPath,k+1,100));
            end;
        Except
          Raise Exception.Create(Incorrecto);
        end;
      end;

          

 begin
            DatosIni:=TStringlist.Create;
            DatosIni.LoadFromFile(_NomIniSystemMiFile);
            //GET Path BD de las DOS PRIMERAS LINEAS del file _NomIniSystemMiFile
            getDBPath:=DatosIni[0]+':'+DatosIni[1];
Desafíos que enfrento:

- Aparentemente se guarda en un archivo .ini pero no localizo un .ini que contenga 192.168.1.2:Mi-BD
- Intenté reemplazando todas las coincidencias de 192.168.1.2:Mi-BD en archivos *.dfm por mi BD TEST en 192.168.1.1B-Test (No funcionó ya que se sigue conectando a la base 192.168.1.2:Mi-BD)
- Mi BD Test ya me aseguré tenga su alias, puerto y bien configurada para ser accedida desde local y desde la red lan (probe accediendo con clientes como flamerobin y IBExpert y funciona bien en ambos casos).

Nota: El proyecto se conecta unicamente a una BD en Firebird.

Tu experiencia y orientación serán invaluables para avanzar en este tema. ¿Puedes proporcionar más información o consejos para abordar estos desafíos? ¡Aprecio mucho tu colaboración!
Responder Con Cita
  #6  
Antiguo 11-01-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.549
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por delphi001 Ver Mensaje
No estoy seguro de como púedo saber que tipo de tecnología(s) se encuentran aplicadas para la conexión con Firebird, pero he encontrado estos componentes en el código base:
TIBQuery (Tengo entendido se trata de IBX)
TDataSource (Tengo entendido se trata de VCL)
IB_Connection (Tengo entendido se trata de Interbase)
TIBOQuery (Tengo entendido se trata de Interbase)
DatabaseName = '192.168.1.2:Mi-BD' (La BD utilizada)
Digamos que la estructura en que se usan los componentes siempre es la misma independientemente de la tecnología.
Algo así:




1) Los 2 primeros se encargan de la conexión (y en el caso de IB/FB también de la transacción)
2) Luego tenemos el TIBTable o TIBQuery que representan TABLAS o SQLs y que se conectan a la conexión
(varios TIBTable, TIBQuery, TIBOQuery,... se pueden conectar a la misma conexión)
3) Finalmente el TDatasource que se encarga de conectar un componente visual (por ejemplo un DBGrid) con una fuente de datos (un TIBTable, TIBQuery,...)

Normalmente casi todos los componentes que se usan para Interbase (en versiones como la tuya Delphi 7) se usan también y son compatibles para conectarse a Firebird.
En cuanto al código, parece que no está completo, pero hay una parte que muestra que la llamada se puede hacer con parámetros, y el segundo parece ser la Base de Datos.

Código Delphi [-]
    //SEGUNDO parámetro: Path de la base de datos
    Case myStrIndex(sTmp,[_NomExeRun,'PALABRA']) Of
    0:begin        
        Try
          getDBPath:=ParamStr(2);          
          DatosIni:=TStringlist.Create;
          k:=Pos(':',getDBPath);
          If k=0 then
            begin
              DatosIni.Add('');
              DatosIni.Add(getDBPath);
            end
          else
            begin
              DatosIni.Add(Copy(getDBPath,1,k-1));
              DatosIni.Add(Copy(getDBPath,k+1,100));
            end;
        Except
          Raise Exception.Create(Incorrecto);
        end;
      end;


ParamStr(2) hace referencia al segunda parámetro de la llamada a tu aplicación.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 11-01-2024
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Parece que tienes definido algún alias de la BD, puedes editarla o quitarla, si quieres.
Mira esto:
https://www.firebirdsql.org/rlsnotes...-db-alias.html
Responder Con Cita
  #8  
Antiguo 12-01-2024
delphi001 delphi001 is offline
Registrado
 
Registrado: nov 2023
Posts: 7
Poder: 0
delphi001 Va por buen camino
Smile

Cita:
Empezado por Casimiro Notevi Ver Mensaje
Parece que tienes definido algún alias de la BD, puedes editarla o quitarla, si quieres.
Mira esto:
Gracias.

Ahora, cómo logro cambiar la configuración de conexión para conectarme a otra BD?

Actualmente se conecta a 192.168.1.2:Mi-BD
Ahora busco la forma de cambiar la configuración para conectarme a 192.168.1.1:DB-Test

Salud OS
Responder Con Cita
  #9  
Antiguo 12-01-2024
delphi001 delphi001 is offline
Registrado
 
Registrado: nov 2023
Posts: 7
Poder: 0
delphi001 Va por buen camino
Question

Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Normalmente casi todos los componentes que se usan para Interbase (en versiones como la tuya Delphi 7) se usan también y son compatibles para conectarse a Firebird.
En cuanto al código, parece que no está completo, pero hay una parte que muestra que la llamada se puede hacer con parámetros, y el segundo parece ser la Base de Datos.
Gracias.

Luego cómo encuentro información que me de luz para interpretar y configurar parámetros? Entiendo que es una práctica comun usar parámetros pero no encuentro información en internet para leer al respecto.

¿Alguna información que ilumine mi andar en este grandioso recorrido?
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Proyecto emular procesadores usando Delphi PASCAL y Ensamblador compsystems La Taberna 0 16-12-2014 23:36:52
Free Pascal proyecto del mes de SourceForge Ñuño Martínez La Taberna 7 25-04-2014 22:45:22
Proyecto Oberon: Reimaginando todo (padre de pascal) mamcx La Taberna 1 04-12-2013 00:18:53
[Z80 Pascal] Proyecto de compilador Ñuño Martínez ASM y Microcontroladores 6 11-05-2010 15:37:47
primer proyecto con Mikro pascal no compila gaston260 ASM y Microcontroladores 15 08-01-2010 05:45:55


La franja horaria es GMT +2. Ahora son las 01:09:49.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi