Exemple #1
0
        /// <summary>
        /// Obtenemos Ultimo Elemento
        /// </summary>
        /// <param name="version">Versión de Nómina</param>
        /// <param name="id_grupo">Id Grupo</param>
        /// <returns></returns>
        public static RetornoOperacion ObtieneUltimoElemento(string version, int id_grupo, int id_nomina_empleado, int id_esquema_superior)
        {
            //Declaramos resultado
            RetornoOperacion resultado = new RetornoOperacion();

            //Si Existen Atributos
            using (DataTable mit = ObtieneAtributosRegistrados(version, id_grupo, id_nomina_empleado, id_esquema_superior))
            {
                //Validamos Si No Existen Atributos
                if (!Validacion.ValidaOrigenDatos(mit))
                {
                    //Declaramos Ultimo Elemnto Grupo
                    int id_ultimo = id_grupo;
                    //Obtenemos Id de Esquema
                    int id_esquema = Esquema.ObtieneIdEsquema(version, 1, id_grupo);


                    //Validamos Exista Esquema
                    if (id_esquema != 0)
                    {
                        //Si existen Elemento
                        using (DataTable elementos = Esquema.ObtieneElementos(version, id_grupo, id_nomina_empleado))
                        {
                            //Validamos Origen de Datos
                            if (Validacion.ValidaOrigenDatos(elementos))
                            {
                                //Recorremos cada uno de los Elemntos
                                foreach (DataRow r in elementos.Rows)
                                {
                                    //Obtenemos Ultimo Elemento
                                    resultado = ObtieneUltimoElemento(version, id_esquema, id_nomina_empleado, r.Field <int>("IdEsquemaRegistro"));

                                    //Si el Resultado es Exitoso
                                    if (resultado.OperacionExitosa)
                                    {
                                        //Salimos del ciclo
                                        break;
                                    }
                                }
                            }
                        }
                    }
                }
                else
                {
                    //Asignamos Valor Exitoso
                    resultado = new RetornoOperacion(0);
                }
            }
            //Devolvemos Valor
            return(resultado);
        }