Cuando de acede a un fichero se abre su formulario de selección.
Fundamentalmente hay dos tipos
- Los que NO llevan fechas
- Los que SI llevan fechas
Por ejemplo los de artículos y clientes son fechas
Los de facturas ventas son con fechas
Damos unos modelos básicos para facilitar el trabajo
Son formularios divididos, que en la parte superior muestran los criterios que se desee aplicar rápidamente, y en la inferior los registros con los campos
Con la parte inferior está en modo Hoja de datos, se puede filtrar y ordenar por cualquier columna.
Origen del registro
El origen del registros de estos formularios debe ser un a consulta que se llame Selección y el nombre del formulario
En nuestro caso tenemos
- Selección artículos
- Selección clientes
- Selección facturas ventas
En la consulta normalmente ponemos todos los campos del fichero principal, y los campos auxiliares que creemos necesarios.
Por ejemplo en Facturas ventas, hemos puesto el nombre del cliente
El origen del registro esta vacío pues de poner automáticamente al pulsar el botón Buscar
Campos de Encabezado de formulario
Aquí ponemos los campos por los que queremos filtrar de modo directo
Por ejemplo el cliente, el selector de intervalos de fecha, la serie, el número, etc…
También algún selector que sea un grupo de opciones, con por ejemplo facturas cobradas o pendientes
Y los botones que vamos a usar en este formulario
Campos el detalle
En el detalle ponemos los campos que queremos mostrar en la gris de hoja de datos
Y en su Evento Al hacer doble clic, ponemos =EDITARSQL()
En la propiedad Información adicional (Tag) del formulario ponemos el campo clave, por ejemplo Factura
Código del formulario
El formulario modelo ya lleva el código necesario para hacerlo funcionar, que se analizara en detalle al hablar de los distintos botones
Pero en general lleva código para
El botón buscar: donde se construyen los criterios de búsqueda
Al poner la fecha inicial: que actualiza la final
Private Sub FechaInicial_AfterUpdate()
Me.FechaFinal = mesaño(Me.FechaInicial)
End Sub
Al abrir el formulario, que se pone en el primer campo de búsqueda
Private Sub Form_Open(Cancel As Integer)
Me.QCliente.SetFocus
End Sub
Al Leer el formulario, que actualiza el selector de fechas y activa o no los botones según los permisos del usuario
Private Sub Form_Load()
Me.SeleccionFecha = GetIniText(Me.Caption, «SeleccionFecha», 1)
Call FuncionSeleccionFecha(Me)
Call PermisosSeleccion(Me)
End Sub
Al cerrar, que quita el origen del registro
Private Sub Form_Close()
Me.RecordSource = «»
End Sub
Y el resto que sea necesario según los controles de cabecera