private int EvaluarBoolSpPrimaPag(Regla r, int exitoLinea)
 {
     if (r.Tabladestino != string.Empty)
     {
         var valor = r.Tabladestino;
         valor = valor.Replace("@valor", "'" + CampoActual + "'");
         StringCollection resultadoValor;
         using (var context = new DISEntities())
         {
             ObjectResult resultado =
                 context.pa_valida_EjecutaProcedimientoAlmacenado(valor);
             resultadoValor = ObtieneColeccion(resultado);
         }
         if (resultadoValor[0] == "1")
         {
             exitoLinea = 1;
         }
         else
         {
             ContadorErrores = ContadorErrores + 1;
             exitoLinea      = 0;
         }
     }
     return(exitoLinea);
 }
        private bool ExecSpBool(string procedure)
        {
            var resultadovalor = default(StringCollection);

            using (var context = new DISEntities())
            {
                ObjectResult resultado = context.pa_valida_EjecutaProcedimientoAlmacenado(procedure);
                resultadovalor = ObtieneColeccion(resultado);
            }
            return(resultadovalor[0] == "1");
        }
        private int EvaluarBoolSp(string tipoArchivo, Regla regla, int x, int exitoLinea, string text)
        {
            //en la tabla regla de archivos se agrego una columna forma de validacion los cuales son:
            //1 = Valida el dato en la aplicacion
            //0 = Consulta los stores respectivos
            StringCollection resultadoValor = new StringCollection();

            if (regla.FormaValidacion == 1)
            {
                string resultado = string.Empty;
                switch (regla.ReglaValidacion.Trim())
                {
                case "pa_valida_Fecha @valor":
                    resultado = paValidaFecha(CampoActual).ToString();
                    break;

                case "pa_valida_Numero7x2 @valor":
                    resultado = paValidaNumero7x2(CampoActual).ToString();
                    break;

                case "pa_valida_SoloNumeros @valor":
                    resultado = paValidaSoloNumero(CampoActual).ToString();
                    break;
                }
                resultadoValor.Add(resultado);
            }
            else
            {
                var valor = regla.ReglaValidacion;

                if (valor.Contains("pa_valida_SumaDetalleEnTotal"))
                {
                    return(EvaluarBoolSumaDetalleEnTotal(regla));
                }
                if (valor.Contains("pa_valida_montoWithKeyNomina"))
                {
                    valor = valor.Replace("@IdArchivo", IdArchivo.ToString());
                    valor = valor.Replace("@monto", CampoActual);
                    valor = valor.Replace("@keyNomina", string.Format("'{0}'", text.Trim().Substring(31, 25)));
                }
                else
                {
                    valor = valor.Replace("@valor", "'" + CampoActual + "'");
                    valor = valor.Replace("@IdArchivo", IdArchivo.ToString());
                    valor = valor.Replace("@NumeroLinea", (x + 1).ToString());
                    valor = valor.Replace("@CampoInicial", regla.CaracterInicial.ToString());
                    valor = valor.Replace("@LargoCampo", regla.LargoCampo.ToString());
                }

                using (var context = new DISEntities())
                {
                    var resultado = context.pa_valida_EjecutaProcedimientoAlmacenado(valor);
                    resultadoValor = ObtieneColeccion(resultado);
                }
            }

            if (resultadoValor[0] == "1")
            {
                exitoLinea = 1;
                //start:
                //1.- valida que exista una PRIMAPAG
                if (tipoArchivo == "PRIMDCUA")
                {
                    if (tipoArchivo == "PRIMDCUA")
                    {
                        exitoLinea = EvaluarBoolSpPrimaPag(regla, exitoLinea);
                    }
                }
                //end
            }
            else
            {
                ContadorErrores = ContadorErrores + 1;
                exitoLinea      = 0;
            }
            return(exitoLinea);
        }