[fpc-pascal] Firebird UDF
Codebue Fabio - P-Soft
f.codebue at p-soft.biz
Thu Mar 13 18:38:38 CET 2008
nothing todo...
ok restart:
library pudf;
{$mode objfpc}{$H+}
uses
Classes,
p_func in 'p_func.pas';
exports
pround name 'p_round';
{$R pudf.res}
begin
// DECLARE EXTERNAL FUNCTION pround
// DOUBLE PRECISION, INTEGER
// RETURNS DOUBLE PRECISION BY VALUE
// ENTRY_POINT 'pudf_pround' MODULE_NAME 'pudf';
end.
and
unit p_func;
{$mode objfpc}{$H+}
interface
function p_round(var valore: double; ndec: integer): double; cdecl;
implementation
uses
Classes, SysUtils;
function p_round(var valore: double; ndec: integer): double; cdecl;
var
i: integer;
risultato: double;
ndivisore: integer;
begin
risultato:= valore;
ndivisore:= 1;
for i:= 1 to ndec do
begin
risultato:= risultato*10;
ndivisore:= ndivisore*10;
end;
result:= round(risultato)/ndivisore;
end;
end.
someone can compile and install?
I can... but when I try to execute
select round(123.1233, 2) as nrounded from rdb$database
always some error!!!
Codebue Fabio
.-----------------------------.
_ \ __| _||
__/____|\__ \ _ \ _| _|
_| ____/\___/_| \__|
P-Soft di Codebue Fabio & C. sas
via B.Storti, 19
24060 - Chiuduno - BG
Italy
Phone: +39.030.839435
Fax: +39.030.5100306
Mobile: +39.348.3515786
.-----------------------------.
Web : www.p-soft.biz
EMail: f.codebue at p-soft.biz
More information about the fpc-pascal
mailing list