[firebase-br] Base de Dados Firebird??? Ajuda

Eduardo Jedliczka edujed em gmail.com
Qua Mar 29 11:27:41 -03 2006


Hum...

Bom, então (risos) você leu a mensagem até o fim... Legal...

Como demonstrou ter a "cabeça aberta", pois muitos usuários do QuantumGrid 
não querem saber de "trocar ele por nada", podemos "encontrar" algumas 
soluções.

Os componentes do IBO são drasticamente superiores aos Componentes que 
acompanham o Delphi (por isto não são grátis), e o IB_Grid quando 
configurado corretamente num IB_Query permite ordenar de forma crescente ou 
decrescente ao "clicar" na coluna desejada.

Reparei que num daqueles selects que você postou você utiliza o "IN"... 
saiba que este carinha aí é responsável por uma péssima performance. 
Experimente reescrever o select com "Exists" ou "inner join" para melhorar o 
desempenho mais ainda.

Agora quanto ao problema de não encontrar o dataset, o IBO precisa de um 
IB_DataSet e ele não usa os DATASETs originais do Delphi.

======================
Eduardo Jedliczka
Membro do TeamFB - FireBase
Apucarana - PR
======================

----- Original Message ----- 
From: "Hugo Ricardo" <hdricard em gmail.com>
To: <lista em firebase.com.br>
Sent: Wednesday, March 29, 2006 8:46 AM
Subject: Re: [firebase-br] Base de Dados Firebird??? Ajuda


> Obrigado Eduardo!
>
> Não foi com intensão que "fiz birra"... O meu objectivo é apreender e de 
> criar amigos e de no futuro poder ajudar as pessoas que como eu vão querer 
> apreender a utlizar Firebird!
>
> Ok, penso que o problema se resumeria mesmo ao DevExpress QuantumGrid!!! 
> Testei a mesma aplicação simplesmente substituindo a Grid do QuantumGrid 
> por uma Grid normal do componente do Delphi 6 "DataControls" e o resultado 
> foi extraordinário... Uma aplicação completamente diferente a nivel de 
> rapidez com apenas uma grid diferente!!!
>
> Só tenho a agradecer pela ajuda e apoio de todos os que tiveram paciência 
> em ajudar!
>
> Mais umas duvidas:
>
> - O melhor será utilizar os controls do IBObjects? u poderei utilizar os 
> controls por defeito do Delphi?
>
> - Fiz alguns testes com a Grid do IBObjects, mas consegui ligar um 
> DataSource que tenho dentro de um DataModule com esta Grid? Só é possivel 
> ligar DataSource's que estejam no mesmo Form da Grid?
>
> - Existe alguma Grid com as funcionalidades semelhantes à Grid do 
> QuantumGrid? Do tipo: ordenação por ordem Ascendente/Descendente? Pesquina 
> numa determinada coluna (para tal basta começar a escrever qq coisa e 
> vamos directamente para a linha da grid que contém o resultado 
> "inserido")?
>
> Deixo aqui o código que eu fiz para criar a conexão à Base de Dados do 
> "servidor" para possiveis comentários e ajuda em melhorar! O unico senão 
> que encontrei é o facto de ter que instalar sempre a Base de Dados no 
> "servidor" numa directoria "fixa":
>
> procedure TDM.DataModuleCreate(Sender: TObject);
> var
>  caminho, txt, s: string;
>  F: textfile;
> begin
>  try
>    Socert.Connected := False;
>
>    caminho := ExtractFilePath(ParamStr(0));
>    txt := caminho + 'path.txt';
>
>    AssignFile(F, txt);
>    Reset(F);
>    Readln(F, S);
>
>    if (S <> '') then
>    begin
>      Socert.DatabaseName := S + ':C:\dB\SOCERT.GDB';
>      if (Socert.Connected = False) then
>        Socert.Connected := True;
>    end
>    else
>    begin
>      if (suiInputDialog1.ShowModal = mrOk) then // Mensagem em que 
> pergunta pelo nome/endereço do servidor)
>      begin
>        Socert.DatabaseName := suiInputDialog1.ValueText + 
> ':C:\dB\SOCERT.GDB';
>        if (Socert.Connected = False) then
>          Socert.Connected := True;
>
>        Rewrite(F);
>        Writeln(F, suiInputDialog1.ValueText);
>      end
>      else
>      begin
>        F_Main.Close;
>        Exit;
>      end;
>    end;
>
>    CloseFile(F);
>
>    ClienteProduto.Open;
>    Clientes.Open;
>  except
>    Rewrite(F);
>    Writeln(F, '');
>    CloseFile(F);
>    suiMessageDialog1.ShowModal; // Mensagem de Erro
>    F_Main.Close;
>  end;
> end;
>
>
> OFF TOPIC:
>
> - Já tinha criado um novo tópico para este assunto!
> A minha aplicação Cliente/Servidor tem um campo foto (foto do cliente)! Na 
> Base de Dados apenas guardo o caminho para a foto. Se a aplicação estiver 
> a ser utilizada por um computador "cliente" em que este acede aos recursos 
> do computador "servidor", tais como, a Base de Dados e as fotos, a pasta 
> onde vão estar guardadas as fotos tem que estar partilhada!
>
> - A duvida é se existe outra forma de anexar fotos (já li que não é nada 
> boa politica guarda as fotos directamente na Base de Dados... 
> Simplificava-me em muito!), ou se existe forma de no acto de instalação 
> (InnoSetup/ISTool) criar uma pasta e partilhá-la?
>
> Mais uma vez um grande obrigado a todos os que me têm ajudado.
>
> Cumprimentos
> Hugo Ricardo
>
>
>
>


--------------------------------------------------------------------------------


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 





Mais detalhes sobre a lista de discussão lista