Example #1
0
        /// <summary>
        /// Devuelve la pregunta anterior en el flujo de cada tema.
        /// </summary>
        /// <param name="codHogar">Codigo del hogar a buscar</param>
        /// <param name="idTema">Id del tema a buscar</param>
        /// <param name="idInstrumento">Id del Instrumento donde se va a buscar la siguiente pregunta</param>
        /// <param name="idPregunta">Id de la pregunta para saber el orden de ingreso </param>
        /// <param name="tipo">Tipo de flujo , para saber si es de CONSULTA O EDICION</param>
        /// <returns> List<gic_PreguntasxPersona> generada </returns>
        public List <gic_PreguntasxPersona> getPreguntaAnterior(string codHogar, int idTema, int idInstrumento, int idPregunta)
        {
            List <gic_PreguntasxPersona> preguntas = new List <gic_PreguntasxPersona>();
            string stored = string.Empty;

            AccesoDatos.AccesoDatos datos = new AccesoDatos.AccesoDatos();
            datos.Conexion       = baseDatos.connStringCar;
            datos.MotorBasedatos = true;
            DataSet           datoConsulta = new DataSet();
            List <Parametros> param        = new List <Parametros>();
            IDataReader       dataReader   = null;

            stored = "GIC_N_CARACTERIZACION.SP_BUSCAR_ANTERIOR_PREGUNTA";
            try
            {
                param.Add(baseDatos.asignarParametro("pHOG_CODIGO", 1, "System.String", codHogar));
                param.Add(baseDatos.asignarParametro("pID_TEMA", 1, "System.Int32", idTema.ToString()));
                param.Add(baseDatos.asignarParametro("pINS_IDINSTRUMENTO", 1, "System.Int32", idInstrumento.ToString()));
                param.Add(baseDatos.asignarParametro("pID_PREGUNTA", 1, "System.Int32", idPregunta.ToString()));
                param.Add(baseDatos.asignarParametro("cur_OUT", 2, "Cursor", ""));
                datoConsulta = datos.ConsultarConProcedimientoAlmacenado(stored, ref param);
                #region DataReader
                using (dataReader = datoConsulta.Tables[0].CreateDataReader())

                {
                    while (dataReader.Read())
                    {
                        gic_PreguntasxPersona pregunta = new gic_PreguntasxPersona();
                        if (!DBNull.Value.Equals(dataReader["PRE_IDPREGUNTA"]))
                        {
                            pregunta.pre_IdPregunta = int.Parse(dataReader["PRE_IDPREGUNTA"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["PRE_PREGUNTA"]))
                        {
                            pregunta.pre_pregunta = dataReader["PRE_PREGUNTA"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PRE_TIPOPREGUNTA"]))
                        {
                            pregunta.pre_TipoPregunta = dataReader["PRE_TIPOPREGUNTA"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PRE_TIPOCAMPO"]))
                        {
                            pregunta.pre_TipoCampo = dataReader["PRE_TIPOCAMPO"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["HOG_CODIGO"]))
                        {
                            pregunta.cod_Hogar = dataReader["HOG_CODIGO"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_IDPERSONA"]))
                        {
                            pregunta.per_IdPersona = int.Parse(dataReader["PER_IDPERSONA"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_PRIMERNOMBRE"]))
                        {
                            pregunta.per_PrimerNombre = dataReader["PER_PRIMERNOMBRE"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_SEGUNDONOMBRE"]))
                        {
                            pregunta.per_SegundoNombre = dataReader["PER_SEGUNDONOMBRE"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_PRIMERAPELLIDO"]))
                        {
                            pregunta.per_PrimerApellido = dataReader["PER_PRIMERAPELLIDO"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_SEGUNDOAPELLIDO"]))
                        {
                            pregunta.per_SegundoApellido = dataReader["PER_SEGUNDOAPELLIDO"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["VALIDACION_PERSONA"]))
                        {
                            pregunta.validacion_Persona = int.Parse(dataReader["VALIDACION_PERSONA"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["ORDENPRIORIDAD"]))
                        {
                            pregunta.ordenPrioridad = dataReader["ORDENPRIORIDAD"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["IXP_ORDEN"]))
                        {
                            pregunta.ipx_Orden = int.Parse(dataReader["IXP_ORDEN"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_FECHANACIMIENTO"]))
                        {
                            pregunta.per_fechaNacimiento = DateTime.Parse(dataReader["PER_FECHANACIMIENTO"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_NUMERODOC"]))
                        {
                            pregunta.per_NumeroDoc = dataReader["PER_NUMERODOC"].ToString();
                        }
                        preguntas.Add(pregunta);
                    }
                    dataReader.Close();
                    #endregion
                }
                return(preguntas);
            }
            catch (Exception e)
            {
                log.Error("gic_Pregunta / getPreguntaAnterior , Error: " + e.Message.ToString() + "/r" + e.StackTrace);
                return(null);
            }
            finally
            {
                datoConsulta.Dispose();
            }
        }
Example #2
0
        /// <summary>
        /// Obtiene la siguiente pregunta del flujo de cada formulario.
        /// </summary>
        /// <param name="codHogar">Codigo del hogar de la encuesta</param>
        /// <param name="idTema">Id del tema donde se va a buscar la siguiente pregunta</param>
        /// <param name="idInstrumento">Id del Instrumento donde se va a buscar la siguiente pregunta</param>
        /// <param name="idPregunta">Id de la pregunta para saber el orden de ingreso </param>
        /// <param name="tipo">Tipo de flujo , para saber si es de CONSULTA O EDICION</param>
        /// <returns> List<gic_PreguntasxPersona> generada </returns>
        public List <gic_PreguntasxPersona> getPreguntaSiguiente(string codHogar, int idTema, int idInstrumento, int idPregunta /*, string tipo*/)
        {
            string stored = string.Empty;

            stored = "GIC_N_CARACTERIZACION.SP_BUSCAR_SIGUIENTE_PREGUNTA";
            AccesoDatos.AccesoDatos datos = new AccesoDatos.AccesoDatos();
            datos.Conexion       = baseDatos.connStringCar;
            datos.MotorBasedatos = true;
            DataSet           datoConsulta = null;
            List <Parametros> param        = new List <Parametros>();
            IDataReader       dataReader   = null;

            param.Add(baseDatos.asignarParametro("pHOG_CODIGO", 1, "System.String", codHogar));
            param.Add(baseDatos.asignarParametro("pID_TEMA", 1, "System.Int32", idTema.ToString()));
            param.Add(baseDatos.asignarParametro("pINS_IDINSTRUMENTO", 1, "System.Int32", idInstrumento.ToString()));
            param.Add(baseDatos.asignarParametro("pID_PREGUNTA", 1, "System.Int32", idPregunta.ToString()));
            param.Add(baseDatos.asignarParametro("cur_OUT", 2, "Cursor", ""));
            datoConsulta = datos.ConsultarConProcedimientoAlmacenado(stored, ref param);

            List <gic_PreguntasxPersona> preguntas = new List <gic_PreguntasxPersona>();

            try
            {
                #region DataReader
                using (dataReader = datoConsulta.Tables[0].CreateDataReader())
                {
                    while (dataReader.Read())
                    {
                        gic_PreguntasxPersona pregunta = new gic_PreguntasxPersona();
                        if (!DBNull.Value.Equals(dataReader["PRE_IDPREGUNTA"]))
                        {
                            pregunta.pre_IdPregunta = int.Parse(dataReader["PRE_IDPREGUNTA"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["PRE_PREGUNTA"]))
                        {
                            pregunta.pre_pregunta = dataReader["PRE_PREGUNTA"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PRE_TIPOPREGUNTA"]))
                        {
                            pregunta.pre_TipoPregunta = dataReader["PRE_TIPOPREGUNTA"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PRE_TIPOCAMPO"]))
                        {
                            pregunta.pre_TipoCampo = dataReader["PRE_TIPOCAMPO"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["HOG_CODIGO"]))
                        {
                            pregunta.cod_Hogar = dataReader["HOG_CODIGO"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_IDPERSONA"]))
                        {
                            pregunta.per_IdPersona = int.Parse(dataReader["PER_IDPERSONA"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_PRIMERNOMBRE"]))
                        {
                            pregunta.per_PrimerNombre = dataReader["PER_PRIMERNOMBRE"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_SEGUNDONOMBRE"]))
                        {
                            pregunta.per_SegundoNombre = dataReader["PER_SEGUNDONOMBRE"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_PRIMERAPELLIDO"]))
                        {
                            pregunta.per_PrimerApellido = dataReader["PER_PRIMERAPELLIDO"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_SEGUNDOAPELLIDO"]))
                        {
                            pregunta.per_SegundoApellido = dataReader["PER_SEGUNDOAPELLIDO"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["VALIDACION_PERSONA"]))
                        {
                            pregunta.validacion_Persona = int.Parse(dataReader["VALIDACION_PERSONA"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["ORDENPRIORIDAD"]))
                        {
                            pregunta.ordenPrioridad = dataReader["ORDENPRIORIDAD"].ToString();
                        }
                        if (!DBNull.Value.Equals(dataReader["IXP_ORDEN"]))
                        {
                            pregunta.ipx_Orden = int.Parse(dataReader["IXP_ORDEN"].ToString());
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_FECHANACIMIENTO"]))
                        {
                            // log.Info("gic_Pregunta / getPreguntaSiguiente , campo : PER_FECHANACIMIENTO --> " + dataReader["PER_FECHANACIMIENTO"].ToString());

                            //MODIFICACION JOSE VASQUEZ: FECHA 2015.NOV.26
                            //SE FORMATEA LA FECHA DESDE LA BASE DE DATOS A FTO: dd/MM/yyyy PARA PODERLA MANIPULAR DESDE CONTROLADOR
                            //pregunta.per_fechaNacimiento = DateTime.Parse(dataReader["PER_FECHANACIMIENTO"].ToString());
                            pregunta.per_fechaNacimiento = (DateTime)dataReader["PER_FECHANACIMIENTO"];
                            //FIN MODIFICACION JOSE VASQUEZ: FECHA 2015.NOV.26

                            //log.Info("gic_Pregunta / getPreguntaSiguiente , campo : PER_FECHANACIMIENTO -->> PASO CORRECTAMENTE LA CONVERSION");
                        }
                        if (!DBNull.Value.Equals(dataReader["PER_NUMERODOC"]))
                        {
                            pregunta.per_NumeroDoc = dataReader["PER_NUMERODOC"].ToString();
                        }
                        preguntas.Add(pregunta);
                    }
                    dataReader.Close();
                    #endregion
                }
                return(preguntas);
            }
            catch (Exception e)
            {
                log.Error("gic_Pregunta / getPreguntaSiguiente , Error: " + e.Message.ToString() + "/r" + e.StackTrace);
                return(null);
            }
            finally
            {
                datoConsulta.Dispose();
                ////datos.Dispose();
            }
        }