Formularios de selección

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

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.