Ejemplo n.º 1
0
        public bool CreateDate(IDateOrder dateorder)
        {
            try
            {
                //get date column name from settings
                string dateColName = Settings.Default.TimeStampName;

                //create object to build date list
                IProcessDateTime process    = new ProcessDate(_data);
                List <DateTime>  newdateCol = process.BuildDateTimeList(dateorder);
                //add
                if (Utils.AddColtoDataTable <DateTime>(dateColName, newdateCol, _data))
                {
                    DataColumn dc = _data.Columns[dateColName];
                    _dateIndex = dc.Ordinal;
                    _columns.Add(new SessionColumn(dc.Ordinal, dc.ColumnName));
                    this[dateColName].ColumnType = SessionColumnType.DateTime;
                    _dateStatus = DataSetDateStatus.Found;
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception e)
            {
                throw e;
            }
        }
Ejemplo n.º 2
0
 //constructor
 public SessionColumnCollection(DataTable data)
 {
     _data       = data;
     _dateStatus = DataSetDateStatus.NotSet;
     _columns    = ProcessRawColumns();
     ProcessDate();
 }
        private void ProcessDate()
        {
            IProcessDateTime process = new ProcessDate(_data);

            _dateStatus = process.FindDateTimeColumn(out _dateIndex);

            //overwrite date col name
            _data.Columns[_dateIndex].ColumnName = Settings.Default.TimeStampName;
            _columns[_dateIndex].ColName         = Settings.Default.TimeStampName;

            IDateTimeSequence sequence = new DateTimeSequence(_data, _dateIndex);

            if (_dateStatus == DataSetDateStatus.Found)
            {
                List <DateTime> datesequence = sequence.GetExistingSequence();
                DataSetStart = datesequence.Min();
                DataSetEnd   = datesequence.Max();
                //MessageBox.Show(DataSetStart + " " + DataSetEnd );
                try
                {
                    DataPrep prep = new DataPrep(_data, _dateIndex);
                    prep.FillMissingdates(sequence.GetMissingTimeStamps());
                }
                catch (OutOfMemoryException)
                {
                    MessageBox.Show("ran out of memory processing dates. the file is too large.");
                }
            }
        }
 //constructor
 public SessionColumnCollection(DataTable data)
 {
     Console.WriteLine("Columns Passed to Session column Collection" + data.Rows);
     _data         = data;
     _dateStatus   = DataSetDateStatus.NotSet;
     _dataRecovery = new DataRecoveryFactory().CreateDataRecoveryObject(this._data);
     if (data.Columns.Count > 0 && data.Rows.Count > 0)
     {
         _columns = ProcessRawColumns();
         ProcessDate();
     }
 }
Ejemplo n.º 5
0
        public DataSetDateStatus FindDateTimeColumn(out int dateindex)
        {
            //search columns
            //find all datetypes and set datasetstatus

            try
            {
                DataSetDateStatus _dateStatus = DataSetDateStatus.NotSet;
                int DateCount = 0;
                int thisIndex = 0;
                dateindex = 0;
                foreach (DataColumn dc in _data.Columns)
                {
                    if (dc.DataType == typeof(DateTime))
                    {
                        thisIndex = dc.Ordinal;
                        DateCount++;
                    }
                }

                switch (DateCount)
                {
                case 0:
                    _dateStatus = DataSetDateStatus.FoundNone;
                    break;

                case 1:
                    dateindex   = thisIndex;
                    _dateStatus = DataSetDateStatus.Found;
                    break;

                case 2:
                    _dateStatus = DataSetDateStatus.FoundMultiple;
                    break;

                default:
                    _dateStatus = DataSetDateStatus.NotSet;
                    break;
                }
                return(_dateStatus);
            }

            catch (Exception e)
            {
                throw e;
            }
        }
Ejemplo n.º 6
0
        private void ProcessDate()
        {
            IProcessDateTime process = new ProcessDate(_data);

            _dateStatus = process.FindDateTimeColumn(out _dateIndex);

            //overwrite date col name
            _data.Columns[_dateIndex].ColumnName = Settings.Default.TimeStampName;
            _columns[_dateIndex].ColName         = Settings.Default.TimeStampName;
            IDateTimeSequence sequence = new DateTimeSequence(_data, _dateIndex);

            if (_dateStatus == DataSetDateStatus.Found)
            {
                List <DateTime> datesequence = sequence.GetExistingSequence();
                DataSetStart = datesequence.Min();
                DataSetEnd   = datesequence.Max();
            }
        }