Fórum Dbexpress no Delphi 2005 (problemas no displayformat) #279349

28/04/2005

0

Estou usando o FB 1.5 com delphi 2005, e Dbexpress com sqlconection + sqldataset + datasetprovider + clientdataset + datasource, tenho que mostras os dados de uma determinada tabela em um dbgrid, porem a exibição dos valores fica assim ,1 e não 0,10, lembrando que na propriedade display format do clientdataset esta ,0.00.
Esta mesma aplicação esta rodando da mesma forma no delphi 7.
Minha duvida é se o dbexpress ou algum outro componente dele esta com erro no delphi 2005 para estar gerando esse formato de valor, ja tentei de tudo e nada da resultado. É a segunda vez que estou postando esta duvida aqui no forum e nimguem me responde.


Marioribeiro

Marioribeiro

Responder

Posts

29/04/2005

Marioribeiro

só pra citar o campo é do tipo numeric.
Sera que o meu problema é muito banal pra ninguem responder, ou o meu problema é muito dificil?

Ninguem teve este problema?


Responder

Gostei + 0

29/04/2005

Marioribeiro

e ai ninguem sabe, ou ocorreu tal problema??


Responder

Gostei + 0

29/04/2005

Vinicius2k

Colega,

Tenha um pouco de paciência... Insistindo desta forma seu tópico acabará por ser bloqueado por infringir as [url=http://forum.clubedelphi.net/viewtopic.php?t=6689]Regras de Conduta[/url], sem contar que já se trata de um tópico duplicado.

Leve em consideração que poquíssimos colegas estão utilizando o Delphi 2K5 em produção e por este motivo vc terá dificuldade em obter respostas.

T+


Responder

Gostei + 0

29/04/2005

Sanses

Eu desenvolvi recentemente uma aplicação no D2005. Só que usei os componentes IB. Mas não tive este problema. Você já atualizaou seu Delphi?? Já temos 2 atualizções para o D2005 disponíveis.

Sanses


Responder

Gostei + 0

29/04/2005

Marioribeiro

é amigo, tb testei com o componente IB e funcionou perfeitamente, por isso desconfio de algum problema no DBExpress, sei tb que ja existem 2 atualizações para o delphi 2005, mas como não sou registrado na Borland, não consegui baixar, estou usando o trial, se vc souber onde baixar as atualizações por favor me diga, ou me mande um link para elas.
Obrigado


Responder

Gostei + 0

29/04/2005

Cledesma99

Caro Colega : eu tive o mesmo problema que vc usando DbExpress, o problema sao os Campos BCD so iso que naum mostra direito o displayformat.

Soluçao : Pasar eses campos no seu banco de dados pra TFMBCD ou seja ampliar o tano deles se e un Numeric(8,2) amplialo a Numeric(15,2) ai funciona Blz.

cledesma99


Responder

Gostei + 0

29/04/2005

Marioribeiro

Caro amigo, obrigado pela dica, mas meus campos Numeric ja estão em 15,2.
Vc usa FB 1.5 com Dbexpress no Delphi 2005, e ocorre tudo normalmente? Instalou as atualizações?


Responder

Gostei + 0

29/04/2005

Cledesma99

Na verdade eu thia ese mesmo problema con Firebird 1.52 , mais resolvi dessa forma ai meus campos eran numeric(9,2) dai troquei pra numeric(15,2) ou (18,2) e funcionou Blz , Tenho sim o Update 2 do Delphi 2005

cledesma99


Responder

Gostei + 0

30/04/2005

Marioribeiro

O problema deve estar no update então, vc baixou da Borland? eu não tenho senha la, poderia me passar de onde baixou?


Responder

Gostei + 0

30/04/2005

Vinicius2k

[b:6164eba77c][color=red:6164eba77c]Atenção às [url=http://forum.clubedelphi.net/viewtopic.php?t=6689]Regras de Conduta[/url][/color:6164eba77c][/b:6164eba77c]

Não é permitida a solicitação ou fornecimento de nenhum tipo de material que contribua ou incentive a pirataria. Por favor, mantenham a discussão, se desejarem, mas sem nenhuma referencia a este tipo de material.


Responder

Gostei + 0

30/04/2005

Bon Jovi

Tb fui pego de surpreso com esse bug e na hora arrumei em pesquisa em grupos a saída abaixo, alterando a função FormatBcd da unit FMTBcd.pas ($(BDS)\Source):

function FormatBcd(const Format: string; Bcd: TBcd): string;
var
  Valor: Double;
begin
  Valor := BCDToDouble(Bcd);
  Result := FormatFloat(Format, Valor);

  (*
  if IsBcdNegative(Bcd) then
    Result := FormatOneBcd(GetFormat(Format, sectionNegative), Bcd)
  else if IsBcdZero(Bcd) then
    Result := FormatOneBcd(GetFormat(Format, sectionZero), Bcd)
  else
    Result := FormatOneBcd(GetFormat(Format, sectionPositive), Bcd);
  *)
end;


Faça a alteração em cima de uma cópia do FMTBcd.pas colocando no mesmo diretório dos fontes do seu projeto ou em diretório configurado no Library Path que fique antes do $(BDS)\lib. Depois dê Build.

Funciona, mas espero ainda ter uma solução melhor.


Responder

Gostei + 0

02/05/2005

Marioribeiro

Obrigado amigo, realmente funcionou. Sera que tendo os updates 1 e 2 do delphi 2005 tb sera necessario esta ´gambiarra´ ?
E sera que no Interbase(Borland) da o mesmo problema? se der é lamentavel.


Responder

Gostei + 0

16/03/2006

Sistemald

Olá,

estou com o mesmo problema, poré uso o vcl.net.

alguém conseguiu resolver?

alterei o seguinte o arquivo:
C:\Program Files\Borland\BDS\4.0\source\dotNet\db\Borland.Vcl.FMTBcd.pas

porém o problema persiste, depois altera-lo copie para a pasta lib e apaguei o outro arquivo que tinha na pasta lib, Borland.Vcl.FMTBcd.dcuil, dei um build all, mas não adiantou!


Responder

Gostei + 0

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

Aceitar