Agregar datos al datagridview

tema enviado por carlosanpy en Visual Basic .NET
tema iniciado el 09/10/2009
Hola a todos Estoy trabajando con visual basic 2008 express y una base datos access Carga bien en el form_load El problema que tengo es que cuando presiono un boton guardar se guarda en la base datos pero no se refleja en el grid alguien podria darme una mano por favor Gracias Carlos Imports System.Data.OleDb Imports System.Data.DataRow Public Class frmBase Private MiConexion As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|" & "\costo01.mdb") Private MiAdaptadorMat As New OleDbDataAdapter("SELECT * FROM precios WHERE COS_MATMDO = 'MAT' ORDER BY COS_DESCR", MiConexion) Private MiDataSetMat As New DataSet() Private MiEnlazadorMat As New BindingSource 'Monedas Private MiAdaptadorMoneda As New OleDbDataAdapter("SELECT COS_MONEDA FROM precios GROUP BY COS_MONEDA", MiConexion) Private MiDataSetMoneda As New DataSet() Private MiEnlazadorMoneda As New BindingSource 'Unidad de medida Private MiAdaptadorUnimed As New OleDbDataAdapter("SELECT COS_UNIMED FROM precios GROUP BY COS_UNIMED", MiConexion) Private MiDataSetUnimed As New DataSet() Private MiEnlazadorUnimed As New BindingSource Private Sub Cargar_datos() MiEnlazadorMat.DataSource = Nothing Dim commandbuilderMat As New OleDb.OleDbCommandBuilder(Me.MiAdaptadorMat) 'Materiales Dim commandbuilderMoneda As New OleDb.OleDbCommandBuilder(Me.MiAdaptadorRD) 'Tipo moneda With MiAdaptadorMat .InsertCommand = commandbuilderMat.GetInsertCommand .DeleteCommand = commandbuilderMat.GetDeleteCommand .UpdateCommand = commandbuilderMat.GetUpdateCommand End With MiAdaptadorMat.Fill(MiDataSetMat) 'Materiales MiEnlazadorMat.DataSource = MiDataSetMat.Tables(0) Me.cmbMat.DataSource = Nothing Me.cmbMat.DataSource = MiEnlazadorMat Me.cmbMat.DisplayMember = "COS_DESCR" Me.cmbMat.ValueMember = "COS_COSTO" Me.cmbUnidadMat.DataSource = Nothing Me.cmbUnidadMat.DataSource = MiEnlazadorMat Me.cmbUnidadMat.DisplayMember = "COS_UNIMED" Me.cmbMonedaMat.DataSource = Nothing Me.cmbMonedaMat.DataSource = MiEnlazadorMat Me.cmbMonedaMat.DisplayMember = "COS_MONEDA" Me.MiAdaptadorMat.Update(CType(Me.MiEnlazadorMat.D ataSource, DataTable)) Me.txtCostoMat.Text = CStr(MiDataSetMat.Tables(0).Rows(0)("COS_COSTO")) Me.txtCostoMat.Text = String.Format("{0:#,##0.##}", Convert.ToDouble(txtCostoMat.Text)) Me.cmbMonedaMat.Text = CStr(MiDataSetMat.Tables(0).Rows(0)("COS_MONEDA")) Me.txtMonedaMat.Text = CStr(MiDataSetMat.Tables(0).Rows(0)("COS_MONEDA")) Me.txtFechaMat.Text = CStr(MiDataSetMat.Tables(0).Rows(0)("COS_FECHA")) Me.txtUnidadMat.Text = CStr(MiDataSetMat.Tables(0).Rows(0)("COS_UNIMED")) If cmbMat.SelectedItem(7) Is DBNull.Value Then 'Observaciones Me.txtObservacionesMat.Text = String.Empty Else Me.txtObservaciones.Text = cmbMat.SelectedItem(7) End If If cmbMat.SelectedItem(8) Is DBNull.Value Then 'Proveedor Me.txtProveedorMat.Text = String.Empty Else Me.txtProveedorMat.Text = cmbMat.SelectedItem(8) End If Me.GridMateriales.DataSource = Nothing Me.GridMateriales.DataSource = MiDataSetMat.Tables(0) MiEnlazadorMoneda.DataSource = Nothing MiAdaptadorMoneda.Fill(MiDataSetMoneda) 'Tipo de moneda MiEnlazadorMoneda.DataSource = MiDataSetMoneda.Tables(0) Me.cmbMonedaMat.DataSource = MiEnlazadorMoneda Me.cmbMonedaMat.DisplayMember = "COS_DESCR" ' MiEnlazadorUnimed.DataSource = Nothing MiAdaptadorUnimed.Fill(MiDataSetUnimed) 'Unidad de medida MiEnlazadorUnimed.DataSource = MiDataSetUnimed.Tables(0) Me.cmbUnidadMat.DataSource = MiEnlazadorUnimed Me.cmbUnidadMat.DisplayMember = "COS_UNIMED" 'Primero cuales seran visibles Me.GridMateriales.Columns("COS_MATMDO").Visible = False Me.GridMateriales.Columns("COS_ACTUAL").Visible = False 'Orden de las columnas Me.GridMateriales.Columns("COS_DESCR").DisplayInde x = 0 Me.GridMateriales.Columns("COS_COSTO").DisplayInde x = 2 Me.GridMateriales.Columns("COS_UNIMED").DisplayInd ex = 1 Me.GridMateriales.Columns("COS_MONEDA").DisplayInd ex = 3 Me.GridMateriales.Columns("COS_FECHA").DisplayInde x = 4 Me.GridMateriales.Columns("COS_MEMO").DisplayIndex = 6 Me.GridMateriales.Columns("COS_PROVEEDOR").Display Index = 5 'Encabezado de las columnas Me.GridMateriales.Columns("COS_DESCR").HeaderText = "Descripción" Me.GridMateriales.Columns("COS_COSTO").HeaderText = "Costo" Me.GridMateriales.Columns("COS_UNIMED").HeaderText = "Unidad" Me.GridMateriales.Columns("COS_MONEDA").HeaderText = "Moneda" Me.GridMateriales.Columns("COS_FECHA").HeaderText = "Fecha" Me.GridMateriales.Columns("COS_MEMO").HeaderText = "Observaciones" Me.GridMateriales.Columns("COS_PROVEEDOR").HeaderT ext = "Proveedor" 'Ancho de columnas Me.GridMateriales.Columns("COS_DESCR").Width = 250 Me.GridMateriales.Columns("COS_COSTO").Width = 100 Me.GridMateriales.Columns("COS_UNIMED").Width = 50 Me.GridMateriales.Columns("COS_MONEDA").Width = 80 Me.GridMateriales.Columns("COS_FECHA").Width = 70 Me.GridMateriales.Columns("COS_MEMO").Width = 300 Me.GridMateriales.Columns("COS_PROVEEDOR").Width = 150 'Alineacion de cada columna Me.GridMateriales.Columns("COS_COSTO").DefaultCell Style.Alignment = DataGridViewContentAlignment.BottomRight Me.GridMateriales.Columns("COS_UNIMED").DefaultCel lStyle.Alignment = DataGridViewContentAlignment.BottomRight Me.GridMateriales.Columns("COS_MONEDA").DefaultCel lStyle.Alignment = DataGridViewContentAlignment.BottomRight Me.GridMateriales.Columns("COS_FECHA").DefaultCell Style.Alignment = DataGridViewContentAlignment.BottomRight 'Formato de columnas numéricas Me.GridMateriales.Columns("COS_COSTO").DefaultCell Style.Format = "##,##0" 'Formato de encabezado Me.GridMateriales.Columns("COS_DESCR").HeaderCell. Style.Alignment = DataGridViewContentAlignment.MiddleCenter Me.GridMateriales.Columns("COS_COSTO").HeaderCell. Style.Alignment = DataGridViewContentAlignment.MiddleRight Me.GridMateriales.Columns("COS_UNIMED").HeaderCell .Style.Alignment = DataGridViewContentAlignment.MiddleRight Me.GridMateriales.Columns("COS_MONEDA").HeaderCell .Style.Alignment = DataGridViewContentAlignment.MiddleRight Me.GridMateriales.Columns("COS_FECHA").HeaderCell. Style.Alignment = DataGridViewContentAlignment.MiddleRight Me.GridMateriales.Columns("COS_MEMO").HeaderCell.S tyle.Alignment = DataGridViewContentAlignment.MiddleCenter End Sub Private Sub frmBase_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call Cargar_datos() End Sub Private Sub toolMaterialGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles toolMaterialGuardar.Click With MiAdaptadorMat .InsertCommand = New System.Data.OleDb.OleDbCommand .InsertCommand.Connection = MiConexion .InsertCommand.CommandText = "INSERT INTO Precios(COS_DESCR,COS_COSTO,COS_UNIMED,COS_MONEDA, COS_FECHA,COS_MATMDO,COS_ACTUAL,COS_MEMO,COS_PROVE EDOR) VALUES (@material,@costo,@medida,@moneda,@fecha,@matmdo,@ actual,@memo,@proveedor)" .InsertCommand.CommandType = System.Data.CommandType.Text .InsertCommand.Parameters.Add("@material", OleDbType.VarChar).Value = txtMaterialesNuevoMat.Text .InsertCommand.Parameters.Add("@costo", OleDbType.VarChar).Value = txtCostoEditMat.Text .InsertCommand.Parameters.Add("@medida", OleDbType.VarChar).Value = cmbUnidadMat.Text .InsertCommand.Parameters.Add("@moneda", OleDbType.VarChar).Value = txtMonedaMat.Text .InsertCommand.Parameters.Add("@fecha", OleDbType.VarChar).Value = dateMat.Text .InsertCommand.Parameters.Add("@matmdo", OleDbType.VarChar).Value = "MAT" .InsertCommand.Parameters.Add("@actual", OleDbType.VarChar).Value = "N" .InsertCommand.Parameters.Add("@memo", OleDbType.VarChar).Value = txtObservacionesEditMat.Text .InsertCommand.Parameters.Add("@proveedor", OleDbType.VarChar).Value = txtProveedorEditMat.Text .Update(CType(Me.MiEnlazadorMat.DataSource, DataTable)) End With cmbMat.Text = txtMaterialesNuevoMat.Text txtCostoMat.Text = txtCostoEditMat.Text MiConexion.Open() Dim Resultado = MiAdaptadorMat.InsertCommand.ExecuteNonQuery() MiConexion.Close() Call Cargar_datos() End Sub Private Sub toolMaterialNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles toolMaterialNuevo.Click txtMaterialesNuevoMat.Visible = True txtCostoEditMat.Visible = True cmbMonedaMat.Visible = True dateMat.Visible = True txtProveedorEditMat.Visible = True cmbUnidadMat.Visible = True txtObservacionesEditMat.Visible = True ' txtMaterialesNuevoMat.Text = "" txtCostoEditMat.Text = "" txtProveedorEditMat.Text = "" txtObservacionesEditMat.Text = "" ' dateMat.Text = Date.Today End Sub End Class