Hola
Estoy perdido, pero me divierto mucho.
Probemos esto:
Código Delphi
[-]
ZSumaInventario.SQL.Add('update articulos set cantidad = :inv where ref = :cod');
ZSumaInventario.ParamByName('cod').Value := ZTemp.Fields[1].Value;
ZSumaInventario.ParamByName('inv').Value := IntToStr(strtoint(ZTemp.Fields[3].Value) + strtoint(ZInventario.Fields[3].Value));
Showmessage(ZSumaInventario.ParamByName('cod').Value);
Showmessage(ZSumaInventario.ParamByName('inv').Value);
Aqui puede estar el asunto, veamos que pasa.
Deberia:
el primer mensaje: Q2612A
el segundo mensaje: 10
Si se rompe algo no es mi culpa

Saludos