Example #1
0
    public void SetEntStatus(Chart iChart)
    {
        //전사점수
        Biz_Bsc_Score_Card objBSC  = new Biz_Bsc_Score_Card();
        DataSet            dsScore = objBSC.GetEstDeptTotalScore(this.IEstTermRefID, this.IYmd, this.ISumType, this.IEstDeptID);

        if (dsScore.Tables.Count > 0)
        {
            if (dsScore.Tables[0].Rows.Count > 0)
            {
                lblEntScore.Text = Math.Round(decimal.Parse(dsScore.Tables[0].Rows[0]["POINT"].ToString()), 0).ToString();
            }
        }
        else
        {
            lblEntScore.Text = "0";
        }

        // 관점별 달성도
        DataSet dsViw = objBSC.GetEstDeptKpiViewTypeList(this.IEstTermRefID, this.IYmd, this.ISumType, this.IEstDeptID);

        MSCharts.GetDefaultChart(iChart, ChartImageType.Jpeg, 300, 178, true, false, true);
        //iChart.Titles.Add("전사 관점별 달성도", Docking.Top);

        iRow = dsViw.Tables[0].Rows.Count;

        if (iRow > 0)
        {
            Series serARate = MSCharts.CreateSeries(iChart, "1", iChart.ChartAreas[0].Name, "달성율", null, SeriesChartType.Bar, 0, GetChartColor(0), Color.FromArgb(chartHeight, 26, 59, 105), Color.FromArgb(64, 0, 0, 0), 1, 9, Color.FromArgb(64, 64, 64));

            dsViw.Tables[0].DefaultView.Sort = "VIEW_REF_ID desc";
            iChart.DataSource      = dsViw.Tables[0].DefaultView;
            serARate.YValueMembers = "ACHV_RATE";
            serARate.XValueMember  = "VIEW_NAME";
            iChart.DataBind();

            for (int i = 0; i < serARate.Points.Count; i++)
            {
                serARate.Points[i].Color = GetChartColor(i);
            }

            serARate.ToolTip = "#VALY{P}";
        }
    }
Example #2
0
    // 전사 등급추이
    public void SetEntGradeRateTrend(Chart iChart)
    {
        DateTime           startYM = (DateTime.ParseExact(this.IYmd, "yyyyMM", null)).AddYears(-1);
        Biz_Bsc_Score_Card objBSC  = new Biz_Bsc_Score_Card();
        DataSet            dsGrd   = objBSC.GetKpiEntGradeStatus
                                         (base.GetYMDFromDateTime(startYM, "").Substring(0, 6)
                                         , this.IYmd
                                         , this.ISumType
                                         , this.IEstDeptID);

        MSCharts.GetDefaultChart(iChart, ChartImageType.Jpeg, 520, chartHeight, true, true, true);
        ChartArea FstChtArea = iChart.ChartAreas[0];

        iChart.Legends[0].Alignment   = StringAlignment.Near;
        iChart.Legends[0].LegendStyle = LegendStyle.Column;
        iChart.Legends[0].Docking     = Docking.Left;
        //iChart.Legends[0].DockInsideChartArea = false;

        string sTitle = "지표 등급추이분석";

        MSCharts.CreateTitle(iChart, sTitle);

        //FstChtArea.AxisY.Title = "구성비";

        DataTable dtGrade = this.GetGradeSchema();

        if (dsGrd.Tables.Count > 0)
        {
            iRow = dsGrd.Tables[0].Rows.Count;
            for (int i = 0; i < iRow; i++)
            {
                string  sKey = dsGrd.Tables[0].Rows[i]["THRESHOLD_REF_ID"].ToString();
                string  sVal = dsGrd.Tables[0].Rows[i]["THRESHOLD_KNAME"].ToString();
                string  sYmd = dsGrd.Tables[0].Rows[i]["YMD"].ToString();
                decimal dVal = decimal.Parse(dsGrd.Tables[0].Rows[i]["COMP_RATE"].ToString());

                for (int k = 0; k < dtGrade.Rows.Count; k++)
                {
                    if (sYmd.Equals(dtGrade.Rows[k][COL_KEY.KEY_FIELD.ToString()].ToString()) && dtGrade.Columns.Contains(sKey))
                    {
                        dtGrade.Rows[k][sKey] = dVal;
                    }
                }
            }

            FstChtArea.AxisY.LabelStyle.Format = "P0";

            iCol = dtGrade.Columns.Count;
            //DundasAnimations.DundasChartBase(iChart, AnimationTheme.GrowingTogether, -1, -1, false, 1);
            iChart.DataSource = dtGrade;
            for (int m = 1; m < iCol; m++)
            {
                Series serAchv = MSCharts.CreateSeries(iChart, m.ToString(), iChart.ChartAreas[0].Name, dtGrade.Columns[m].Namespace, null,
                                                       SeriesChartType.StackedColumn100, 0, ColorTranslator.FromHtml(dtGrade.Columns[m].Caption),
                                                       Color.FromArgb(0x4A, 0x58, 0x7E), Color.FromArgb(64, 0, 0, 0), 1, 9, Color.FromArgb(64, 64, 64));
                serAchv.ToolTip = "#VALY{P}";

                //DundasAnimations.GrowingAnimation(iChart, serAchv, m, m, true);
                serAchv.YValueMembers = dtGrade.Columns[m].ColumnName;

                if (m == 1)
                {
                    serAchv.XValueMember = dtGrade.Columns[COL_KEY.KEY_FIELD.ToString()].ColumnName;
                }
            }

            iChart.DataBind();
        }
    }