Ejemplo n.º 1
0
        public ActionResult Proceso_de_guardado()
        {
            CausantesDAO    causanteDAO        = new CausantesDAO();
            List <Causante> causantesguardados = causanteDAO.GetCausantes();

            return(View(causantesguardados.OrderBy(Y => Y.NUM_CORRELATIVO).ToList()));
        }
Ejemplo n.º 2
0
        public ActionResult Proceso_de_guardado()
        {
            /* en la  parte get se mostrara si los datos en la lista temporal de CausanteDAO en order por su numero Correlativo  */
            CausantesDAO    causanteDAO        = new CausantesDAO();
            List <Causante> causantesguardados = causanteDAO.GetCausantes();

            return(View(causantesguardados.OrderBy(Y => Y.NUM_CORRELATIVO).ToList()));
        }
Ejemplo n.º 3
0
        public ActionResult Proceso_de_guardado(String id)
        {
            CausantesDAO    causanteDAO        = new CausantesDAO();
            List <Causante> causantesguardados = causanteDAO.GetCausantes();
            List <Causante> Repetidos          = new List <Causante>();
            List <Causante> guardados          = new List <Causante>();

            foreach (var items in causantesguardados)
            {
                int      count = 0;
                Causante c     = new Causante();
                c.NUM_CORRELATIVO          = items.NUM_CORRELATIVO;
                c.RUT_CAUSANTE             = items.RUT_CAUSANTE;
                c.NOMBRE_CAUSANTE          = items.NOMBRE_CAUSANTE;
                c.CODIGO_TIPO_CAUSANTE     = items.CODIGO_TIPO_CAUSANTE;
                c.TIPO_CAUSANTE            = items.TIPO_CAUSANTE;
                c.RUT_BENEFICIARIO         = items.RUT_BENEFICIARIO;
                c.NOMBRE_BENEFICIARIO      = items.NOMBRE_BENEFICIARIO;
                c.CODIGO_TIPO_BENEFICIARIO = items.CODIGO_TIPO_BENEFICIARIO;
                c.TIPO_BENEFICIARIO        = items.TIPO_BENEFICIARIO;
                c.CODIGO_TIPO_BENEFICIO    = items.CODIGO_TIPO_BENEFICIO;
                c.TIPO_BENEFICIO           = items.TIPO_BENEFICIO;
                c.RUT_EMPLEADOR            = items.RUT_EMPLEADOR;
                c.NOMBRE_EMPLEADOR         = items.NOMBRE_EMPLEADOR;
                c.FECHA_RECONOCIMIENTO     = items.FECHA_RECONOCIMIENTO;
                c.TRAMO               = items.TRAMO;
                c.MONTO_BENEFICIO     = items.MONTO_BENEFICIO;
                c.CODIGO_ESTADO_TUPLA = items.CODIGO_ESTADO_TUPLA;
                c.GLOSA_ESTADO_TUPLA  = items.GLOSA_ESTADO_TUPLA;
                c.PROMEDIO_RENTA      = items.PROMEDIO_RENTA;



                foreach (var item in db.Causantes)
                {
                    count = 0;
                    Causante ca = new Causante();
                    ca.NUM_CORRELATIVO = item.NUM_CORRELATIVO;
                    ca.RUT_CAUSANTE    = item.RUT_CAUSANTE;
                    if (c.NUM_CORRELATIVO == ca.NUM_CORRELATIVO && c.RUT_CAUSANTE.Equals(ca.RUT_CAUSANTE))
                    {
                        Repetidos.Add(c);
                        count = count + 1;
                        break;
                    }
                }
                if (count == 0)
                {
                    db.Causantes.Add(c);
                    db.SaveChanges();
                }
            }

            return(Redirect("../Funcionarios/Proceso"));
        }
Ejemplo n.º 4
0
        public ActionResult Proceso(String id)
        {
            List <Causante>    listaCausante = causanteDAO.GetCausantes();
            List <Funcionario> funcionarios  = new List <Funcionario>();
            int counts = 0;
            int count  = 0;
            int c      = 0;

            foreach (var item in listaCausante)
            {
                String   nombres = " ", apellidos = " ", nombre1 = " ", nombre2 = " ", apellido1 = " ", apellido2 = " ", subapellido1 = " ", subapellido2 = " ", subapellido3 = " ";
                String[] subs           = item.NOMBRE_CAUSANTE.Split(' ');
                short    id_Funcionario = (short)item.NUM_CORRELATIVO;
                String   Rut            = item.RUT_CAUSANTE;
                int      Renta          = (int)item.PROMEDIO_RENTA;
                short    Activo         = 1;


                if (item.NOMBRE_CAUSANTE.Substring(0, 16).Equals("CARTER DE LA PAZ"))
                {
                    apellido1    = subapellido3 + " " + subapellido2 + " " + subapellido1;
                    apellido2    = subs[0];
                    apellidos    = apellido1 + " " + apellido2;
                    nombre1      = subs[5];
                    nombre2      = subs[4];
                    nombres      = nombre1 + " " + nombre2;
                    subapellido1 = subs[3];
                    subapellido2 = subs[2];
                    subapellido3 = subs[1];
                }
                else if (item.NOMBRE_CAUSANTE.Substring(0, 16).Equals("GONZALEZ ACEVEDO"))
                {
                    apellido1 = subs[1];
                    apellido2 = subs[0];
                    apellidos = apellido1 + " " + apellido2;
                    nombre1   = subs[2];
                    nombres   = nombre1;
                }

                else
                {
                    apellido1 = subs[1];
                    apellido2 = subs[0];
                    apellidos = apellido1 + " " + apellido2;
                    nombre1   = subs[3];
                    nombre2   = subs[2];
                    nombres   = nombre1 + " " + nombre2;
                }
                Funcionario funcionario = new Funcionario();
                funcionario.Id_Funcionario = id_Funcionario;
                funcionario.Rut            = Rut;
                funcionario.Nombres        = nombres;
                funcionario.Apellidos      = apellidos;
                funcionario.RentaPromedio  = Renta;
                funcionario.Activo         = Activo;
                funcionario.Sexo           = 0;
                funcionario.EstadoCivil    = 0;
                funcionario.Fec_nacimiento = null;
                funcionario.Direccion      = "Null";
                funcionarios.Add(funcionario);
            }
            foreach (var items in db.Funcionarios)
            {
                Funcionario funcionario1 = new Funcionario();
                funcionario1.Id_Funcionario = items.Id_Funcionario;
                foreach (var item in funcionarios)
                {
                    Funcionario funcionario = new Funcionario();
                    funcionario.Id_Funcionario = item.Id_Funcionario;
                    funcionario.Rut            = item.Rut;
                    funcionario.Nombres        = item.Nombres;
                    funcionario.Apellidos      = item.Apellidos;
                    funcionario.RentaPromedio  = item.RentaPromedio;
                    funcionario.Activo         = item.Activo;
                    funcionario.Sexo           = item.Sexo;
                    funcionario.EstadoCivil    = item.EstadoCivil;
                    funcionario.Fec_nacimiento = item.Fec_nacimiento;
                    funcionario.Direccion      = item.Direccion;

                    if (items.Id_Funcionario == item.Id_Funcionario && items.Rut.Equals(item.Rut))
                    {
                        counts = 1;
                        funcionario1.Activo = 1;
                        conexion.Close();
                        conexion.Open();
                        String     Cadena  = "update Funcionario set Activo =" + funcionario1.Activo + "where Id_Funcionario =" + funcionario1.Id_Funcionario + "";
                        SqlCommand command = new SqlCommand(Cadena, conexion);
                        int        cant;
                        cant = command.ExecuteNonQuery();
                        conexion.Close();
                        c = c + 1;
                        break;
                    }
                    else
                    {
                        count = 1 + count;
                    }
                    if (count > 0)
                    {
                        c = c + 1;
                        funcionario1.Activo = 0;
                        conexion.Close();
                        conexion.Open();
                        String     Cadena  = "update Funcionario set Activo =" + funcionario1.Activo + "where Id_Funcionario =" + funcionario1.Id_Funcionario + "";
                        SqlCommand command = new SqlCommand(Cadena, conexion);
                        int        cant;
                        cant = command.ExecuteNonQuery();
                        conexion.Close();
                    }

                    if (counts == 0)
                    {
                        db.Funcionarios.Add(funcionario);
                        db.SaveChanges();
                    }
                }
            }

            if (c == 0)
            {
                db.Funcionarios.AddRange(funcionarios);
                db.SaveChanges();
            }


            return(Redirect("../Causantes/Descargar"));
        }
Ejemplo n.º 5
0
        public ActionResult Proceso(String id)
        {
            // se crea dos Listas distintas una que esta guardado en el CausanteDAO y otro una lista con la clase funcionario
            List <Causante>    listaCausante = causanteDAO.GetCausantes();
            List <Funcionario> funcionarios  = new List <Funcionario>();
            List <Funcionario> repetidos     = new List <Funcionario>();
            List <Funcionario> norepetidos   = new List <Funcionario>();
            List <Funcionario> nuevo         = new List <Funcionario>();

            /* se crea 3 variables una para guardar a los nuevos funcionarios otro
            * para activar funcionarios y otro para desactivar los funcionarios */
            int on = 1;
            int c  = 0;
            int b;

            foreach (var item in listaCausante)
            {
                /* se crea las variables  strings para guardar los nombres y apellidos,  el nombre 1 es el nombre principal,
                 * el  nombre2 es el nombre secundarios, el apellido1 es  el apellido paterno y el apellido 2 es para el apellido materno
                 * el arreglo subs es para separar el nombre completo por espacio y las variables que seran almacenadas en el objectos Funcionario son el Num.Correlativo
                 * como una Id para el funcionario el nombre como dije en lo anterior para sera separados para el nombre y apellido el Promedio_Renta en la RentaPromedio el activo
                 * como numero preterminado sera 1 */
                String   nombres = " ", apellidos = " ", nombre1 = " ", nombre2 = " ", apellido1 = " ", apellido2 = " ", subapellido1 = " ", subapellido2 = " ", subapellido3 = " ";
                String[] subs           = item.NOMBRE_CAUSANTE.Split(' ');
                short    id_Funcionario = (short)item.NUM_CORRELATIVO;
                String   Rut            = item.RUT_CAUSANTE;
                int      Renta          = (int)item.PROMEDIO_RENTA;
                short    Activo         = 1;

                /* si los apellidos son "CARTER DE LA PAZ" se divide los apellidos en 4.
                 * 3 de ellos son subsapellidos que son: DE LA PAZ que al final son un apellido unido con el segundo apellido : CARTER que al final son el resultado es:
                 * "DE LA PAZ CARTER"*/
                if (item.NOMBRE_CAUSANTE.Substring(0, 16).Equals("CARTER DE LA PAZ"))
                {
                    subapellido1 = subs[3];
                    subapellido2 = subs[2];
                    subapellido3 = subs[1];
                    apellido1    = subapellido3 + " " + subapellido2 + " " + subapellido1;
                    apellido2    = subs[0];
                    apellidos    = apellido1 + " " + apellido2;
                    nombre1      = subs[5];
                    nombre2      = subs[4];
                    nombres      = nombre1 + " " + nombre2;
                }
                /* si no es el Caso y los apellidos son "GONZALEZ ACEVEDO" y terminan en un solo nombre se  inviterte los apellidos y separa el nombre  */
                else if (item.NOMBRE_CAUSANTE.Substring(0, 16).Equals("GONZALEZ ACEVEDO"))
                {
                    apellido1 = subs[1];
                    apellido2 = subs[0];
                    apellidos = apellido1 + " " + apellido2;

                    nombre1 = subs[2];
                    nombres = nombre1;
                }
                /* si no es ninguno de los casos por defecto de dividira en 4  2 nombre y 2 apellidos*/
                else
                {
                    apellido1 = subs[1];
                    apellido2 = subs[0];
                    apellidos = apellido1 + " " + apellido2;
                    nombre1   = subs[3];
                    nombre2   = subs[2];
                    nombres   = nombre1 + " " + nombre2;
                }

                /* los datos de los causantes como Rut Nombre promedio_Renta estaran
                 * en los funcionarios como Rut, nombre, apelldios y Renta_promedio y los deams datos en 0 o nulos */
                Funcionario funcionario = new Funcionario();
                funcionario.Id_Funcionario = id_Funcionario;
                funcionario.Rut            = Rut;
                funcionario.Nombres        = nombres;
                funcionario.Apellidos      = apellidos;
                funcionario.RentaPromedio  = Renta;
                funcionario.Activo         = Activo;
                funcionario.Sexo           = 0;
                funcionario.EstadoCivil    = 0;
                funcionario.Fec_nacimiento = null;
                funcionario.Direccion      = "Null";
                /* Los objectos seran almacenados en una lista de objectos de Funcionarios  */
                funcionarios.Add(funcionario);
            }
            /* se va a mostrar los datos almacenados en la base de datos en el objecto Funcionario y counts se va a 0 y el objecto almacenado  */

            foreach (var ilem in funcionarios)
            {
                b = 0;
                Funcionario funcionario = new Funcionario();
                funcionario.Id_Funcionario = ilem.Id_Funcionario;
                funcionario.Rut            = ilem.Rut;
                funcionario.Nombres        = ilem.Nombres;
                funcionario.Apellidos      = ilem.Apellidos;
                funcionario.RentaPromedio  = ilem.RentaPromedio;
                funcionario.Activo         = ilem.Activo;
                funcionario.Sexo           = ilem.Sexo;
                funcionario.EstadoCivil    = ilem.EstadoCivil;
                funcionario.Fec_nacimiento = ilem.Fec_nacimiento;
                funcionario.Direccion      = ilem.Direccion;
                /* se va a leer los datos del objecto Funcionario solamente su id y su rut */
                foreach (var items in db.Funcionario)
                {
                    Funcionario funcionario1 = new Funcionario();
                    funcionario1.Id_Funcionario = items.Id_Funcionario;
                    funcionario1.Rut            = items.Rut;

                    /*si la id del funcionario de la lista es igual a la id del funcionario de la base de datos y
                     * el rut del funcionario de la lista es igual al rut del funcionario enttonces los datos de la lista
                     * se guardara a otra lista llamada repetidos con los mismo parametros del objectos Funcionario    */
                    if (funcionario1.Id_Funcionario == ilem.Id_Funcionario && funcionario1.Rut.Equals(ilem.Rut))
                    {
                        b = 0;
                        c = c + 1;
                        repetidos.Add(funcionario);
                    }

                    /*si no se guardara en otra lista con el nombre de los norepetidos con los datos del objeto funcionario de la base de datos
                     * y la variable b y c se va a acumular    */
                    else
                    {
                        on = 0;
                        c  = c + 1;
                        b  = b + 1;
                        norepetidos.Add(funcionario1);
                    }

                    /*si la variable b es igual al conteo del foreach de la base de datos del funcionario entonces este dato es un nuevo funcionario
                     * y se guarda en la  lista de nuevo */
                    if (b == db.Funcionario.Count())
                    {
                        nuevo.Add(funcionario);
                    }
                }
            }

            /*Se crea  un foreach y se va a leer  los datos de la lista del norepetido y  va modificar del activo va a ser 0
             * como si fuera una nueva hoja de activos mayormente a todos los funcionarios van a ser 0 al inicio  */
            foreach (var item in norepetidos)
            {
                Funcionario funcionario = new Funcionario();
                funcionario.Id_Funcionario = item.Id_Funcionario;
                conexion.Close();
                conexion.Open();
                String     Cadena  = "update Funcionario set Activo =" + 0 + "where Id_Funcionario =" + funcionario.Id_Funcionario + "";
                SqlCommand command = new SqlCommand(Cadena, conexion);
                int        cant;
                cant = command.ExecuteNonQuery();
                conexion.Close();
            }

            /* se crea  un foreach para leer los datos de la  lista de los repetidos  va a cambiar su activo a  1 en la base de datos
             * entonces solo va a pasar a los funcionarios que estan repetidos  */
            foreach (var item in repetidos)
            {
                Funcionario funcionario = new Funcionario();
                funcionario.Id_Funcionario = item.Id_Funcionario;
                conexion.Close();
                conexion.Open();
                String     Cadena  = "update Funcionario set Activo =" + 1 + "where Id_Funcionario =" + funcionario.Id_Funcionario + "";
                SqlCommand command = new SqlCommand(Cadena, conexion);
                int        cant;
                cant = command.ExecuteNonQuery();
                conexion.Close();
            }
            /* se crea un foreach para leer a los nuevos  y la variable on va a ser  igual a 1  */
            foreach (var item in nuevo)
            {
                on = 1;
            }


            /*si la varible on es igual a 1  entonces  inicia la siguiente secuencia*/
            if (on == 1)
            {
                /*en caso que la base de datos esta vacia, la Variable c estara en 0
                 *  y la lista de objectos funcionarios se guardara en la Base de datos por DEFAULT */
                if (c == 0)
                {
                    db.Funcionario.AddRange(funcionarios);
                }
                /* sino entonces los datos de  la lista nuevo se añade a la base de datos  */
                else
                {
                    db.Funcionario.AddRange(nuevo);
                }

                /*se elimina  los datos del archivo temporal con su lista  y  se guarda  los datos de la base de datos ademas
                 * se redireciona al proceso de descargar */
                causanteDAO.EliminarCausantes();
                db.SaveChanges();
                return(Redirect("../Causantes/Descargar"));
            }
            /*si on esta en 0  entonces se elimina  los datos del archivo temporal con su lista y se redireciona al proceso de descargar */
            else
            {
                causanteDAO.EliminarCausantes();
                return(Redirect("../Causantes/Descargar"));
            }
        }
Ejemplo n.º 6
0
        public ActionResult Proceso_de_guardado(String Guardar)
        {
            /* si aceptan con todos los datos comienza el proceso de guardado que se guardara los datos de la clase Causante  y  Documento
             * a la  base de datos ademas que crean 3 listas una en la clase Documento que se almacena en la lista tempora de DocumentoDAO y las dos en la clase Causante una para guardar los repetidos
             * y otro que esta guardado en la lista temporal de CausanteDAO */
            int docs = 0;

            DocumentoDAO     documentoDAO       = new DocumentoDAO();
            List <Documento> documentos         = documentoDAO.GetDocumentos();
            CausantesDAO     causanteDAO        = new CausantesDAO();
            List <Causante>  causantesguardados = causanteDAO.GetCausantes();
            List <Causante>  Repetidos          = new List <Causante>();

            /* primero comienza en los datos guardados en la lista temporal de CausanteDAO se mostrara de uno por uno */
            foreach (var items in causantesguardados)
            {
                int      count = 0;
                Causante c     = new Causante();
                c.NUM_CORRELATIVO          = items.NUM_CORRELATIVO;
                c.RUT_CAUSANTE             = items.RUT_CAUSANTE;
                c.NOMBRE_CAUSANTE          = items.NOMBRE_CAUSANTE;
                c.CODIGO_TIPO_CAUSANTE     = items.CODIGO_TIPO_CAUSANTE;
                c.TIPO_CAUSANTE            = items.TIPO_CAUSANTE;
                c.RUT_BENEFICIARIO         = items.RUT_BENEFICIARIO;
                c.NOMBRE_BENEFICIARIO      = items.NOMBRE_BENEFICIARIO;
                c.CODIGO_TIPO_BENEFICIARIO = items.CODIGO_TIPO_BENEFICIARIO;
                c.TIPO_BENEFICIARIO        = items.TIPO_BENEFICIARIO;
                c.CODIGO_TIPO_BENEFICIO    = items.CODIGO_TIPO_BENEFICIO;
                c.TIPO_BENEFICIO           = items.TIPO_BENEFICIO;
                c.RUT_EMPLEADOR            = items.RUT_EMPLEADOR;
                c.NOMBRE_EMPLEADOR         = items.NOMBRE_EMPLEADOR;
                c.FECHA_RECONOCIMIENTO     = items.FECHA_RECONOCIMIENTO;
                c.TRAMO               = items.TRAMO;
                c.MONTO_BENEFICIO     = items.MONTO_BENEFICIO;
                c.CODIGO_ESTADO_TUPLA = items.CODIGO_ESTADO_TUPLA;
                c.GLOSA_ESTADO_TUPLA  = items.GLOSA_ESTADO_TUPLA;
                c.PROMEDIO_RENTA      = items.PROMEDIO_RENTA;


                /* aqui se  mostrara los datos que estan en la Base de Datos  solo se mostrara los datos de NUM_CORRELATIVO y Rut del Causante */
                foreach (var item in db.Causante)
                {
                    count = 0;
                    Causante ca = new Causante();
                    ca.NUM_CORRELATIVO = item.NUM_CORRELATIVO;
                    ca.RUT_CAUSANTE    = item.RUT_CAUSANTE;

                    /* en caso que si el numero NUM_CORRELATIVO de la lista es igual al NUM_CORRELATIVO de la base de datos y el RUT del CAUSANTE de la lista temporal
                     * es igual RUT del CAUSANTE de la base datos entonces se guarda los datos de la lista temporal en otra lista llamada repetidos */
                    if (c.NUM_CORRELATIVO == ca.NUM_CORRELATIVO && c.RUT_CAUSANTE.Equals(ca.RUT_CAUSANTE))
                    {
                        Repetidos.Add(c);
                        count = count + 1;
                        break;
                    }
                }

                /* si se ha mostrado todos los datos de la base dato y no ha parecido ninguna se guardara como un nuevo causante incluso si
                 * la base de datos esta vacia se los datos del causante se guardara por defecto */
                if (count == 0)
                {
                    db.Causante.Add(c);
                    db.SaveChanges();
                }
            }

            /* este proceso se mostrara el la lista temporal de DocumetoDAO
             * */


            foreach (var item in documentos)
            {
                Documento documento = new Documento();
                documento.Archivo = item.Archivo;
                documento.Tamaño  = item.Tamaño;
                documento.tipo    = item.tipo;
                documento.Fecha   = item.Fecha;
                String fechadoc = item.Fecha.Date.ToString();
                fechadoc = fechadoc.Substring(0, 10);
                String[] Fechacompletadoc = fechadoc.Split('/');
                fechadoc = Fechacompletadoc[2] + "/" + Fechacompletadoc[1] + "/" + Fechacompletadoc[0];

                /* se  muestra los datos de el documeto o los documentos que esta en la base de datos */

                foreach (var items in db.Documento)
                {
                    docs = 0;
                    Documento Documentos = new Documento();
                    Documentos.Id_documento = items.Id_documento;
                    Documentos.Archivo      = items.Archivo;
                    Documentos.Tamaño       = items.Tamaño;
                    Documentos.tipo         = items.tipo;
                    Documentos.Fecha        = items.Fecha;

                    /* si el nombre nombre del el archivo de la lista temporal es igual al nombre de la base de datos
                     * y tipo de la lista temporal es igual al tipo de la base de datos entonces se actualiza la fecha de el documento de la base de datos    */
                    if (Documentos.Archivo.Equals(documento.Archivo) && Documentos.tipo.Equals(documento.tipo))
                    {
                        docs = docs + 1;
                        conexion.Close();
                        conexion.Open();
                        String     Cadena  = " update Documento set Fecha=" + "'" + documento.Fecha + "'where Id_documento=" + Documentos.Id_documento + "";
                        SqlCommand command = new SqlCommand(Cadena, conexion);
                        int        cant;
                        cant = command.ExecuteNonQuery();
                        conexion.Close();
                        break;
                    }
                }

                /* si se ha mostrado todos los datos de la base datos y no ha parecido ninguna se guardara como un nuevo Documento incluso si
                 * la base de datos esta vacia se los datos del Documento se guardara por defecto */
                if (docs == 0)
                {
                    db.Documento.Add(documento);
                    db.SaveChanges();
                }
            }

            /* en el caso de la lista repetido se van actualiza los datos repetidos que estan la base de datos */

            foreach (var item in Repetidos)
            {
                Causante c = new Causante();
                c.NUM_CORRELATIVO          = item.NUM_CORRELATIVO;
                c.RUT_CAUSANTE             = item.RUT_CAUSANTE;
                c.NOMBRE_CAUSANTE          = item.NOMBRE_CAUSANTE;
                c.CODIGO_TIPO_CAUSANTE     = item.CODIGO_TIPO_CAUSANTE;
                c.TIPO_CAUSANTE            = item.TIPO_CAUSANTE;
                c.RUT_BENEFICIARIO         = item.RUT_BENEFICIARIO;
                c.NOMBRE_BENEFICIARIO      = item.NOMBRE_BENEFICIARIO;
                c.CODIGO_TIPO_BENEFICIARIO = item.CODIGO_TIPO_BENEFICIARIO;
                c.TIPO_BENEFICIARIO        = item.TIPO_BENEFICIARIO;
                c.CODIGO_TIPO_BENEFICIO    = item.CODIGO_TIPO_BENEFICIO;
                c.TIPO_BENEFICIO           = item.TIPO_BENEFICIO;
                c.RUT_EMPLEADOR            = item.RUT_EMPLEADOR;
                c.NOMBRE_EMPLEADOR         = item.NOMBRE_EMPLEADOR;
                c.FECHA_RECONOCIMIENTO     = item.FECHA_RECONOCIMIENTO.Date;
                c.TRAMO               = item.TRAMO;
                c.MONTO_BENEFICIO     = item.MONTO_BENEFICIO;
                c.CODIGO_ESTADO_TUPLA = item.CODIGO_ESTADO_TUPLA;
                c.GLOSA_ESTADO_TUPLA  = item.GLOSA_ESTADO_TUPLA;
                c.PROMEDIO_RENTA      = item.PROMEDIO_RENTA;
                String fecha = c.FECHA_RECONOCIMIENTO.Date.ToString();
                fecha = fecha.Substring(0, 10);
                String[] Fechacompleta = fecha.Split('/');
                fecha = Fechacompleta[2] + "/" + Fechacompleta[1] + "/" + Fechacompleta[0];
                conexion.Close();
                conexion.Open();
                String     Cadena  = "update Causante set RUT_CAUSANTE=" + "'" + c.RUT_CAUSANTE + "',NOMBRE_CAUSANTE=" + "'" + c.NOMBRE_CAUSANTE + "', CODIGO_TIPO_CAUSANTE=" + c.CODIGO_TIPO_CAUSANTE + ", TIPO_CAUSANTE=" + "'" + c.TIPO_CAUSANTE + "',RUT_BENEFICIARIO=" + "'" + c.RUT_BENEFICIARIO + "', NOMBRE_BENEFICIARIO=" + "'" + c.NOMBRE_BENEFICIARIO + "',CODIGO_TIPO_BENEFICIARIO=" + c.CODIGO_TIPO_BENEFICIARIO + ", TIPO_BENEFICIARIO=" + "'" + c.TIPO_BENEFICIARIO + "', CODIGO_TIPO_BENEFICIO=" + c.CODIGO_TIPO_BENEFICIO + ", TIPO_BENEFICIO=" + "'" + c.TIPO_BENEFICIO + "', RUT_EMPLEADOR=" + "'" + c.RUT_EMPLEADOR + "', FECHA_RECONOCIMIENTO=" + "'" + fecha + "', TRAMO=" + c.TRAMO + ",MONTO_BENEFICIO=" + c.MONTO_BENEFICIO + ",CODIGO_ESTADO_TUPLA=" + c.CODIGO_ESTADO_TUPLA + ", GLOSA_ESTADO_TUPLA= " + "'" + c.GLOSA_ESTADO_TUPLA + "', PROMEDIO_RENTA= " + c.PROMEDIO_RENTA + " where NUM_CORRELATIVO=" + c.NUM_CORRELATIVO + "";
                SqlCommand command = new SqlCommand(Cadena, conexion);
                int        cant;
                cant = command.ExecuteNonQuery();
                conexion.Close();
            }

            /* se elimina el documentos que estan en la lista del archivo temporal */
            documentoDAO.EliminarDocumento();

            /* Direcciona a  proceso  */
            return(Redirect("../Funcionarios/Proceso"));
        }