Хабрахабр

Горячая история техподдержки, или Почему AutoCAD удаляет прокси-объекты?

Дисклеймер

Статья носит исключительно информационный характер и предназначена для защиты конечного пользователя, который может при определенных обстоятельствах потерять свои данные, работая в AutoCAD. Целью этой статьи не является дискредитация программного обеспечения.

Предисловие

SPDS Extension или модуль СПДС – дополнение к продуктам семейства AutoCAD, разрабатываемое компанией Autodesk.

СПДС GraphiCS – кроссплатформенное приложение, предназначенное для разработки проектно-технической документации, разрабатываемое компанией CSoft Development.

nanoCAD СПДС — тот же самый СПДС GraphiCS, но на платформе nanoCAD Plus от компании Нанософт.

История

Разгребая утреннюю почту, наткнулся на обращение пользователя в техническую поддержку. Тема письма в принципе объясняла суть проблемы: «Объекты nanoCAD СПДС не отображаются в AutoCAD». К письму, как и полагается, были приложены файлы, скриншоты и подробное описание действий пользователя. Если говорить кратко, то суть обращения сводилась к следующему: пользователь создал проект в nanoCAD СПДС и передал его подрядчикам. Подрядчики, открывая этот файл в AutoCAD, не видят объектов СПДС.

Но, как оказалось, всё не так просто… Опытные пользователи сразу скажут, что скорее всего подрядчики просто не включили отображение прокси-объектов, поэтому и не видят данные, которые были созданы в специализированном приложении.

Исследование проблемы

Первым делом открываем файл в nanoCAD СПДС и проверяем состояние переменных proxyshow и proxygraphics. Всё в порядке, оба значения равны единице и файл отображается корректно.

proxyshow – переменная, которая управляет отображением прокси-объектов в чертеже;

proxygraphics – переменная, которая управляет сохранением прокси-объектов в чертеже.

Затем проверяем этот же файл в AutoCAD. При запуске файла появляется всплывающее сообщение, которое спрашивает, что нужно делать с проксями.

Всё в порядке, на моей машине AutoCAD корректно отображает все объекты nanoCAD СПДС. Выбираем опцию Показывать прокси-графику и нажимаем ОК.

Даю рекомендацию проверить значение переменной proxyshow (оно должно быть равным единице) прямо из командной строки AutoCAD. С полной уверенностью, что я знаю причину проблемы, закрываю файл и пишу пользователю, что у подрядчиков скорее всего скрыты прокси-объекты в AutoCAD.

Неожиданные открытия

Утром следующего дня получаю от пользователя ответ: значение переменной равно единице, но объекты по-прежнему не отображаются. К слову, чертеж у подрядчика выглядел вот так (вместо плана отображались лишь размеры и несколько отрезков):

Дело в операционной системе? Начинаю разбираться, почему один и тот же файл с одинаковыми значениями переменных может по-разному отображаться в AutoCAD. Может, у пользователя стоят какие-то дополнительные приложения? В версии AutoCAD? В общем, чтобы понять разницу в конфигурациях, запросил у пользователя больше данных.

На скриншоте подрядчика в AutoCAD был установлен модуль СПДС или, как его еще называют, SPDS Extension. Еще раз внимательно просмотрев материалы пользователя, замечаю на одном из скриншотов одну маленькую, но важную деталь.

Не дождавшись от пользователя дополнительных данных, начинаю копать дальше. В моей конфигурации был чистый AutoCAD без всяких надстроек – и, по сути, это оказалось единственной зацепкой.

Далее запускаю файл пользователя и вижу привычное сообщение. Загрузив с официального сайта Autodesk модуль СПДС, устанавливаю его на свою версию AutoCAD 2018. При этом объекты nanoCAD СПДС отображаются в AutoCAD еще до закрытия окна информации о прокси-объектах.

Через мгновение все прокси-объекты исчезают, и я получаю тот же результат, что и подрядчики из обращения пользователя. С мыслью «Мое расследование заходит в тупик» нажимаю кнопку ОК и готовлюсь к дальнейшим действиям.

Прокси-объекты исчезают из файла, хотя значение переменной proxyshow равно единице. Перезагружаю AutoCAD и снова открываю этот файл – картина повторяется. И это очень странно.

Сохранив открытый в AutoCAD файл рядом с файлом, полученным от пользователя, и дописав в название файла _proxy, сравниваю их размеры.

Размер файла, сохраненного в AutoCAD, уменьшился в 10 раз, но я решаю открыть его в исходном приложении – nanoCAD СПДС.

Выходит, что после сохранения в AutoCAD файл пользователя потерял все прокси-объекты. Теперь и в nanoCAD СПДС наблюдаю ту же картинку, что при открытии файла в AutoCAD с модулем СПДС.

Решаю проверить данный баг, используя прокси от собственных приложений Autodesk. Удалять чужие прокси очень некрасиво. Во всех случаях после запуска этих файлов прокси-графика удалялась. Нахожу в сети несколько файлов, созданных в приложениях Civil 3D и Advance Steel, и повторяю вышеупомянутый эксперимент, открывая чертежи с прокси-объектами. Получается, что с модулем SPDS Extension многоуважаемый AutoCAD удаляет любые прокси.

Как ни странно, они снова стали нормально сохраняться. Решаю откатиться к своей старой конфигурации AutoCAD и удаляю модуль СПДС от Autodesk, чтобы снова проверить работу файлов с прокси-объектами. Из всего увиденного делаю окончательный вывод:

AutoCAD с установленным модулем СПДС удаляет все прокси-объекты из dwg-файлов.

Решение

Можно только предполагать, сколько пользователей потеряли свои данные из-за ошибки приложения SPDS Extension, но всё же цель этой статьи не только предупредить пользователей. Главное – спасти их проекты. Поэтому хочу поделиться решениями этой проблемы.

1) Полное удаление приложения SDPS Extension через панель управления.

Радикально, но спасает все прокси.

2) Установка Enabler'ов под платформу AutoCAD.

Например, для продуктов nanoCAD СПДС/СПДС GraphiCS можно скачать Enabler для AutoCAD. Подходит не для всех прокси-объектов, так как не у всех приложений есть энейблеры под AutoCAD. После установки данного энейблера объекты СПДС перестанут быть прокси и больше не будут удаляться из AutoCAD.

Советы

Я призываю пользователей быть острожными и всегда хранить несколько копий своих проектов. nanoCAD, например, при открытии dwg-файла сразу делает средствами операционной системы его копию с расширением dwg.original; поэтому у вас всегда будет резервная копия исходного файла.

Если же вы пользуетесь другими САПР, то просто не поленитесь и вручную сделайте несколько копий своих проектов – на всякий случай.

Берегите свои dwg-файлы и удачного проектирования!
Сергей Спирин, mahbak
АО Нанософт

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть