Пример #1
0
        private void DrawColomn(string table, Excel.Worksheet sheet, int line, int column, Question q)
        {
            sheet.Cells[line, column] = q.Label;
            sheet.Cells[line, column].Interior.Color = ColorTranslator.ToOle(Color.LightGreen);
            var ds  = DataExtractionUtils.GetAnswersByColumn(table, q.Column);
            var tmp = line + 1;

            for (var j = 0; j < ds.Tables[0].Rows.Count; j++)
            {
                sheet.Cells[tmp, column] = ds.Tables[0].Rows[j][q.Column];
                tmp++;
            }
        }
Пример #2
0
        public int  PersonInfoColumns(int pos, Excel.Worksheet worksheet, string questionType, string tableName)
        {
            var column            = 1;
            var generalPersonInfo = new Dictionary <string, string>
            {
                { "PER_id_person", "Id_person" },
                { "PER_id_company", "Id_company" },
                { "PER_first_name", "First name" },
                { "PER_last_name", "Last name" },
            };

            var sessionPersonalInfo = new Dictionary <string, string>
            {
                { "PER_id_person", "Id_person" },
                { "PER_id_company", "Id_company" },
                { "PER_first_name", "First name" },
                { "PER_last_name", "Last name" },
                { "theme", "theme" }
            };

            var wsPersonalInfo = new Dictionary <string, string>
            {
                { "PER_id_person", "Id_person" },
                { "PER_id_company", "Id_company" },
                { "PER_first_name", "First name" },
                { "PER_last_name", "Last name" },
                { "theme", "theme" }
            };

            var meetingPersonalInfo = new Dictionary <string, string>
            {
                { "MEE_id_person", "Id_person" },
                { "PER_id_company", "Id_company" },
                { "PER_first_name", "First name" },
                { "PER_last_name", "Last name" },
                { "MEE_id_meeting", "id_meeting" },
                { "MEE_owner", "owner" }
            };
            Dictionary <string, string> keys;

            switch (questionType)
            {
            case QuestionType.General:
                keys = generalPersonInfo;
                break;

            case QuestionType.Meeting:
                keys = meetingPersonalInfo;
                break;

            case QuestionType.Workshop:
                keys = wsPersonalInfo;
                break;

            case QuestionType.Session:
                keys = sessionPersonalInfo;
                break;

            default:
                keys = null;
                break;
            }
            foreach (var key in keys.Keys)
            {
                worksheet.Cells[pos, column] = keys[key];
                worksheet.Cells[pos, column++].Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.LightGreen);
                worksheet.Columns.AutoFit();
            }
            if (questionType == QuestionType.Meeting)
            {
                worksheet.Cells[pos, column] = "Participants";
                worksheet.Cells[pos, column++].Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.LightGreen);
                worksheet.Columns.AutoFit();
            }
            pos++;
            var dataSet = DataExtractionUtils.GetAnswersByColumn(tableName, "person_info");

            for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++)
            {
                column = 1;
                foreach (var columnName in keys.Keys)
                {
                    worksheet.Cells[pos, column++] = dataSet.Tables[0].Rows[i][columnName];
                }
                if (questionType == QuestionType.Meeting)
                {
                    var companies = getMeetingParticipants(
                        int.Parse(dataSet.Tables[0].Rows[i]["MEE_id_meeting"].ToString()),
                        int.Parse(dataSet.Tables[0].Rows[i]["PER_id_company"].ToString())
                        );
                    worksheet.Cells[pos, column++] = companies;
                }
                pos++;
            }
            worksheet.Columns.AutoFit();
            return(column);
        }