SMPlugin
Дополнение для создания Спецификации металлопроката в формате Excel и на поле чертежа.
Описание
❗ В среде Russia начиная с версии 2022 были изменены имена пользовательских атрибутов. В SMPlugin начиная с версии 2.10 настройки по умолчанию в конфигурационном файле SMPlugin.yaml соответствуют пользовательским атрибутам среды Russia версии 2022 и новее.
Для того чтобы дополнение работало с версиями среды 2021 и более ранними, используйте настройки в файле SMPlugin.yaml.bak: измените имя файла с SMPlugin.yaml.bak на SMPlugin.yaml.
Спецификация в формате Excel
Плагин SMPluginModel доступен в режиме моделирования.
Для формирования спецификации нажмите на иконку плагина и нажмите кнопку Создать.
Объекты – объекты, попадающие в спецификацию (Все / Фильтр выбора / Выбранные).
Фильтр выбора – фильтр выбора для отбора объектов в спецификацию; активен, когда выпадающий список Объекты=Фильтр выбора.
Единицы измерения – единицы для расчета массы (Тонна / Килограмм).
Формат чисел – форматирование чисел для вывода в таблице (описание в статье).
Атрибут для веса – атрибут, использующийся для расчета веса деталей (WEIGHT, WEIGHT_GROSS и т. п.).
Минимальный вес, кг - задание минимального веса детали для попадания в спецификацию.
Обозначение пластин – префикс для обозначения пластин.
Столбец окраш. поверхн. – отображать ли дополнительный столбец площади окрашиваемой поверхности (Нет / Да).
Строка коэфф. коррекц. – отображать ли дополнительную строку веса с учетом наплавки и раскроя (Нет / Да).
Открыть файл? – открыть ли результирующий файл после формирования отчета (Нет / Да).
Отчеты в формате Excel создаются в папке Спецификация металлопроката, которая находится в папке модели.
Спецификация на чертеже
Плагин SMPlugin доступен в режиме чертежа.
Для вставки спецификации на чертеж нажмите на иконку плагина и укажите точку вставки.
Для редактирования спецификации щелкните по ней дважды.
Объекты – объекты, попадающие в спецификацию (Все / Фильтр выбора / Выбранные).
Фильтр выбора – фильтр выбора для отбора объектов в спецификацию; активен, когда выпадающий список Объекты=Фильтр выбора.
Единицы измерения – единицы для расчета массы (Тонна / Килограмм).
Формат чисел – форматирование чисел для вывода в таблице (описание в статье).
Разделитель дес. знаков - символ разделителя десятичных знаков (точка / запятая).
Атрибут для веса – атрибут, использующийся для расчета веса деталей (WEIGHT, WEIGHT_GROSS и т. п.).
Минимальный вес, кг - задание минимального веса детали для попадания в спецификацию.
Количество строк – количество строк для разделения таблицы на части (для расположения на нескольких листах). Если равно нулю, таблица на части не делится.
Шрифт – имя шрифта текста.
Обозначение пластин – префикс для обозначения пластин.
Ширина колонок, мм – ширина колонок по порядку.
Cтолбец окраш. поверхн. – отображать ли дополнительный столбец площади окрашиваемой поверхности (Нет / Да).
Строка коэфф. коррекц. – отображать ли дополнительную строку веса с учетом наплавки и раскроя (Нет / Да).
Высота строк, мм - высота строк.
Настройки для заголовка и основной части спецификации: Цвет линий, Цвет текста и Высота текста.
Информационные сообщения о ходе работы программы записываются в файл журнала %userprofile%\trimblerus.log.
Настройка категорий
Есть два варианта задания категорий для объектов спецификации.
Современная концепция предполагает задание назначение текстового пользовательского атрибута главной детали сборки. В этом варианте количество категорий в спецификации - неограниченное.
Классическая концепция предполагает выбор номера категории из выпадающего списка, а имена категорий задаются в свойствах проекта. В этом случае количество категорий ограничено количеством элементов выпадающего списка.
То, какая концепция используется, определяется в конфигурационном файле SMPlugin.yaml (его подробное описание - ниже) параметром UseCategoryAttributesOld. Для современной концепции его значение должно быть false, для классической концепции его значение должно быть true. В настоящее время (версия 2.10) по умолчанию используется современная концепция.
Современная (новая) концепция
В главных деталях сборок нужно заполнить текстовый пользовательский атрибут Категория.
Программа группирует объекты с одинаковой категорией и выводит в соответствующей колонке спецификации.
Порядок категорий можно задать в конфигурационном файле SMPlugin.yaml (его подробное описание - ниже) в секции category_order.
Классическая (старая) концепция
Нужно настроить категории объектов для того, чтобы получить корректную спецификацию.
- В пользовательских атрибутах свойств проекта в главном меню заполнить имена категорий.
Image
Подробнее об атрибутах - здесь. - В пользовательских атрибутах главных деталей сборок назначить соответствие этой сборки некоторой категории из списка из п. 1.
Image
Подробнее об атрибутах - здесь.
❗Для версий Tekla Structures 2019 и более ранних (совместно с SMPlugin версий 2.0 и более ранних) атрибут категории задается в пользовательских атрибутах сборок.
Дополнительные настройки
В конфигурационном файле ..\<версия>\Environments\common\extensions\SMPlugin\SMPlugin.yaml можно изменить следющие параметры:
Секция standards. Отображение названий стандартов:
standards:
-
key: "СТО АСЧМ 20-93"
min_rows: 3
value: "Двутавры горячекатанные с параллельными гранями полок СТО АСЧМ 20-93"
...
key - ключ, по которому ищется название стандарта, стандарт из атрибутов детали.
value - полное название стандарта, которое отображается в таблице.
min_rows - минимальное количество строк, которое требуется для отображения полного названия стандарта (общее правило - чем длиннее значение value, тем больше нужно строк для отображения).
Секция materials. Если не удается получить материал из детали, используются значения следующих параметров:
Для 09Г2С и 25Г2С:
materials:
-
key: Material1
value: "ГОСТ 27772-88"
Для остальных:
-
key: Material2
value: "ГОСТ 19281-89"
Секция content. Отображения заголовков колонок таблицы и другого постоянного текста. Эти настройки можно использовать для перевода текста таблицы на другой язык (в файле есть закомментированный пример для украинского языка):
content:
-
key: Title1
value: "Наименование профиля ГОСТ, ТУ"
...
Секция settings.
Классы объектов, которые не должны попадать в спецификацию.
settings:
-
key: ExcludeClasses
value: "997;998;999"
Имена атрибутов, которые используются в программе.
-
key: PartMaterialAttribute
value: "MATERIAL"
...
Параметр для выбора концепции назначения категорий. Для современной концепции его значение должно быть false, для классической концепции его значение должно быть true.
-
key: UseCategoryAttributesOld
value: "false"
Секция category_order.
category_order:
-
regexp: "[Кк]олонн[ыа].*"
value: "Колонны"
-
regexp: "[Бб]алк[иа].*"
value: "Балки"
...
regexp - регулярное выражение, использующееся как шаблон для атрибута категории главной детали сборки.
Шпаргалка:
[абв] - символ а, б или в
. - любой символ
* - ноль или сколько угодно раз
Подробнее о регулярных выражениях: Шпаргалка, Тестирование.
value - название категории, в которую попадает деталь, если атрибут категории соответствует шаблону.
Программа получает атрибут категории из главной детали сборки и проверяет его на соответствие шаблонам из параметров regexp. Если атрибут соответствует шаблону, то сборка попадает в категорию из параметра value.
Категории выводятся в колонках спецификации в порядке, в котором они расположены в конфигурационном файле. Категории, которые есть в объектах, но не перечислены в конфигурационном файле, выводятся далее в алфавитном порядке.
Конфигурационный файл можно скопировать в папку модели, в папки XS_PROJECT, XS_FIRM, XS_SYSTEM. Он будет считыватся в порядке указанного приоритета (папка модели - наивысший приоритет).
❗При установке новой версии дополнения конфигурационный файл в папке дополнения перезаписывается.
Алгоритм отбора объектов
Состав деталей, попадающих в спецификацию, зависит от опции Объекты (Все / Фильтр выбора / Выбранные) диалогового окна.
Кроме того в общий состав деталей не попадают детали:
- класс которых перечислен в параметре ExcludeClasses в конфигурационном файле (по умолчанию - 997, 998, 999);
- не из стальных сборок;
- с материалом не из группы Сталь.
В известные детали попадают детали:
- Beam и PolyBeam;
- ContourPlate;
- BentPlate;
- с типом элемента Профлист;
- с типом элемента Настил;
- название материала которых, начинается с "Настил", "ПВ", "Риф", "ЧРиф" (регистр символов не важен).
Общий случай обработки данных:
Обработка данных для Настила:
Для совместимости с пользовательскими компонентами и деталями, для которых нельзя задать тип элемента, для настилов используется следующее правило:
Не важно, заполнен ли атрибут для типа элемента. Принадлежность к типу "Настил" определяется по материалу. Если материал начинается с "Настил", "ПВ", "Риф", "ЧРиф", то считается, что это настил.
Данные берутся из файла XS_PROFDB\Grating_Parameters.dat
название элемента = из колонки 3 Обозначение настила
стандарт элемента = из колонки 2 Стандарт настила
название материала - из колонки 6 Материал настила
стандарт материала - из колонки 7 Стандарт материала
В неизвестные детали попадают детали:
- масса которых меньше массы Минимальный вес, кг в диалоговом окне;
- с типом элемента Метизы (атрибут, задающий тип элемента, определеятся пользовательским атрибутом ElementTypeAttribute (по умолчанию - ru_tip_elementa));
- у профилей которых стандарт содержит "10605-94", "5915-70", "4032-2014", "6402-70", "11371-78", т. е. гайки и шайбы (атрибут, задющий стандарт, определяется пользовательским атрибутом ProfileStandardNameAttribute (по умолчанию - PROFILE.GOST_NAME));
- другие детали, не попавшие в известные детали.
Список известных и неизвестных деталей можно увидеть на соответствующих листах в спецификации в виде Excel и в лог-файле.