Pues ahora no me cuadran las cosas.
Tienes definido en la base de datos que almacene con una precisión de 7 decimales, lo cual me parece correctísimo para no perder decimales en operaciones de tanto por ciento, divisiones, etc y, ¿ahora no quieres redondear?, ¿quieres despreciar toda esa exactitud que te está dando los 7 decimales? no lo entiendo

.
Yo lo que haría es especificar en delphi, (en los campos persistentes) la propiedad del TField Currency a true. Esto hace que se redondee a 2 decimales cuando se va a mostrar el dato, pero realmente guardará toda la precisión que quieres.
Por otra parte y al menos en españa, se permite legalmente redondear el monto total de una factura, pero no así las subpartes (iva, base imponible, etc). Tenlo en cuenta.
Otro detalle más (por si fueran pocos

) Mira con detenimiento las funciones RoundTo, simpleRoundTo, etc, ya que alguna de ellas depende de un parámetro de configuración del sistema, y determina si usará el tipo de redondeo (hacia el positivo más alto, hacia el positivo más bajo, etc).
Saludos