Formatação com UDF

Firebird

30/03/2010

Pessoal olá,
Alguém sabe como posso fazer uma UDF para formatar um valor numérico da seguinte forma:

Preciso utilizar dentro de sentença SELECT.
Ex: Se o valor é 12430,87, eu queria que me retornasse uma string dessa forma '12.430,87'.
 
Agradeço desde já
Korporasi

Korporasi

Curtidas 0

Respostas

Wilson Junior

Wilson Junior

30/03/2010

De uma olhada neste link http://www.firebirdsql.org/index.php?op=useful&id=geldenhuis

Espero ter colaborado.
GOSTEI 0
Korporasi

Korporasi

30/03/2010

Wilson,
 
Primeiramente muito obrigado pela sua colaboração porém não estou obtento sucesso na função que estou tentando desolver, segue o código anexo:

library Formatacoes;
uses
  SysUtils,
  Classes;
{$R *.RES}
function FuncFormataFloat(pdValor: Double; psMascara: PChar): PChar; export;
begin
  Result := PChar(FormatFloat(PChar(psMascara), pdValor));
end;
exports
   FuncFormataFloat;
begin
end.
 
 
Estou registrando da seguinte forma:

declare external function FuncFormataFloat
  Double Precision,
  Varchar(30)
returns
  Varchar(30)
entry_point 'FuncFormataFloat'
module_name 'Formatacoes.dll';

Para testar estou dando o seguinte comando:

SELECT FUNCFORMATAFLOAT(2.3,'0.00') FROM RDB$DATABASE
 
Porém não me retorna nada.
 
O que estou fazendo de errado. Alguém pode m ajudar ???
Grato,
GOSTEI 0
Korporasi

Korporasi

30/03/2010

Será que alguém pode me ajudar ????
GOSTEI 0
Wilson Junior

Wilson Junior

30/03/2010

No link que passei no post anterior, olhe a parte sobre Debugging e veja o que está sendo feito.

Qualquer coisa pot aí.

Espero ter colaborado.
GOSTEI 0
POSTAR