Update de base de datos Vb2005
Publicado por Martin (3 intervenciones) el 05/01/2007 15:35:48
Me sale este error en vb2005 con una base de sql server. Antes cuando lo hacia en access me borraba bien y lo actualizaba, pero ahora no.
El mensaje de error es este: "Update requiere que DeleteCommand sea válido cuando se pasa la colección DataRow con filas eliminadas."
El codigo es este:
Dim respuesta As Microsoft.VisualBasic.MsgBoxResult
Dim registroborrar As CargasAutorizadasDataSet.Cargas_AutorizadasRow()
registroborrar = Me.CargasAutorizadasDataTable.Select("id = " + CStr(id))
Select Case registroborrar.GetUpperBound(0)
Case -1
MsgBox("No hay registros con ese identificador", CType(MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, MsgBoxStyle), "Error")
Exit Sub
Case Is > 0
MsgBox("Hay demasiados registros con ese ID", CType(MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, MsgBoxStyle), "Error")
Exit Sub
Case 0
If registroborrar(0).ESTADO = "Cargando" Then
respuesta = MsgBox("Usted está intentando borrar una orden de carga que se encuentra actualmente cargando. Esto puede generar errores graves en el programa." + vbCrLf + "Está seguro que desea hacerlo?", vbYesNo, "Borrado de registros")
If respuesta = MsgBoxResult.No Then
Exit Sub
End If
End If
Loguear("Registro a Borrar Manualmente")
Loguear("OCA OCO REC CANT FECHA ESTADO")
Loguear(CStr(registroborrar(0).OCARG) + " " + CStr(registroborrar(0).OCOMP) + " " + CStr(registroborrar(0).PRODUCTO) + " " + CStr(registroborrar(0).CANTAUT) + " " + CStr(registroborrar(0).FECHAAUT) + " " + CStr(registroborrar(0).ESTADO))
registroborrar(0).Delete()
Cargas_AutorizadasTableAdapter.Update(registroborrar(0))
Loguear("Registro Borrado con exito")
End Select
El mensaje de error es este: "Update requiere que DeleteCommand sea válido cuando se pasa la colección DataRow con filas eliminadas."
El codigo es este:
Dim respuesta As Microsoft.VisualBasic.MsgBoxResult
Dim registroborrar As CargasAutorizadasDataSet.Cargas_AutorizadasRow()
registroborrar = Me.CargasAutorizadasDataTable.Select("id = " + CStr(id))
Select Case registroborrar.GetUpperBound(0)
Case -1
MsgBox("No hay registros con ese identificador", CType(MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, MsgBoxStyle), "Error")
Exit Sub
Case Is > 0
MsgBox("Hay demasiados registros con ese ID", CType(MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, MsgBoxStyle), "Error")
Exit Sub
Case 0
If registroborrar(0).ESTADO = "Cargando" Then
respuesta = MsgBox("Usted está intentando borrar una orden de carga que se encuentra actualmente cargando. Esto puede generar errores graves en el programa." + vbCrLf + "Está seguro que desea hacerlo?", vbYesNo, "Borrado de registros")
If respuesta = MsgBoxResult.No Then
Exit Sub
End If
End If
Loguear("Registro a Borrar Manualmente")
Loguear("OCA OCO REC CANT FECHA ESTADO")
Loguear(CStr(registroborrar(0).OCARG) + " " + CStr(registroborrar(0).OCOMP) + " " + CStr(registroborrar(0).PRODUCTO) + " " + CStr(registroborrar(0).CANTAUT) + " " + CStr(registroborrar(0).FECHAAUT) + " " + CStr(registroborrar(0).ESTADO))
registroborrar(0).Delete()
Cargas_AutorizadasTableAdapter.Update(registroborrar(0))
Loguear("Registro Borrado con exito")
End Select
Valora esta pregunta


0