Fórum Abrindo form com condição (if not FileExists) #509590

05/02/2015

0

Boa noite, estou tendo um problema no momento da execução do meu projeto, pois preciso que apareça o form 'fCaminho_banco, apenas se o arquivo onde esta o caminho do banco não estiver no seu destino correto, por exemplo. No evento Oncreate do dataModulo coloquei :

if not FileExists('c:\base.ini') then
begin
????????
end;

Minha duvida esta do que colocar nesse código, pois tentei de varias formas, e não deu certo. Acredito que tenha algo tambem em relação aos forms que estão no auto-create forms e os que estão no available forms. Bom, no meu projeto coloquei o dataModulo , fCaminho_banco e o fPrincipal no lado 'auto-create forms' e o restante dos forms no lado available forms.

A questão em si é que no momento de executar o projeto, se o arquivo do caminho do banco de dados (base.ini) não existir, então abra o form fCaminho_banco para criar o arquivo base.ini e tambem inserir atravez de um edit o caminho do banco, e caso o arquivo base.ini ja existir, então apenas abra o form fPrincipal. Se alguem puder me ajudar agradeço.
Jhon

Jhon

Responder

Posts

05/02/2015

Renato Rubinho

Buenos,

Segue código para, quando não encontrar o arquivo, abrir o form em modal para depois seguir o carregamento do sistema.
Não sei se no create do DataModule funciona corretamente. Se não funcionar, tenta no create do fPrincipal.

if not FileExists('c:\base.ini') then
begin
  Application.CreateForm(TfCaminho_banco,fCaminho_banco);
  fCaminho_banco.ShowModal;
  fCaminho_banco.Release;
end; 
Responder

Gostei + 0

06/02/2015

Jhon

Bom dia Rrubinho, Com os forms funciona perfeitamentamente, deu certo. Porem no meu projeto estou usando um datamodule. Bom, caso não tenha outra forma para funcionar com o datamobule, então vou tirar o datamodule e colocar o componente SQLConnection no form principal, mas minha pergunta então é : Tem problemas de usar o SQLConnection em um form normal ? Pois se não tiver problema vou fazer isso. Agradeço a atenção.
Responder

Gostei + 0

06/02/2015

Renato Rubinho

Por questão de organização, eu deixaria no DataModule mesmo.
Seu problema é apenas verificar se o arquivo existe antes de conectar o SQLConnection ?
Veja se colocando o código que passei no evento BeforeConnect do SQLConnection não resolve o que você precisa. Acredito que sim.
Responder

Gostei + 0

07/02/2015

Jhon

Na verdade, neste arquivo esta o caminho do banco de dados, então antes de ele conectar o sistema tem que identificar se tem o arquivo .ini ou não, pois o SQLConnection vai precisar deste arquivo para se conectar com o banco. Usando o código que me passou no datamodule da erro, as linhas ficam em vermelho, só sonsigo usar este codigo nos eventos de forms, acho que vou ter de colocar o componente sqlConection no form Principal para poder ter esta função do meu sistema.
Responder

Gostei + 0

09/02/2015

Renato Rubinho

Tem que funcionar também no DataModule.
Provavelmente está dando erro porque você não declarou a unit Forms no "uses" do seu DataModule que é necessária para a criação do Form.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar