danielrgoes Postado Fevereiro 24, 2010 Denunciar Share Postado Fevereiro 24, 2010 Boa Tarde pessoalestou com um problema meu sistema tem acesso ao banco de dados firebird que fica no meu servidor\\Servidor1\c\Banco\banco.fdbquando eu inicio o meu datamodulo eu colocoquei pra dar umtry conexao.open (TSQLConnection); cds_tabela.open; sql_tabela.open;except ShowMessahe ('Erro ao conectar no banco de dados'); application.termined;end;ou seja se der erro para abrir o banco ele não entra do sistema e exibi um erromais eu depuguei o sistema e mesmo sem conexao com o meu servidor o sistema passa pela linhaconexao.opene vai da erro nacds_opennão entra na excessao abre um monte de tela com erro ao se conectar com \\\Servidor1gostaria de antes de abrir o sistema verificar se tenho conexao com o meu Servidor1tem como faze isso? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Fevereiro 24, 2010 Denunciar Share Postado Fevereiro 24, 2010 a conexão é remota ou local ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 danielrgoes Postado Fevereiro 24, 2010 Autor Denunciar Share Postado Fevereiro 24, 2010 Remota pelo IP 192.6.1.4 por exemplo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Fevereiro 24, 2010 Denunciar Share Postado Fevereiro 24, 2010 estou com um problema meu sistema tem acesso ao banco de dados firebird que fica no meu servidor\\Servidor1\c\Banco\banco.fdbgostaria de antes de abrir o sistema verificar se tenho conexao com o meu Servidor1Conexão Remota pelo IP 192.6.1.4 por exemploO caminho ficaria assim: 192.6.1.4:c:\Banco\banco.fdbno evento onCreate do seu Form coloque::try IBDatabase1.Connected := True; except ShowMessage('não foi possível realizar a conexão com o BD'); end; no OnClose ou OnDestroy do form coloque: try if IBTransaction1.InTransaction then IBTransaction1.Commit; IBDatabase1.Connected := False; except ShowMessage('erro de comunicação com o BD'); end;abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 danielrgoes Postado Fevereiro 25, 2010 Autor Denunciar Share Postado Fevereiro 25, 2010 Jhonas da o mesmo erroCDS_Tabela: Cannot perform this operation on a closed datasete fica dando esse erro varias vezes Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Fevereiro 26, 2010 Denunciar Share Postado Fevereiro 26, 2010 CDS_Tabela: Cannot perform this operation on a closed datasetCDS_Tabela: Não pode executar esta operação em um dataset fechadoOBS: existe algum comando para uso desta tabela antes que a conexão com o banco tenha sido feitaneste caso voce deverá procurar no seu código onde esta esse comando e troca-lo de lugar, pois ele esta antes do comando de conexão com o banco de dados.outro motivo seria ... foi feito a conexão com o banco de dados, mas a tabela não foi aberta ( CDS_Tabela.Open ) por isso ocorre esse errro.abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 danielrgoes Postado Março 4, 2010 Autor Denunciar Share Postado Março 4, 2010 Jhonas o meu problema esta o seguinte no evento DataModuleCreate tem o codprocedure Tmodulo.DataModuleCreate(Sender: TObject);begin try conexao.Close; conexao.LoadParamsFromIniFile('bancofb.ini'); conexao.open; except raise Exception.create('Erro ao conectar o banco de dados'); Application.HandleException(Application); application.Terminate; // -------------- abre as tabelas do banco ---------------------- cds_funcionario.Open; sql_funcionario.Open; end; end;Oque esta acontecendo é que quando tenta da um .Open na conexao e esta fora da rede gera a minha excessaoraise Exception.create('Erro ao conectar o banco de dados');porem em vez de fechar a aplicação como eu mando application.Terminate;aparece uns 20 erros desseCDS_Tabela: Cannot perform this operation on a closed dataseteu gostaria que gerase minha excessao e fechase a aplicaçao Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Março 5, 2010 Denunciar Share Postado Março 5, 2010 procedure Tmodulo.DataModuleCreate(Sender: TObject);aparece uns 20 erros desseCDS_Tabela: Cannot perform this operation on a closed datasettire a rotina de conexão do banco de dados de dentro dessa procedure abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
danielrgoes
Boa Tarde pessoal
estou com um problema meu sistema tem acesso ao banco de dados firebird que fica no meu servidor
\\Servidor1\c\Banco\banco.fdb
quando eu inicio o meu datamodulo eu colocoquei pra dar um
try
conexao.open (TSQLConnection);
cds_tabela.open;
sql_tabela.open;
except
ShowMessahe ('Erro ao conectar no banco de dados');
application.termined;
end;
ou seja se der erro para abrir o banco ele não entra do sistema e exibi um erro
mais eu depuguei o sistema e mesmo sem conexao com o meu servidor o sistema passa pela linha
conexao.open
e vai da erro na
cds_open
não entra na excessao abre um monte de tela com erro ao se conectar com \\\Servidor1
gostaria de antes de abrir o sistema verificar se tenho conexao com o meu Servidor1
tem como faze isso?
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.