Dim globalReg As String Private lastSearchTerm As String Private lastFoundRow As Integer Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Private Sub banco_Click() FormCuentasporPagar2.Show End Sub Private Sub caja_Click() FormCaja.Show End Sub Private Sub Command1_Click() Unload Me End Sub Private Sub AgregarUsuarios_Click() FormUsuarios.Show End Sub Private Sub Command12_Click() BorrarRegistrosProveedores End Sub Private Sub Command2_Click() ' INDEXAR Tablamateriales x Codigo y Descripcion ' Dim conn As New ADODB.Connection ' conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\materiales2.mdb;" ' Comando SQL para crear índice en CODIGO ' Dim sqlCodigo As String ' sqlCodigo = "CREATE INDEX idx_codigo ON Tablamateriales (CODIGO)" ' conn.Execute sqlCodigo ' Comando SQL para crear índice en DESCRIPCION ' Dim sqlDescripcion As String ' sqlDescripcion = "CREATE INDEX idx_descripcion ON Tablamateriales (DESCRIPCION)" ' conn.Execute sqlDescripcion ' conn.Close ' Set conn = Nothing End Sub Private Sub Command10_Click() BorrarRegistrosProyectos End Sub Private Sub Command11_Click() BorrarRegistrosADO End Sub Private Sub Command3_Click() ProveedorRUT = "" ProveedorRazonSocial = "" ProveedorGiro = "" ProveedorDireccion = "" ProveedorComuna = "" ProveedorTelefono = "" ProveedorCorreo = "" Facturas22.Show End Sub Private Sub Command33_Click() Dim connMateriales2 As ADODB.Connection Dim rsMateriales2 As ADODB.Recordset Dim sql As String ' Crear la conexión ADODB para Access (.mdb) Set connMateriales2 = New ADODB.Connection connMateriales2.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\materiales2.mdb;" ' Abrir la conexión connMateriales2.Open ' Iniciar una transacción connMateriales2.BeginTrans ' Crear el Recordset y abrir la tabla TABLAMATERIALES Set rsMateriales2 = New ADODB.Recordset sql = "SELECT * FROM TABLAMATERIALES" rsMateriales2.Open sql, connMateriales2, adOpenKeyset, adLockOptimistic ' Recorrer todos los registros y establecer el campo STOCK a 0 Do Until rsMateriales2.EOF rsMateriales2.Fields("STOCK").Value = 0 rsMateriales2.Update rsMateriales2.MoveNext Loop ' Confirmar la transacción connMateriales2.CommitTrans ' Cerrar el recordset y la conexión rsMateriales2.Close Set rsMateriales2 = Nothing connMateriales2.Close Set connMateriales2 = Nothing MsgBox "Todos los valores de STOCK se han actualizado a 0 en la tabla TABLAMATERIALES." End Sub Private Sub Command44_Click() Dim conn As ADODB.Connection Dim sql As String ' Inicializar la conexión a la base de datos Set conn = New ADODB.Connection conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\FacturasCompra.mdb;" conn.Open ' Definir la consulta SQL para eliminar todos los registros de la tabla sql = "DELETE FROM TablaFacturas" ' Ejecutar la consulta On Error Resume Next conn.Execute sql If Err.Number <> 0 Then MsgBox "Error al eliminar registros: " & Err.Description Err.Clear End If On Error GoTo 0 ' Cerrar la conexión conn.Close Set conn = Nothing MsgBox "Todos los registros han sido eliminados.", vbInformation, "Éxito" End Sub Private Sub Command48_Click() Dim conn As ADODB.Connection Dim sql As String ' Inicializar la conexión a la base de datos Set conn = New ADODB.Connection conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\RegistrosCaja.mdb;" conn.Open ' Definir la consulta SQL para eliminar todos los registros de la tabla sql = "DELETE FROM TablaRegistrosCaja" ' Ejecutar la consulta On Error Resume Next conn.Execute sql If Err.Number <> 0 Then MsgBox "Error al eliminar registros: " & Err.Description Err.Clear End If On Error GoTo 0 ' Cerrar la conexión conn.Close Set conn = Nothing ' Dejar monto en 0 Declarar las variables de conexión y recordset Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim strSQL As String ' Crear el objeto de conexión Set cn = New ADODB.Connection ' Abrir la conexión a la base de datos Access cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\Cajas.mdb;" cn.Open ' Definir la consulta SQL para actualizar el campo MONTO a 0 strSQL = "UPDATE TablaCaja SET MONTO = 0" ' Ejecutar la consulta SQL cn.Execute strSQL ' Informar al usuario que los valores han sido actualizados MsgBox "Todos los valores del campo MONTO en la tabla TablaCaja han sido actualizados a 0.", vbInformation, "Actualización Completada" ' Cerrar la conexión cn.Close Set cn = Nothing MsgBox "Todos los registros han sido eliminados.", vbInformation, "Éxito" End Sub Private Sub Command5_Click() Dim conn As ADODB.Connection Dim sql As String ' Inicializar la conexión a la base de datos Set conn = New ADODB.Connection conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\RegistrosDebito.mdb;" conn.Open ' Definir la consulta SQL para eliminar todos los registros de la tabla sql = "DELETE FROM TablaRegistrosDebito" ' Ejecutar la consulta On Error Resume Next conn.Execute sql If Err.Number <> 0 Then MsgBox "Error al eliminar registros: " & Err.Description Err.Clear End If On Error GoTo 0 ' Cerrar la conexión conn.Close Set conn = Nothing ' Dejar monto en 0 Declarar las variables de conexión y recordset Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim strSQL As String ' Crear el objeto de conexión Set cn = New ADODB.Connection ' Abrir la conexión a la base de datos Access cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\Debitos.mdb;" cn.Open ' Definir la consulta SQL para actualizar el campo MONTO a 0 strSQL = "UPDATE TablaDebitos SET MONTO = 0" ' Ejecutar la consulta SQL cn.Execute strSQL ' Informar al usuario que los valores han sido actualizados MsgBox "Todos los valores del campo MONTO en la tabla TablaDebito han sido actualizados a 0.", vbInformation, "Actualización Completada" ' Cerrar la conexión cn.Close Set cn = Nothing MsgBox "Todos los registros han sido eliminados.", vbInformation, "Éxito" End Sub Private Sub Command8_Click() Dim conn As ADODB.Connection Dim sql As String ' Inicializar la conexión a la base de datos Set conn = New ADODB.Connection conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\RegistrosCredito.mdb;" conn.Open ' Definir la consulta SQL para eliminar todos los registros de la tabla sql = "DELETE FROM TablaRegistrosCredito" ' Ejecutar la consulta On Error Resume Next conn.Execute sql If Err.Number <> 0 Then MsgBox "Error al eliminar registros: " & Err.Description Err.Clear End If On Error GoTo 0 ' Cerrar la conexión conn.Close Set conn = Nothing ' Dejar monto en 0 Declarar las variables de conexión y recordset Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim strSQL As String ' Crear el objeto de conexión Set cn = New ADODB.Connection ' Abrir la conexión a la base de datos Access cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\Creditos.mdb;" cn.Open ' Definir la consulta SQL para actualizar el campo MONTO a 0 strSQL = "UPDATE TablaCredito SET MONTO = 0" ' Ejecutar la consulta SQL cn.Execute strSQL ' Informar al usuario que los valores han sido actualizados MsgBox "Todos los valores del campo MONTO en la tabla TablaCredito han sido actualizados a 0.", vbInformation, "Actualización Completada" ' Cerrar la conexión cn.Close Set cn = Nothing MsgBox "Todos los registros han sido eliminados.", vbInformation, "Éxito" End Sub Private Sub EliminarUsuario_Click() End Sub Private Sub facturascompra_Click() Facturas22.Show End Sub Private Sub facturasdecompras_Click() ProveedorRUT = "" ProveedorRazonSocial = "" ProveedorGiro = "" ProveedorDireccion = "" ProveedorComuna = "" ProveedorTelefono = "" ProveedorCorreo = "" Facturas22.Show End Sub Private Sub fechavencimiento_Click() FormCuentasPorPagar.Show End Sub Private Sub impimirreporrtefacturas_Click() ReporteFacturasPDF.Show End Sub Private Sub MantenciondeClientes_Click() MantencionClientes.Show End Sub Private Sub MenuProductos_Click() End Sub Private Sub mantenciondemateriales_Click() FormMateriales.Show End Sub Private Sub mantenciondeproveedores_Click() RegProveedores.Show End Sub Private Sub mantencionproyectos_Click() RegProyectos.Show End Sub Private Sub MenuSalidaSistema_Click() Unload Me End Sub Private Sub registrodeservicios_Click() CreaciondeServicios.Show End Sub Private Sub movimientoscaja_Click() FormreporteCajaxCodigo.Show End Sub Private Sub movimientoscredito_Click() FormReporteCreditoxCodigo.Show End Sub Private Sub movimientosdebito_Click() FormReporteDebitoxCodigo.Show End Sub Private Sub nuevo_Click() FormUsuarios.Show End Sub Private Sub registromateriales_Click() FormMateriales.Show End Sub ' Función para buscar y borrar el registro en la base de datos usando REGISTRO Private Sub BorrarRegistro(globalReg As String) On Error GoTo ErrorHandler ' Eliminar el registro de la base de datos TABLAPROYECTOS usando REGISTRO Dim conn As Object Set conn = CreateObject("ADODB.Connection") ' Configurar la cadena de conexión conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\Proyectos.mdb;" ' Abrir la conexión conn.Open ' Verificar si la conexión se abrió correctamente If conn.State = adStateOpen Then ' Construir la consulta DELETE usando REGISTRO Dim sqlDelete As String sqlDelete = "DELETE FROM TABLAPROYECTOS WHERE REGISTRO = " & globalReg ' Ejecutar la consulta DELETE conn.Execute sqlDelete MsgBox "Registro eliminado correctamente.", vbInformation Else MsgBox "Error al abrir la conexión a la base de datos.", vbCritical End If ' Cerrar la conexión conn.Close Set conn = Nothing Exit Sub ErrorHandler: MsgBox "Error al borrar el registro en la base de datos: " & Err.Description, vbCritical ' Cerrar la conexión si está abierta If conn.State = adStateOpen Then conn.Close End If Set conn = Nothing End Sub Private Sub MSFlexGrid1_DblClick() Static previousRow As Integer Static previousCol As Integer ' Obtener la fila y columna actual Dim rowIndex As Integer Dim colIndex As Integer rowIndex = MSFlexGrid1.row colIndex = 4 ' Suponiendo que REGISTRO está en la primera columna (columna 0) ' Verificar si se hizo doble clic en la columna 4 If MSFlexGrid1.col = colIndex Then ' Restaurar el color original de la celda anteriormente seleccionada If previousRow <> 0 And previousCol <> 0 Then MSFlexGrid1.row = previousRow MSFlexGrid1.col = previousCol MSFlexGrid1.CellBackColor = MSFlexGrid1.BackColor ' Restaurar color de fondo original MSFlexGrid1.CellForeColor = MSFlexGrid1.ForeColor ' Restaurar color de texto original End If ' Obtener el número de registro (REGISTRO) de la primera columna de la fila seleccionada globalReg = MSFlexGrid1.TextMatrix(rowIndex, 0) ' Mostrar el número de registro en un mensaje (opcional) ' MsgBox "Número de registro seleccionado: " & globalReg ' Cambiar el color de fondo y el color de texto de la celda seleccionada MSFlexGrid1.row = rowIndex MSFlexGrid1.col = colIndex MSFlexGrid1.CellBackColor = &H8000000D ' Color de fondo: vbYellow MSFlexGrid1.CellForeColor = &H0& ' Color de texto: vbBlack ' Solicitar nuevo valor para la celda Dim newValue As String newValue = InputBox("Ingrese nueva cantidad ", "Modificar Valor") ' Verificar si se ingresó un valor numérico válido Dim numericValue As Integer If IsNumeric(newValue) Then numericValue = CInt(newValue) ' Convertir a Integer ' Actualizar en el MSFlexGrid MSFlexGrid1.TextMatrix(rowIndex, colIndex) = CStr(numericValue) ' Convertir a cadena y actualizar ' Actualizar también en la base de datos ActualizarBaseDeDatos numericValue Else MsgBox "Ingrese un valor numérico válido.", vbExclamation End If ' Actualizar la celda anterior previousRow = rowIndex previousCol = colIndex End If End Sub Private Sub ActualizarBaseDeDatos(ByVal newValue As Integer) ' Ruta de tu base de datos de Access Const DB_PATH As String = "E:\ProyectosVisual Basic\Proyecto4\Project\Proyectos.mdb" ' Construir la cadena SQL para actualizar CANMAT con parámetros Dim strSQL As String strSQL = "UPDATE TABLAPROYECTOS SET CANMAT = ? WHERE REGISTRO = ?" ' Mostrar el SQL para depuración Debug.Print "SQL a ejecutar: " & strSQL ' Inicializar la conexión ADODB usando CreateObject Dim conn As Object Set conn = CreateObject("ADODB.Connection") On Error GoTo ErrorHandler ' Configurar la cadena de conexión conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DB_PATH & ";" ' Abrir la conexión conn.Open ' Crear objeto Command Dim cmd As Object Set cmd = CreateObject("ADODB.Command") ' Asignar conexión al comando Set cmd.ActiveConnection = conn ' Configurar el comando SQL con parámetros cmd.CommandType = 1 ' adCmdText cmd.CommandText = strSQL ' Agregar parámetros cmd.Parameters.Append cmd.CreateParameter("param1", adInteger, adParamInput, , newValue) cmd.Parameters.Append cmd.CreateParameter("param2", adVarChar, adParamInput, 50, globalReg) ' Ajusta el tamaño según tu campo REGISTRO ' Ejecutar la consulta SQL cmd.Execute ' Cerrar la conexión conn.Close ' Liberar recursos Set cmd = Nothing Set conn = Nothing Exit Sub ErrorHandler: MsgBox "Error al ejecutar la consulta SQL: " & Err.Description, vbExclamation If conn.State = 1 Then conn.Close ' adStateOpen Set cmd = Nothing Set conn = Nothing End Sub Private Sub registroproveedores_Click() RegProveedores.Show End Sub Private Sub RProyectos_Click() RegProyectos.Show End Sub Function BorrarRegistrosADO() As Boolean On Error GoTo ErrorHandler Dim cn As New ADODB.Connection Dim cmd As New ADODB.Command Dim sql As String Dim rsAntes As ADODB.Recordset Dim rsDespues As ADODB.Recordset Dim totalAntes As Integer Dim totalDespues As Integer ' Establecer la cadena de conexión para el archivo MDF cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\Materiales2.mdb;" ' Abrir la conexión cn.Open ' Configurar el comando y el recordset para contar registros antes del borrado cmd.ActiveConnection = cn cmd.CommandType = adCmdText ' Consulta para contar registros antes del borrado sql = "SELECT COUNT(*) AS TotalRegistros FROM TABLAMATERIALES" cmd.CommandText = sql Set rsAntes = cmd.Execute ' Obtener el número total de registros antes del borrado If Not rsAntes.EOF Then totalAntes = rsAntes.Fields("TotalRegistros").Value End If ' Cerrar el recordset rsAntes.Close Set rsAntes = Nothing ' Configurar el comando para borrar todos los registros de la tabla TABLAMATERIALES sql = "DELETE FROM TABLAMATERIALES" cmd.CommandText = sql ' Ejecutar la consulta de borrado cmd.Execute ' Consulta para contar registros después del borrado sql = "SELECT COUNT(*) AS TotalRegistros FROM TABLAMATERIALES" cmd.CommandText = sql Set rsDespues = cmd.Execute ' Obtener el número total de registros después del borrado If Not rsDespues.EOF Then totalDespues = rsDespues.Fields("TotalRegistros").Value End If ' Cerrar el recordset rsDespues.Close Set rsDespues = Nothing ' Cerrar la conexión cn.Close Set cn = Nothing ' Mostrar mensaje de éxito si se borraron registros MsgBox totalAntes & " registros antes del borrado. Ahora hay " & totalDespues & " registros en la tabla TABLAMATERIALES.", vbInformation ' Indicar éxito BorrarRegistrosADO = True Exit Function ErrorHandler: ' Manejar el error si ocurre MsgBox "Error al intentar borrar registros de la tabla TABLAMATERIALES: " & Err.Description, vbExclamation ' Cerrar la conexión si está abierta If cn.State = adStateOpen Then cn.Close End If Set cn = Nothing BorrarRegistrosADO = False End Function Function BorrarRegistrosProyectos() As Boolean On Error GoTo ErrorHandler Dim cn As New ADODB.Connection Dim cmd As New ADODB.Command Dim sql As String Dim rsAntes As ADODB.Recordset Dim rsDespues As ADODB.Recordset Dim totalAntes As Integer Dim totalDespues As Integer ' Establecer la cadena de conexión para el archivo MDF cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\Proyectos.mdb;" ' Abrir la conexión cn.Open ' Configurar el comando y el recordset para contar registros antes del borrado cmd.ActiveConnection = cn cmd.CommandType = adCmdText ' Consulta para contar registros antes del borrado sql = "SELECT COUNT(*) AS TotalRegistros FROM TABLAPROYECTOS" cmd.CommandText = sql Set rsAntes = cmd.Execute ' Obtener el número total de registros antes del borrado If Not rsAntes.EOF Then totalAntes = rsAntes.Fields("TotalRegistros").Value End If ' Cerrar el recordset rsAntes.Close Set rsAntes = Nothing ' Configurar el comando para borrar todos los registros de la tabla TABLAPROYECTOS sql = "DELETE FROM TABLAPROYECTOS" cmd.CommandText = sql ' Ejecutar la consulta de borrado cmd.Execute ' Consulta para contar registros después del borrado sql = "SELECT COUNT(*) AS TotalRegistros FROM TABLAPROYECTOS" cmd.CommandText = sql Set rsDespues = cmd.Execute ' Obtener el número total de registros después del borrado If Not rsDespues.EOF Then totalDespues = rsDespues.Fields("TotalRegistros").Value End If ' Cerrar el recordset rsDespues.Close Set rsDespues = Nothing ' Cerrar la conexión cn.Close Set cn = Nothing ' Mostrar mensaje de éxito si se borraron registros MsgBox totalAntes & " registros antes del borrado. Ahora hay " & totalDespues & " registros en la tabla TABLAPROYECTOS.", vbInformation ' Indicar éxito BorrarRegistrosProyectos = True Exit Function ErrorHandler: ' Manejar el error si ocurre MsgBox "Error al intentar borrar registros de la tabla TABLAPROYECTOS: " & Err.Description, vbExclamation ' Cerrar la conexión si está abierta If cn.State = adStateOpen Then cn.Close End If Set cn = Nothing BorrarRegistrosProyectos = False End Function Function BorrarRegistrosProveedores() As Boolean On Error GoTo ErrorHandler Dim cn As New ADODB.Connection Dim cmd As New ADODB.Command Dim sql As String Dim rsAntes As ADODB.Recordset Dim rsDespues As ADODB.Recordset Dim totalAntes As Integer Dim totalDespues As Integer ' Establecer la cadena de conexión para el archivo MDF cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\ProyectosVisual Basic\Proyecto4\Project\Proveedores.mdb;" cn.Open ' Configurar el comando y el recordset para contar registros antes del borrado cmd.ActiveConnection = cn cmd.CommandType = adCmdText ' Consulta para contar registros antes del borrado sql = "SELECT COUNT(*) AS TotalRegistros FROM TablaProveedores" cmd.CommandText = sql Set rsAntes = cmd.Execute ' Obtener el número total de registros antes del borrado If Not rsAntes.EOF Then totalAntes = rsAntes.Fields("TotalRegistros").Value End If ' Cerrar el recordset rsAntes.Close Set rsAntes = Nothing ' Configurar el comando para borrar todos los registros de la tabla TablaProveedores sql = "DELETE FROM TablaProveedores" cmd.CommandText = sql ' Ejecutar la consulta de borrado cmd.Execute ' Consulta para contar registros después del borrado sql = "SELECT COUNT(*) AS TotalRegistros FROM TablaProveedores" cmd.CommandText = sql Set rsDespues = cmd.Execute ' Obtener el número total de registros después del borrado If Not rsDespues.EOF Then totalDespues = rsDespues.Fields("TotalRegistros").Value End If ' Cerrar el recordset rsDespues.Close Set rsDespues = Nothing ' Cerrar la conexión cn.Close Set cn = Nothing ' Mostrar mensaje de éxito si se borraron registros MsgBox totalAntes & " registros antes del borrado. Ahora hay " & totalDespues & " registros en la tabla TablaProveedores.", vbInformation ' Indicar éxito BorrarRegistrosProveedores = True Exit Function ErrorHandler: ' Manejar el error si ocurre MsgBox "Error al intentar borrar registros de la tabla TablaProveedores: " & Err.Description, vbExclamation ' Cerrar la conexión si está abierta If cn.State = adStateOpen Then cn.Close End If Set cn = Nothing BorrarRegistrosProveedores = False End Function Private Sub ordenadaporbanco_Click() FormCuentasporPagar2.Show End Sub Private Sub reportedescripcion_Click() ReporteMaterialesxDescripcion.Show End Sub Private Sub reportematerialesdescripcion_Click() ReporteMaterialesxDescripcion.Show End Sub Private Sub reportematerialesxfechacompra_Click() ReporteMaterialesxFechaCompras.Show End Sub Private Sub reportematerialesxproveedor_Click() ReporteMaterialesporProveedor.Show End Sub Private Sub reportexfechafactura_Click() ReporteMaterialesxFactura.Show End Sub Private Sub targetadecredito_Click() FormCredito.Show End Sub Private Sub targetadedebito_Click() FormBanco.Show End Sub Private Sub cmdBuscar_Click() If TextRut.Text = "" Then MsgBox "El campo Rut debe ser llenado", vbInformation, "Aviso": TextRut.SetFocus: Exit Sub TextNombre = "" TextDireccion = "" With Rsclientes .Requery .Find "RUT='" & Trim(TextRut.Text) & "'" If .EOF Then MsgBox "No encontado", vbExclamation TextRut.Text = "" TextRut.SetFocus CmdNuevoCliente.Enabled = True Else CmdNuevoCliente.Enabled = False TextNombre.Text = .Fields("NOMBRE").Value TextDireccion.Text = .Fields("DIRECCION").Value CmdEliminar.Enabled = True CmdModificar.Enabled = True End If End With End Sub Private Sub cmdEliminar_Click() If MsgBox("Esta seguro que desea eliminar este cliente ? ", vbQuestion + vbYesNo) = vbYes Then Rsclientes.Delete Limpiar MsgBox "Cliente eliminado correctamente", vbInformation, "Aviso" TextRut.SetFocus Else Limpiar TextRut.SetFocus End If End Sub Private Sub cmdModificar_Click() If TextNombre.Text = "" Then MsgBox "El campo Nombre debe ser llenado", vbInformation, "Aviso": TextNombre.SetFocus: Exit Sub If TextDireccion.Text = "" Then MsgBox "El campo Direccion debe ser llenado", vbInformation, "Aviso": TextDireccion.SetFocus: Exit Sub If MsgBox("Esta seguro que desea modificar los datos de este cliente ? ", vbQuestion + vbYesNo) = vbYes Then With rscliente Rsclientes.Fields("NOMBRE").Value = TextNombre.Text Rsclientes.Fields("DIRECCION").Value = TextDireccion.Text Rsclientes.Update End With End If Limpiar TextRut.SetFocus End Sub Private Sub CmdNuevoCliente_Click() If TextRut.Text = "" Then MsgBox "El campo Rut debe ser llenado", vbInformation, "Aviso": TextRut.SetFocus: Exit Sub If TextNombre.Text = "" Then MsgBox "El campo Nombre debe ser llenado", vbInformation, "Aviso": TextNombre.SetFocus: Exit Sub If TextDireccion.Text = "" Then MsgBox "El campo Direccion debe ser llenado", vbInformation, "Aviso": TextDireccion.SetFocus: Exit Sub With Rsclientes .Requery .Find "RUT='" & Trim(TextRut.Text) & "'" If .EOF Then .Requery .AddNew !RUT = TextRut.Text !NOMBRE = TextNombre.Text !direccion = TextDireccion.Text .Update .Requery MsgBox "Cliente registrado correctamente", vbInformation, "Aviso" TextRut.SetFocus Limpiar Else MsgBox "No se puede agregar un cliente ya existente", vbInformation, "Aviso" Limpiar TextRut.SetFocus End If End With End Sub Sub Limpiar() TextRut.Text = "" TextNombre.Text = "" TextDireccion.Text = "" TextComuna.Text = "" Texttelefono.Text = "" TextCorreo.Text = "" TextFpago.Text = "" End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Form_Load() clientes CmdEliminar.Enabled = False CmdModificar.Enabled = False End Sub Private Sub cmdBuscar_Click() If TextRut.Text = "" Then MsgBox "El campo Rut debe ser llenado", vbInformation, "Aviso": TextRut.SetFocus: Exit Sub TextNombre = "" TextDireccion = "" With Rsclientes .Requery .Find "RUT='" & Trim(TextRut.Text) & "'" If .EOF Then MsgBox "No encontado", vbExclamation TextRut.Text = "" TextRut.SetFocus CmdNuevoCliente.Enabled = True Else CmdNuevoCliente.Enabled = False TextNombre.Text = .Fields("NOMBRE").Value TextDireccion.Text = .Fields("DIRECCION").Value CmdEliminar.Enabled = True CmdModificar.Enabled = True End If End With End Sub
Please keep input under 1000 characters