Estoy desarrollando un proyecto con Delphi Berlin y Firemonkey y me encuentro con el siguiente problema, que intuyo que es básico, pero no consigo encontrarle solución.
Se trata simplemente de como acceder a objetos (variables y campos de edición que están en un formulario desde otro).
En las pruebas iniciales, tenía tan solo dos formularios y no tuve problema para acceder desde Form2 a variables y objetos que estaban en Form1 (el cual era el formulario principal del proyecto "Main Form" en options).
En cuanto he añadido más módulos y Form1, ha dejado de ser el formulario principal, el acceso al mismo desde el segundo formulario (Form2) no es posible, dándome error al intentarlo y pudiendo comprobar al hacer "debug" que no es posible el acceso a Form1.
A continuación está el código simplificado de ambos formularios, concretamente el error lo da en las siguientes lineas:
uQProvin.SQL.Text :='select * from ' + Form1.cBase + '.dbo.Provincias order by cNomPrv';
Form1.lEditProvin.items.Clear;
Gracias por cualquier aclaración o sugerencia.
Saludos,
Código Delphi
[-]
/******************* Formulario 1 **************
Unit uForm1;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,.
type
TForm1 = class(TForm)
lEditProvin: listEditor;
procedure ....
public
cBase, cCodFotos, RemoteServer: string;
nCodFotos: integer;
public
end;
var
fForm1: TForm1;
implementation
uses uLogin, uForm2;
......
unit uForm2;
interface
uses
System.SysUtils, .......
type
TfForm2 = class(TForm)
FooterLayout: TLayout....
private
public
end;
var
fForm2: TForm2;
implementation
uses uLogin, uForm1;
procedure TfForm2.FormCreate(Sender: TObject);
var lLocate: boolean;
SearchOptions: TLocateOptions;
sFields: TStringList;
i: integer;
begin
begin
With ClientModule1 do
begin
uQProvin.Close;
uQProvin.SQL.Text :='select * from ' + Form1.cBase + '.dbo.Provincias order by cNomPrv';
uQProvin.Open;
end;
Form1.lEditProvin.items.Clear;
end;
end;