private void btnSave_Click(object sender, EventArgs e)
        {
            string name = iptSchoolYear.Value + "學年度第" + iptSemester.Value + "學期" + iptMonth.Value + "梯次";

            bool pass = true;
            // 檢查是否有相同名冊
            foreach (UDTTimeListDef data in _AllUDTTimeList)
            {
                // 先設成 false 確認可以新增時,更新狀態使用
                data.Active = false;

                if (data.SchoolYear == iptSchoolYear.Value && data.Semester == iptSemester.Value && data.Month == iptMonth.Value)
                    pass = false;
            }

            if (pass)
            {
                btnSave.Enabled = false;
                List<UDTTimeListDef> dataList = new List<UDTTimeListDef>();
                UDTTimeListDef newData = new UDTTimeListDef();
                newData.SchoolYear = iptSchoolYear.Value;
                newData.Semester = iptSemester.Value;
                newData.Month = iptMonth.Value;
                newData.Name = name;
                newData.Active = true;
                dataList.Add(newData);

                // 更新原有目前學期
                UDTTransfer.UDTTimeListUpdate(_AllUDTTimeList);

                // 新增資料
                UDTTransfer.UDTTimeListInsert(dataList);
                // 新增資料
                _bgWorker.RunWorkerAsync();
           
            }
            else
            {
                FISCA.Presentation.Controls.MsgBox.Show("新增失敗! 系統內已有相同學年度、學期、梯次的名冊。");
                return;
            }


        }
        void btnItem_Click(object sender, EventArgs e)
        {
            if (itmPnlTimeName.SelectedItems.Count == 1)
            {
                dgData.DataSource = null;
                dgData.Rows.Clear();
                ButtonItem item = itmPnlTimeName.SelectedItems[0] as ButtonItem;

                UDTTimeListDef data = item.Tag as UDTTimeListDef;
                lblMsg.Text = "資料讀取中..";

                // 讀取元資料庫內資料
                if (data != null)
                {
                    _currentTimeList = data;
                    if (_bgWorker.IsBusy)
                    {
                        _bgBusy = true;
                    }
                    else
                        _bgWorker.RunWorkerAsync();                    
               
                }
                else
                    lblMsg.Text = "";
            }
        }
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (CheckData())
                {
                    UDTCourseDef courseData = new UDTCourseDef();
                    // 畫面上資訊
                    courseData.CourseName = txtCourseName.Text;
                    if (Global._TeacherNameIDDict.ContainsKey(cbxCourseTeacher.Text))
                        courseData.RefTeacherID = Global._TeacherNameIDDict[cbxCourseTeacher.Text];
                    courseData.SubjectName = txtSubjectName.Text;
                    if (string.IsNullOrWhiteSpace(txtSubjectLevel.Text))
                        courseData.SubjectLevel = null;
                    else
                        courseData.SubjectLevel = int.Parse(txtSubjectLevel.Text);

                    courseData.Credit = int.Parse(txtCredit.Text);
                    courseData.SubjectType = cbxSubjectType.Text;
                    courseData.DeptName = cbxDeptName.Text;
                    courseData.SchoolYear = iptSchoolYear.Value;
                    courseData.Semester = iptSemester.Value;
                    courseData.Month = iptMonth.Value;

                    List<UDTCourseDef> dataList = new List<UDTCourseDef>();
                    dataList.Add(courseData);
                    UDTTransfer.UDTCourseInsert(dataList);

                    // 檢查名冊是否已有,沒有新增一筆
                    bool addData = true;
                    foreach (UDTTimeListDef data in _AllTimeList)
                    {
                        if (data.SchoolYear == iptSchoolYear.Value && data.Semester == iptSemester.Value && data.Month == iptMonth.Value)
                        {
                            addData = false;
                            break;
                        }
                    }

                    if (addData)
                    {
                        List<UDTTimeListDef> addList = new List<UDTTimeListDef>();
                        UDTTimeListDef da = new UDTTimeListDef();
                        da.SchoolYear = iptSchoolYear.Value;
                        da.Semester = iptSemester.Value;
                        da.Month = iptMonth.Value;
                        da.Name = iptSchoolYear.Value + "學年度第" + iptSemester.Value + "學期" + iptMonth.Value + "梯次";
                        addList.Add(da);
                        UDTTransfer.UDTTimeListInsert(addList);
                    }

                    FISCA.Presentation.Controls.MsgBox.Show("儲存完成.");
                    RetakeEvents.RaiseAssnChanged();
                    this.Close();
                }
            }
            catch (Exception ex)
            {
                FISCA.Presentation.Controls.MsgBox.Show("新增課程過程發生錯誤"+ex.Message);
            }
        }
 /// <summary>
 /// 取得目前期間
 /// </summary>
 /// <returns></returns>
 public static UDTTimeListDef UDTTimeListGetActiveTrue1()
 {
     UDTTimeListDef retVal = new UDTTimeListDef();
     List<UDTTimeListDef> dataList = new List<UDTTimeListDef>();
     AccessHelper accessHelper = new AccessHelper();
     string qry = "active='true'";                
     dataList = accessHelper.Select<UDTTimeListDef>(qry);
     foreach (UDTTimeListDef data in dataList)
     {
         if (data.Active)
         {
             retVal = data;
             break;
         }
     }
     return retVal;
 }