Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   EDBEngineError with message 'Table does not exist. (https://www.clubdelphi.com/foros/showthread.php?t=86748)

Yugo 27-09-2014 00:53:17

EDBEngineError with message 'Table does not exist.
 
Hola a todos/as, les comento el siguiente error que me aparece al compilar el proyecto:

Cita:

Project Project1.exe raised exception class EDBEngineError with message 'Table does not exist.
File or directory does not exist.
File:
C:\Users\...\Carpeta donde se aloja el proyecto\dbCeldas2.DB
File:
C:\Users\...\Carpeta donde se aloja el proyecto\dbCeldas2.DBF
File:
C:\Users\...\Carpeta donde se aloja el proyecto\dbCeldas2.txt
File:
C:\Users\...\Carpeta donde se aloja el proyecto\dbCeldas2'.
Process stopped. Use Step or Run to continue.
El código es el siguiente:
Código:

void __fastcall TForm1::FormCreate(TObject *Sender)
{

//---------------------------------------------------------------------------
// Para la tabla dbCeldas2.db (Vemos todas las celdas registradas en la tabla)
//---------------------------------------------------------------------------
 Query1->Close();
 Query1->DatabaseName = "dbPFC";
 Query1->SQL->Add("SELECT * FROM dbCeldas2");
 Query1->Active = true;
 DataSource1->DataSet = Query1;
 DBGrid1->DataSource = DataSource1;
 DBGrid1->Options = TDBGridOptions(DBGrid1->Options) << dgRowSelect;
 DBNavigator1->DataSource = DataSource1;
//---------------------------------------------------------------------------
// Para la tabla FicheroDT_GSM_DCS_28_02_2013.db (Vemos todos los registros)
//---------------------------------------------------------------------------
 Query2->Close();
 Query2->DatabaseName = "dbPFC";
 Query2->SQL->Add("SELECT * FROM FicheroDT_GSM_DCS_28_02_2013");
 Query2->Active = true;
 DataSource2->DataSet = Query2;
 DBGrid2->DataSource = DataSource2;
 DBGrid2->Options = TDBGridOptions(DBGrid2->Options) << dgRowSelect;
 DBNavigator2->DataSource = DataSource2;

 //---------------------------------------------------------------------------
 // Para obtener los resultados de la consulta se inserta otro componente Query3
 //---------------------------------------------------------------------------

}

void __fastcall TForm1::DataSource2DataChange(TObject *Sender,
      TField *Field)
{
 Query3->Close();
 Query3->SQL->Clear();
 Query3->SQL->Add("SELECT T1.Nombre");
 Query3->SQL->Add("FROM dbCeldas2 T1 JOIN FicheroDT_GSM_DCS_28_02_2013 T2 ON T2.ID = :PID AND");
 // Condiciones a cumplir (T1.BSIC = T2.BSIC AND T1.BCCH = T2.BCCH_ARFCN)
 Query3->SQL->Add("(T1.BSIC = T2.BSIC AND T1.BCCH = T2.BCCH_ARFCN)");
 Query3->SQL->Add("ORDER BY Nombre");
 Query3->ParamByName("PID")->AsInteger = Query2->FieldByName("ID")->AsInteger;
 Query3->Open();

 //Si hay ocurrencia de nombre
 if(!Query3->FieldByName("Nombre")->AsString.IsEmpty())
 {
  //Buscará en el Form la caja de texto TEdit1 para que su propiedad
  //Text cambie al Nombre de la celda coincidente.
  TComponent *CP=NULL;

  CP = FindComponent("Edit1");
  if (CP != NULL)
    (static_cast<TEdit*>(CP))->Text = Query3->FieldByName("Nombre")->AsString;
 }
}

La verdad es que no encuentro el motivo del error, ya que ambas tablas sí existen en la ruta/alias creado previamente al que llamé dbPFC. No sé si tendrá algo que ver que la asignación de la propiedad DatabaseName de los Query1 y Query2 se haga en tienmpo de ejecución... Gracias por vuestro tiempo!!


La franja horaria es GMT +2. Ahora son las 00:04:24.

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