Estoy creadno un procedimiento almacenado llamdo codigos
Código:
Y en visual basic lo tengo asi DROP PROCEDURE `CODIGO`// CREATE DEFINER=`root`@`localhost` PROCEDURE `CODIGO`(IN Criterios varchar(7)) BEGIN declare criterio VARCHAR(7); set criterio=Criterios; SELECT cod_cliente,nom_cliente, tdo_cliente, doc_cliente, rep_cliente, tel_cliente, cre_cliente, est_cliente FROM clientes WHERE cod_cliente LIKE criterio; END
Capa entidades= variables de todos los campos de la tabla clientes
Capa datos:
Código:
y por ultimo para llamar en el formulario tengo estoPublic Shared Function ObtenerClientePorCriterio(ByVal codigo As String) As List(Of EntCliente)
Dim list As New List(Of EntCliente)
Using cn = DataUtiles.LeerConexion
Try
Using cmd As New MySqlCommand("CODIGO", cn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("?Criterios", codigo)
cn.Open()
Dim reader As MySqlDataReader = cmd.ExecuteReader
While reader.Read
MsgBox(reader(1).ToString)
list.Add(LoadCliente(reader))
End While
End Using
Catch ex As MySqlException
MsgBox(ex.Message)
End Try
End Using
Return list
End Function
Private Shared Function LoadCliente(ByVal reader As IDataReader) As EntCliente
Dim cliente As New EntCliente
cliente.codigo = reader("cod_cliente").ToString
cliente.Nom = reader("nom_cliente").ToString
cliente.Tdo = reader("tdo_cliente").ToString
cliente.Doc = reader("doc_cliente").ToString
cliente.Rep = reader("rep_cliente").ToString
cliente.Tel = reader("tel_cliente").ToString
cliente.Cre = reader("cre_cliente").ToString
cliente.est = reader("est_cliente").ToString
Return cliente
End Function
Código:
al ejecutar el formulario en el mensaje si me da los datos pero no en el datagridview. a que se puede deber Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
If Asc(e.KeyChar) = 13 Then
Me.dgvclientes.AutoGenerateColumns = False
Me.dgvclientes.DataSource = NegCliente.ObtenerClientePorCriterio(Me.TextBox1.Text)
End If
End Sub


