Esempio n. 1
0
        public static PFSchedule CreateScheduleFromScreenInput(MainForm frm)
        {
            PFSchedule sked = new PFSchedule(frm.txtScheduleName.Text.Trim());

            try
            {
                _msg.Length = 0;
                _msg.Append("CreateScheduleFromScreenInput started ...\r\n");
                Program._messageLog.WriteLine(_msg.ToString());

                enScheduleFrequency skedFreq = PFScheduler.GetScheduleFrequency(frm.cboScheduleFrequency.Text.Trim());

                if (frm.txtCurrDateTime.Text.Trim().Length == 0)
                {
                    frm.txtCurrDateTime.Text = DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss");
                }

                switch (skedFreq)
                {
                case enScheduleFrequency.OneTime:
                    CreateRunOneTimeSchedule(frm, sked);
                    break;

                case enScheduleFrequency.Daily:
                    CreateDailySchedule(frm, sked);
                    break;

                case enScheduleFrequency.Weekly:
                    CreateWeeklySchedule(frm, sked);
                    break;

                case enScheduleFrequency.Monthly:
                    CreateMonthlySchedule(frm, sked);
                    break;

                default:
                    _msg.Length = 0;
                    _msg.Append("Unexpected or invalid schedule frequency: ");
                    _msg.Append(frm.txtScheduleName.Text.Trim());
                    throw new System.Exception(_msg.ToString());
                    //break;
                }
            }
            catch (System.Exception ex)
            {
                _msg.Length = 0;
                _msg.Append(AppGlobals.AppMessages.FormatErrorMessage(ex));
                Program._messageLog.WriteLine(_msg.ToString());
                AppMessages.DisplayErrorMessage(_msg.ToString(), _saveErrorMessagesToAppLog);
            }
            finally
            {
                _msg.Length = 0;
                _msg.Append("\r\n... CreateScheduleFromScreenInput finished.");
                Program._messageLog.WriteLine(_msg.ToString());
            }

            return(sked);
        }
Esempio n. 2
0
        private static void CreateMonthlySchedule(MainForm frm, PFSchedule sked)
        {
            CreateDailySchedule(frm, sked);

            sked.ScheduleFrequency = enScheduleFrequency.Monthly;

            sked.ScheduleOccursEveryNumDays = 1;

            if (frm.optOccursEveryMonthNum.Checked)
            {
                sked.MonthlyScheduleMonthIdType  = enMonthlyScheduleMonthIdType.EveryNumMonths;
                sked.MonthlyOccursEveryNumMonths = Convert.ToInt32(frm.txtMonthlyOccursIntervalNum.Text.Trim());
            }
            else if (frm.optOccursDuringMonthName.Checked)
            {
                sked.MonthlyScheduleMonthIdType = enMonthlyScheduleMonthIdType.OccursDuringMonthName;
                sked.MonthlySchedule.Month[1]   = frm.chkMonthlyJan.Checked;
                sked.MonthlySchedule.Month[2]   = frm.chkMonthlyFeb.Checked;
                sked.MonthlySchedule.Month[3]   = frm.chkMonthlyMar.Checked;
                sked.MonthlySchedule.Month[4]   = frm.chkMonthlyApr.Checked;
                sked.MonthlySchedule.Month[5]   = frm.chkMonthlyMay.Checked;
                sked.MonthlySchedule.Month[6]   = frm.chkMonthlyJun.Checked;
                sked.MonthlySchedule.Month[7]   = frm.chkMonthlyJul.Checked;
                sked.MonthlySchedule.Month[8]   = frm.chkMonthlyAug.Checked;
                sked.MonthlySchedule.Month[9]   = frm.chkMonthlySep.Checked;
                sked.MonthlySchedule.Month[10]  = frm.chkMonthlyOct.Checked;
                sked.MonthlySchedule.Month[11]  = frm.chkMonthlyNov.Checked;
                sked.MonthlySchedule.Month[12]  = frm.chkMonthlyDec.Checked;
            }
            else
            {
                sked.MonthlyScheduleMonthIdType = enMonthlyScheduleMonthIdType.Unknown;
            }

            if (frm.optMonthlyDayName.Checked)
            {
                sked.MonthlyScheduleDayIdType = enMonthlyScheduleDayIdType.DayName;
                sked.MonthlyScheduleOrdinal   = PFScheduler.GetMonthlyScheduleOrdinal(frm.cboMonthlyDayNameOrdinal.Text.Trim());
                sked.MonthlyScheduleDay       = PFScheduler.GetScheduleDay(frm.cboMonthlyDayName.Text.Trim());
            }
            else if (frm.optMonthlyDayNumber.Checked)
            {
                sked.MonthlyScheduleDayIdType = enMonthlyScheduleDayIdType.DayNumber;
                sked.MonthlyDayNumber         = Convert.ToInt32(frm.txtMonthlyDayNumber.Text.Trim());
            }
            else
            {
                sked.MonthlyScheduleDayIdType = enMonthlyScheduleDayIdType.Unknown;
            }
        }
Esempio n. 3
0
        private static void CreateRunOneTimeSchedule(MainForm frm, PFSchedule sked)
        {
            sked.ScheduleFrequency = enScheduleFrequency.OneTime;
            sked.RunAt             = Convert.ToDateTime(frm.txtRunOnceAt.Text.Trim());
            TimeSpan runWindow = new TimeSpan(0, Convert.ToInt32(frm.txtRunWindowInMinutes.Text.Trim()), 0);

            sked.RunWindow                  = runWindow;
            sked.ScheduleStartDate          = Convert.ToDateTime(frm.txtRunOnceAt.Text.Trim());
            sked.ScheduleEndDate            = Convert.ToDateTime(frm.txtRunOnceAt.Text.Trim()).Add(sked.RunWindow);
            frm.txtScheduleStart.Text       = sked.ScheduleStartDate.ToString("MM/dd/yyyy HH:mm:ss");
            frm.txtScheduleEnd.Text         = sked.ScheduleEndDate.ToString("MM/dd/yyyy HH:mm:ss");
            sked.ScheduleOccursEveryNumDays = 1;
            sked.TestCurrDateTime           = Convert.ToDateTime(frm.txtCurrDateTime.Text.Trim());
            sked.ExpectedTestResult         = PFScheduler.GetScheduleLookupResult(frm.cboExpectedTestResult.Text);
        }
Esempio n. 4
0
        //tests
        public static void RunTest(MainForm frm)
        {
            enScheduleFrequency skedFreq = enScheduleFrequency.Unknown;

            try
            {
                _msg.Length = 0;
                _msg.Append("RunTest started ...\r\n");
                Program._messageLog.WriteLine(_msg.ToString());

                skedFreq = PFScheduler.GetScheduleFrequency(frm.cboScheduleFrequency.Text);

                switch (skedFreq)
                {
                case enScheduleFrequency.OneTime:
                    RunOneTimeTest(frm);
                    break;

                case enScheduleFrequency.Daily:
                    RunDailyTest(frm);
                    break;

                case enScheduleFrequency.Weekly:
                    RunWeeklyTest(frm);
                    break;

                case enScheduleFrequency.Monthly:
                    RunMonthlyTest(frm);
                    break;

                default:
                    break;
                }
            }
            catch (System.Exception ex)
            {
                _msg.Length = 0;
                _msg.Append(AppGlobals.AppMessages.FormatErrorMessage(ex));
                Program._messageLog.WriteLine(_msg.ToString());
                AppMessages.DisplayErrorMessage(_msg.ToString(), _saveErrorMessagesToAppLog);
            }
            finally
            {
                _msg.Length = 0;
                _msg.Append("\r\n... RunTest finished.");
                Program._messageLog.WriteLine(_msg.ToString());
            }
        }
Esempio n. 5
0
        private static void CreateDailySchedule(MainForm frm, PFSchedule sked)
        {
            sked.ScheduleFrequency = enScheduleFrequency.Daily;
            TimeSpan runWindow = new TimeSpan(0, Convert.ToInt32(frm.txtRunWindowInMinutes.Text.Trim()), 0);

            sked.RunWindow         = runWindow;
            sked.ScheduleStartDate = Convert.ToDateTime(frm.txtScheduleStart.Text.Trim());
            sked.ScheduleEndDate   = Convert.ToDateTime(frm.txtScheduleEnd.Text.Trim());

            sked.TestCurrDateTime   = Convert.ToDateTime(frm.txtCurrDateTime.Text.Trim());
            sked.ExpectedTestResult = PFScheduler.GetScheduleLookupResult(frm.cboExpectedTestResult.Text);


            if (frm.optDailyRunOnce.Checked)
            {
                sked.DailyFrequency = enDailyFrequency.OneTime;
            }
            else if (frm.optDailyRecurring.Checked)
            {
                sked.DailyFrequency = enDailyFrequency.Recurring;
            }
            else
            {
                sked.DailyFrequency = enDailyFrequency.Unknown;
            }

            if (sked.DailyFrequency == enDailyFrequency.OneTime)
            {
                sked.OccursOnceAtTime           = PFScheduler.GetTimeSpan(frm.txtDailyRunOnceAt.Text);
                sked.ScheduleOccursEveryNumDays = Convert.ToInt32(frm.txtScheduleRunsEveryNumDays.Text.Trim());
            }
            else if (sked.DailyFrequency == enDailyFrequency.Recurring)
            {
                sked.ScheduleOccursEveryNumDays   = Convert.ToInt32(frm.txtScheduleRunsEveryNumDays.Text.Trim());
                sked.DailyOccursEveryTimeInterval = Convert.ToInt32(frm.txtDailyOccursEveryIntervalNum.Text.Trim());
                sked.DailyOccursTimeInterval      = PFScheduler.GetDailyOccursInterval(frm.cboDailyOccursInterval.Text);
                sked.DailyOccursStartTime         = PFScheduler.GetTimeSpan(frm.txtOccursStartingAt.Text.Trim());
                sked.DailyOccursEndTime           = PFScheduler.GetTimeSpan(frm.txtOccursEndsAt.Text.Trim());
            }
            else
            {
                sked.DailyFrequency = enDailyFrequency.Unknown;
            }
        }
Esempio n. 6
0
 private static void LoadDailySchedule(MainForm frm, PFSchedule sked)
 {
     if (sked.DailyFrequency == enDailyFrequency.OneTime)
     {
         frm.optDailyRunOnce.Checked          = true;
         frm.txtDailyRunOnceAt.Text           = PFScheduler.FormatTimeSpan(sked.OccursOnceAtTime);
         frm.txtScheduleRunsEveryNumDays.Text = sked.ScheduleOccursEveryNumDays.ToString();
     }
     else if (sked.DailyFrequency == enDailyFrequency.Recurring)
     {
         frm.optDailyRecurring.Checked           = true;
         frm.txtScheduleRunsEveryNumDays.Text    = sked.ScheduleOccursEveryNumDays.ToString();
         frm.txtDailyOccursEveryIntervalNum.Text = sked.DailyOccursEveryTimeInterval.ToString();
         frm.cboDailyOccursInterval.Text         = sked.DailyOccursTimeInterval.ToString();
         frm.txtOccursStartingAt.Text            = PFScheduler.FormatTimeSpan(sked.DailyOccursStartTime);
         frm.txtOccursEndsAt.Text = PFScheduler.FormatTimeSpan(sked.DailyOccursEndTime);
     }
     else
     {
         frm.optDailyRunOnce.Checked   = false;
         frm.optDailyRecurring.Checked = false;
     }
 }
Esempio n. 7
0
        private static void RunMonthlyTest(MainForm frm)
        {
            PFSchedule             sked         = new PFSchedule(frm.txtScheduleName.Text.Trim());
            bool                   isScheduled  = false;
            enScheduleLookupResult lookupResult = enScheduleLookupResult.Unknown;

            CreateMonthlySchedule(frm, sked);

            isScheduled  = sked.DateIsScheduled(sked.TestCurrDateTime);
            lookupResult = sked.ScheduleLookupResult;

            _msg.Length = 0;
            _msg.Append("Schedule type:        ");
            _msg.Append(sked.ScheduleFrequency.ToString());
            _msg.Append("\r\n");
            _msg.Append("Schedule Name:        ");
            _msg.Append(sked.Name);
            _msg.Append("\r\n");
            _msg.Append("Schedule Start Date:  ");
            _msg.Append(sked.ScheduleStartDate.ToString("MM/dd/yyyy HH:mm:ss"));
            _msg.Append("\r\n");
            _msg.Append("Schedule End Date:    ");
            _msg.Append(sked.ScheduleEndDate.ToString("MM/dd/yyyy HH:mm:ss"));
            _msg.Append("\r\n");


            if (sked.MonthlyScheduleMonthIdType == enMonthlyScheduleMonthIdType.EveryNumMonths)
            {
                _msg.Append("Schedule runs every:  ");
                _msg.Append(sked.MonthlyOccursEveryNumMonths.ToString());
                _msg.Append(" month(s)");
            }
            else
            {
                _msg.Append("Scheduled months:     ");
                _msg.Append(GetScheduledMonthDaysList(sked));
                _msg.Append("\r\n");
            }
            _msg.Append("\r\n");

            if (sked.MonthlyScheduleDayIdType == enMonthlyScheduleDayIdType.DayNumber)
            {
                _msg.Append("Schedule runs on day: ");
                _msg.Append(sked.MonthlyScheduleDay.ToString());
            }
            else
            {
                _msg.Append("Schedule runs on:     ");
                _msg.Append(sked.MonthlyScheduleOrdinal.ToString());
                _msg.Append(" ");
                _msg.Append(sked.MonthlyScheduleDay.ToString());
            }
            _msg.Append("\r\n");


            _msg.Append("Schedule runs every:  ");
            _msg.Append(sked.DailyOccursEveryTimeInterval.ToString());
            _msg.Append(" day(s)");
            _msg.Append("\r\n");
            _msg.Append("Daily Frequency:      ");
            _msg.Append(sked.DailyFrequency.ToString());
            _msg.Append("\r\n");

            if (sked.DailyFrequency == enDailyFrequency.OneTime)
            {
                _msg.Append("Daily Run At:         ");
                _msg.Append(sked.OccursOnceAtTime.ToString());
                _msg.Append("\r\n");
            }
            else
            {
                _msg.Append("Daily occurs every:   ");
                _msg.Append(sked.DailyOccursEveryTimeInterval.ToString());
                _msg.Append(" ");
                _msg.Append(sked.DailyOccursTimeInterval.ToString());
                _msg.Append("\r\n");
                _msg.Append("Daily starting at:    ");
                _msg.Append(PFScheduler.FormatTimeSpan(sked.DailyOccursStartTime));
                _msg.Append("\r\n");
                _msg.Append("Daily ends at:        ");
                _msg.Append(PFScheduler.FormatTimeSpan(sked.DailyOccursEndTime));
                _msg.Append("\r\n");
            }

            _msg.Append("Test date:            ");
            _msg.Append(sked.TestCurrDateTime.ToString("MM/dd/yyyy HH:mm:ss"));
            _msg.Append("\r\n");
            _msg.Append("Actual result:        ");
            _msg.Append(lookupResult.ToString());
            _msg.Append("\r\n");
            _msg.Append("Expected test result: ");
            _msg.Append(sked.ExpectedTestResult.ToString());
            _msg.Append("\r\n");
            _msg.Append("Success/Failure:      ");
            if (sked.ExpectedTestResult == lookupResult)
            {
                _msg.Append("SUCCESS");
            }
            else
            {
                _msg.Append("FAIL");
            }
            _msg.Append("\r\n");
            Program._messageLog.WriteLine(_msg.ToString());
        }