Lo pongo aquí porque creo que es un error de Builder.
Tengo este trozo de código:
Código:
TListItem *pItem;
fMenu->Query->Close();
fMenu->Query->SQL->Text = "";
fMenu->Query->SQL->Text = "SELECT DISTINCT Junta, NomJunta FROM Rc02";
fMenu->Query->Open();
LisJun->Items->Clear();
for (; !fMenu->Query->Eof; fMenu->Query->Next())
{
pItem = LisJun->Items->Add();
pItem->Caption = fMenu->Query->FieldByName("NomJunta")->AsString;
pItem->SubItems->Add(fMenu->Query->FieldByName("Junta")->AsInteger);
}
donde
- LisJun un TListView
- Query es un TIBQuery
- Rc02 un vista de SQL
y tanto Query como Rc02 se usan en otras partes del proyecto. Cuando voy a ejecutar esta parte del código al entrar en el bucle, y no al hacer el Open del query, para recorrer el resultado del query, cuando añado el item al TListView me da este error:
Cita:
Dynamic SQL Error
SQL Error Codi = -104
Token unknown - line 3, column 1
ORDER
|
pero voy más allá. Corriéndolo con el depurador, al asignar el caption, me da este error:
Cita:
Query: Field 'NomJunta' not found
|
Como podéis ver el query no tiene un ORDER y el campo NomJunta sí existe en el mismo y de hecho tiene una sola línea, con lo cual todavía entiendo menos el primer error que se da. De hecho si ejecuto el query en IBManager me da y una salida correcta. La linea tras el Close (fMenu->Query->SQL->Text = "") la puse para asegurarme de que al definirlo no había nada dentro del mismo. Me tiene total y absolutamente perplejo porque esta estructura la uso en un motón de sitios en el proyecto.