Exemplo n.º 1
0
    private void SetKpiSignalGrid()
    {
        Biz_Bsc_Kpi_Threshold_Info objBSC = new Biz_Bsc_Kpi_Threshold_Info();
        //DataSet dsSignal = objBSC.GetSignalListPerKpi(this.IEstTermRefID, this.IKpiRefID, this.IMeasurementStep);
        DataSet dsSignal = objBSC.GetSignalListPerKpiWithBiz(this.IEstTermRefID, this.IKpiRefID, this.IMeasurementStep);

        grvSignal.DataSource = dsSignal.Tables[0].DefaultView;
        grvSignal.DataBind();

        //ugrdSignal.Clear();
        //ugrdSignal.Rows.Clear();
        //ugrdSignal.DataSource = dsSignal;
        //ugrdSignal.DataBind();
        this.drawGrade();

        startYY = 0;
        DataSet dsTRStatus = objBSC.GetTargetResultPerYear(this.IEstTermRefID, this.IKpiRefID, out startYY);
        //ugrdTRStatus.Clear();
        //ugrdTRStatus.DataSource = dsTRStatus;
        //ugrdTRStatus.DataBind();
    }
Exemplo n.º 2
0
    private void drawGrade()
    {
        DundasCharts.DundasChartBase(chartScore, ChartImageType.Png, 350, 170
                                     , BorderSkinStyle.Emboss, Color.FromArgb(181, 64, 1), 2
                                     , Color.FromArgb(0xFF, 0xFF, 0xFE)
                                     , Color.FromArgb(0xFF, 0xFF, 0xFE), Color.FromArgb(0x20, 0x80, 0xD0), ChartDashStyle.Solid
                                     , -1
                                     , ChartHatchStyle.None, GradientType.TopBottom, AntiAliasing.None);

        startYY = 0;
        Biz_Bsc_Kpi_Threshold_Info objBSC = new Biz_Bsc_Kpi_Threshold_Info();
        DataSet dsLine = objBSC.GetTargetPerGrade(this.IEstTermRefID, this.IKpiRefID, out startYY);
        int     cntRow = dsLine.Tables[0].Rows.Count;
        int     cntCol = dsLine.Tables[0].Columns.Count;

        if (startYY < 1)
        {
            return;
        }

        try
        {
            //================================================================== LINE GRAPH
            for (int i = cntCol - 1; i > 0; i--)
            {
                dsLine.Tables[0].Columns[i].ColumnName = dsLine.Tables[0].Columns[i].ColumnName.Substring(0, 2) == "YY"
                                                       ? Convert.ToString(startYY) + "년"
                                                       : dsLine.Tables[0].Columns[i].ColumnName;

                startYY = startYY - 1;
            }

            Series[] oasrType = new Series[cntRow];
            int      intLP    = 0;


            for (int i = 0; i < cntRow; i++)
            {
                oasrType[intLP] = DundasCharts.CreateSeries
                                      (chartScore, "Series" + intLP.ToString(), chartScore.ChartAreas[0].Name,
                                      dsLine.Tables[0].Rows[i]["THRESHOLD_ENAME"].ToString(), null, (i == 0) ? SeriesChartType.Column : SeriesChartType.Line, (i == 0) ? 0 : 3,
                                      (intLP == 0) ? Color.Blue : GetSignalColor(intLP - 1), GetChartColor(intLP),
                                      Color.FromArgb(64, 0, 0, 0), 1, 9, Color.FromArgb(64, 64, 64));

                for (int j = 2; j < cntCol; j++)
                {
                    oasrType[intLP].Points.AddXY(dsLine.Tables[0].Columns[j].ColumnName
                                                 , double.Parse(dsLine.Tables[0].Rows[i][j].ToString()));
                }

                intLP += 1;
            }

            if (intLP > 0)
            {
                oasrType[intLP - 1].ValueMemberX = "THRESHOLD_ENAME";
            }

            string strVirDir = Request.CurrentExecutionFilePath;
            strVirDir = strVirDir.Substring(0, strVirDir.LastIndexOf('/'));
            string strCurDir = Server.MapPath(".");
            string strImgDir = "/ChartImages/";
            string strFileNm = System.Guid.NewGuid().ToString() + ".Png";
            string strFullNm = (strCurDir + strImgDir + strFileNm);

            if (!Directory.Exists(strCurDir + strImgDir))
            {
                Directory.CreateDirectory(strCurDir + strImgDir);
            }

            if (!File.Exists(strFullNm))
            {
                File.Delete(strFullNm);
            }

            chartScore.Save(strFullNm, ChartImageFormat.Png);

            imgChart.ImageUrl = strVirDir + strImgDir + strFileNm;
        }
        catch (Exception ex)
        {
            string rtnMsg = ex.Message;
        }
    }