
06/06/2008, 10:06
|
| | Fecha de Ingreso: abril-2008
Mensajes: 19
Antigüedad: 17 años Puntos: 0 | |
Problema con consulta de actualizacion Tengo un datagrid filtrado entre fechas con una columna checkbox. Me
interesa que se actualice la base de datos con los checkbox marcados, tengo
el siguiente código:
Dim conexion As OleDbConnection = New OleDbConnection("Provider=
Microsoft.Jet.OLEDB.4.0;Data Source=C:\FACTURACION\FACTURACION.MDB")
Dim da As OleDbDataAdapter = New OleDbDataAdapter("Select
FACTURAR,NUMEROALBARAN,FECHAALBARAN FROM ALBARAN WHERE FECHAALBARAN
>=@FINICIO AND FECHAALBARAN<=@FFIN ORDER BY FECHAALBARAN", conexion)
Dim ds As DataSet = New DataSet
da.SelectCommand.Parameters.AddWithValue("@FINICIO ",
Me.FINICIO.Value.Date)
da.SelectCommand.Parameters.AddWithValue("@FFIN", Me.FFIN.Value.Date)
da.Fill(ds)
Me.DataGridFACTURADO.DataSource = ds.Tables(0)
Dim dt As DataTable = DirectCast(DataGridFACTURADO.DataSource,
DataTable)
For Each row As DataRow In dt.Rows
If Not row.IsNull("FACTURAR") Then
MessageBox.Show(row.Item("FACTURAR").ToString)
End If
Dim sql As String = "UPDATE ALBARAN SET FACTURAR=TRUE"
Dim cmd As New OleDbCommand(sql, conexion)
conexion.Open()
cmd.ExecuteNonQuery()
conexion.Close()
Next
He probado también con el where de esta forma:
Dim sql As String = "UPDATE ALBARAN SET FACTURAR=TRUE WHERE
FECHAALBARAN>=@FINICIO AND FECHAALBARAN<=@FFIN"
y en la línea:
For Each row As DataRow In dt.Rows
me da el siguiente error:
Referencia a objeto no establecida como instancia de un objeto.
Lo he probado con variables y me da el mismo error |