Al ser una BBDD dbase, quizás te convega algo más simple que una sql.
Para el punto1, quizás te venga mejor un DBLookUpCombo, ya que rellena los elementos en la lista desplegable. Busca en el foro para más detalles, se ha hablado mucho sobre él.
Código Delphi
[-]
procedure boton1Click(...);
begin
if tabla1.Locate('Articulo', combo1.text,[locaseinsensitive]) then
begin tabla1.Edit; tabla1.Fieldbyname('cantidad').Asfloat :=
tabla1.Fieldbyname('cantidad').Asfloat + DBedit1.AsFloat;
tabla1.Post; Guardamos los cambios.
end;