Esempio n. 1
0
        private void LoadDataSet(ADAScheduleDataSet dataSet, DateTime date, bool loadSymbol)
        {
            try
            {
                dataSet.EnforceConstraints = false;

                UserTableAdapter userAdapter = new UserTableAdapter();
                userAdapter.Fill(dataSet.User);

                ScheduleTableAdapter scheduleAdapter = new ScheduleTableAdapter();
                scheduleAdapter.Fill(dataSet.Schedule, date);

                if (loadSymbol)
                {
                    SymbolTableAdapter symbolAdapter = new SymbolTableAdapter();
                    symbolAdapter.Fill(dataSet.Symbol, date);
                }

                ActivityTableAdapter activityAdapter = new ActivityTableAdapter();
                activityAdapter.Fill(dataSet.Activity, date);

                ReminderTableAdapter reminderAdapter = new ReminderTableAdapter();
                reminderAdapter.Fill(dataSet.Reminder);

                Activity_ReminderTableAdapter arAdapter = new Activity_ReminderTableAdapter();
                arAdapter.Fill(dataSet.Activity_Reminder, date);

                if (loadSymbol)
                {
                    dataSet.EnforceConstraints = true;

                    foreach (ADAScheduleDataSet.ActivityRow activityRow in dataSet.Activity.Rows)
                    {
                        if (!activityRow.IsSymbolIdNull() && !activityRow.SymbolRow.IsImageNull())
                        {
                            activityRow.Image = activityRow.SymbolRow.Image;
                        }
                    }
                }

                dataSet.AcceptChanges();
            }
            catch (Exception ex)
            {
                ReportError(ex);
            }
        }
Esempio n. 2
0
        private void copyToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SelectDateForm selectDateForm = new SelectDateForm();

            if (selectDateForm.ShowDialog(this) == DialogResult.OK)
            {
                for (DateTime copyToDate = selectDateForm.SelectionRange.Start;
                     copyToDate.CompareTo(selectDateForm.SelectionRange.End) <= 0;
                     copyToDate = copyToDate.AddDays(1))
                {
                    Cursor.Current = Cursors.WaitCursor;
                    ADAScheduleDataSet dataSet = new ADAScheduleDataSet();

                    try
                    {
                        LoadDataSet(dataSet, copyToDate, false);

                        DataRow[] scheduleRows = dataSet.Schedule.Select("Type <= " + 1);

                        foreach (ADAScheduleDataSet.ScheduleRow scheduleRow in scheduleRows)
                        {
                            scheduleRow.Delete();
                        }

                        ScheduleTableAdapter scheduleAdapter = new ScheduleTableAdapter();
                        ActivityTableAdapter activityAdapter = new ActivityTableAdapter();

                        activityAdapter.Update(dataSet);
                        scheduleAdapter.Update(dataSet);

                        scheduleRows = adaScheduleDataSet1.Schedule.Select("Type <= " + 1);

                        foreach (ADAScheduleDataSet.ScheduleRow scheduleRow in scheduleRows)
                        {
                            ADAScheduleDataSet.ScheduleRow newScheduleRow;
                            newScheduleRow          = dataSet.Schedule.NewScheduleRow();
                            newScheduleRow.Date     = copyToDate;
                            newScheduleRow.UserId   = scheduleRow.UserId;
                            newScheduleRow.Type     = scheduleRow.Type;
                            newScheduleRow.IsActive = true;
                            dataSet.Schedule.AddScheduleRow(newScheduleRow);

                            scheduleAdapter.Update(dataSet);

                            foreach (ADAScheduleDataSet.ActivityRow activityRow in scheduleRow.GetActivityRowsByFK_Activity_Schedule())
                            {
                                ADAScheduleDataSet.ActivityRow newActivityRow;

                                newActivityRow            = dataSet.Activity.NewActivityRow();
                                newActivityRow.ScheduleId = newScheduleRow.ScheduleId;

                                if (!activityRow.IsStartTimeNull())
                                {
                                    TimeSpan timeSpan = copyToDate.Subtract(activityRow.StartTime.Date);
                                    newActivityRow.StartTime = activityRow.StartTime.AddDays(timeSpan.Days);
                                }

                                if (!activityRow.IsEndTimeNull())
                                {
                                    TimeSpan timeSpan = copyToDate.Subtract(activityRow.EndTime.Date);
                                    newActivityRow.EndTime = activityRow.EndTime.AddDays(timeSpan.Days);
                                }

                                if (!activityRow.IsSymbolIdNull())
                                {
                                    newActivityRow.SymbolId = activityRow.SymbolId;
                                }

                                if (!activityRow.IsNameNull())
                                {
                                    newActivityRow.Name = activityRow.Name;
                                }

                                if (!activityRow.IsSequenceNull())
                                {
                                    newActivityRow.Sequence = activityRow.Sequence;
                                }

                                dataSet.Activity.AddActivityRow(newActivityRow);
                                activityAdapter.Update(dataSet);
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        ReportError(ex);
                    }
                }

                Cursor.Current = Cursors.Default;

                monthCalendar1.SetDate(selectDateForm.SelectionRange.Start);
                LoadDataSet();
            }
        }