예제 #1
0
        public override bool Equals(object obj)
        {
            if (!Convert.IsDBNull(obj) && obj != null)
            {
                Vista_Indicadores_Cubo instance =
                    (Vista_Indicadores_Cubo)obj;

                return(
                    this.AGRUPACION.Equals(instance.AGRUPACION) &&
                    this.ALARMA_O_PROPIEDAD.Equals(instance.ALARMA_O_PROPIEDAD) &&
                    this.CAMPO.Equals(instance.CAMPO) &&
                    this.CLA_CONCEPTO.Equals(instance.CLA_CONCEPTO) &&
                    this.DESCRIPCION.Equals(instance.DESCRIPCION) &&
                    this.FORMATO.Equals(instance.FORMATO) &&
                    this.FORMULA_BD.Equals(instance.FORMULA_BD) &&
                    this.NOM_INDICADOR.Equals(instance.NOM_INDICADOR) &&
                    this.TABLA.Equals(instance.TABLA) &&
                    this.TIPO.Equals(instance.TIPO) &&
                    this.TIPODATO.Equals(instance.TIPODATO)
                    );
            }
            else
            {
                return(base.Equals(obj));
            }
        }
예제 #2
0
        public Vista_Indicadores_Cubo GetByCLA_INDICADOR(
            int cla_indicador
            )
        {
            string sqlstr = @"SELECT
	I.CLA_CONCEPTO,
	I.NOM_INDICADOR,
	CASE   
	  WHEN A.NOM_LOGICO IS NOT NULL THEN 'NATIVO'   
	  ELSE 'CALCULADO'   
	END TIPO,
	I.FORMATO,
	CASE   
	  WHEN A.NOM_LOGICO IS NOT NULL THEN C.NOM_TABLA   
	  ELSE 'REFERENCIA A OTRO(S) INDICADORES(S)'   
	END TABLA,
	CASE   
	  WHEN A.NOM_LOGICO IS NOT NULL THEN A.NOM_FISICO   
	  ELSE I.FORMULA_USR   
	END CAMPO,
	CASE   
	  WHEN A.NOM_LOGICO IS NOT NULL THEN T.NOM_DATO   
	  ELSE 'float'   
	END TIPODATO,
	CASE   
	  WHEN A.NOM_LOGICO IS NOT NULL THEN A.AGRUPADOR   
	  ELSE 'CALCULADO'   
	END AGRUPACION,
	ISNULL(I.DIM_ALARM, '') [ALARMA_O_PROPIEDAD],
	ISNULL(I.DESCRIPCION, '') DESCRIPCION,
	I.FORMULA_BD 
FROM
   SI_INDICADOR I   
INNER JOIN
   SI_CONCEPTO C    
      ON I.CLA_CONCEPTO = C.CLA_CONCEPTO   
LEFT JOIN
   SI_CPTO_ATRIB A    
      ON I.CLA_CONCEPTO = A.CLA_CONCEPTO     
      AND I.NOM_INDICADOR = A.NOM_LOGICO     
      AND A.ESTATUS <> 2    
LEFT JOIN
   SI_BD_TIPOS T    
      ON A.TIPO_DATO = T.TIPO_DATO     
      AND T.CLA_BD = C.CLA_BD  
WHERE
   I.CLA_INDICADOR = @CLA_INDICADOR  
   AND  I.NOM_INDICADOR IS NOT NULL   
   AND  I.NOM_INDICADOR <> ''   
   AND  ISNULL(NO_EJECUTIVO,0) = 0  
ORDER BY
   I.NOM_INDICADOR";

            Hashtable m_params = new Hashtable();

            m_params.Add("@CLA_INDICADOR", cla_indicador);

            DataTable dt = SqlDB.Query(sqlstr, m_params);

            Vista_Indicadores_Cubo indicador = null;

            if (dt.Rows.Count > 0)
            {
                DataRow dr = dt.Rows[0];

                indicador = new Vista_Indicadores_Cubo(
                    SqlDB.GetNullableInt32(dr["CLA_CONCEPTO"]),
                    Convert.ToString(dr["NOM_INDICADOR"]),
                    Convert.ToString(dr["TIPO"]),
                    Convert.ToString(dr["FORMATO"]),
                    Convert.ToString(dr["TABLA"]),
                    Convert.ToString(dr["CAMPO"]),
                    Convert.ToString(dr["TIPODATO"]),
                    Convert.ToString(dr["AGRUPACION"]),
                    Convert.ToString(dr["ALARMA_O_PROPIEDAD"]),
                    Convert.ToString(dr["DESCRIPCION"]),
                    Convert.ToString(dr["FORMULA_BD"])
                    );
            }

            return(indicador);
        }