Hola!
Tengo este procedimiento aun en fase de prueba, cuando hago click en un boton se envia a traves del puerto serie (Com) la cadena:
Código Delphi
[-]procedure TMain.Button1Click(sender: TObject);
begin
ComPort.WriteStr('1, 4356' + #13#10);
end;
Cuando se recibe esta cadena se ejecuta este procedimiento:
Código Delphi
[-]procedure TDMSerie.ProcesaCadena(Sender: TObject; const Str: String)
begin
with TblCaptura do
begin
Append;
FieldByName('hfCaptura').Value := Now;
FieldbyName('ID').Value := MidStr(Str,1,1);
FieldByName('Valor').Value := MidStr(Str,3,7);
FieldByName('Suma').Value :=
StrToFloat(MidStr(Str,3,7)) + FieldByName('Suma').Value;
Post;
end;
DataCnx.ConsultaTotales;
end;
El Campo
Suma esta declarado como Float, con valor por defecto 0 y no debe ser Null.
El problema es que no efectua la suma y me envia el mensaje de error "el campo Suma no puede ser NULL"
Supongo es una tontera pero ¡¡ya se me trabaron las ultimas neuronas que sobreviven sin alcohol!!
Mi logica es:
Total vale inicialmente 0, cuando se recibe un dato de
valor entonces se suma:
Suma = Valor + 0; 4356 = 4356 + 0;
La siguiente vez :
Suma = Valor + Suma; 8712 = 4356 + 4356;
y asi sucesivamente es decir estoy totalizando todos los valores.
Agradesco su ayuda!!