Nesta terceira e última etapa deste tutorial, vamos ver como realizar a chamada do formulário de cadastro de clientes que esta situado dentro do arquivo “PkgModular.Bpl”. É importante ressaltar que trabalhando desta forma, poderemos realizar diversos tipos de alteração no formulário e distribuir estas alterações apenas substituindo o arquivo bpl do usuário final, não havendo assim a necessidade de alteração do arquivo executável, o que poderá garantir a estabilidade da versão em caso de necessidade de pequenas correções de telas e funções.

 

Então vamos lá:

 

Primeiramente abra o aplicativo criado inicialmente e vamos criar uma pequena procedure padrão para realização da chamada dos diversos formulários criados em arquivos Bpl. Segue abaixo o código deste proecedure:

 


procedure TFrmPrincipal.AbreFormularioBpl(NomeClasse: String);
var Classe: TPersistentClass;
begin
  Classe := GetClass(NomeClasse);
  if Classe <> nil then
  begin
    with TComponentClass(Classe).Create(Application) as TCustomForm do
         Visible := True;
  end;
end;

 
Eu criei no formulário principal apenas como exemplo. Cada um deverá criar no local que achar mais conveniente.

 

Agora, depois de criado esta procedure, vamos substituir a chamada anterior do formulário para a chamada através desta procedure criada. No projeto inicial o formulário de cadastro era chamado através da seguinte instrução:

 


procedure TFrmPrincipal.ActCadClienteExecute(Sender: TObject);
begin
  Application.CreateForm(TFrmCadCli,FrmCadCli);
  try
    FrmCadCli.ShowModal;
  finally
    FreeAndNil(FrmCadCli);
  end;
end;

Agora ficará assim:

 



procedure TFrmPrincipal.ActCadClienteExecute(Sender: TObject);
begin
  AbreFormularioBpl('TFrmCadCli');
end;

Observe que apenas chamamos a “procedure AbreFormularioBpl” criada anteriormente, passando como parâmetro o nome da classe que instanciamos no formulário de cadastro na sessão “Initialization”, informado na segunda parte do tutorial. É extremamente necessário lembrar que o nome desta classe deverá ser o mesmo usado no “RegisterClass” que no caso foi “TFrmCadCli”.

 

Com isso encerramos este pequeno tutorial. Espero que seja de grande utilidade para todos.

 

Esta disponibilizada os códigos criados neste tutorial na opção Download da página.