Foros del Web » Programando para Internet » ASPX (.net) »

Error al retornar id despues de update dataset tipado

Estas en el tema de Error al retornar id despues de update dataset tipado en el foro de ASPX (.net) en Foros del Web. Buenas tengo un problema al momento de devolver el id de la fila actualizada. Me aparece objeto no establecido como instancia, ya lo habia hecho ...
  #1 (permalink)  
Antiguo 28/09/2015, 09:58
 
Fecha de Ingreso: septiembre-2015
Ubicación: Choluteca
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Error al retornar id despues de update dataset tipado

Buenas tengo un problema al momento de devolver el id de la fila actualizada.
Me aparece objeto no establecido como instancia, ya lo habia hecho en un insert pero en el update me da error.
Consulta del Procedimiento almacenado
UPDATE declaracion
SET ultimaModificacion= @fechaModificacion
OUTPUT INSERTED.idDeclaracion
WHERE codColaborador = @codColaborador
and fecha=@fechaCreacion
and idEstado=1

Codigo en asp C#
{
iddecl = (long) DBTA.updateDeclaracion(col.CodColaborador, DateTime.Now, col.UltimaDeclaracion.Fecha);
Cita:
Aqui me aprece el error Object reference not set to an instance of an object.
HttpContext.Current.Session["newIdDecl"] = iddecl;
return iddecl;

}



En el insert lo tengo de esta manera y me funciona correctamente me devuelve el valor del id.

iddecl = (long)DBTA.saveDeclaracion(col.CodColaborador, DateTime.Now, D.IdAccion, D.idEstado, DateTime.Now);
HttpContext.Current.Session["newIdDecl"] = iddecl;
return iddecl;


cuando ejecuto en el SQL me regresa perfectamente el id actualizado pero en c# me da error
Gracias.
  #2 (permalink)  
Antiguo 28/09/2015, 10:06
Avatar de JoshMex
Moderador Webhosting
 
Fecha de Ingreso: enero-2006
Mensajes: 4.057
Antigüedad: 18 años, 2 meses
Puntos: 166
Respuesta: Error al retornar id despues de update dataset tipado

Creo que puede sucederte porque con el insert estás retornando un valor de salida que es talvez el autonumérico asignado a la clave primaria.
En el caso del Update no retornarás valor, a menos que sea del número de registros afectados.
__________________
JoshMex
Desarrollador Plataforma Microsoft / Windows / ASP / ASP.NET / SQL Server
Es inútil hacer cualquier cosa a prueba de tontos, porque los tontos son muy ingeniosos
  #3 (permalink)  
Antiguo 28/09/2015, 10:20
 
Fecha de Ingreso: septiembre-2015
Ubicación: Choluteca
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Error al retornar id despues de update dataset tipado

Esto es lo que tengo si entra en el primero me hace el insert y me retorna el id del registro insertado correctamente, ya que lo necesito para los detalles.


if (col.UltimaDeclaracion.IdDeclaracion == 0)
{
iddecl = (long)DBTA.saveDeclaracion(col.CodColaborador, DateTime.Now, D.IdAccion, D.idEstado, DateTime.Now);
HttpContext.Current.Session["newIdDecl"] = iddecl;
return iddecl;
}
else {

iddecl =(long) DBTA.updateDeclaracion(col.CodColaborador, DateTime.Now, col.UltimaDeclaracion.Fecha);
HttpContext.Current.Session["newIdDecl"] = iddecl;
return iddecl;
}

En este ultimo en el caso contrario si lo pruebo en el preview del Dataset tipado me sale correctamente el id autilizado pero ya en c# me aparece el mensaje que Object reference not set to an instance of an object.

Entonces si en los procedimientos almacenados me envia correctamente el ID afectado, pienso que es problema de la manera como lo capturo en c# pero nose porque arriba si funciona y abajo no. No se que podria hacer en ese caso.

Etiquetas: asp.net, c#
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:34.