Saludos...
te diré los pasos para un formulario de altas..
Codigos para el Formulario
Evento Load
Open Database Mi_base_de_datos.dbc ***Abrimos la base de datos
Select 1 *** Utilizamos el select 1 para referirnos a la tabla
use Mi_tabla.dbf *** Seleccionamos la tabla
********************************************
Ahora debemos crear unos textbox para tus datos...
Revisa la propiedad Enabled y ReadOnly de los textbox:
Enabled=.t.
ReadOnly=.f.
Una vez creado los textbox, Ahora agregamos 3 botones: Nuevo, Guardar y Salir.
En la propiedad Name de los botones los llamaremos asi:
Boton nuevo: cmdnuev
Botón Guardar: cmdguar
Botón Salir: cmdsal
Nota: este boton yo no lo utilizo, porque se supone que un formulario cuando lo abres debes estar listo para agregar datos y no presionando el boton nuevo..bueno es algo que a mi me gusta mucho, este codigo lo pongo el el evento Activate del Form, pero te explicaré mas adelante, si lo deseas)
Codigo Boton Nuevo:
*** Evento click:
thisform.IDCLIENTE1.value=cliente.idcliente+1
thisform.CLIENTE1.value=""
thisform.DIRECCION1.value=""
thisform.RFC1.value=""
Thisform.cliente1.Enabled=.t.
Thisform.direccion1.Enabled=.t.
Thisform.rfc1.Enabled=.t.
thisform.idcliente1.Enabled=.f.
Thisform.cliente.setfocus()
Thisform.cmdnuev.Enabled=.f.
Thisform.cmdguar.Enabled=.t.
Thisform.cmdsal.Enabled=.t.
Thisform.refresh
**************Fin del Codigo del boton Nuevo ************
Cuando pulses este boton, lo que hará, será preparar tus textbox para ingresar datos en ellos. (Los Valores: " " quiere decir que tus textbox son de tipo caracter).
Despues de que hayas agregado datos a los textbox pulsaras en guardar, pero antes de esto escribe este codigo en el boton guardar:
Codigo del Botón Guardar:
***Evento Click
Select 1
go bott
Locate for Mi_tabla.idcliente=Thisform.idcliente1.value
If found() then
replace campo_id_cliente with Thisform.idcliente.value
replace campo_cliente with Thisform.cliente1.value
replace campo_direccion with Thisform.direccion1.value
replace campo_rfc with Thisform.rfc1.value
Thisform.cliente1.Enabled=.f.
Thisform.direccion1.Enabled=.f.
Thisform.rfc1.Enabled=.f.
Thisform.cmdnuev.Enabled=.t.
Thisform.cmdguar.Enabled=.f.
Thisform.cmdsal.Enabled=.t.
Wait Window "Los datos se Actualizaron con éxito" Timeout .8
else
Append Blank *** Aquí es donde agregamos el append Blank
replace campo_id_cliente with Thisform.idcliente.value
replace campo_cliente with Thisform.cliente1.value
replace campo_direccion with Thisform.direccion1.value
replace campo_rfc with Thisform.rfc1.value
Thisform.cliente1.Enabled=.f.
Thisform.direccion1.Enabled=.f.
Thisform.rfc1.Enabled=.f.
Thisform.cmdnuev.Enabled=.t.
Thisform.cmdguar.Enabled=.f.
Thisform.cmdsal.Enabled=.t.
Wait Window "Los datos se Guardaron con éxito" Timeout .8
Thisform.refresh
endif
*************** fin del Codigo del Botón Guardar *****************
Nota: Existen otras opciones para el boton guardar, pero por ahora este es básico para que funcione bien el formulario.
Codigo del botón Salir:
*** Evento Click
wait window "Cerrando Formulario" timeout .8
Thisform.release
************************ fin del codigo del boton salir ****************
Nota: Para los colegas Programadores: El Append Blank es mejor utilizarlo en el botón Guardar, porque si lo agregamos en el boton nuevo el usuario podría no terminar el proceso y dejaría una fila en blanco en la tabla.
**************************
Edith: Espero te sea de utilidad, este codigo es de modo orientado a objetos.
cualquier cosa estoy a tus ordenes..
Suerte►