Ejemplo n.º 1
0
    protected void btn_guardar_Click(object sender, EventArgs e)
    {
        try
        {
            DateTime d;
            if (!DateTime.TryParse(txt_FRecepcion.Text, out d) || d > DateTime.Today)
            {
                lbl_mensajes.Text = "Fecha recepción inválida";
                return;
            }

            if (Novedades.Count <= 0)
            {
                lbl_mensajes.Text = "Debe ingresar alguna novedad";
                return;
            }

            NovedadDocumentacionWS.NovedadDocumentacion[] errores = Novedad.NovedadDocumentacion_GuardarAltaMasiva(Novedades, d);

            if (errores.Length == 0)
            {
                mensaje1.DescripcionMensaje = "Se guardaron los datos correctamente";
                mensaje1.TipoMensaje        = Controls_Mensaje.infoMensaje.Alerta;
                mensaje1.Mostrar();
                dg_Novedades.DataSource = null;
            }
            else
            {
                mensaje1.DescripcionMensaje = "Algunos datos no pudieron guardarse, verifique";
                mensaje1.TipoMensaje        = Controls_Mensaje.infoMensaje.Error;
                mensaje1.Mostrar();
                dg_Novedades.Columns[3].Visible = true;
                dg_Novedades.DataSource         = (from n in errores
                                                   from ed in EstadosDocumentacion
                                                   where n.Estado.IdEstado == ed.IdEstado
                                                   select new
                {
                    IdNovedad = n.IdNovedad,
                    Estado = ed.DescEstado,
                    NroCaja = n.NroCaja,
                    Error = n.Error
                });
            }
            Novedades = null;
            dg_Novedades.DataBind();
        }
        catch (ThreadAbortException) { }
        catch (Exception ex)
        {
            if (log.IsErrorEnabled)
            {
                log.Error(string.Format("{0} - Error:{1}->{2}", System.Reflection.MethodBase.GetCurrentMethod().Name, ex.Source, ex.Message));
            }
            Response.Redirect("~/DAIndex.aspx");
        }
    }