Перейти к публикации

Сделай свою работу в Solidworks эффективнее


Рекомендованные сообщения

@dommast Можно воспользоваться приложением от Xarial (Артем Татуревич) которое называется Batch+ https://cadplus.xarial.com/batch/ и является часть программного пакета CAD+ https://cadplus.xarial.com/ Есть бесплатная версия Community Edition

Либо начать изучать хотя бы VBA, что бы реализовать свою идею. Если использовать SelectionManager при выборе компонентов в сборке, то необходимость использования 1 и 3 макроса отпадает. Из описания я не совсем понимаю как работает Ваш второй макрос. Если я правильно понял макрос берет значение имени файла, допустим, оно состоит из НАИМЕНОВАНИЕ_разделитель_ОБОЗНАЧЕНИЕ, обрабатывает его и прописывает каждую часть в свое свойство, так ли это?

Ссылка на сообщение
Поделиться на других сайтах


12 часов назад, dommast сказал:

Может кто сталкивался как решить?

Пакетно делаю по шаблону или без всех выделенных файлов.

 

Скрытый текст

111.gif

 

Скрытый текст

Изменить в атрибутах.gif

 

Изменено пользователем Maik812
Ссылка на сообщение
Поделиться на других сайтах
11 часов назад, Snake 60 сказал:

@dommast Можно воспользоваться приложением от Xarial (Артем Татуревич) которое называется Batch+ https://cadplus.xarial.com/batch/ и является часть программного пакета CAD+ https://cadplus.xarial.com/ Есть бесплатная версия Community Edition

Либо начать изучать хотя бы VBA, что бы реализовать свою идею. Если использовать SelectionManager при выборе компонентов в сборке, то необходимость использования 1 и 3 макроса отпадает. Из описания я не совсем понимаю как работает Ваш второй макрос. Если я правильно понял макрос берет значение имени файла, допустим, оно состоит из НАИМЕНОВАНИЕ_разделитель_ОБОЗНАЧЕНИЕ, обрабатывает его и прописывает каждую часть в свое свойство, так ли это?

Snake 60 , Спасибо за отклик на мой вопрос.
Буквально незадолго до этого я смотрел Batch+ и  видео, приложенное к нему.
К сожалению, мой английский не позволил понять что и как.
Вы абсолтно правильно поняли по назначению второго макроса. Он именно это и делает.
А 1 и 3 макрос я добавил, чтобы основной макрос "Обозначение_Наименование" срабатывал в дереве конструирования всей сборки.
Посмотрел в справке SelectionManager Property (IModelDoc), но как его связать с моим макросом  "Обозначение_Наименование" не имею понятия.
Все познания в VBA у меня сводятся к 1 семестру обучения в институте в 1979 г.
В любом случае большое спасибо. Я думаю, что где на просторах инета всплывет подобная ситуация. Будем искать.

9 часов назад, Maik812 сказал:

Пакетно делаю по шаблону или без всех выделенных файлов.

 

  Показать содержимое

111.gif

 

  Показать содержимое

Изменить в атрибутах.gif

 

Спасибо за ваш ответ. Но по этим скринам я абсолютно не понял что нужно делать .

Ссылка на сообщение
Поделиться на других сайтах
11 минут назад, dommast сказал:

Но по этим скринам я абсолютно не понял что нужно делать

Выбираю файлы ТС и использую его для редактирования или вынесении значений в пользовательских полях таких как Обозначение , Наименование и тд..переименование деталей тоже удобно (но свои особенности со ссылками на имя).

Ссылка на сообщение
Поделиться на других сайтах
14 минут назад, Maik812 сказал:

Выбираю файлы ТС и использую его для редактирования или вынесении значений в пользовательских полях таких как Обозначение , Наименование и тд..переименование деталей тоже удобно (но свои особенности со ссылками на имя).

Не берусь судить, но лишнее окно ТС немного громоздко сверху  окна SW.

Все же смотрю в сторону макроса,  который позволит все манипуляции сделать прямо в SW.

Спасибо за ваше внимание к моему вопросу.

Ссылка на сообщение
Поделиться на других сайтах
21 час назад, dommast сказал:

Добрый день.
У меня есть "Макрос №", который объединяет 3 отдельных макроса и запускается по горячей клавише.
Сейчас происходит следующее.
Я выделяю в дереве конструирования 1 деталь (или 1 сборку ), запускаю "Макрос №" с 3-мя макросами:
1 макрос открывает выделенную деталь или сборку в дереве конструирования.
2 макрос присваивает свойства "Обозначение" и "Наименование" от $PRP:"SW-File Name".
3 макрос закрывает выделенную деталь или сборку.
В итоге я получаю два новых свойства "Обозначение" и "Наименование".
Все великолепно работает с 2016 года, но приходится выполнять это действие только по отдельности.
Я не знаю API и никак не удается найти какое-то решение, чтобы применить "Макрос №" сразу к нескольким выделенным деталям или сборкам в дереве конструирования.
Т.е. выделить в дереве конструирования нужные для меня детали или сборки и применить  "Макрос №" пакетно.
Может кто сталкивался как решить?
Спасибо.
SW 2020Sp5. Win10.

Вполне полезный был бы макрос. Иногда бывает нужно прогнать неизвестную сборку на предмет все ли в порядке со свойствами Наименований и Обозначений. Или если брать сборку чужую в работу в нейтральном формате (если заказчик работает в более новой версии солида, например), где только имена файлов сохраняются.

Ссылка на сообщение
Поделиться на других сайтах
11.08.2021 в 08:31, Docuk1 сказал:

 

Надо не Мпроп редактировать, а SpecEditor в двух местах.

Чтоб в рамках был, то нужно править шаблоны чертежа и ставить пробел: $PRPSHEET:"Обозначение"<ПРОБЕЛ>$PRPSHEET:"Сборка1_ФБ"

image.pngimage.png

 

Благодарю!

Ссылка на сообщение
Поделиться на других сайтах
11.08.2021 в 13:16, dommast сказал:

Добрый день.
У меня есть "Макрос №", который объединяет 3 отдельных макроса и запускается по горячей клавише.
Сейчас происходит следующее.
Я выделяю в дереве конструирования 1 деталь (или 1 сборку ), запускаю "Макрос №" с 3-мя макросами:
1 макрос открывает выделенную деталь или сборку в дереве конструирования.
2 макрос присваивает свойства "Обозначение" и "Наименование" от $PRP:"SW-File Name".
3 макрос закрывает выделенную деталь или сборку.
В итоге я получаю два новых свойства "Обозначение" и "Наименование".
Все великолепно работает с 2016 года, но приходится выполнять это действие только по отдельности.
Я не знаю API и никак не удается найти какое-то решение, чтобы применить "Макрос №" сразу к нескольким выделенным деталям или сборкам в дереве конструирования.
Т.е. выделить в дереве конструирования нужные для меня детали или сборки и применить  "Макрос №" пакетно.
Может кто сталкивался как решить?
Спасибо.
SW 2020Sp5. Win10.

 

Добрый день.
После ответов на мой вопрос  я решил попробовать выполнить задачу по переименованию по другому.
Скрестил некоторый макросХ с макросом "Обозначение_Наименование" и получил следующее:
1. Копирую в отдельную папку необходимые для переименования файлы.
2. Запускаю макросХ  (он просит указать папку для преобразования).
3. После выполнения макроса копирую с заменой обратно в папку с проектом.
Все исправлено и для меня вполне нормально.
Но !!!!
Пришлось сделать 2 практически одинаковых макросаХ (1-для деталей, 2-для сборок) и запускать их один за другим.
Поэтому стал вопрос - как эти 2 макроса соединить в общий.
К тому же в моих макросах есть наверно и ненужные строки);
Для понимающих API я думаю это не сложно сделать.
Прикладываю эти 2 макроса.
Еще раз напоминаю про мои "нулевые" знания по написанию макросов и не судить строго.
Все делалось методом проб и ошибок.
Спасибо.

 

sОбознач_НаименПакетноИзОтдельнПапки — Деталь.swp sОбознач_НаименПакетноИзОтдельнПапки — Сборка.swp

Ссылка на сообщение
Поделиться на других сайтах
25.07.2021 в 22:53, Snake 60 сказал:

Кто подкинет кусочек кода по поиску и идентификации одинаковых деталей в сборке - буду благодарен. Может удастся этот макрос оптимизировать.

тут есть

Ссылка на сообщение
Поделиться на других сайтах

@ALL Коллеги, представляю на ваш суд макрос для пакетного занесения свойств в сборке. Сделан на коленке (поэтому прошу сильно не пинать за БК) на основе макроса Component Info от @alek77 за что ему громадное спасибо! У него очень грамотно реализован подсчет компонентов в сборке, что нам очень пригодилось :)

Для чего нужен макрос? Ну например:

12.08.2021 в 12:07, none сказал:

Иногда бывает нужно прогнать неизвестную сборку на предмет все ли в порядке со свойствами Наименований и Обозначений. Или если брать сборку чужую в работу в нейтральном формате (если заказчик работает в более новой версии солида, например), где только имена файлов сохраняются.

Как выглядит? Вот так:

Скрытый текст

изображение.png

Как с ним работать? Смотрим видос:

Скрытый текст

Как его установить? Курим мануал:

Скрытый текст

Устанавливается как и любой другой VBA макрос. Пример установки можно посмотреть вот здесь:

ВНИМАНИЕ! Метод ОБЯЗАТЕЛЬНО должен быть выбран FromFilenameToProperties2.main - иначе не заработает!

изображение.png

ToDo List:

  1. Оптимизировать быстродействие на больших сборках (в данной версии макрос мучает одну и ту же деталь столько раз, сколько она встречается в сборке)
  2. Добавить вкладку для внесения персональных свойств на вкладку Настройки (пишите если это нужно - если никому не нужно, то не буду заморачиваться)
  3. Добавить вкладку для внесения персональных свойств на вкладку Конфигурация (пишите если это нужно - см.выше)
  4. Добавление других расчетных свойств, таких как: Площадь поверхностей, Объем и т.п. (Опять же, если кому-то это надо...)
  5. Выслушаю ваши предложения и пожелания.

А где же файлы? Да вот они:

Скрытый текст

 

Ссылка на сообщение
Поделиться на других сайтах
15 часов назад, Snake 60 сказал:

@ALL Коллеги, представляю на ваш суд макрос для пакетного занесения свойств в сборке. Сделан на коленке (поэтому прошу сильно не пинать за БК) на основе макроса Component Info от @alek77 за что ему громадное спасибо! У него очень грамотно реализован подсчет компонентов в сборке, что нам очень пригодилось :)

Для чего нужен макрос? Ну например:

Как выглядит? Вот так:

  Показать содержимое

изображение.png

Как с ним работать? Смотрим видос:

  Показать содержимое

Как его установить? Курим мануал:

  Показать содержимое

Устанавливается как и любой другой VBA макрос. Пример установки можно посмотреть вот здесь:

ВНИМАНИЕ! Метод ОБЯЗАТЕЛЬНО должен быть выбран FromFilenameToProperties2.main - иначе не заработает!

изображение.png

ToDo List:

  1. Оптимизировать быстродействие на больших сборках (в данной версии макрос мучает одну и ту же деталь столько раз, сколько она встречается в сборке)
  2. Добавить вкладку для внесения персональных свойств на вкладку Настройки (пишите если это нужно - если никому не нужно, то не буду заморачиваться)
  3. Добавить вкладку для внесения персональных свойств на вкладку Конфигурация (пишите если это нужно - см.выше)
  4. Добавление других расчетных свойств, таких как: Площадь поверхностей, Объем и т.п. (Опять же, если кому-то это надо...)
  5. Выслушаю ваши предложения и пожелания.

А где же файлы? Да вот они:

 

К сожалению могу тестировать только на св2014. Отдельное внесение свойств для деталей работает отлично. пакетное -нет. Метод выбрал как сказано в инструкции.

 

20210825_143811.jpg

20210825_143620.jpg

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, none сказал:

К сожалению могу тестировать только на св2014

Поставлю SW2014й на виртуалке, попробую исправить.

Ссылка на сообщение
Поделиться на других сайтах
03.08.2021 в 21:33, tompsongun сказал:

3.2.5.1 SaveAsCopyReplace

@tompsongun, столкнулся с такой проблемой - при копировании в исходную модель (и ДЕ и СБ) вносятся данные из клона.

Т.е. из детали 1111_ААА (исходная) делаем 2222_БББ (клон).

В итоге: в св-вах исходной детали 1111_ААА имеем св-ва клона, т.е. Обозначение - 2222 Наименование - БББ.

Кто пользуется макросом, проверьте, может только у меня так? 

sw2016sp5

Изменено пользователем malvi.dp
Ссылка на сообщение
Поделиться на других сайтах
1 час назад, malvi.dp сказал:

@tompsongun, столкнулся с такой проблемой - при копировании в исходную модель (и ДЕ и СБ) вносятся данные из клона.

Т.е. из детали 1111_ААА (исходная) делаем 2222_БББ (клон).

В итоге: в св-вах исходной детали 1111_ААА имеем св-ва клона, т.е. Обозначение - 2222 Наименование - БББ.

Кто пользуется макросом, проверьте, может только у меня так? 

sw2016sp5

Да, у меня также. Макрос последней версии.

Потихоньку вылижем макрос. Обычный процесс.

Ссылка на сообщение
Поделиться на других сайтах

@malvi.dp , @none  спасибо!

 

поправил вроде как, пожалуйста, попробуйте

SaveAsCopyReplace 3.2.5.2

мсправил внесение свойств копии в исходную, когда выбрано закрытие исходной модели; (происходит перезагрузка исходной модели - делал это когда опция закрытия модели не выбрана, а для иначе - упустил)

исправил обновление обозначения в конфигах, когда не выбрано обозначение + имя конфига;  (оставалось исходное обозначение в конфигурации (( )

добавил индикаций процесса. (чуть более информативности, правда есть мизерная вероятность, что выскочит ошибка из-за выгрузки индикации при опред. условии - хотелось чтоб индикатор исчезал после появления диалога об открытии копии модели)

 

SaveAsCopyReplace 3.2.5.2.zip

 

подскажите, из-за чего вылазит запрос на сохранение изменений в макросе при закрытии солида?  хотя макрос просто пользуешь, не только на этом макросе появляется, иногда бывает и на других. а на моём стабильно ((

Ссылка на сообщение
Поделиться на других сайтах
14 минут назад, tompsongun сказал:

поправил вроде как, пожалуйста, попробуйте

Спасибо за оперативность!

Сейчас порядок, св-ва соответствуют.

Ссылка на сообщение
Поделиться на других сайтах
24.08.2021 в 23:06, Snake 60 сказал:

@ALL Коллеги, представляю на ваш суд макрос для пакетного занесения свойств в сборке. Сделан на коленке (поэтому прошу сильно не пинать за БК) на основе макроса Component Info от @alek77 за что ему громадное спасибо! У него очень грамотно реализован подсчет компонентов в сборке, что нам очень пригодилось :)

Для чего нужен макрос? Ну например:

Как выглядит? Вот так:

  Скрыть содержимое

изображение.png

Как с ним работать? Смотрим видос:

  Скрыть содержимое

Как его установить? Курим мануал:

  Скрыть содержимое

Устанавливается как и любой другой VBA макрос. Пример установки можно посмотреть вот здесь:

ВНИМАНИЕ! Метод ОБЯЗАТЕЛЬНО должен быть выбран FromFilenameToProperties2.main - иначе не заработает!

изображение.png

ToDo List:

  1. Оптимизировать быстродействие на больших сборках (в данной версии макрос мучает одну и ту же деталь столько раз, сколько она встречается в сборке)
  2. Добавить вкладку для внесения персональных свойств на вкладку Настройки (пишите если это нужно - если никому не нужно, то не буду заморачиваться)
  3. Добавить вкладку для внесения персональных свойств на вкладку Конфигурация (пишите если это нужно - см.выше)
  4. Добавление других расчетных свойств, таких как: Площадь поверхностей, Объем и т.п. (Опять же, если кому-то это надо...)
  5. Выслушаю ваши предложения и пожелания.

А где же файлы? Да вот они:

 

Обозначение и наименование обновляет, но трет материал в детали!!! Материал присваиваю череез ГеОС. Заметил уже когда прогнал большую сборку... теперь везде материал переприсваивать(((

Ссылка на сообщение
Поделиться на других сайтах

Я так понял что макрос берет материал из детали(что присвоено в модели) и вкидывает его в свойства. Можно замену этого свойства отключить?

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, and1822 сказал:

Обозначение и наименование обновляет, но трет материал в детали!!! Материал присваиваю череез ГеОС. Заметил уже когда прогнал большую сборку... теперь везде материал переприсваивать(((

Сорри за неудобство, не подумал об этом ((

1 час назад, and1822 сказал:

Я так понял что макрос берет материал из детали(что присвоено в модели) и вкидывает его в свойства. Можно замену этого свойства отключить?

Так и есть, исправлю. Сделаю проверку, если этого свойства нет - то добавить.

Ссылка на сообщение
Поделиться на других сайтах

SaveAsCopyReplace 3.2.5.3

поправил сохранение списка последних путей и имён - сохранялись только последние 2-3 записи (не знаю, мне казалось, что работало, сейчас увидел, что не совсем )изображение.png

(напомню на всякий, очистка списков - пункт в контекстном меню)

SaveAsCopyReplace 3.2.5.3.zip

Изменено пользователем tompsongun
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   2 пользователя

    • DmitriySD
    • Liga



×
×
  • Создать...