Example #1
0
        private void UpdateSingleReport(IExcelWorkbook workBook, TransactionReport report)
        {
            ExcelSheetData sheetData        = new ExcelSheetData();
            List <string>  headers          = Transaction.GetTransactionHeaders().ToList();
            ColorConverter converter        = new ColorConverter();
            int            col_LAST         = COL_FIRST + headers.Count - 1;
            Transaction    template         = new Transaction();
            int            col_CATEGORY     = COL_FIRST + headers.IndexOf(ReflectionTools.GetName(() => template.Category));
            int            col_SUB_CATEGORY = COL_FIRST + headers.IndexOf(ReflectionTools.GetName(() => template.SubCategory));

            int iTransactionRow = 2;

            foreach (var transaction in report.Transactions)
            {
                ExcelCellData categoryData = new ExcelCellData(iTransactionRow, col_CATEGORY);
                categoryData.Value = transaction.Category;
                sheetData.Cells.Add(categoryData);

                ExcelCellData subCategoryData = new ExcelCellData(iTransactionRow, col_SUB_CATEGORY);
                subCategoryData.Value = transaction.SubCategory;
                sheetData.Cells.Add(subCategoryData);

                Color color = Color.White;
                if (transaction.Color.IsNotNull())
                {
                    color = (Color)converter.ConvertFromString(transaction.Color);
                }

                ExcelRangeInfo  iRange      = new ExcelRangeInfo(iTransactionRow, COL_FIRST, iTransactionRow, col_LAST);
                ExcelFormatData colorFormat = new ExcelFormatData(iRange);
                colorFormat.Background = color;
                sheetData.Formats.Add(colorFormat);

                iTransactionRow++;
            }

            IExcelSheet sheet = workBook.GetSheet(report.Name);

            sheet.InsertSheetData(sheetData);
        }
Example #2
0
        public IExcelSheet GetSheet(string sheetName)
        {
            IExcelWorkbook workbook = _app.GetActiveWorkbook();

            return(workbook.GetSheet(sheetName));
        }