[Lazarus-es] Variables en LazReport
Francisco Javier Solis Palma
fsolispa en gmail.com
Mar Jul 5 00:56:45 CEST 2011
Buenas tardes vi el mail que le mandaste a Ismael, tengo un problema
similar:
En el siguiente código lo que quiero es que si el número es igual a
"10", debe de colocarlo sin el ".0", debe de ser un número entero sin
decimal,
pero si el número es menor a "10", me debe de poner los decimales aunque
estos sean ceros ejemplo "9.0" o "8.0", hice la siguiente rutina, pero
al momento de que pasa los valores a lazreport me da el siguiente error:
El proyecto ***** ha lanzado una excepción EConvertErrorEConvertError
con el mensaje: Invalid argument index in format""
Cuando genero el Memo#, dentro de lazreport, tiene formato numérico, con
un dígito, algún comentario? de antemano gracias
procedure TModuloDatosFrm.frReport1UserFunction(const AName: String; p1, p2,
p3: Variant; var Val: Variant);
var
sdato: double;
Entero: Double;
Fraccion: Double;
begin
If AName = 'FORMATO' Then
Begin
sdato:=frParser.Calc(P1);
if sdato = 10 then
Begin
sdato := Int(sdato);
Val:=Format('%n', [sdato]);
End
else
Begin
Entero := Int(sdato);
Val:=format('%n', [Entero]);
Fraccion := Frac(sdato);
If Fraccion <> 0 Then
Val := Val + Format('%d', [Fraccion])
Else
Val := Val + Format('%.1d', [Fraccion]);
end;
end;
end;
More information about the Lazarus-es
mailing list