public void Execute()
        {
            exportProxyForm = new ExportProxyForm();

            exportProxyForm.InvisibleFields = new List<string>() { "畢業學年期", "異動代碼" };
            exportProxyForm.QuerySQL = this.SetQueryString();
            exportProxyForm.AutoSaveFile = false;
            exportProxyForm.AutoSaveLog = true;
            exportProxyForm.KeyField = "學生系統編號";
            //Dictionary<string, List<KeyValuePair<string, string>>> dicReplaceFields = new Dictionary<string, List<KeyValuePair<string, string>>>();
            //dicReplaceFields.Add("現職", new List<KeyValuePair<string, string>>());
            //dicReplaceFields["現職"].Add(new KeyValuePair<string, string>("true", "是"));
            //dicReplaceFields["現職"].Add(new KeyValuePair<string, string>("false", "否"));
            exportProxyForm.ReplaceFields = null;
            exportProxyForm.Text = "匯出學生基本資料";
            //exportProxyForm.HideSemesterControls();

            DialogResult dr = exportProxyForm.ShowDialog();

            if (dr == DialogResult.Cancel)
                return;

            if (dr == DialogResult.OK)
            {
                BackgroundWorker _BGWLoadData = exportProxyForm.SalvageOperation;
                _BGWLoadData.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_BGWLoadData_RunWorkerCompleted);
            }
        }
        public void Execute()
        {
            exportProxyForm = new ExportProxyForm();

            exportProxyForm.AutoSaveFile = false;
            exportProxyForm.AutoSaveLog = true;
            exportProxyForm.KeyField = "學生繳費記錄系統編號";
            exportProxyForm.InvisibleFields = new List<string>() { "學生繳費記錄系統編號" };
            exportProxyForm.ReplaceFields = null;
            exportProxyForm.QuerySQL = this.SetQueryString();
            exportProxyForm.Text = "匯出學生繳費記錄";
            //exportProxyForm.HideSemesterControls();
            exportProxyForm.FieldContainer.Enabled = false;
            exportProxyForm.chkSelectAll.Visible = false;

            DialogResult dr = exportProxyForm.ShowDialog();

            if (dr == DialogResult.Cancel)
                return;

            if (dr == DialogResult.OK)
            {
                BackgroundWorker _BGWLoadData = exportProxyForm.SalvageOperation;
                _BGWLoadData.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_BGWLoadData_RunWorkerCompleted);
            }
        }
        public void Execute()
        {
            string querySQL = string.Format(@"select course.id as 課程系統編號, subject.dept_code as 系所代碼, ce.subject_code as 課程識別碼, ce.class_name as 開課班次, course.credit as 學分數, ce.is_required as 必選修, course.course_name as 開課, subject.eng_name as 課程英文名稱,  te.employee_no as 員工代碼, te.ntu_system_no as 教師代碼, teacher.teacher_name as 授課教師, te.english_name as 授課教師英文名稱, subject.remark as 備註, ce.new_subject_code as 課號, teacher.id as 教師系統編號 from course
            left join $ischool.emba.course_ext as ce on ce.ref_course_id=course.id
            left join $ischool.emba.subject as subject on subject.uid= ce.ref_subject_id
            left join $ischool.emba.course_instructor as ci on course.id=ci.ref_course_id
            left join teacher on teacher.id=ci.ref_teacher_id
            left join $ischool.emba.teacher_ext as te on teacher.id=te.ref_teacher_id where course.id in ({0}) order by course.id", String.Join(",", K12.Presentation.NLDPanels.Course.SelectedSource));

            exportProxyForm = new ExportProxyForm(querySQL, true, false, "課程系統編號", new List<string>() { "課程系統編號", "教師系統編號" }, null);
            //exportProxyForm.HideSemesterControls();
            exportProxyForm.Text = "匯出課程檔(Excel 格式)";
            exportProxyForm.lblExplanation.Text = "";
            exportProxyForm.chkSelectAll.Visible = false;
            exportProxyForm.FieldContainer.Enabled = false;
            exportProxyForm.FieldContainer.Items.Clear();
            exportProxyForm.chkSelectAll.Visible = false;
            exportProxyForm.Size = new System.Drawing.Size(exportProxyForm.Size.Width, 90);
            exportProxyForm.SizeChanged += (x, y) => { exportProxyForm.Size = new System.Drawing.Size(exportProxyForm.Size.Width, 90); };

            DialogResult dr = exportProxyForm.ShowDialog();

            if (dr == DialogResult.Cancel)
                return;

            if (dr == DialogResult.OK)
            {
                BackgroundWorker _BGWLoadData = exportProxyForm.SalvageOperation;
                _BGWLoadData.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_BGWLoadData_RunWorkerCompleted);
            }
        }
        public void Execute()
        {
            string querySQL = string.Format(@"select student.id as 學生系統編號, class.class_name as 教學分班, student.student_number as 學號, student.name as 姓名, eb.school_name as 學校名稱, eb.department as 系所, eb.degree as 學位
            from student left join $ischool.emba.education_background as eb on eb.ref_student_id=student.id
            left join class on class.id=student.ref_class_id where student.id in ({0})", String.Join(",", K12.Presentation.NLDPanels.Student.SelectedSource));

            exportProxyForm = new ExportProxyForm(querySQL, true, true, "學生系統編號", null, null);
            //exportProxyForm.HideSemesterControls();
            exportProxyForm.Text = "匯出學生學歷資料";
            exportProxyForm.Tag = exportProxyForm.Text;

            exportProxyForm.ShowDialog();
            this.Dispose();
        }
        public void Execute()
        {
            string querySQL = string.Format(@"select student.id as 學生系統編號, class.class_name as 教學分班, student.student_number as 學號, student.name as 姓名, ex.company_name as 公司名稱, ex.position as 職稱, ex.industry as 產業別, ex.department_category as 部門類別, ex.post_level as 層級別, ex.work_place as 工作地點, ex.work_status as 工作狀態, date_part('year', ex.work_begin_date) || '/' || date_part('month', ex.work_begin_date) || '/' || date_part('day', ex.work_begin_date) as 工作起日, date_part('year', ex.work_end_date) || '/' || date_part('month', ex.work_end_date) || '/' || date_part('day', ex.work_end_date) as 工作迄日, ex.publicist as 公關連絡人, ex.public_relations_office_telephone as 公關室電話, ex.public_relations_office_fax as 公關室傳真,
            ex.publicist_email as 公關EMAIL, ex.company_website as 公司網址, sb2.remark as 備註, case when lower(ex.action_by)='student' then '是' else ex.action_by end as 學生修改, ex.time_stamp as 最後更新日期
            from student left join $ischool.emba.experience as ex on ex.ref_student_id=student.id
            left join class on class.id=student.ref_class_id left join $ischool.emba.student_brief2 as sb2 on sb2.ref_student_id=student.id where student.id in ({0})", String.Join(",", K12.Presentation.NLDPanels.Student.SelectedSource));

            exportProxyForm = new ExportProxyForm(querySQL, true, true, "學生系統編號", null, null);
            //exportProxyForm.HideSemesterControls();
            exportProxyForm.Text = "匯出學生經歷資料";
            exportProxyForm.Tag = exportProxyForm.Text;

            exportProxyForm.ShowDialog();
            this.Dispose();
        }
        public void Execute()
        {
            string querySQL = string.Format(@"select course.id as 課程系統編號, course.course_name as 開課, course.school_year as 學年度, course.semester as 學期, ce.class_name as 開課班次, ce.course_type as 類別, ce.subject_code as 課程識別碼, ce.new_subject_code as 課號, course.credit as 學分數, ce.is_required as 必選修, ce.serial_no as 流水號, ce.capacity as 人數上限 from course
            left join $ischool.emba.course_ext as ce on ce.ref_course_id=course.id where course.id in ({0})", String.Join(",", K12.Presentation.NLDPanels.Course.SelectedSource));

            Dictionary<string, List<KeyValuePair<string, string>>> dicReplaceFields = new Dictionary<string,List<KeyValuePair<string,string>>>();
            List<KeyValuePair<string,string>> replaceFields = new List<KeyValuePair<string,string>>();
            replaceFields.Add(new KeyValuePair<string,string>("FALSE", "選修"));
            replaceFields.Add(new KeyValuePair<string,string>("TRUE", "必修"));
            dicReplaceFields.Add("必選修", replaceFields);
            exportProxyForm = new ExportProxyForm(querySQL, true, true, "課程系統編號", null, dicReplaceFields);
            //exportProxyForm.HideSemesterControls();
            exportProxyForm.Text = "匯出課程基本資料";
            exportProxyForm.Tag = exportProxyForm.Text;

            exportProxyForm.ShowDialog();
        }
        public void Execute()
        {
            string querySQL = string.Format(@"select uid as 課程系統編號, name as 課程中文名稱, eng_name as 課程英文名稱, subject_code as 課程識別碼, dept_name as 開課系所, dept_code as 系所代碼, credit as 學分數, description as 內容簡介, web_url as 網頁連結, is_required as 必選修, remark as 備註, new_subject_code as 課號 from $ischool.emba.subject");

            Dictionary<string, List<KeyValuePair<string, string>>> dicReplaceFields = new Dictionary<string, List<KeyValuePair<string, string>>>();
            List<KeyValuePair<string, string>> replaceFields = new List<KeyValuePair<string, string>>();
            replaceFields.Add(new KeyValuePair<string, string>("false", "選修"));
            replaceFields.Add(new KeyValuePair<string, string>("true", "必修"));
            dicReplaceFields.Add("必選修", replaceFields);

            exportProxyForm = new ExportProxyForm(querySQL, true, true, "課程系統編號", null, dicReplaceFields);
            //exportProxyForm.HideSemesterControls();
            exportProxyForm.Text = "匯出課程總檔";
            exportProxyForm.Tag = exportProxyForm.Text;

            exportProxyForm.ShowDialog();
            this.Dispose();
        }
        public void Execute()
        {
            string querySQL = string.Format(@"select t.id 教師系統編號, te.employee_no 人事編號, te.ntu_system_no 教師編號, t.teacher_name 姓名, te.english_name 英文姓名, t.nickname 暱稱, t.id_number 身分證號, t.gender 性別, te.birthday 生日, t.st_login_name 登入帳號, t.email 電子信箱, t.contact_phone 聯絡電話, te.mobil 手機, te.phone 電話, te.other_phone 研究室電話, te.research 研究室, te.address 戶籍地址, te.major_work_place 所屬單位, te.website_url 個人網址, te.memo 備註, t.status 教師狀態 from teacher t left join $ischool.emba.teacher_ext te on t.id=te.ref_teacher_id
             where t.id in ({0})", String.Join(",", K12.Presentation.NLDPanels.Teacher.SelectedSource));

            Dictionary<string, List<KeyValuePair<string, string>>> dicReplaceFields = new Dictionary<string, List<KeyValuePair<string, string>>>();
            List<KeyValuePair<string, string>> replaceFields = new List<KeyValuePair<string, string>>();
            replaceFields.Add(new KeyValuePair<string, string>("1", "一般"));
            replaceFields.Add(new KeyValuePair<string, string>("256", "刪除"));
            dicReplaceFields.Add("教師狀態", replaceFields);

            exportProxyForm = new ExportProxyForm(querySQL, true, true, "教師系統編號", null, dicReplaceFields);
            //exportProxyForm.HideSemesterControls();
            exportProxyForm.Text = "匯出教師基本資料";
            exportProxyForm.Tag = exportProxyForm.Text;

            exportProxyForm.ShowDialog();
            this.Dispose();
        }