Exemple #1
0
        /// <summary>
        /// 用到HTML的显示。把Val 根据URL的设置转换为Link.
        /// </summary>
        /// <param name="pk1">主键1</param>
        /// <param name="pk2">主键2</param>
        /// <param name="pk3">主键3</param>
        /// <param name="adt">数据分析类型</param>
        /// <returns>link</returns>
        public string GetCellContext(string pk1, string pk2, string pk3, AnalyseDataType adt)
        {
            Rpt3DCell cell = this.HisCells.GetCell(pk1, pk2, pk3);

            if (cell.Url == "")
            {
                return(cell.val.ToString());
            }

            //string val = cell.val.ToString();
            switch (adt)
            {
            case AnalyseDataType.AppFloat:
                return("<a href=\"javascript:openit('" + cell.Url + "&abc=xyz&" + this.Key1 + "=" + cell.PK1 + "&" + this.Key2 + "=" + cell.PK2 + "&" + this.Key3 + "=" + cell.PK3 + "')\" >" + float.Parse(cell.val.ToString()) + "</a>");

            case AnalyseDataType.AppInt:
                return("<a href=\"javascript:openit('" + cell.Url + "&abc=xyz&" + this.Key1 + "=" + cell.PK1 + "&" + this.Key2 + "=" + cell.PK2 + "&" + this.Key3 + "=" + cell.PK3 + "')\" >" + int.Parse(cell.val.ToString()) + "</a>");

            case AnalyseDataType.AppMoney:
                return("<a href=\"javascript:openit('" + cell.Url + "&abc=xyz&" + this.Key1 + "=" + cell.PK1 + "&" + this.Key2 + "=" + cell.PK2 + "&" + this.Key3 + "=" + cell.PK3 + "')\" >" + decimal.Parse(cell.val.ToString()).ToString("0.00") + "</a>");

            default:
                throw new Exception("error adt");
            }


            //return "<a href=\"javascript:openit('"+cell.Url+"&abc=xyz&"+this.D1ClassesName+"="+cell.PK1+"&"+this.D2ClassesName+"="+cell.PK2+"&"+this.D3ClassesName+"="+cell.PK3+"')\" >"+cell.val+"</a>";
            //return "<a href='javascript:window.open('"+cell.Url+"&abc=xyz&"+this.D1ClassesName+"="+cell.PK1+"&"+this.D2ClassesName+"="+cell.PK2+"&"+this.D3ClassesName+"="+cell.PK3+"','"+CellUrlTarget+"','toolbar=false')' >"+cell.val+"</a>";
            //return "<a href='"+cell.Url+"&abc=xyz&"+this.D1ClassesName+"="+cell.PK1+"&"+this.D2ClassesName+"="+cell.PK2+"&"+this.D3ClassesName+"="+cell.PK3+"' Target='"+CellUrlTarget+"' >"+cell.val+"</a>";
        }
Exemple #2
0
 /// <summary>
 /// 交叉报表实体
 /// </summary>
 /// <param name="d1">纬度1集合</param>
 /// <param name="d2">纬度2集合</param>
 /// <param name="dt">数据表</param>
 /// <param name="cellUrl">单元格连接</param>
 /// <param name="adt">数据类型</param>
 public RptPlanarEntity(Entities d1, Entities d2,
                        DataTable dt, string cellUrl, AnalyseDataType adt)
 {
     this.SingleDimensionItem1 = d1;
     this.SingleDimensionItem2 = d2;
     this.PlanarCells          = new RptPlanarCells(dt, cellUrl);
     this.HisADT = adt;
 }
Exemple #3
0
        /// <summary>
        /// 增加一个分析对象
        /// </summary>
        /// <param name="DataProperty">数据属性</param>
        /// <param name="OperationColumn">操作列</param>
        /// <param name="adp">数据类型</param>
        /// <returns>返回增加的位置</returns>
        public virtual int AddAnalyseObj(string DataProperty, string OperationColumn, AnalyseDataType adp)
        {
            AnalyseObj ao = new AnalyseObj(DataProperty, OperationColumn, adp);

            return(this.InnerList.Add(ao));
        }
Exemple #4
0
 /// <summary>
 /// 分析目标
 /// </summary>
 /// <param name="dp">描述</param>
 /// <param name="oc">操作列</param>
 /// <param name="adt">分析的数据类型</param>
 public AnalyseObj(string dp, string oc, AnalyseDataType adt)
 {
     this.DataProperty    = dp;
     this.OperationColumn = oc;
     this.HisADT          = adt;
 }
Exemple #5
0
        /// <summary>
        /// 得到一个单元格内的字符串
        /// </summary>
        /// <param name="pk1">pk1</param>
        /// <param name="pk2">pk2</param>
        /// <returns>html 标记</returns>
        public string GenerHtmlStrBy(string d1EnsName, string pk1, string d2EnsName, string pk2, AnalyseDataType adt)
        {
            RptPlanarCell en = this.GetCell(pk1, pk2);

            if (en.Url == "")
            {
                return(en.val.ToString());
            }

            try
            {
                switch (adt)
                {
                case AnalyseDataType.AppFloat:
                    return("<A href=\"javascript:openit('" + en.Url + "&" + d1EnsName + "=" + pk1 + "&" + d2EnsName + "=" + pk2 + "')\" >" + float.Parse(en.val.ToString()) + "</A>");

                case AnalyseDataType.AppInt:
                    return("<A href=\"javascript:openit('" + en.Url + "&" + d1EnsName + "=" + pk1 + "&" + d2EnsName + "=" + pk2 + "')\" >" + int.Parse(en.val.ToString()) + "</A>");

                case AnalyseDataType.AppMoney:
                    return("<A href=\"javascript:openit('" + en.Url + "&" + d1EnsName + "=" + pk1 + "&" + d2EnsName + "=" + pk2 + "')\" >" + float.Parse(en.val.ToString()).ToString("0.00") + "</A>");

                default:
                    throw new Exception("adt 类型错误.");
                }
            }
            catch
            {
                return("0");
            }
        }