No sé si ya has verificado que el campo sea realmente 0 o algo como 0.0000000000021, poniendo un If de prueba como el que te comenté:
Cita:
Empezado por Al González
Haz la prueba de compararlo contra cero (If Campo.Value = 0 Then); puede que tenga una pequeña fracción no perceptible cuando se aplica el formato de dos decimales.
|
Ahora, al ver que utilizas TFloatField, casi no hay duda de que esa es la razón del problema.
Para valores monetarios usa mejor TCurrencyField, TFmtBCDField o TBCDField, ya que estos guardan el dato en formato de
punto fijo (siempre la misma cantidad de decimales), a diferencia de la clase TFloatField que lo hace en formato de
punto flotante (cantidad de decimales variable).
Saludos.
Al González.