Formulario de ventas oO?

Iniciado por ezugaru, 23 Abril 2009, 17:27 PM

0 Miembros y 1 Visitante están viendo este tema.

Hadess_inf

Cita de: ezugaru en  8 Mayo 2009, 23:34 PM
sorry pero entré en pánico

Como todos en algun momento. xD

ezugaru

ok, aqui voy de nuevo . . .  ya ando en otro form programando las consultas de productos, pero al querer llenar la grilla no manda nada, queda en blanco y no se que pasa, este codigo es el que siempre he usado, pero poa alguna razon ahora no hace efecto, se los pongo:


Imports MySql.Data
Imports MySql.Data.MySqlClient
Imports System

Public Class consulta_productos

    Dim lector As MySqlDataReader
    Dim con As New MySqlConnection
    Dim comando As New MySqlCommand
    Dim adaptador As New MySqlDataAdapter
    Dim consulta, consulta2 As String
    Dim datos As New DataTable
    Dim DS As New DataSet

    Private Sub id_prd_KeyDown(ByVal sender As System.Object, ByVal e As KeyEventArgs) Handles id_prd.KeyDown

        If e.KeyCode = Keys.Enter Then

            con = New MySqlConnection
            con.ConnectionString = "server = 192.168.1.151;" & "user = root;" & "password = 18281e78a8;" & "database = rocar;"

            Try

                con.Open()
                consulta = "SELECT id_prd from inventario where id_prd='" & id_prd.Text & "'"
                comando.Connection = con
                comando.CommandText = consulta
                adaptador.SelectCommand = comando

                If adaptador.Fill(datos) = Nothing Then

                    MsgBox("Clave no encontrada, verificala")
                    id_prd.Text = Nothing
                    id_prd.Focus()

                Else

                    consulta2 = "SELECT DISTINCT inventario.id_prd,inventario.descripcion,marcas.marca,marcas.cantidad,marcas.precio_lista FROM inventario,marcas WHERE inventario.id_prd='" & id_prd.Text & "' AND marcas.id_prd='" & id_prd.Text & "'"
                    MsgBox(consulta2)
                    comando.Connection = con
                    comando.CommandText = consulta2
                    adaptador.SelectCommand = comando

                    Me.consulta_dgv.DataSource = adaptador.Fill(datos)


                    id_prd.Text = Nothing
                    id_prd.Focus()

                    'End While

                End If

            Catch ex As Exception

                MsgBox("Se produjo el siguiente error: " & ex.Message)

            End Try

            datos.Reset()
            con.Dispose()
            consulta = Nothing

            id_prd.Text = Nothing
            id_prd.Focus()

        End If

    End Sub
End Class


ezugaru

Resuelto, jaja, voy a ir poniendo aqui como estoy solucionando estos detalles por si a alguien le pasa lo mismo pues se de una idea que le pasa, no creo que sea el uinico que tenga éstos problemas, resulta que yo le añadía en la vista de diseño las columnas al Datagrid y al parecer eso ocasionaba algun conflicto al momento de pasar el datatable al datagrid, y pues dejo que el datatable le ponga las comunas con los nombres de las columnas al datagrid, el codigo queda asi:



Private Sub id_prd_KeyDown(ByVal sender As System.Object, ByVal e As KeyEventArgs) Handles id_prd.KeyDown

        If e.KeyCode = Keys.Enter Then

            con = New MySqlConnection
            con.ConnectionString = "server = 192.168.1.151;" & "user = root;" & "password = 18281e78a8;" & "database = rocar;"

            Try

                con.Open()
                consulta = "select id_prd from inventario where id_prd ='" & id_prd.Text & "'"
                comando.Connection = con
                comando.CommandText = consulta
                adaptador.SelectCommand = comando

                If adaptador.Fill(datos) = Nothing Then

                    MsgBox("Clave no encontrada, verificala")
                    id_prd.Text = Nothing
                    id_prd.Focus()

                Else

                    consulta = "SELECT DISTINCT inventario.id_prd,inventario.descripcion,marcas.marca,marcas.cantidad,marcas.precio_lista FROM inventario,marcas WHERE inventario.id_prd='" & id_prd.Text & "' AND marcas.id_prd='" & id_prd.Text & "'"

                    comando.Connection = con

                    comando.CommandText = consulta

                    adaptador.SelectCommand = comando

                    datos.Clear()

                    adaptador.Fill(datos)

                    consulta_dgv.DataSource = datos
                    id_prd.Text = Nothing
                    id_prd.Focus()

                End If

            Catch ex As Exception

                MsgBox("Se produjo el siguiente error: " & ex.Message)

            End Try

            con.Dispose()

        End If

    End Sub



Y tambien agregue una busqueda por descripcion, por ejemplo si quieren buscar todos los articulos de un auto en especifico, digamos una urvan, un tsuru, un cirrus, solo ponen la palabra en el textbox y la busqueda se ejecuta buscando todas las coincidencias posibles:



Private Sub describe_KeyDown(ByVal sender As System.Object, ByVal e As KeyEventArgs) Handles describe.KeyDown

        If e.KeyCode = Keys.Enter Then

            con = New MySqlConnection
            con.ConnectionString = "server = 192.168.1.151;" & "user = root;" & "password = 18281e78a8;" & "database = rocar;"

            Try

                con.Open()

                consulta = "SELECT inventario.id_prd,inventario.descripcion,marcas.marca,marcas.cantidad,marcas.precio_lista from inventario,marcas WHERE inventario.descripcion LIKE '%" & describe.Text & "%' AND inventario.id_prd=marcas.id_prd"
                comando.Connection = con
                comando.CommandText = consulta
                adaptador.SelectCommand = comando
                datos.Clear()

                If adaptador.Fill(datos) = Nothing Then

                    MsgBox("Descripcion no encontrada, usa otra palabra")
                    describe.Text = Nothing
                    describe.Focus()

                Else

                    consulta_dgv.DataSource = datos
                    describe.Text = Nothing
                    id_prd.Focus()

                End If

            Catch ex As Exception

                MsgBox("Se produjo el siguiente error: " & ex.Message)

            End Try

            con.Dispose()

        End If

    End Sub



cualquier sugerencia o comentario será muy bien recibido.

ezugaru

Soy yo de nuevo, sigo vivo !!!! ya casi temino el sistema :D solo estoy terminando lo que son pedidos y devoluciones con sus respectivos reportes y estará terminado, una vez hecho así subo la solucion del proyecto para todo aquel que quiera checarla, y pueda ya sea tomar parte de lo que hice o bien, corregirme y ayudarme a mejorar mi modo de programar, saludos!