// Подсчет секций public void CalcSections() { Inspector.Clear(); // Выбор блоков Select.SelectSection select = new Select.SelectSection(this); select.Select(); if (select.IdsBlRefSections.Count == 0) { throw new Exception("Не найдены блоки блок-секций"); } else { Doc.Editor.WriteMessage("\nВыбрано {0} блоков блок-секций.", select.IdsBlRefSections.Count); } // Обработка выбранных блоков ParserBlockSection parser = new ParserBlockSection(this, select.IdsBlRefSections); parser.Parse(); Sections = parser.Sections; // Подсчет площадей и типов блок-секций DataSection = new DataSection(this); DataSection.Calc(); // Построение таблицы TableSecton tableSection = new TableSecton(this); tableSection.CreateTable(); if (Inspector.HasErrors) { Inspector.Show(); Inspector.Clear(); } }