Galera eu criei uma tabela de configurações, onde eu coloco o tipo do parametro 
que quero controlar....conforme amigo ismair
a tabela fica assim
codigo(integer) | descricao(Varchar(255) )   | valor (varchar(5))
1                            Primeira Execução                  N
......

No formPrincipal no OnActive eu faço assim....

    DM.IBEmpresa.Open;
    DM.IBConfiguracoes.Open;

    if DM.IBConfiguracoesEXECUCAO.Value = 'S' then
    begin
       try
        Application.CreateForm(Tfrm_Empresa, frm_Empresa);
        try
          frm_Empresa.ShowModal;
        finally
          frm_Empresa.free;
        end;
      except
        MessageDlg('Erro ao abrir tela de Configurações.'+#13+#10+'Favor Avisar 
Suporte', mtError, [mbOK], 0);
      end;
    end;

--------------------------------------
E na tabela de configurações....antes de gravar eu verifico se o campo de razao 
foi preenchida....
    
if(DBEdit1.Text <> ' ') then
    begin
      dm.IBConfiguracoesEXECUCAO.Value:='N';
    end;

se ele foi preenchido eu gravos as alterações e fecho o form de configurações, 
caso contrario na proxima execução do sistema ele vai pedir para configurar 
novamente...

além disso em todas as telas antes de eu entrar eu verifico se as tabelas que 
possuem ForeingKey na tabela eu aviso para ser cadastrado antes de continuar...

Espero que ajude alguem a solução....sei que não ficou um modelo "elegante", 
mas está funcional..

Abs e obrigado pela ajuda

Ricardo Mendes
----------------------------------------- Mensagem Original Removida 
--------------------------------------------------
 

[As partes desta mensagem que não continham texto foram removidas]

Responder a