Desde luego existe algún error en el código justo antes de la asignación:
Código Delphi
[-]
Var
A,Lkm: Double;
begin
Lkm:=19,222222;
.
.
.
.
ShowMessage('Contenido de Lkm antes de asignar:'+FormatFloat(',0.00000',Lkm));
A:=Lkm;
ShowMessage('Contenido de a despues de asignar:'+FormatFloat(',0.00000',A));
Un Saludo.