Hola,
Probablemente es que reconoce el caracter "," como decimal. Prueba a sustituirlo por el caracter ".". Algo así :
Código Delphi
[-]
Data.sqtrans.SQL.Text:='UPDATE trans SET subtotal='+QuotedStr(
StringReplace(ed5.text, ',', '.',[rfReplaceAll, rfIgnoreCase])) ...