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

Спецификация для SW по ГОСТ


Ваш опыт использования пакета макросов SWPlus  

629 пользователей проголосовало

  1. 1. Вы используете макросы из пакета SWPlus?

    • Да, постоянно на основной работе.
      460
    • Да, но не на основной работе.
      90
    • Нет
      81
  2. 2. Каие макросы из пакета Вы используете?

    • SpecEditor - для создания спецификаций и ВП
      518
    • MProp - для заполнения свойств моделей
      497
    • DProp - для управления листами чертежа
      345
    • SProp - для заполнения свойств моделей из разделов Стандартные изделия, Прочие изделия и Материалы
      327
    • SaveDRW - для "правильного" сохранения чертежа
      144
    • SaveAsPDF - для сохранения чертежа в формате PDF
      220
    • Master - для создания шаблонов основных надписей
      301
  3. 3. Были ли у Вас проблемы с освоением (изучением) макросов?

    • Нет, мне все интуитивно понятно
      164
    • Да, но я разобрался с помощью форума и описания
      313
    • Да, я до сих пор не могу разобраться как с этим работать
      99
    • Я не стал разбираться, глянул и стер все нафиг
      7
    • Я не пользовался этими макросами
      48
  4. 4. Были ли у Вас проблемы (глюки) с установкой и настройкой макросов?

    • Нет, все установилось нормально
      143
    • Да, но они решились
      282
    • Да, и я до сих пор не могу заставить макросы работать, но хочу это сделать
      153
    • Да, поэтому я и не стал с ними связываться
      7
    • Я не пользовался этими макросами
      46
  5. 5. Устраивает ли Вас подход к автоматизации оформления КД, заложенный в данных макросах?

    • Да
      284
    • Да, хотя кое-что я бы изменил
      260
    • Нет
      23
    • Не знаю
      64


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

  • 3 года спустя...


UnPinned posts

Открыл проект из 1050 деталей и солид вылетает при работе макроса. Вставляет таблицу задумывается и солид выгружается.

Может какие-то ограничения есть.

Макрос выгружается или солид?

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

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

Выгружается солид

Это хуже. Ну попробуйте выкинуть ту строчку. А просто ручками добавить спецификацию на лист чертежа получается?
Ссылка на сообщение
Поделиться на других сайтах

Leon

Строчку выкинул.

Сборка в 296 деталей зачиталась. Все сработало. Но туго, чего-то задумывался, но пошел.

Сборка из 1050 деталей, таблица ручками вставляется.

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

объяснений. Может много конфигураций(крепеж) , 34 сборки трубопроводов, 30 сборочных ну и детали.

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

Crab

Тогда не знаю... Больше ограничений я не вижу

Попробуйте в том месте где была удаленная строчка "end" вместо

If n = 999 Then



End If

вставить

If n = 200 Then

		swDraw.ForceRebuild3 (True)

		n = 0

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

Leon

Сделал изменения. Не помогло.

На работе сделанной в версии 2009 из 256 деталей работает.

А сборка из 1050 деталей созданная в 2007 и преобразованная в 2009 , работать отказывается

выгружается и все. Не могу проверить на новых больших сборках.

Сборка решена и не в режиме "большой сборки" , таблица вручную вставляется.

Спотыкается когда макрос построил вспомогательные столбцы и как бы начинает формирование

листов спецификации и все.

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

Crab

К сожалению не знаю как вам помочь. Поскольку вылетает сам солид, то очень трудно понять, в чем здесь проблема. У меня нет таких больших сборок и мне не проверить. Могу только посоветовать попробовать на других больших сборках и на разных машинах.

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

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

Могу только посоветовать попробовать на других больших сборках и на разных машинах.

Так же бы рекомендовал бы, где по вашему возникает "вылет" поставить "точки остановки" выполнения макроса и отследить точное место сбоя. Выяснив на чём именно "валится" Solidworks, попробовать закомментировать эту строку и проверить работоспособность.

А там уж искать альтернативы "плохой" функции API-интерфейса.

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

Leon

Сделал изменения. Не помогло.

На работе сделанной в версии 2009 из 256 деталей" работает....

А сборка из 1050 деталей созданная в 2007 и преобразованная в 2009 , работать отказывается

выгружается и все. Не могу проверить на новых больших сборках.

Сборка решена и не в режиме "большой сборки" , таблица вручную вставляется.

Спотыкается когда макрос построил вспомогательные столбцы и как бы начинает формирование

листов спецификации и все.

1) На работе сделанной в версии 2009 из 1050 деталей работает?

Если да, мне кажется проблема в конвертации из 2007 в 2009-й SW;

Это если в режиме отладки ошибка не отслеживается и SW сразу вылетает;

Но по идее должен создаваться что-то типа LОG-файл или обычно выскакиавает окошко с ообщением об ошибке;

2) Можно еще посмотреть в "Просмотре событий" - есть ли там что...;

3) Еще запусить макрос в режиме отладки, еслм там ошибка, то отладчик на ней и остановится;

4) Думаю, что сортировка 1050 элементов не может быть причиной ошибки! Маловато.

Хотя надо посмотреть сам механизм реализации сортировки - нет ли там рекурсивного вызова какой-либо функции!. При недостатке памяти это может послужить причиной. Да и при большом объеме памяти тоже - там же затраты ресурсов возрастают в экспоненциальной зависимости от кол-ва элементов;

Блин, пока пишу мысли так и возникают:

5) Еще бы сравнил эти сборки на предмет количества уникальных и НЕ уникальных деталей.

6) И в чем, собственно, заключается сортировка?

7) Можно даже "вытащить" список файлов или данных, входящих в эти сборки, передать их в Excel и там отсортировать в разных режимах.

8) Переделать этот макрос в EXE или DLL-файл, а лучше И в EXE И в DLL и сравнить/испытать.

Не, ну так я до утра буду писать, пока все, хватит...

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

Kelny

ssv22

Коллеги, спасибо за предложения. Я в общем со всем согласен. Однако заниматься этим нет никакой возможности. Я и макрос то этот писал урывками - на работе некогда, дома тоже. И таких больших сборок у меня нет, а если бы и была, то домашний комп ее не потянет, старенький совсем и памяти пол гига.

Если бы кто-нибудь мог потестить и что-нибудь предложить, буду признателен. Сортировка в макросе это просто набор условий.

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

Kelny

ssv22

Коллеги, спасибо за предложения. Я в общем со всем согласен. Однако заниматься этим нет никакой возможности. Я и макрос то этот писал урывками - на работе некогда, дома тоже. И таких больших сборок у меня нет, а если бы и была, то домашний комп ее не потянет, старенький совсем и памяти пол гига.

Если бы кто-нибудь мог потестить и что-нибудь предложить, буду признателен. Сортировка в макросе это просто набор условий.

Да уж, со временем сейчас напряг и у меня тоже :-(
Ссылка на сообщение
Поделиться на других сайтах

Попробовал воспользоваться вашей разработкой.

Версия 1.3 при клике на кнопочку макроса выдает вот такое

<noindex>Изображение</noindex>

Версия 1.0 выдает табличку с выбором типа чертежа. После нажатия там ОК, открывается вот такое

<noindex>Изображение</noindex>

SW2008 office premium SP0. WinXP prof x64 SP2.

Что не так?

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

Gnork

После возникновения ошибки зайдите в редактирование макроса (Debug) и проверьте библиотеки Tools-References.

Достаточно этого:

Visual Basic for Applications

SoidWorks Extensibility Type Library

OLE Automation

Microsoft Forms 2.0 Object Library

SolidWorks 2008 Constant type library

SldWorks Type Library

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

Leon

В режиме редактирования и пошаговое выполнение: первые 4 строчки строчки окрашены в желтый цвет и на

последней желтой выскакивает ошибка 91 .

Private Sub UserForm_Activate()

MSort = 0

If mRunPref = 0 Then

	sSource = swApp.GetCurrentMacroPathName			 ' Get macro path+filename

	sSource1 = Left$(sSource, Len(sSource) - 4) & "_sp.sldbomtbt"	' Шаблон таблицы

	sSource2 = Left$(sSource, Len(sSource) - 14) & "SP-1.slddrt"	' Шаблон 1-го листа

	sSource3 = Left$(sSource, Len(sSource) - 14) & "SP-2.slddrt"	' Шаблон 2-го листа

	sSource4 = Left$(sSource, Len(sSource) - 3) & "ini"	' ini-файл

	sSource5 = Left$(sSource, Len(sSource) - 4) & "_Doc.txt"	' Документация
Изменено пользователем Crab
Ссылка на сообщение
Поделиться на других сайтах

Gnork

После возникновения ошибки зайдите в редактирование макроса (Debug) и проверьте библиотеки Tools-References.

Достаточно этого:

Visual Basic for Applications

SoidWorks Extensibility Type Library

OLE Automation

Microsoft Forms 2.0 Object Library

SolidWorks 2008 Constant type library

SldWorks Type Library

Как раз эти 6 штук там с галочками и есть.

post-22565-1242629224_thumb.jpg

post-22565-1242629395_thumb.jpg

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

Leon

на 266 макрос работает

Компоненты 266

Детали: 248

уникальные документы детали 72

уникальные детали 60

Узлы сборки: 18

уникальные узлы сборки 8

уникальные документы узлов сборки 8

Количество тел 296

Компоненты 1045

Детали: 993

уникальные документы детали 269

уникальные детали 210

Узлы сборки: 52

уникальные узлы сборки 43

уникальные документы узлов сборки 43

Количество тел 1315

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

Crab

В режиме редактирования и пошаговое выполнение: первые 4 строчки строчки окрашены в желтый цвет и на

последней желтой выскакивает ошибка 91 .

Если вы хотите запустить макрос в режиме редактирования то надо начинать с кода модуля SpecEditor_run.

Gnork

Всем у кого были проблемы с запуском обычно помогала проверка библиотек. То, что у вас x64 вроде не должно влиять, хотя я на x64 не пробовал.

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

Leon

SpecEditor_run все вроде нормально . не останавливается ,в результате появляется окно макроса.

А затем перехожу в код модуля FrmSpecEditop и выскакивает ошибка указ. выше.

Может не так что-то делаю.

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

Может не так что-то делаю.

Что бы исключить какие либо неправильные действия при запуске, в окне редактора макроса:

1. Tools-Macros... появится окно с заголовком Macros

2. Выберите макрос в выпадающем списке Macros In, если открыто несколько макросов

3. Выберите Macro Name main

4. Нажмите в форме кнопку Run

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

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

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

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

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

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

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

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

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

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

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • Kelny
      Вероятно разблокировку делает патч с официального сайта, но не смотря на то что позиционируется для профкарт, вероятно делает описанное в видео и с другими картами:  
    • Alexey8107
      Их официальный номер пока еще работает . На нем сейчас пока еще стоит переадресация. В общем не знаю что за организация, завтра займусь наверное этим. На словах и сервисный инженер у них катается по стране. Что-то мне подсказывает сервисники остались теже . Вобщем в ближайшее время займусь, гляну по реквизитам что за организация.
    • Fedor
      "Какой эмпирико-нормативный опыт есть у человечества"  подробно этим занимались в зубчатых передачах. Но единой теории усталости не существует. Надо смотреть буквари по Деталям машин.   https://elima.ru/books/?id=3934   Вот хорошая книжка ... 
    • Борман
      При циклике вообще-то надо минимум и максимум знать. Есть ли вообще циклическая нагрузка ? В остальном Газпромовская нормативка копирует атомные нормы.   Запасы только свои, а не атомные.
    • gudstartup
      что наглухо вышел физически или ошибки в разделах? если логически то можно r-studio поковырять образ может параметры удастся  вытащить
    • gudstartup
      это как вы с ним свяжитесь? в россии представительство фанука закрыто - никакой поддержки нет и поставок тоже если покупать то через китайцев. значит руководство фанука в этот раз оказалось правым.
    • andrei_shevchenko
      Добрый день коллеги! Сделал имитационную модель в plant simulation, сейчас я ищу способы продемонстрировать модель в виртуальной реальности, и для этой цели мне было бы очень интересно, если бы я мог напрямую подключить omniverse к Siemens plant simulation. Я видел, что коннектор был представлен на одном из вебинаров nvidia, поэтому мне было интересно, может ли кто-нибудь рассказать мне о нем подробнее? И как его скачать? Ниже приведена ссылка на вебинар (начинается в 18:29, чтобы ознакомиться с частью, посвященной omniverse connector для моделирования установок и процессов). https://www.nvidia.com/en-us/on-demand/session/gtcfall21-a31571/   При создании своего сервера Nucleus, выходит ошибка  Error: [621cc28f-0997-4faf-beeb-cce360d80d81] Cannot prepare file for download, the server has returned HTTP403 for signed URL https://asset.launcher.omniverse.nvidia.com/nucleus-workstation/2023.2.3/windows-x86_64/package.zip?Expires=1717549893&Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9hc3NldC5sYXVuY2hlci5vbW5pdmVyc2UubnZpZGlhLmNvbS9udWNsZXVzLXdvcmtzdGF0aW9uLzIwMjMuMi4zL3dpbmRvd3MteDg2XzY0L3BhY2thZ2UuemlwIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzE3NTQ5ODkzfX19XX0_&Signature=I5XhGkOGlBif-bh82r~Iny5AWZ9fGxngRTZ0dSVlr4lsv-rbmDBlqHjCqtf~Z-TVrdIlLFCshOT4X7u-OekeVJiTnjJCWQLPuxR31Cf8npT3KUrgtSACPsv0XaA2IyW1XEmWTJbVbaPEYGdsqjhXnbvhGrOvLikeqfR0c767zIgY5nrPn2yrO3WTj-9DuWUlk5OnsKMQkvhYmc7xObOToQrmveOQltxHrgjZHoSP9RDtSXv07kwUJKnDFF56PkXLFTjb1c3l16nmJTAUkwcWiOLnAQGtsYvS7TTX35RgIsqq-rRx5bi51efYKfd75vodPKJe~ObTTMEsMyvwsaPfSQ__&Key-Pair-Id=K13PD0MHC2KFRP Так же видел возможность, когда на AnyLogic делали модель, через стороннее API подключали к Unreal Engine, может стоит попробовать реализовать эту задачу таким образом? Но информации о том, как это делали не нашёл. Вот статья об этом: https://stackoverflow.com/questions/73695807/co-simulation-anylogic-and-unreal-engine?newreg=aa00b11ef29c4eef952c09083c9bfb90  
    • Павлуха
      Публикатор конфигураций не пробовали?
    • malvi.dp
      Да, в эскизе можете эту линию жёстко зафиксировать нужными вам размерами. А при создании плоскости нужно выбрать ещё и вторую ссылку для позиционирования. Это может быть плоскость "спереди" с взаимосвязью перпендикулярности.  
    • noindex
      @malvi.dp спасибо, но я с SW пока "на вы" и этот пример для меня похож на урок по рисованию совы) Как я понял на перпендикулярной плоскости рисуется эскиз линия, потом Вставка, Справочная Геометрия, Плоскость и выбираем в качестве первой ссылки эту линию. У меня в этом случае плоскость пытается создаться, но не может, ругается на неверные входные данные...  https://s.mail.ru/BR5p/wbdSuVLzK
×
×
  • Создать...