コード例 #1
0
        public static void GenerateStudentBooklet(Parameters param)
        {
            var preReq = new PreRequisites();
            for (int year = Util.MIN_YEAR; year < Util.MAX_YEAR; year++)
            {
                foreach (var subject in param.ReportController.GetSubjects(year))
                {
                    var book = XLApp.OpenWorkbook(param.GetPath(Parameters.ReportType.SubjectOutline, year, subject.Item1));
                    Worksheet sheet = book.Sheets[Util.SUBJECT_ASSESSMENT_SHEET_NAME];
                    preReq.ParseSubjectAssessmentOutline(sheet);
                    book.Close(false);
                }
            }

            preReq.WriteToSheet(param.ReportController.GetNewLeadsToSheet());
            XLApp.Excel().Run("GenerateStudentTrackingBooklet");
        }
コード例 #2
0
        private static void FillInSubjectAssessmentOutlineTemplate(Parameters param)
        {
            var template = XLApp.OpenWorkbook(param.SubjectTemplatePath);
            param.Standards.WriteToSheet(ClearedSheet(template.Sheets["standards"]));
            param.Standards.WriteLatestVersions(ClearedSheet(template.Sheets["latestVer"]));
            param.ReportController.WriteTeacherList(ClearedSheet(template.Sheets["teacherCodes"]));

            // explicit save is necessary.
            // save (without filename) doesn't overwrite the original template.
            // Close(true) doesn't save if the file is open somewhere else.
            BackupAndDeleteFile(param.SubjectTemplatePath);
            template.SaveAs(param.SubjectTemplatePath, XlFileFormat.xlOpenXMLTemplateMacroEnabled);
            template.Close(false);
        }
コード例 #3
0
 public static void GenerateYearlyCalendar(Parameters param)
 {
     XLApp.Excel().Run("GenerateYearlyCalendar");
 }
コード例 #4
0
 public static void GenerateSubjectAssessmentOutlines(Parameters param)
 {
     FillInSubjectAssessmentOutlineTemplate(param);
     XLApp.Excel().Run("GenerateSubjectAssessmentOutlines");
 }
コード例 #5
0
 public static void GenerateStudentSummaries(Parameters param)
 {
     XLApp.Excel().Run("GenerateStudentSummaries");
 }
コード例 #6
0
 public static void GenerateExtAssSummary(Parameters param)
 {
     XLApp.Excel().Run("GenerateExternalAssessorSummary");
 }
コード例 #7
0
        public void Write(Parameters param)
        {
            const int startCol = 3;
            const int startRow = 3;
            const int cols = 1;
            const int rows = 15;

            var sheet = GetWorkBook().Sheets[Util.CONTROL_SHEET_NAME];
            var array = new object[rows, cols];

            int row = 0;
            array[row++, 0] = param.Year;
            array[row++, 0] = param.SubjectTemplatePath;
            array[row++, 0] = param.StudentTemplatePath;
            array[row++, 0] = param.CalendarTemplatePath;
            array[row++, 0] = param.OutputFolderPath;
            array[row++, 0] = param.StandardsFilePath;
            array[row++, 0] = param.LitNumFilePath;
            array[row++, 0] = param.Password ?? sheet.Cells[10, 3].Value2;
            array[row++, 0] = param.StudentListPath;
            array[row++, 0] = param.BookletTemplatePath;
            array[row++, 0] = param.ExtProviderTemplatePath;
            array[row++, 0] = param.WeeksInTerm1;
            array[row++, 0] = param.WeeksInTerm2;
            array[row++, 0] = param.WeeksInTerm3;
            array[row++, 0] = param.WeeksInTerm4;

            if (row != rows)
            {
                throw new InvalidDataException("ReportController: Incorrect number of parameters written. " +
                                               "Was: " + row + "rows. expected: " + rows + " rows.");
            }

            XLApp.WriteArrayToSheet(sheet, array, rows, cols, startRow, startCol);
        }