Función no existe (Call of nonfunction)
Tengo un formulario en un proyecto en BCB 6 con esto:
Código:
#include <vcl.h> También en todos la uso exactamente de la misma forma; en este formulario la primera vez que la llamo lo hecho así: Código:
fPersona->Query->Close(); |
Voy más allá. He probado a compilar el formulario poniendo esa llamada en diversos sitios del código, por si fuera un problema de escritura y no lo hubiera detectado; Ponga donde ponga esa línea me da el mismo error.
|
Hola Angel.
Revisa que no exista una variable, posterior a la declaración de función, con el nombre "Mensaje" cuyo ámbito alcance al bloque de código donde se genera el error. Un ejemplo que provocará el error que mencionas: Código PHP:
|
Cita:
|
Bueno: Me dieron la solución los amigos de otro foro. El problema venía porque en el query uno de los parámetros se llama igual que la función. La solución fue hacer referencia a la función global.
Código:
if (Usuarios->Visible) |
Hola.
Cita:
Cita:
Saludos :) |
Cita:
|
Hola.
Quedé sorprendido sobre el echo de que un nombre de parámetro (encerrado entre comillas) pudiera dar conflicto con un nombre de función y para quitarme toda, duda reproduje tu código (tabla incluida). El error se produce por el conflicto entre el nombre de una variable llamada Mensaje (supongo que es de tipo TEdit) precisamente en la línea: Cita:
Cambiando el nombre del Edit deja de dar el error: Código:
void __fastcall TForm1::Button1Click(TObject *Sender) Saludos :) |
Cita:
Para que quienes consulten esto en las generaciones venideras no se confundan, creo que hace falta hacer hincapié en que el error original NO se debe al nombre del parámetro del Query. Se debe a la existencia de un objeto y una función con el mismo nombre en el mismo contexto. LineComment Saludos |
La franja horaria es GMT +2. Ahora son las 17:14:46. |
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