Foros del Web » Programación para mayores de 30 ;) » .NET »

error al guardar datos

Estas en el tema de error al guardar datos en el foro de .NET en Foros del Web. Hola tengo una aplicacion en la se llena los datos de un formulario y cuando el usuario le da enviar los mismo deben guardarse en ...
  #1 (permalink)  
Antiguo 15/02/2005, 12:56
Avatar de Sayra  
Fecha de Ingreso: diciembre-2004
Mensajes: 365
Antigüedad: 19 años, 11 meses
Puntos: 1
error al guardar datos

Hola tengo una aplicacion en la se llena los datos de un formulario y cuando el usuario le da enviar los mismo deben guardarse en una base de datos sql server
pero me da este error
System.Data.SqlTypes.SqlTypeException: SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM.


alguien tiene idea de como repararlo
  #2 (permalink)  
Antiguo 15/02/2005, 15:00
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 9 meses
Puntos: 50
De casualidad le estás mandando a tu parametro que recibe la fecha un valor nulo o nothing ??

Podrías probar algo como ésto:

Cita:
If SomeDate = DateTime.MinValue Then
cmd.Parameters("@SomeDate").Value = DBNull.Value
Else
cmd.Parameters("@SomeDate").Value = SomeDate
End If
Donde SomeDate es la fecha...o si no es eso, sería más fácil si nos envías el code que tienes.

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 16/02/2005, 08:50
Avatar de Sayra  
Fecha de Ingreso: diciembre-2004
Mensajes: 365
Antigüedad: 19 años, 11 meses
Puntos: 1
Hola Root ¿Como estas? bueno, mi codijo es enorme auanque de seguro hay unos mas enormes pero, en realidad estoy haciendo esto cree un clase con todo los parametros de acceso a datos
Aqui te pongo el codigo
using System;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using Rainbow.Configuration;

namespace Rainbow.DesktopModules
{
public class SolicitudEmpleoDB
{
/// <summary>
/// GetSingleSolicitudEmpleo
/// </summary>
/// <param name="SolicitudID">SolicitudID</param>
/// <returns>A SqlDataReader</returns>
public SqlDataReader GetSingleSolicitudEmpleo(int SolicitudID)
{
// Create Instance of Connection and Command Object
SqlConnection myConnection = PortalSettings.SqlConnectionString;
SqlCommand myCommand = new SqlCommand("GetSingleSolicitudEmpleo", myConnection);

// Mark the Command as a SPROC
myCommand.CommandType = CommandType.StoredProcedure;

// Add Parameters to SPROC
SqlParameter parameterSolicitudID = new SqlParameter("@SolicitudID", SqlDbType.Int);
parameterSolicitudID.Value = SolicitudID;
myCommand.Parameters.Add(parameterSolicitudID);

// Execute the command
myConnection.Open();
SqlDataReader result = myCommand.ExecuteReader(CommandBehavior.CloseConne ction);

// Return the datareader
return result;
}


/// <summary>
/// GetSolicitudEmpleo
/// </summary>
/// <param name="SolicitudID">SolicitudID</param>
/// <returns>A SqlDataReader</returns>
public SqlDataReader GetSolicitudEmpleo(int ModuleId)
{
// Create Instance of Connection and Command Object
SqlConnection myConnection = PortalSettings.SqlConnectionString;
SqlCommand myCommand = new SqlCommand("GetSolicitudEmpleo", myConnection);

// Mark the Command as a SPROC
myCommand.CommandType = CommandType.StoredProcedure;

// Add Parameters to SPROC
SqlParameter parameterModuleId = new SqlParameter("@ModuleId", SqlDbType.Int);
parameterModuleId.Value = ModuleId;
myCommand.Parameters.Add(parameterModuleId);

// Execute the command
myConnection.Open();
SqlDataReader result = myCommand.ExecuteReader(CommandBehavior.CloseConne ction);

// Return the datareader
return result;
}


/// <summary>
/// DeleteSolicitudEmpleo
/// </summary>
/// <param name="SolicitudID">SolicitudID</param>
/// <returns>Void</returns>
public void DeleteSolicitudEmpleo(int SolicitudID)
{
// Create Instance of Connection and Command Object
SqlConnection myConnection = PortalSettings.SqlConnectionString;
SqlCommand myCommand = new SqlCommand("DeleteSolicitudEmpleo", myConnection);

// Mark the Command as a SPROC
myCommand.CommandType = CommandType.StoredProcedure;

// Add Parameters to SPROC
SqlParameter parameterSolicitudID = new SqlParameter("@SolicitudID", SqlDbType.Int);
parameterSolicitudID.Value = SolicitudID;
myCommand.Parameters.Add(parameterSolicitudID);

// Execute the command
myConnection.Open();
myCommand.ExecuteNonQuery();
myConnection.Close();
}
  #4 (permalink)  
Antiguo 16/02/2005, 08:53
Avatar de Sayra  
Fecha de Ingreso: diciembre-2004
Mensajes: 365
Antigüedad: 19 años, 11 meses
Puntos: 1
aqui continua

/// <summary>
/// AddSolicitudEmpleo
/// </summary>
/// <param name="SolicitudID">SolicitudID</param>
/// <returns>The newly created ID</returns>
public int AddSolicitudEmpleo(int SolicitudID, int ModuleId, string Cargo_Solicitado, string Apellidos_Nombres, Decimal Cedula_Identidad, DateTime Fecha_Nacimiento, string Estado_Civil, Decimal Edad, string Sexo, string Telefono_Cel, string Telefono_Hab, string Correo_Electronico, string Direccion_Permanente, string Tecnico_Instituto, string Tecnico_Graduado, DateTime Tecnico_Año_Graduacion, string Tecnico_Titulo, string Universitario_Instituto, string Universitario_Graduado, DateTime Universitario_Año_Graduacion, string Universitario_Titulo, string PostGrado_Instituto, string PostGrado_Graduado, DateTime PostGrado_Año_Graduacion, string PostGrado_Titulo, string Empleado_Actualmente, string Empresa, string Cargo, DateTime Desde, DateTime Hasta)
{
// Create Instance of Connection and Command Object
SqlConnection myConnection = PortalSettings.SqlConnectionString;
SqlCommand myCommand = new SqlCommand("AddSolicitudEmpleo", myConnection);

// Mark the Command as a SPROC
myCommand.CommandType = CommandType.StoredProcedure;

// Add Parameters to SPROC
SqlParameter parameterSolicitudID = new SqlParameter("@SolicitudID", SqlDbType.Int);
parameterSolicitudID.Direction = ParameterDirection.Output;
myCommand.Parameters.Add(parameterSolicitudID);

SqlParameter parameterModuleId = new SqlParameter("@ModuleId", SqlDbType.Int);
parameterModuleId.Value = ModuleId;
myCommand.Parameters.Add(parameterModuleId);

SqlParameter parameterCargo_Solicitado = new SqlParameter("@Cargo_Solicitado", SqlDbType.Char, 30);
parameterCargo_Solicitado.Value = Cargo_Solicitado;
myCommand.Parameters.Add(parameterCargo_Solicitado );

SqlParameter parameterApellidos_Nombres = new SqlParameter("@Apellidos_Nombres", SqlDbType.Char, 40);
parameterApellidos_Nombres.Value = Apellidos_Nombres;
myCommand.Parameters.Add(parameterApellidos_Nombre s);

SqlParameter parameterCedula_Identidad = new SqlParameter("@Cedula_Identidad", SqlDbType.Decimal, 9);
parameterCedula_Identidad.Value = Cedula_Identidad;
myCommand.Parameters.Add(parameterCedula_Identidad );

SqlParameter parameterFecha_Nacimiento = new SqlParameter("@Fecha_Nacimiento", SqlDbType.DateTime);
parameterFecha_Nacimiento.Value = Fecha_Nacimiento;
myCommand.Parameters.Add(parameterFecha_Nacimiento );

SqlParameter parameterEstado_Civil = new SqlParameter("@Estado_Civil", SqlDbType.Char, 12);
parameterEstado_Civil.Value = Estado_Civil;
myCommand.Parameters.Add(parameterEstado_Civil);

SqlParameter parameterEdad = new SqlParameter("@Edad", SqlDbType.Decimal, 9);
parameterEdad.Value = Edad;
myCommand.Parameters.Add(parameterEdad);

SqlParameter parameterSexo = new SqlParameter("@Sexo", SqlDbType.Char, 20);
parameterSexo.Value = Sexo;
myCommand.Parameters.Add(parameterSexo);

SqlParameter parameterTelefono_Cel = new SqlParameter("@Telefono_Cel", SqlDbType.NChar, 30);
parameterTelefono_Cel.Value = Telefono_Cel;
myCommand.Parameters.Add(parameterTelefono_Cel);

SqlParameter parameterTelefono_Hab = new SqlParameter("@Telefono_Hab", SqlDbType.NChar, 30);
parameterTelefono_Hab.Value = Telefono_Hab;
myCommand.Parameters.Add(parameterTelefono_Hab);

SqlParameter parameterCorreo_Electronico = new SqlParameter("@Correo_Electronico", SqlDbType.Char, 50);
parameterCorreo_Electronico.Value = Correo_Electronico;
myCommand.Parameters.Add(parameterCorreo_Electroni co);

SqlParameter parameterDireccion_Permanente = new SqlParameter("@Direccion_Permanente", SqlDbType.Char, 50);
parameterDireccion_Permanente.Value = Direccion_Permanente;
myCommand.Parameters.Add(parameterDireccion_Perman ente);

SqlParameter parameterTecnico_Instituto = new SqlParameter("@Tecnico_Instituto", SqlDbType.Char, 40);
parameterTecnico_Instituto.Value = Tecnico_Instituto;
myCommand.Parameters.Add(parameterTecnico_Institut o);

SqlParameter parameterTecnico_Graduado = new SqlParameter("@Tecnico_Graduado", SqlDbType.Char, 10);
parameterTecnico_Graduado.Value = Tecnico_Graduado;
myCommand.Parameters.Add(parameterTecnico_Graduado );

SqlParameter parameterTecnico_Año_Graduacion = new SqlParameter("@Tecnico_Año_Graduacion", SqlDbType.DateTime);
parameterTecnico_Año_Graduacion.Value = Tecnico_Año_Graduacion;
myCommand.Parameters.Add(parameterTecnico_Año_Grad uacion);

SqlParameter parameterTecnico_Titulo = new SqlParameter("@Tecnico_Titulo", SqlDbType.Char, 40);
parameterTecnico_Titulo.Value = Tecnico_Titulo;
myCommand.Parameters.Add(parameterTecnico_Titulo);

SqlParameter parameterUniversitario_Instituto = new SqlParameter("@Universitario_Instituto", SqlDbType.Char, 40);
parameterUniversitario_Instituto.Value = Universitario_Instituto;
myCommand.Parameters.Add(parameterUniversitario_In stituto);

SqlParameter parameterUniversitario_Graduado = new SqlParameter("@Universitario_Graduado", SqlDbType.Char, 10);
parameterUniversitario_Graduado.Value = Universitario_Graduado;
myCommand.Parameters.Add(parameterUniversitario_Gr aduado);

SqlParameter parameterUniversitario_Año_Graduacion = new SqlParameter("@Universitario_Año_Graduacion", SqlDbType.DateTime);
parameterUniversitario_Año_Graduacion.Value = Universitario_Año_Graduacion;
myCommand.Parameters.Add(parameterUniversitario_Añ o_Graduacion);

SqlParameter parameterUniversitario_Titulo = new SqlParameter("@Universitario_Titulo", SqlDbType.Char, 40);
parameterUniversitario_Titulo.Value = Universitario_Titulo;
myCommand.Parameters.Add(parameterUniversitario_Ti tulo);

SqlParameter parameterPostGrado_Instituto = new SqlParameter("@PostGrado_Instituto", SqlDbType.Char, 40);
parameterPostGrado_Instituto.Value = PostGrado_Instituto;
myCommand.Parameters.Add(parameterPostGrado_Instit uto);

SqlParameter parameterPostGrado_Graduado = new SqlParameter("@PostGrado_Graduado", SqlDbType.Char, 10);
parameterPostGrado_Graduado.Value = PostGrado_Graduado;
myCommand.Parameters.Add(parameterPostGrado_Gradua do);

SqlParameter parameterPostGrado_Año_Graduacion = new SqlParameter("@PostGrado_Año_Graduacion", SqlDbType.DateTime);
parameterPostGrado_Año_Graduacion.Value = PostGrado_Año_Graduacion;
myCommand.Parameters.Add(parameterPostGrado_Año_Gr aduacion);

SqlParameter parameterPostGrado_Titulo = new SqlParameter("@PostGrado_Titulo", SqlDbType.Char, 40);
parameterPostGrado_Titulo.Value = PostGrado_Titulo;
myCommand.Parameters.Add(parameterPostGrado_Titulo );

SqlParameter parameterEmpleado_Actualmente = new SqlParameter("@Empleado_Actualmente", SqlDbType.Char, 40);
parameterEmpleado_Actualmente.Value = Empleado_Actualmente;
myCommand.Parameters.Add(parameterEmpleado_Actualm ente);

SqlParameter parameterEmpresa = new SqlParameter("@Empresa", SqlDbType.Char, 40);
parameterEmpresa.Value = Empresa;
myCommand.Parameters.Add(parameterEmpresa);

SqlParameter parameterCargo = new SqlParameter("@Cargo", SqlDbType.Char, 40);
parameterCargo.Value = Cargo;
myCommand.Parameters.Add(parameterCargo);

SqlParameter parameterDesde = new SqlParameter("@Desde", SqlDbType.DateTime);
parameterDesde.Value = Desde;
myCommand.Parameters.Add(parameterDesde);

SqlParameter parameterHasta = new SqlParameter("@Hasta", SqlDbType.DateTime);
parameterHasta.Value = Hasta;
myCommand.Parameters.Add(parameterHasta);


// Open the database connection and execute the command
myConnection.Open();
myCommand.ExecuteNonQuery();
myConnection.Close();

// Return the newly created ID
return (int)parameterSolicitudID.Value;
}


y continua pero lo demas es updatesolictud.. que es parecido al addsolicitud empleo
  #5 (permalink)  
Antiguo 16/02/2005, 09:00
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 9 meses
Puntos: 50
Sayra, entiendo que el code debe ser muy largo (esas ocupand el Rainbow portal verdad..??) lo que mas bien necesito es que nos indiques exactamente la línea del código que te está dando problemas.

Por cierto, ya revistaste lo que te comenté en el primer post..??
  #6 (permalink)  
Antiguo 16/02/2005, 09:34
Avatar de Sayra  
Fecha de Ingreso: diciembre-2004
Mensajes: 365
Antigüedad: 19 años, 11 meses
Puntos: 1
a qui se genera el error

Line 231: myCommand.ExecuteNonQuery();
si lo revise pero no le estoy enviando valores nulos, ese campo es obligatorio llenarlo
  #7 (permalink)  
Antiguo 16/02/2005, 10:08
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 9 meses
Puntos: 50
Para efectos de prueba porque no colocas ésto temportalmente para ver si te funcion, porque por el tipo de error viene en la fecha.

Cambia éstos parámetros.

Cita:
SqlParameter parameterTecnico_Año_Graduacion = new SqlParameter("@Tecnico_Año_Graduacion", SqlDbType.DateTime);
parameterTecnico_Año_Graduacion.Value = DateTime.Now;
myCommand.Parameters.Add(parameterTecnico_Año_Grad uacion);
....
....
SqlParameter parameterUniversitario_Año_Graduacion = new SqlParameter("@Universitario_Año_Graduacion", SqlDbType.DateTime);
parameterUniversitario_Año_Graduacion.Value = DateTime.Now;
myCommand.Parameters.Add(parameterUniversitario_Añ o_Graduacion);
...
...
SqlParameter parameterDesde = new SqlParameter("@Desde", SqlDbType.DateTime);
parameterDesde.Value = DateTime.Now;
myCommand.Parameters.Add(parameterDesde);
....
....
SqlParameter parameterHasta = new SqlParameter("@Hasta", SqlDbType.DateTime);
parameterHasta.Value = DateTime.Now;
myCommand.Parameters.Add(parameterHasta);
Y coloca también ésto para cachar el error.

Cita:
// Open the database connection and execute the command
myConnection.Open();
try
{
myCommand.ExecuteNonQuery();
}
catch (Exception ex)
{
Response.Write(ex.Message.ToString());

}
finally
{
myConnection.Close();
}
  #8 (permalink)  
Antiguo 16/02/2005, 12:43
Avatar de Sayra  
Fecha de Ingreso: diciembre-2004
Mensajes: 365
Antigüedad: 19 años, 11 meses
Puntos: 1
Response.Write(ex.Message.ToString());
me dice que falta una C:\Inetpub\wwwroot\Rainbow01\DesktopModules\SiteSe ttings\solicitudEmpleo\SolicitudEmpleoDB.cs(239): No se puede encontrar el tipo o el nombre de espacio de nombres 'Response' (¿falta una directiva using o una referencia de ensamblado?)
????
  #9 (permalink)  
Antiguo 16/02/2005, 17:50
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 10 meses
Puntos: 7
Para que se pueda utilizar Response, tu clase debe heredar de la clase System.Web.UI.Page, y viendo el código que enviaste tu clase no hereda de esta.

Por si te interesa otros métodos de registrar los errores o la información que quieras que esté disponible cuando depures o esté en producción tu aplicación:

http://msdn.microsoft.com/library/de...classtopic.asp
http://msdn.microsoft.com/library/sp...classtopic.asp

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
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 13:41.