Результатом деятельности конструктора, как правило, является выпущенная документация, графическая и текстовая.
И если создание графики автоматизации поддается в очень ограниченных пределах, то заполнение текстовой информацией, всевозможных таблиц, автоматизируется достаточно просто, при условии, что исходные данные для отчетов есть в самом чертеже или вспомогательных файлах.
В СПДС GraphiCS задача сбора данных с чертежа, легко решается табличными автоотчетами.
Достоинства табличных автоотчетов состоят в:
CSoft в СПДС GraphiCS 9 добавил интересные программные отчеты, один из них «Спецификация оборудования».
В принципе даже если не учитывать, что сама таблица сделана не по ГОСТ 21.110-2013 СПДС.
Хотя это и решается простым редактированием шаблона отчета, тем не менее не по ГОСТ изначально.
Сам отчет формируется достаточно неаккуратно, как по стилю, так и по содержанию:
Новые разделы не отделены от данных пустыми строками, одинаковые объекты с разными позициями попадают в разные строки, есть еще ряд недоработок, на досуге можете сами протестировать.
Главный же недостаток этого отчета в том, что он жестко настроен на сбор данных с маркера «ТХ_Позиция». Выборку маркеров делает только по одной активной вкладке (Модель или лист).
Пользователи активно пишут свои маркеры и программируют объекты, и хотелось бы такой же быстрый отчет, как сделал CSoft, желательно, что бы он при этом формировался по ГОСТ и собирал объекты со всего чертежа. Это собственно постановка задачи, которая была успешно решена средствами VBA.
Предлагаемый скрипт аналогично CSoft собирает отчет по маркеру «ТХ_Позиция» (этот маркер гарантированно есть у всех пользователей СПДС GraphiCS), но при необходимости может быть перенастроен на любой объект СПДС GraphiCS, об этом ниже.
Скрипт выполняет сортировку данных по разделам и внутри раздела по оборудованию, одинаковые детали группирует с простановкой общего количества и позиционных обозначений. Причем если одна и та же деталь встречается несколько раз, но с разным позиционным обозначением (например: «поз.1» «поз.2»), то записаны в спецификацию будут обе позиции через запятую: поз.1,поз.2.
Выборка объектов отчета может производиться, как по всему документу AutoCAD, так и по активной вкладке.
Результат работы скрипта:
Для того, что бы запустить макрос его надо загрузить в AutoCAD из меню:
Или командой VBAMAN.
В результате появится окно диспетчера VBA.
В принципе все готово для генерации отчетов. Но для того, что бы было красиво необходимо в базу СПДС GraphiCS загрузить шаблон таблицы (в загрузке).
Теперь размещаем на чертеже маркеры «ТХ_Позиция» и запускаем макрос «R1»-для отчета по текущей вкладке, или «R2»-отчет по всему документу.
Запустить скрипт можно введя в командной строке команду «-vbarun» а затем имя макроса «R1» или «R2», либо через меню:
Возможно в дальнейшем вы захотите адаптировать макрос «под себя», настроить выборку по другим объектам и другими параметрами, для этого в макросе есть модуль «Options» в котором можете провести все необходимые изменения. В скрипте имеются все необходимые комментарии поэтому сложностей настройка под себя вызвать не должна ни у кого.
При желании макрос можно адаптировать, что бы он выводил отчет не в таблицу СПДС, а допустим в документ Word или Excel, но это уже отдельная тема.
Не у всех пользователей есть возможность запускать VBA из под AutoCAD. Но если очень хочется, то в архиве лежит файл Excel с адаптированным макросом из которого то же можно формировать табличный отчет в AutoCAD.
Из настроек для Excel требуется дополнительно в «Tools-> References» подключить библиотеку «AutoCAD 2012 type library», как на рисунке ниже.
По этой ссылке вы можете, скачать файлы макросов и таблицы.
______________________________________________________
Отдельная благодарность swell{d} за придание мне начального ускорения.
И если создание графики автоматизации поддается в очень ограниченных пределах, то заполнение текстовой информацией, всевозможных таблиц, автоматизируется достаточно просто, при условии, что исходные данные для отчетов есть в самом чертеже или вспомогательных файлах.
В СПДС GraphiCS задача сбора данных с чертежа, легко решается табличными автоотчетами.
Достоинства табличных автоотчетов состоят в:
- легкости и гибкости настройки пользователем;
- возможности собирать объекты отчетов с разных файлов AutoCAD
- объектам СПДС GraphiCS, блокам и примитивам AutoCAD;
- возможность редактирования объектов СПДС GraphiCS отчета из таблицы
CSoft в СПДС GraphiCS 9 добавил интересные программные отчеты, один из них «Спецификация оборудования».
В принципе даже если не учитывать, что сама таблица сделана не по ГОСТ 21.110-2013 СПДС.
Хотя это и решается простым редактированием шаблона отчета, тем не менее не по ГОСТ изначально.
Сам отчет формируется достаточно неаккуратно, как по стилю, так и по содержанию:
Новые разделы не отделены от данных пустыми строками, одинаковые объекты с разными позициями попадают в разные строки, есть еще ряд недоработок, на досуге можете сами протестировать.
Главный же недостаток этого отчета в том, что он жестко настроен на сбор данных с маркера «ТХ_Позиция». Выборку маркеров делает только по одной активной вкладке (Модель или лист).
Пользователи активно пишут свои маркеры и программируют объекты, и хотелось бы такой же быстрый отчет, как сделал CSoft, желательно, что бы он при этом формировался по ГОСТ и собирал объекты со всего чертежа. Это собственно постановка задачи, которая была успешно решена средствами VBA.
Предлагаемый скрипт аналогично CSoft собирает отчет по маркеру «ТХ_Позиция» (этот маркер гарантированно есть у всех пользователей СПДС GraphiCS), но при необходимости может быть перенастроен на любой объект СПДС GraphiCS, об этом ниже.
Скрипт выполняет сортировку данных по разделам и внутри раздела по оборудованию, одинаковые детали группирует с простановкой общего количества и позиционных обозначений. Причем если одна и та же деталь встречается несколько раз, но с разным позиционным обозначением (например: «поз.1» «поз.2»), то записаны в спецификацию будут обе позиции через запятую: поз.1,поз.2.
Выборка объектов отчета может производиться, как по всему документу AutoCAD, так и по активной вкладке.
Результат работы скрипта:
Для того, что бы запустить макрос его надо загрузить в AutoCAD из меню:
Или командой VBAMAN.
В результате появится окно диспетчера VBA.
- По кнопке «Загрузить», появится стандартное окно «Выбор проектов VBA», где нужно выбрать проект «MC_9_V051_TX.dvb»
- Затем по кнопке «Редактор Visual Basic» переходим в редактор скрипта, заходим в меню «Tools-> References»
В принципе все готово для генерации отчетов. Но для того, что бы было красиво необходимо в базу СПДС GraphiCS загрузить шаблон таблицы (в загрузке).
Теперь размещаем на чертеже маркеры «ТХ_Позиция» и запускаем макрос «R1»-для отчета по текущей вкладке, или «R2»-отчет по всему документу.
Запустить скрипт можно введя в командной строке команду «-vbarun» а затем имя макроса «R1» или «R2», либо через меню:
Возможно в дальнейшем вы захотите адаптировать макрос «под себя», настроить выборку по другим объектам и другими параметрами, для этого в макросе есть модуль «Options» в котором можете провести все необходимые изменения. В скрипте имеются все необходимые комментарии поэтому сложностей настройка под себя вызвать не должна ни у кого.
При желании макрос можно адаптировать, что бы он выводил отчет не в таблицу СПДС, а допустим в документ Word или Excel, но это уже отдельная тема.
Не у всех пользователей есть возможность запускать VBA из под AutoCAD. Но если очень хочется, то в архиве лежит файл Excel с адаптированным макросом из которого то же можно формировать табличный отчет в AutoCAD.
Из настроек для Excel требуется дополнительно в «Tools-> References» подключить библиотеку «AutoCAD 2012 type library», как на рисунке ниже.
По этой ссылке вы можете, скачать файлы макросов и таблицы.
______________________________________________________
Отдельная благодарность swell{d} за придание мне начального ускорения.
Комментариев нет :
Отправить комментарий