He logrado resolver el problema con el codigo que ha puesto caral y lo he modificado con solo ciertos campos quedando asi:
Código Delphi
[-]
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text:='select numreferencia, clvarticulo, descripcion, cantidad, costo, dscto, monto from compras where numreferencia =:Num';
adoquery1.Parameters[0].Value:=edit1.text;
adoquery1.Open;
el list out bonus me daba por que me faltaban dos puntos ( : );
Gracias a todos por el apoyo!!