En esta sección crearemos la ventana de Buscar Proveedor para mas adelante usarla en la ventana de Compras.
Colabora y Suscribete a mi canal de
El formulario es una copia casi exacta de Buscar Clientes, solo con algunas variaciones, este formulario quedaría de la siguiente manera:
Código:
Lo primero es una variable a Nivel de formulario, en lo mas arriba:
Dim CodigoProveedor 'variable que controla la edición del proveedor
Lo segundo es hacer la consulta a la tabla proveedores y llenar el MSGrid con ese resultado:
Sub BuscarProveedor() Dim Sql As String Dim Filtro As String Dim Columnas As Integer 'IdUsuario,usuario,password_us,identificacion,nombres_apellidos,IdNivelUsuario Tipo = cmdTipoBusqueda.ListIndex Filtro = "" Select Case Tipo Case 0: Filtro = " NombreEmpresaPro like '%" & txtFiltro.Text & "%' " Case 1: Filtro = " NitEmpresaPro like '%" & txtFiltro.Text & "%' " Case 2: Filtro = " IdProveedor like '%" & txtFiltro.Text & "%' " End Select Sql = "Select IdProveedor, NombreEmpresaPro, NitEmpresaPro, TelefonoPro, DireccionPro, NombrePro From tblProveedores Where " & Filtro Columnas = 6 Call LlenarGrid(msGrid, Sql, Columnas) msGrid.ColWidth(0) = 0 msGrid.ColWidth(1) = 1100 msGrid.ColWidth(2) = 3500 msGrid.ColWidth(3) = 1800 msGrid.ColWidth(4) = 1800 msGrid.ColWidth(5) = 1800 msGrid.ColWidth(6) = 2000 msGrid.TextMatrix(0, 1) = "ID" msGrid.TextMatrix(0, 2) = "Razon Social / Nombre" msGrid.TextMatrix(0, 3) = "Identificación" msGrid.TextMatrix(0, 4) = "Teléfonos" msGrid.TextMatrix(0, 5) = "Dirección" msGrid.TextMatrix(0, 6) = "Nombre Proveedor" End Sub
En el código vemos que dependiendo de lo que seleccionemos en el Select cmbTipoBusqueda se hace el filtro (Nombre, Nit, ID)
El Botón datos, que su funcione es poder ver los datos del proveedor seleccionado:
Private Sub cmdDatosCliente_Click() IdCliente = msGrid.TextMatrix(msGrid.Row, 1) If IdCliente <> "" Then glob_ModificarProveedor = True frmProveedor.Show End If End Sub
La variable glob_ModificarProveedor debe ser declarada en el Modulo Conexión de tipo global:
Global glob_ModificarProveedor As Boolean
El Botón Facturas se deja pendiente para un futuro cuando se cree la parte de saldos de proveedor.
Botón de seleccionar, este se utiliza para cuando se abra el formulario de Buscar Proveedor desde el formulario de Compras:
Private Sub cmdSeleccionar_Click() Dim Codigo As Long Dim Identificacion As String Dim Identificacion As String Codigo = msGrid.TextMatrix(msGrid.Row, 1) If Codigo <> 0 Then If glob_FormularioSolicBuscarPro = "frmCompras" Then Identificacion = msGrid.TextMatrix(msGrid.Row, 2) NombreProveedor = msGrid.TextMatrix(msGrid.Row, 3) Call frmCompras.SeleccionarProveedor(Codigo, Identificacion, NombreProveedor) Unload Me End If End If End Sub
La variable glob_FormularioSolicBuscarPro debe crearse en el Modulo Conexión de tipo Global:
Global glob_FormularioSolicBuscarPro As String
El Evento Load del formulario:
Private Sub Form_Load() cmdTipoBusqueda.ListIndex = 0 If glob_FormularioSolicBuscarCli <> "" Then cmdSeleccionar.Enabled = True End If End Sub
Si el formulario de búsqueda se abre desde desde el Menú del formulario principal se inhabilita el botón Seleccionar, para eso se utiliza la variable glob_FormularioSolicBuscarCli .
Y en el textbox TxtFiltro en el evento KeyCode:
Private Sub txtFiltro_KeyUp(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then Call BuscarProveedor End If End Sub
En el código anterior al presionar Enter se hace la búsqueda de los proveedores
Para ir adelantando la ventana de compras se vera de la siguiente manera:
El vídeo explicativo: