Sección de código fuente Visual basic
En esta segunda parte se describen los detalles de como está formada la pantalla de "Control" (FormPrincipal), es decir la pantalla que da de alta, baja y modificación de datos (vista en la página anterior.)
Ventana de búsqueda:
Esta pantalla es la que se encarga de la búsqueda de datos en el programa. Esta es una sola pantalla, es decir no hay una ventana o formulario de búsqueda exclusivo para clientes, otro para Películas, otro para Productos etc..., si no que este solo formulario reutilizable se encarga de la búsqueda de datos de todas las secciones, inclusive de la pantalla de cobro o caja (FormCaja), y esto lo hice así para ahorrar un poco de recursos, aunque sea un poco mas complicado el tema del código.
Cuando se presiona el botón Buscar y estamos en la pantalla de Clientes, se ejecuta los siguientes procedimientos:
Private Sub CambiarInterface (seccion As Byte)
El procedimiento CambiarInterface está dentro del formulario de búsqueda y se ejecuta cuando se lo llama y el parámetro Sección es una variable de tipo byte que le indica mediante un Select Case como debe mostrar el formulario, siguiendo el ejemplo anterior, si presiono buscar en la pantalla de películas , se ejecuta :
CambiarInterface 1,
...el 0 es para los Clientes, el 1 es para Películas, el 3 indica productos y el cuatro proveedores .
Dentro de este procedimiento se le agregan en tiempo de ejecución al ListView los encabezados de columna correspondientes, se cambia el título del formulario (que en realidad es un Label, ya que el Form no tiene Caption), se le carga otro icono en la esquina superior izquierda, se cambian los Labels al costado de los TextBox de entrada de datos para buscar etc... Por ejemplo acá pueden ver que la pantalla es la misma pero adaptada para la búsqueda de Clientes cuando presionamos buscar y estamos en dicha sección:
...y también hay otra función llamada retornarValorSQL. Esta función simple de tipo String devuelve la cadena Sql que se utilizará para enviar al Recordset correspondiente para luego volcar los datos en el ListView. Es decir Cuando presionamos el botón de búsqueda se ejcuta primero una Sub llamada "Buscar", Al comienzo de esta Sub se ejecuta la función que retorna el Sql a usar, se traen los datos de la base y se vuelcan en el ListView.
Por último, si se encontró un dato , se habilita el botón Aceptar para poder mostrar los datos en la pantalla que estábamos, o también haciendo un doble click en el elemento del ListView.
Una vez que se encontró un dato y se pulsa Aceptar, se ejecuta el procedimiento ListView1_DblClick. un fragmento de esta rutina:
Private Sub ListView1_DblClick()
Dim Cod As Integer
Dim s As String
If ListView1.ListItems.Count = 0 Then Exit Sub 'Si no hay elementos salimos
With ListView1
Select Case secBuscar2
'Clientes
Case 0
Cod = CInt(.ListItems.Item(.SelectedItem.Index).SubItems(5))
rsCliente.MoveFirst
While CInt(Cod) <> CInt(rsCliente!Codigo)
rsCliente.MoveNext
DoEvents
Wend
FormPrincipal.Asignar_Datos_Clientes
Dentro de este procedimiento primero se comprueba que el .Count del Listview no es 0. Luego entra en el Select Case, y dependiendo de la variable secBuscar2, buscará en el Recordset de Clientes, o en el de películas, o en el de productos, etc...
Cuando se encontró el dato dentro del Recordset se llama al Procedimiento público FormPrincipal.Asignar_Datos_Clientes, que se encarga de mostrar los datos en los controles de cada pantalla, es decir en el FormPrincipal hay un procedimiento Asignar_Datos_Clientes, Asignar_Datos_Peliculas, Asignar_Datos_Productos y Asignar_Datos_Proveedores, todos estos son públicos, ya que si no sería imposible accederlos desde el formulario FormBuscar. (estos procedimientos se detallan mas adelante)
Luego descargamos el formulario de búsqueda (formBuscar) y ya quedan los datos presentados en dicha pantalla
Buscar en Recursos vb
Recursos visual basic - Buscar - Privacidad - Copyright © 2005 - 2009 - www.recursosvisualbasic.com.ar