示例#1
0
        public double RPT_4_AddData(DataTable dt, int[] Rows, int[] Columns, SeriseType SerType, DataTypes type)
        {
            double Max = 0;

            try
            {
                // Serise Type 으로 Row 선택한 경우
                if (SerType == SeriseType.Rows)
                {
                    for (int serise = 0; serise < Rows.Length; serise++, SerCount++)
                    {
                        for (int x = 0; x < Columns.Length; x++)
                        {
                            if (dt.Rows[Rows[serise]][Columns[x]] != null && dt.Rows[Rows[serise]][Columns[x]] != DBNull.Value)
                            {
                                //this.Value[x, SerCount] = Convert.ToDouble(dt.Rows[Rows[serise]][Columns[x]]) * GetCrossValue(type);
                                //Max = Math.Max(Max, this.Value[x, SerCount]);

                                this.Series[x].Points.AddXY(dt.Rows[Rows[serise]][x].ToString(), dt.Rows[Rows[serise]][Columns[x]].ToString());
                                //chart1.Series[0].Points.AddXY(dt_graph.Columns[i + 1].ToString(), Convert.ToInt32(dt_graph.Rows[0][i + 1]));
                                Max = Math.Max(Max, this.Series[x].Points.FindMaxByValue().YValues[0]);
                            }
                        }
                    }
                }
                else
                {
                    // Serise Type 으로 컬럼을 선택한 경우
                    for (int serise = 0; serise < Columns.Length; serise++, SerCount++)
                    {
                        for (int x = 0; x < Rows.Length; x++)
                        {
                            if (dt.Rows[Rows[x]][Columns[serise]] != null && dt.Rows[Rows[x]][Columns[serise]] != DBNull.Value)
                            {
                                //this.Value[SerCount, x] = Convert.ToDouble(dt.Rows[Rows[x]][Columns[serise]]) * GetCrossValue(type);
                                //Max = Math.Max(Max, this.Value[SerCount, x]);

                                this.Series[SerCount].Points.AddXY(dt.Rows[Rows[x]][serise].ToString(), dt.Rows[Rows[x]][Columns[serise]].ToString());
                                //this.Series[serise].Points.AddXY(Convert.ToDouble(dt.Rows[x][serise]), Convert.ToDouble(dt.Rows[x][serise + 1]));
                                Max = Math.Max(Max, this.Series[SerCount].Points.FindMaxByValue().YValues[0]);
                            }
                        }
                    }
                }

                return(Max);
            }
            catch (Exception ex)
            {
                throw new Exception(RptMessages.GetMessage("STD096", GlobalVariable.gcLanguage) + ex.Message);
            }
        }
示例#2
0
        public double RPT_4_AddData(FpSpread spread, int[] Rows, int[] Columns, SeriseType SerType, DataTypes type)
        {
            double Max = 0;

            try
            {
                // Serise Type 으로 Row 선택한 경우
                if (SerType == SeriseType.Rows)
                {
                    for (int serise = 0; serise < Rows.Length; serise++, SerCount++)
                    {
                        for (int x = 0; x < Columns.Length; x++)
                        {
                            //this.Value[SerCount, x] = Convert.ToDouble(spread.ActiveSheet.Cells[Rows[serise], Columns[x]].Value) * GetCrossValue(type);
                            //Max = Math.Max(Max, this.Value[SerCount, x]);

                            //if (spread.ActiveSheet.Cells[Rows[serise], Columns[x]].Value != null && spread.ActiveSheet.Cells[Rows[serise], Columns[x]].Value != DBNull.Value)
                            //{
                            //this.Series[SerCount].Points.AddXY(spread.ActiveSheet.Cells[Rows[serise], x].Value, spread.ActiveSheet.Cells[Rows[serise], Columns[x]].Value);
                            this.Series[SerCount].Points.AddY(Convert.ToDouble(spread.ActiveSheet.Cells[Rows[serise], Columns[x]].Value) * GetCrossValue(type));
                            Max = Math.Max(Max, this.Series[SerCount].Points.FindMaxByValue().YValues[0]);
                            //Max

                            //}
                        }
                    }
                }
                else
                {
                    // Serise Type 으로 컬럼을 선택한 경우
                    for (int serise = 0; serise < Columns.Length; serise++, SerCount++)
                    {
                        for (int x = 0; x < Rows.Length; x++)
                        {
                            //this.Value[SerCount, x] = Convert.ToDouble(spread.ActiveSheet.Cells[Rows[x], Columns[serise]].Value) * GetCrossValue(type);
                            //Max = Math.Max(Max, this.Value[SerCount, x]);

                            this.Series[SerCount].Points.AddY(Convert.ToDouble(spread.ActiveSheet.Cells[Rows[x], Columns[serise]].Value) * GetCrossValue(type));
                            Max = Math.Max(Max, this.Series[SerCount].Points.FindMaxByValue().YValues[0]);
                            // Max
                        }
                    }
                }

                return(Max);
            }
            catch (Exception ex)
            {
                throw new Exception(RptMessages.GetMessage("STD096", GlobalVariable.gcLanguage) + ex.Message);
            }
        }
示例#3
0
        public double RPT_4_AddData(DataTable dt, int [] Rows, int [] Columns, SeriseType SerType, DataTypes type)
        {
            double Max = 0;

            try
            {
                // Serise Type 으로 Row 선택한 경우
                if (SerType == SeriseType.Rows)
                {
                    for (int serise = 0; serise < Rows.Length; serise++, SerCount++)
                    {
                        for (int x = 0; x < Columns.Length; x++)
                        {
                            if (dt.Rows [Rows[serise]] [Columns[x]] != null && dt.Rows [Rows[serise]] [Columns[x]] != DBNull.Value)
                            {
                                this.Value[x, SerCount] = Convert.ToDouble(dt.Rows[Rows[serise]][Columns[x]]) * GetCrossValue(type);
                                Max = Math.Max(Max, this.Value[x, SerCount]);
                            }
                        }
                    }
                }
                else
                {
                    // Serise Type 으로 컬럼을 선택한 경우
                    for (int serise = 0; serise < Columns.Length; serise++, SerCount++)
                    {
                        for (int x = 0; x < Rows.Length; x++)
                        {
                            if (dt.Rows [Rows[x]] [Columns[serise]] != null && dt.Rows [Rows[x]] [Columns[serise]] != DBNull.Value)
                            {
                                this.Value[SerCount, x] = Convert.ToDouble(dt.Rows[Rows[x]][Columns[serise]]) * GetCrossValue(type);
                                Max = Math.Max(Max, this.Value[SerCount, x]);
                            }
                        }
                    }
                }

                return(Max);
            }
            catch (Exception ex)
            {
                throw new Exception(" RPT_AddDataUsingColumns : " + ex.Message);
            }
        }
示例#4
0
        public double RPT_4_AddData(FpSpread spread, int [] Rows, int [] Columns, SeriseType SerType, DataTypes type)
        {
            double Max = 0;

            try
            {
                // Serise Type 으로 Row 선택한 경우
                if (SerType == SeriseType.Rows)
                {
                    for (int serise = 0; serise < Rows.Length; serise++, SerCount++)
                    {
                        for (int x = 0; x < Columns.Length; x++)
                        {
                            this.Value[SerCount, x] = Convert.ToDouble(spread.ActiveSheet.Cells[Rows[serise], Columns[x]].Value) * GetCrossValue(type);
                            Max = Math.Max(Max, this.Value[SerCount, x]);
                        }
                    }
                }
                else
                {
                    // Serise Type 으로 컬럼을 선택한 경우
                    for (int serise = 0; serise < Columns.Length; serise++, SerCount++)
                    {
                        for (int x = 0; x < Rows.Length; x++)
                        {
                            this.Value[SerCount, x] = Convert.ToDouble(spread.ActiveSheet.Cells[Rows[x], Columns[serise]].Value) * GetCrossValue(type);
                            Max = Math.Max(Max, this.Value[SerCount, x]);
                        }
                    }
                }

                return(Max);
            }
            catch (Exception ex)
            {
                throw new Exception(" RPT_AddDataUsingColumns : " + ex.Message);
            }
        }
示例#5
0
 public double RPT_4_AddData(DataTable dt, int[] Rows, int[] Columns, SeriseType SerType)
 {
     return(RPT_4_AddData(dt, Rows, Columns, SerType, DataTypes.Initeger));
 }
示例#6
0
 public double RPT_4_AddData(FpSpread spread, int[] Rows, int[] Columns, SeriseType SerType)
 {
     return(RPT_4_AddData(spread, Rows, Columns, SerType, DataTypes.Initeger));
 }
示例#7
0
        // 차트 데이타를 셋팅
        // 여러번 호출하여 사용해도 가능
        // 항상 RPT_3_OpenData() 와 RPT_5_CloseData() 사이에 존재해야만 함.
        // SeriseType 따라서 Row 와 Column 둘중에 시리즈가 결정됨.
        public double RPT_4_AddData(FpSpread spread, int startRowPos, int rowSize, int startColumnPos, int columnSize, SeriseType SerType)
        {
            int[] rows    = new int[rowSize];
            int[] columns = new int[columnSize];

            for (int i = 0; i < rows.Length; i++)
            {
                rows[i] = i + startRowPos;
            }
            for (int i = 0; i < columns.Length; i++)
            {
                columns[i] = i + startColumnPos;
            }

            return(RPT_4_AddData(spread, rows, columns, SerType, DataTypes.Initeger));
        }