Un modelo básico de formulario parta edición de registros es el de Artículos
Un formulario de 27 x 17 cm, con un pie de 1 cm de alto.
En el detalle ponemos los campos del registro, en el orden que nos parezca
El campo clave, en este caso Articulo, está bloqueado
Dado que el valor del campo clave se asigna en el formulario SQL Nuevo
En la propiedad Información Adicional (Tag) del formulario debe estar el nombre del campo clave, dado que muchas funciones del código usan el Tag para gestionar registros
En la propiedad en Datos no guardados del formulario se llama a la función =SubDirty(), que se encarga de controlar el estado de los botones del pie
Al pie hay insertado el subformulario SQL Edición botones
Que contiene los botones para Imprimir, Nuevo registro, Guardar y Salir
Subformularios auxiliares
Si hay que poner subformularios auxiliares que muestren información o permitan editarla, los podemos poner dentro del control Tab
En este ejemplo hay un subformulario que muestra las facturas ventas y sus líneas, del artículo de cabecera
Está vinculado con el principal por el campo Artículo
Y como es meramente informativo y no queremos que se puedan editar registros sus propiedades de datos están puestas a NO
Siempre ponemos en datos no guardados la llamada a la función =SUBDIRTY()
Aunque en realidad no es necesario en este caso, pues no podemos editar nada de este formulario
En este caso no hay código dado que no se ha previsto ningún proceso especial
Controles combo box
Tenemos un sistema previsto para tratar los combo box y permitir añadir registros o ir al registro que representan
En el campo familia hemos puesto en su propiedad al hacer doble clic: =IrA(«Familias»;»Familia»)
Una función que hemos creado que abre el formulario Familias y muestra el registro de la familia que tenemos en pantalla
Y en el evento Al no estar en la lista, ponemos un procedimiento de evento,
Que llama a código
Private Sub Familia_NotInList(NewData As String, Response As Integer)
Response = noexiste(«Familias», «Descripcion», NewData)
End Sub
Una función No existe, que le indicamos el formulario que se debe abrir, el campo que se debe llenar y le pasamos el valor entrado