суббота, 25 июня 2016 г.

Рубрика "Спросите у Чубрика". Настройка ведомости материалов Revit с разными единицами измерения

Продолжаем разбираться со спецификациями Revit, у которых в одном столбце должны быть разные значения. На очереди ведомость материалов.
Вопрос прилетел от Александра Гончарова. В принципе, их даже два:
1. Как умножить площади разных слоев пола на разный коэффициент?
2. Как в ведомость материалов пола добавить количество шурупов?
В общем, сегодня будем учиться делать вот такую ведомость:
Эта статья является логическим продолжением статьи про ведомость элементов. В большей части я буду ссылаться не нее.

Предположим, что мы имеем вот такой пол. Саморезы в дюбелях в него добавлены как изолирующее покрытие (с нулевой толщиной, не может быть крайним слоем):


Итак, первое, что нам надо сделать - добавить коэффициент к материалу. Идем на панель управления - параметры проекта - добавить параметр. В правой части панели выбираем категорию "Материалы" (мы же хотим добавлять разные коэффициенты, верно?). Тип данных "Число". А еще вписываем подсказку...


Идем дальше. Нам нужно получить не только метры квадратные, но и штуки (для саморезов) и метры кубические (усложним задачу и посчитаем стяжку как объем). Для этого добавим параметр, который потом будем использовать в формуле с "if" (см. статью "Настройка спецификации Revit с разными единицами измерения"). Тип данных "Целое".


Теперь можно начинать собирать ведомость материалов (!)

Добавляем первичные поля:



Добавляем расчетное значение для вычисления количества. Тип данных - "Число", поэтому придется "обнулить" единицы делением на 1. Логика такая: в параметр "Тип расчета количества" мы будем писать "1", "2", "3" или "0", а Revit будет вычислять количество по формуле. 


Вот формула для вставки: 

if(Материал: Тип расчета количества = 1, Материал: Коэффициент площади * (Материал: Площадь / 1), if(Материал: Тип расчета количества = 2, Материал: Коэффициент площади * (Материал: Площадь / 1), if(Материал: Тип расчета количества = 3, Материал: Объем / 1, Материал: Площадь / 1)))

Надо еще добавить расчетное значение, которое будет писать нам единицы измерения (штуки, м2, м3...). Принцип тот же, тип данных "Текст".


Вот формула для вставки:

if(Материал: Тип расчета количества = 1, "м²", if(Материал: Тип расчета количества = 2, "шт.", if(Материал: Тип расчета количества = 3, "м³", "м²")))

Вот, что получилось:


Дальше настроим сортировку:


И в полученной спецификации заполним коэффициенты и тип расчета. Поле "Qty" заполнится само:


Вот и все. Осталось немного поколдовать над графикой, скрыть лишнее, и мы получим вполне симпатичную и практичную ведомость: