Un saludo especial desde Colombia.
son varias preguntas en 1.
1- validar solo texto, sin número: una idea esta en un post más adelante
2- el enter se controla con el siguiente código:
send(handle(this),256,9,long(0,0))
return 1
debes crear un evento nuevo en el DW_CONTROL, el ID de evento es PBM_ DOWNPROCESSENTER
3- no entiendo el GRABE sin pulsar ENTER O TAB... grabe en la DB o simplemente el DW acepte los datos?..
para lo primero no le veo sentido... para lo segundo utilizas la función ACCEPTTEXT, lo ideal es que la pongas en el evento ITEMCHANGED, pero para lo que necesitas, la puedes colocar en el evento DOWNKEY o en el EDITCHANGED, pero debes tener cuidado porque esta función dispara automáticamente el evento ITEMCHANGED del datawindow.
espero haber contribuido para resolver el problema