none
Excepción no controlada del tipo 'System.FormatException' en mscorlib.dll RRS feed

  • Pregunta

  • como evito ese error 

            private void btn_guardar_Click(object sender, EventArgs e)
            {
                //try
                //{
                var Resultado = MessageBox.Show("¿Su salida esta lista? ", "Opciones", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
                if (Resultado == DialogResult.Yes)
                {
                    for (int j = 0; j < dgv_salida.Rows.Count; j++)
                    {
                        if (string.IsNullOrEmpty(dgv_salida.Rows[j].Cells[0].Value as string))
                        {
                            MessageBox.Show("Lista vacio");
                        }
                    }
    
    
                    
                    Modelo_Salida MSS = new Modelo_Salida();
    
                    MSS.IdTrabajador = Convert.ToInt32(txt_codigo_trabajador.Text);
                    MSS.FechaSalida = dtp_fecha.Value;
                    _Id_Salida = BSS.InsertSalida(MSS);

    Cuando quiero "Imprimir un reporte" y validar el grid vacio me sale este error como lo puedo evitar 

    domingo, 1 de octubre de 2017 2:26

Respuestas

  • Buenas, 

    Eso puede pasar porque el textbox txt_codigo_trabajador.Text no tenga un valor convertible en entero, prueba a cambiar 

    MSS.IdTrabajador = Convert.ToInt32(txt_codigo_trabajador.Text);
    

    por 

    int nId = 0;
    int.TryParse(txt_codigo_trabajador.Text,out nId);              
    MSS.IdTrabajador = nId ;
    

    Con ese cambio, vas a comprobar que el texto sea convertible, y sino vas a colocar un 0, de todos modos, podrias poner un breakpoint y ver el valor del textbox, para asegurarte de que tiene lo que esperas.

    Atte


    No olvides votar mi comentario si te ha ayudado y marcarlo como respuesta si ha sido la solución, con eso ayudas a mejorar mi reputación en la comunidad y a identificar la respuesta a la gente que tenga el mismo problema.

    Para obtener una respuesta lo más rápida y concisa posible, te recomiendo:

    • Marcado como respuesta Ronal Funes domingo, 1 de octubre de 2017 2:55
    domingo, 1 de octubre de 2017 2:47
  • Hola Ballsfox12

    En tu tabla salida estás tratando de insertar un código de trabajador erróneo. Fíjate en tu tabla trabajador si es que existe.

    Saludos


    Si ayudé a resolver tu consulta, no olvides marcar como respuesta y/o votar como útil.

    • Marcado como respuesta Ronal Funes domingo, 1 de octubre de 2017 3:13
    domingo, 1 de octubre de 2017 3:11

Todas las respuestas

  • Buenas, 

    Eso puede pasar porque el textbox txt_codigo_trabajador.Text no tenga un valor convertible en entero, prueba a cambiar 

    MSS.IdTrabajador = Convert.ToInt32(txt_codigo_trabajador.Text);
    

    por 

    int nId = 0;
    int.TryParse(txt_codigo_trabajador.Text,out nId);              
    MSS.IdTrabajador = nId ;
    

    Con ese cambio, vas a comprobar que el texto sea convertible, y sino vas a colocar un 0, de todos modos, podrias poner un breakpoint y ver el valor del textbox, para asegurarte de que tiene lo que esperas.

    Atte


    No olvides votar mi comentario si te ha ayudado y marcarlo como respuesta si ha sido la solución, con eso ayudas a mejorar mi reputación en la comunidad y a identificar la respuesta a la gente que tenga el mismo problema.

    Para obtener una respuesta lo más rápida y concisa posible, te recomiendo:

    • Marcado como respuesta Ronal Funes domingo, 1 de octubre de 2017 2:55
    domingo, 1 de octubre de 2017 2:47
  • Buenas, 

    Eso puede pasar porque el textbox txt_codigo_trabajador.Text no tenga un valor convertible en entero, prueba a cambiar 

    MSS.IdTrabajador = Convert.ToInt32(txt_codigo_trabajador.Text);
    

    por 

    int nId = 0;
    int.TryParse(txt_codigo_trabajador.Text,out nId);              
    MSS.IdTrabajador = nId ;
    

    Con ese cambio, vas a comprobar que el texto sea convertible, y sino vas a colocar un 0, de todos modos, podrias poner un breakpoint y ver el valor del textbox, para asegurarte de que tiene lo que esperas.

    Atte


    No olvides votar mi comentario si te ha ayudado y marcarlo como respuesta si ha sido la solución, con eso ayudas a mejorar mi reputación en la comunidad y a identificar la respuesta a la gente que tenga el mismo problema.

    Para obtener una respuesta lo más rápida y concisa posible, te recomiendo:

    hoy me sale este error

    domingo, 1 de octubre de 2017 3:02
  • Hola Ballsfox12

    En tu tabla salida estás tratando de insertar un código de trabajador erróneo. Fíjate en tu tabla trabajador si es que existe.

    Saludos


    Si ayudé a resolver tu consulta, no olvides marcar como respuesta y/o votar como útil.

    • Marcado como respuesta Ronal Funes domingo, 1 de octubre de 2017 3:13
    domingo, 1 de octubre de 2017 3:11
  • oh ahora entiendo 
    domingo, 1 de octubre de 2017 3:13