Хочу вам рассказать о специфическом типе параметра: "параметр для отчетов". Зачем он нужен? Он, по сути, "снимает" значение с размера и отражает его в спецификации. При определенных условиях его можно использовать и в формулах. В общем, удобная штука, доступная с 2012 версии.
Возьмем, например, площадь откосов окна. Некоторые особо дотошные архитекторы учитывают ее при подсчете отделки помещения. Стало быть, нужно ее посчитать. Как? Умножить неполный периметр окна на глубину откоса.
А как узнать глубину откоса? Обычный параметр экземпляра там не подойдет, т.к. мы меняем значение обычного параметра вручную (сами), а тут нужно, чтобы параметр менялся не нами, а системой, в зависимости от настроек стены и окна. Поэтому нужно использовать параметр для отчета!
Потренируемся на заготовке. Вот окно. Нам нужно вынести вот этот размер (выделен на скриншоте) и превратить его в параметр (естественно, общий параметр, чтоб его потом можно было добавить в спецификацию). При этом автоматически будет создан параметр для отчета (если галка "Параметр для отчета" не будет стоять автоматически, поставьте ее сами):
Загружаем окно в проект, ставим его в несколько стен разной толщины, проверяем (создадим спецификацию).
Ну, раз уж мы в проекте, вычислим площадь откосов. Для этого добавим расчетное значение по такой формуле:
(2 * Высота + Ширина) * Откосы.Глубина
Вроде, все ОК, все работает. Но если начать делать ведомость отделки по "методу Борисова", мы столкнемся с определенными сложностями. Например, чтобы добавить площадь откоса к отделке, придется постоянно смотреть в спецификацию... гораздо удобнее вынести площадь откоса в марку! Но это возможно, только если площадь считается непосредственно в семействе.
В общем, для удобства создадим еще один общий параметр "Откосы.Площадь" с той же формулой, что и в спецификации.
А вот и фигушки! Если параметр для отчета вынесен не на основу, то его нельзя использовать в формулах.
Будем разбираться. Что в нашем случае основа? Это стена, у нас же для окна используется шаблон на основе стены. Значит, параметр для отчета нужно вынести на ширину стены, а потом вычесть из него глубину вставки окна и толщину рамы, чтобы получить откос.
Чтобы параметр работал, нужно выносить размер для параметра на грани стены, а не на опорные плоскости. Для надежности можно изолировать стену :)
Размер параметра "Откосы.Глубина" нужно удалить, в свойствах снять галку "параметр для отчетов" и добавить к нему формулу:
Толщина стены - Глубина вставки - Рама.Толщина
Теперь все получилось. Снова напишем формулу вычисления площади откосов:
Осталась малость. Создадим марку окна, добавим в нее параметр "Откосы.Площадь".
Смотрим, как все работает в проекте:
Вот как-то так.
Итоговый файл проекта можно скачать ТУТ
Возьмем, например, площадь откосов окна. Некоторые особо дотошные архитекторы учитывают ее при подсчете отделки помещения. Стало быть, нужно ее посчитать. Как? Умножить неполный периметр окна на глубину откоса.
А как узнать глубину откоса? Обычный параметр экземпляра там не подойдет, т.к. мы меняем значение обычного параметра вручную (сами), а тут нужно, чтобы параметр менялся не нами, а системой, в зависимости от настроек стены и окна. Поэтому нужно использовать параметр для отчета!
Потренируемся на заготовке. Вот окно. Нам нужно вынести вот этот размер (выделен на скриншоте) и превратить его в параметр (естественно, общий параметр, чтоб его потом можно было добавить в спецификацию). При этом автоматически будет создан параметр для отчета (если галка "Параметр для отчета" не будет стоять автоматически, поставьте ее сами):
Загружаем окно в проект, ставим его в несколько стен разной толщины, проверяем (создадим спецификацию).
Ну, раз уж мы в проекте, вычислим площадь откосов. Для этого добавим расчетное значение по такой формуле:
(2 * Высота + Ширина) * Откосы.Глубина
Вроде, все ОК, все работает. Но если начать делать ведомость отделки по "методу Борисова", мы столкнемся с определенными сложностями. Например, чтобы добавить площадь откоса к отделке, придется постоянно смотреть в спецификацию... гораздо удобнее вынести площадь откоса в марку! Но это возможно, только если площадь считается непосредственно в семействе.
В общем, для удобства создадим еще один общий параметр "Откосы.Площадь" с той же формулой, что и в спецификации.
А вот и фигушки! Если параметр для отчета вынесен не на основу, то его нельзя использовать в формулах.
Будем разбираться. Что в нашем случае основа? Это стена, у нас же для окна используется шаблон на основе стены. Значит, параметр для отчета нужно вынести на ширину стены, а потом вычесть из него глубину вставки окна и толщину рамы, чтобы получить откос.
Чтобы параметр работал, нужно выносить размер для параметра на грани стены, а не на опорные плоскости. Для надежности можно изолировать стену :)
Размер параметра "Откосы.Глубина" нужно удалить, в свойствах снять галку "параметр для отчетов" и добавить к нему формулу:
Толщина стены - Глубина вставки - Рама.Толщина
Теперь все получилось. Снова напишем формулу вычисления площади откосов:
Осталась малость. Создадим марку окна, добавим в нее параметр "Откосы.Площадь".
Смотрим, как все работает в проекте:
Вот как-то так.
Итоговый файл проекта можно скачать ТУТ
Комментариев нет :
Отправить комментарий
Примечание. Отправлять комментарии могут только участники этого блога.