Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2011, 05:06
MaRiTo87
 
Fecha de Ingreso: diciembre-2010
Mensajes: 18
Antigüedad: 11 años, 8 meses
Puntos: 0
Modificacion Desde Datagridview

Bueno la cosa es asi tengo que modificar un valor de mi datagrid osea tengo una columna estado en la cual siempre que se agrega un pedido se inicializa como Pendiente, Lo que necesito es poder Modificar ese estado a realizado cuando hago click en el boton realizar pero no eh logrado mucho siempre me choco con lo mismo me da este error

"No coiciden los tipos de datos en la expresion de criterios"


aca les dejo el codigo tanto del boton como de la funcion modificar


boton Realizar:

Private Sub BtnRealizar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnRealizar.Click

Try
If Me.MigrillaListar.SelectedRows.Count > 0 Then
Dim f As New VisualizacionParaRealizar()
Dim Fila As DataGridViewRow ' variable utilizada para recorrer un For Each
Dim dr As DataRow
Dim grilla2 As New DataGridView
Dim Estado As String = "Realizado"
'Asignamos a la variable dv, el contenido de la grilla MiGrillaListar (Como un Puntero)


Dim dv As DataView = DirectCast(MigrillaListar.DataSource, DataView)

'Copiamos la estructura de la grilla (cantidad, nombres y tipo de Columnas)

f.TablaPedidos = dv.Table.Clone

'Usamos un For Each para recorrer cada una de las filas seleccionadas de MiGrillaListar
For Each Fila In Me.MigrillaListar.SelectedRows

'Creamos una nueva fila con la estructura correspondiente y la asignamos a la variable temporal "dr"
dr = f.TablaPedidos.NewRow

'Ahora recorremos cada una de las celdas de la fila
For i = 0 To Fila.Cells.Count - 1
'Copiamos de manera manual el contenido de cada una de las celdas
dr.Item(i) = Fila.Cells(i).Value

Next
' MsgBox(Fila.Cells(1).Value)

miSistema.ModificarEstado(Fila.Cells(1).Value, Fila.Cells(2).Value, Fila.Cells(3).Value, Fila.Cells(4).Value, Fila.Cells(5).Value, Fila.Cells(6).Value, Fila.Cells(7).Value, Fila.Cells(8).Value, Fila.Cells(9).Value, Fila.Cells(10).Value, Fila.Cells(11).Value, Fila.Cells(12).Value, Fila.Cells(13).Value, Fila.Cells(14).Value, Estado)

Next


End If
Catch ex As Exception
MessageBox.Show(ex.Message.ToString, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub




Codigo de la funcion Modificar: Public Overrides Sub Modificar(ByVal Objeto As Object)

Dim unPedido As Pedido = CType(Objeto, Pedido)
Dim unaConnection As OleDbConnection
unaConnection = Me.Conectar

'Carga los Pedidos en un DataSet
Dim unDataSetPedido As New DataSet
Dim unDataAdapterPedido As New OleDbDataAdapter("SELECT * FROM Pedido WHERE NroFactura = " & CStr(CType(Objeto, Pedido).NroFactura), unaConnection)
unDataAdapterPedido.Fill(unDataSetPedido, "Pedido")

'Agrega la nueva fila
Dim unaFila As DataRow = unDataSetPedido.Tables(0).Rows(0)
Dim unCommandBuilder As New OleDbCommandBuilder(unDataAdapterPedido)
unaFila.Item("Estado") = unPedido.Estado

'Actualiza
unDataAdapterPedido.Update(unDataSetPedido, "Pedido")

'Libera recursos
unCommandBuilder.Dispose()
unDataAdapterPedido.Dispose()
unDataSetPedido.Dispose()

unaConnection.Dispose()

End Sub

el error me lo da cuando hace el fill del dataAdapterPedido

desde ya muchisimas gracias