Exemple #1
0
#pragma warning restore CS1591 // Missing XML comment for publicly visible type or member 'BomDataCell.Column'

#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member 'BomDataCell.BomDataCell(BomDataRowHolder, BomDataColumn, object)'
        public BomDataCell(BomDataRowHolder row, BomDataColumn column, object value)
        {
#pragma warning restore CS1591 // Missing XML comment for publicly visible type or member 'BomDataCell.BomDataCell(BomDataRowHolder, BomDataColumn, object)'
            Column = column;
            Row    = row;
            Value  = value;
        }
        public BomOutput(Excel.Application excelInstance, BomInput bomInput, ConfigurationElementBom bomElement, IFormatterConfiguration formatterConfiguration)
        {
            _excelAppInstance       = excelInstance;
            _formatterConfiguration = formatterConfiguration;
            _bomInput  = bomInput;
            _bomConfig = bomElement;

            foreach (ConfigurationElementColumn column in bomElement.ColumnCollection)
            {
                _bomDataTable.AddColumn(new BomDataColumn(column));
            }

            TemplateRow = new BomDataRowHolder(_bomDataTable);
        }
Exemple #3
0
        private void LoadInput()
        {
            foreach (DataRow row in _input.InputData.Rows)
            {
                BomDataRowHolder newRow = LoadRow(row);

                if (_outputType == BomOutputType.INDIVIDUAL)
                {
                    _output.BomDataTable.AddRowCollection(newRow.ExpandRow());
                }
                else
                {
                    _output.BomDataTable.AddRow(newRow);
                }
            }
        }
Exemple #4
0
        private BomDataRowHolder LoadRow(DataRow row)
        {
            BomDataRowHolder newRow = new BomDataRowHolder(_output.TemplateRow);

            foreach (DataColumn column in row.Table.Columns)
            {
                ConfigurationElementColumn columnConfig = GetConfigColumn(column);
                if (columnConfig != null)
                {
                    //bool valueSet = false;

                    foreach (BomDataCell cell in newRow)
                    {
                        if (cell.Column.Position == columnConfig.Order /*&& cell.Column.ColumnName.Equals(columnConfig.Name)*/)
                        {
                            object rowValue = row.ItemArray[DataColumnIndex(column)];
                            rowValue = rowValue.Equals(DBNull.Value) ? null : rowValue;

                            if ((columnConfig.Override && rowValue != null) || cell.Value == null)
                            {
                                cell.Value = rowValue;
                            }
                            //valueSet = true;
                        }
                    }

                    //if (!valueSet)
                    //    newRow.Add(new BomDataCell(
                    //        newRow,
                    //        _output.BomDataTable.GetColumn(columnConfig.Name),
                    //        row.ItemArray[DataColumnIndex(column)]));

                    //newRow.Add(new BomDataCell(
                    //    newRow,
                    //    _output.BomDataTable.GetColumn(columnConfig.Name),
                    //    row.ItemArray[DataColumnIndex(column)]));
                }
                else if (columnConfig != null && columnConfig.Enabled && columnConfig.Required)
                {
                    throw new ConfigurationElementColumnException("Required column " + columnConfig.Header + " not found.");
                }
            }

            return(newRow);
        }