1
« en: Jueves 22 de Marzo de 2007, 21:43 »
Yo estaba usando access en una aplicacion y tengo que pasarla a SQL
SERVER2000.
El codigo que venia usando andaba perfecto, cuando cambio los Dataset
(desde origenes de datos) , los agrego uno por uno apuntando a la base
de datos en sql y a la tabla correspondiente.
Usando el mismo codigo que para access cuando quiero agregar registros
anda perfecto, pero cuando quiero modificar registros existentes o
borrar algun registro me aparece " Update requiere que DeleteCommand
sea válido cuando se pasa la colección DataRow con filas eliminadas "
El codigo que uso para borrar es este:
Dim registroborrar As
CargasAutorizadasDataset.Cargas_AutorizadasRow()
registroborrar = Me.CargasAutorizadasDataTable.Select("OCARG =
" + CStr(id))
Select Case registroborrar.GetUpperBound(0)
Case -1
MsgBox("No hay registros con ese identificador",
CType(MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, MsgBoxStyle),
"Error")
Timer1.Start()
Exit Sub
Case Is > 0
MsgBox("Hay demasiados registros con ese ID",
CType(MsgBoxStyle.OkOnly + MsgBoxStyle.Critical, MsgBoxStyle),
"Error")
Timer1.Start()
Exit Sub
Case 0
If registroborrar(0).ESTADO = "Cargando" Then
Dim respuesta As
Microsoft.VisualBasic.MsgBoxResult
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
Timer1.Start()
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
Estoy bastante complicado, es algo que no lo puedo solucionar desde
hace varios dias, les agradecere con todo el corazon si me dan una mano