Hola amigos, me ocurre una cosa muy rara y me gustaria que me ayudaran con esto.
Estoy realizando un proyecto que tiene un menu principal con opciones. De buenas a primeras resulta que intento añadir un form a una llamada del menu principal y me dice que no esta declarado el identificador (undeclared identifier). No se por que ocurre pues estoy harto de hacerlo y nunca me dio problemas, y por supuesto en este proyecto tampoco hasta ahora. Os explico como lo hago, aunque repito que con otros forms no me pasa y no tiene nada raro, incluso con el form vacio.
Al elegir una opcion del menu principal hago lo siguiente:
Código Delphi
[-]procedure TMenuPrincipal.ConsultarLiquidacionesAnteriores1Click(
Sender: TObject);
var ficha3:TConsultaLiquidacion;
ficha:TElegirLiq;
ficha1:TElecMaquinas;
begin
llamada:='consultaliquidacion';
Ficha1:=TElecMaquinas.Create(Self);
Ficha1.DbMaquinas.Active:=True;
Ficha1.DbCargaPL.Active:=True;
Ficha1.DbLiquid.Active:=True;
Ficha1.Showmodal;
Ficha1.DbMaquinas.Active:=False;
Ficha1.DbCargaPL.Active:=False;
Ficha1.DbLiquid.Active:=False;
Ficha1.Free;
Ficha.TElegirLiq.Create(Self); Ficha.DbMaquinas.Active:=True;
Ficha.ShowModal;
Ficha.DbMaquinas.Active:=False;
Ficha.Free;
Ficha3:=TConsultaLiquidacion.Create(Self);
Ficha3.DbConfCarg.Active:=True;
Ficha3.DbMaquinas.Active:=True;
Ficha3.DbDLiquid.Active:=True;
Ficha3.DbLiquidTM.Active:=True;
Ficha3.Showmodal;
Ficha3.DbConfCarg.Active:=False;
Ficha3.DbMaquinas.Active:=False;
Ficha3.DbLiquid.Active:=False;
Ficha3.DbDLiquid.Active:=False;
Ficha3.DbLiquidTM.Active:=False;
Ficha3.Free;
end;
Pues bien lo que falla es la linea que he marcado.
Como siempre en la parte Uses del menu principal pongo a ElegirLiq y en ElegirLiq pongo el menu, es decir como siempre.
He hecho una prueba y he puesto la llamada de este form en otra opcion de menu pero solo para esta y asi si funciona, por qué? es que no puedo llamar a tres o mas forms? La prueba es esta
Código Delphi
[-]procedure TMenuPrincipal.EconmicaporMquina1Click(Sender: TObject);
var ficha:TElegirLiq;
begin
Ficha:=TElegirLiq.Create(Self);
Ficha.DbMaquinas.Active:=True;
Ficha.Showmodal;
Ficha.DbMaquinas.Active:=False;
Ficha.Free;
end;
Tambien he probado a llamarla desde TElecMaquinas pero me da el mismo error. En qué me estoy equivocando? Estoy desesperado por una cosa que creia que tenia bien controlada.
Trabajo con Delphi 5.
Gracias por vuestra ayuda.