Calcular juros composto quot;Potenciação no FireBirdquot;
Olá pessoal,
Galera é o seguinte:
na tabela de duplicatas tenho o campo Valor, taxa de Juros, Dias de atrazo. ae
ae eu crio o campo virtuais com o valor do Valor corrigido
o mesmo já ta funcionando Blz no banco Postgres porém no FireBird não consegui ele não aceita o comando ^
alguém pode me dar uma ajuda de como fazer a sql no firebird funcionar o comando:
valor * (1+taxa/100)^(dias/30) <== sim é uma formula para calculo de juros composto
Alguém pode me ajudar ? :roll:
desde já agradeço!
Galera é o seguinte:
na tabela de duplicatas tenho o campo Valor, taxa de Juros, Dias de atrazo. ae
ae eu crio o campo virtuais com o valor do Valor corrigido
o mesmo já ta funcionando Blz no banco Postgres porém no FireBird não consegui ele não aceita o comando ^
alguém pode me dar uma ajuda de como fazer a sql no firebird funcionar o comando:
valor * (1+taxa/100)^(dias/30) <== sim é uma formula para calculo de juros composto
Alguém pode me ajudar ? :roll:
desde já agradeço!
Ajmsistemas
Curtidas 0
Respostas
Ajmsistemas
04/10/2006
Pessoal, achei uma maneira... criando uma UDF para calcular a potenciação... porém ela só me retorna 0
to colocando o codigo da dll que fiz mais a forma que ta sendo declarada a UDF por favor analizem e me digam onde to errando! desde já agradeço.
{ library TopUDFs;
uses
SysUtils, Classes, Controls, Math, Messages ;
Function Pot( base, expoente: double ):double; // Potenciação
begin
Result:= power( base, expoente);
end;
function fbPot(Vl ,Tx:Real; Tp:integer):Real; cdecl; Export ;
var
i,d:real;
begin
i := Tx/100;
d := Tp/30;
Result := Vl * Pot((1+i),D);
end;
{$R *.res}
exports
fbPot;
begin
end
}
{
DECLARE EXTERNAL FUNCTION POTENCIA
float,
float,
INTEGER
RETURNS float BY VALUE
ENTRY_POINT ´fbPot´ MODULE_NAME ´TopUDFs´;
}
sql = select potencia(100,5,90) from tab_conf
onde 100 = valor
5 = taxa
90 = N. dias
o que tem de errado? pois só retorna 0
:cry:
to colocando o codigo da dll que fiz mais a forma que ta sendo declarada a UDF por favor analizem e me digam onde to errando! desde já agradeço.
{ library TopUDFs;
uses
SysUtils, Classes, Controls, Math, Messages ;
Function Pot( base, expoente: double ):double; // Potenciação
begin
Result:= power( base, expoente);
end;
function fbPot(Vl ,Tx:Real; Tp:integer):Real; cdecl; Export ;
var
i,d:real;
begin
i := Tx/100;
d := Tp/30;
Result := Vl * Pot((1+i),D);
end;
{$R *.res}
exports
fbPot;
begin
end
}
{
DECLARE EXTERNAL FUNCTION POTENCIA
float,
float,
INTEGER
RETURNS float BY VALUE
ENTRY_POINT ´fbPot´ MODULE_NAME ´TopUDFs´;
}
sql = select potencia(100,5,90) from tab_conf
onde 100 = valor
5 = taxa
90 = N. dias
o que tem de errado? pois só retorna 0
:cry:
GOSTEI 0
Ajmsistemas
04/10/2006
Pessoal só para informar eu resolvi... o problema da UDF!
GOSTEI 0
Anderson Domingos
04/10/2006
Qual foi a solução que vc encontrou ????
GOSTEI 0