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

Проблема с api pack and go


Sturmann

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

Здравствуйте коллеги. 

Есть проблема в api для команды копировать проект (  sw2015) 

Всё работает кроме одного момента : не копирует сборки. Детали и чертежи в все ок, а вот сборки.... 

При исполнении метода он возвращается ошибку копирования именно на сборки. Кто сталкивался? 

 

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


UnPinned posts
4 часа назад, Sturmann сказал:

возвращается ошибку

какую из swPackAndGoSaveStatus_e ?

По сути, API это же вызов тех же функций что и обычным методом мышкой. Через explorer всё работает как надо?

Если попробовать код из хелпа и для VBA на той же сборке с подсборками - тоже ошибка будет?

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

какую из swPackAndGoSaveStatus_e ?

По сути, API это же вызов тех же функций что и обычным методом мышкой. Через explorer всё работает как надо?

Если попробовать код из хелпа и для VBA на той же сборке с подсборками - тоже ошибка будет?

Номер 4. 

С кодом из справки эта ошибка т происходит. 

Я вот думаю что там что то не дописали. Либо как обычно строки местами перепутали. 

Через файл- копировать проект всё работает. Сборки копирует. Даже можно целое изделие скопировать с чертежами. И всё будет как надо. Но вот программно - затык. 

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

Номер 4. 

С кодом из справки эта ошибка т происходит. 

Условия для выполнения выполнены:

Цитата

' Предварительные условия:
' 1. Указанная сборка существует.
' 2. Папка c:\temp существует.
' 3. Откройте Immediate window.
' 4. Запустите макрос.

Solidworks установлен в папку по умолчанию? А то ведь может не оказаться файла сборки который прописан в справке лежит в ином месте:

Цитата

' Open assembly
openFile = "C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\samples\tutorial\advdrawings\handle.sldasm"

В конце концом можно понатыкать точек остановки макроса в некоторых местах, для проверки что там в переменных/функциях в точке остановки выполнения макроса, что бы разобраться где идёт сбой.

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

Условия для выполнения выполнены:

Solidworks установлен в папку по умолчанию? А то ведь может не оказаться файла сборки который прописан в справке лежит в ином месте:

В конце концом можно понатыкать точек остановки макроса в некоторых местах, для проверки что там в переменных/функциях в точке остановки выполнения макроса, что бы разобраться где идёт сбой.

Солид в парке по умолчанию. 

Файл сборки - активный документ

Да вот с точками беда- строка с самим методом возвращает 4.

https://help.solidworks.com/2017/english/api/swconst/SolidWorks.Interop.swconst~SolidWorks.Interop.swconst.swPackAndGoSaveStatus_e.html

 

Ошибка 4

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

Да вот с точками беда- строка с самим методом возвращает 4.

Так функция в конце лишь отрабатывает, что было настроено выше, так что возможно стоит проверить переменную status для функций/процедур выше?

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

Здравствуйте коллеги. 

Есть проблема в api для команды копировать проект (  sw2015) 

Всё работает кроме одного момента : не копирует сборки. Детали и чертежи в все ок, а вот сборки.... 

При исполнении метода он возвращается ошибку копирования именно на сборки. Кто сталкивался? 

 

Я сталкивался с похожей проблемой в SW2011. При копировании сборочного чертежа или сборки копировалось всё, кроме самого сборочного чертежа или сборки. Возвращаемый функцией  SavePackAndGo массив содержал swPackAndGoSaveStatus_SaveError именно на сборочном чертеже или сборке. Не знаю как эта функция отрабатывала в других SW, но после SW2018 все было нормально.

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

Я сталкивался с похожей проблемой в SW2011. При копировании сборочного чертежа или сборки копировалось всё, кроме самого сборочного чертежа или сборки. Возвращаемый функцией  SavePackAndGo массив содержал swPackAndGoSaveStatus_SaveError именно на сборочном чертеже или сборке. Не знаю как эта функция отрабатывала в других SW, но после SW2018 все было нормально.

 

ну вот в 15 таже песня

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

Ну вот взял пример из хелпа. Массив статусов скопированных сборок. Ячейка  (0) имеет значение 4 что означает ошибка при копировании. Это сборка верхнего уровня

2022-01-30_11-01-32 (2).png

А вот список компонентов (файлов) в папке.Тут скопировалась только одна сборка- сборка на уровень ниже той которую открывали.

2022-01-30_11-02-01.png

 

 

В это сборке есть подсборка. 

Она скопировалась, с ней все ок.

 2022-01-30_11-02-59.png

 

 

 

 

 

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

Сколько версий SW стоит на компе?

Одна

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

Ну вот взял пример из хелпа. Массив статусов скопированных сборок. Ячейка  (0) имеет значение 4 что означает ошибка при копировании. Это сборка верхнего уровня

А пример из справки без подмены сборки работает?

Как вариант попрбовать сохранить без добавки (без префиксов/суфиксов), обновить сборку перед сохранением, проверить что там с сообщениями для которых сделан выбор БОЛЬШЕ НЕ СПРАШИВАТЬ и возмозможно отобразить их все. Ещё попробовал бы сохранить в архив ZIP.

 

Как костыль вероятно можно попрбовать копировать файл сборки через SaveAs, но там скорее всего будут старые ссылки и нужно будет переподключать на новые модели с префиксом/суфиксом.

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

А пример из справки без подмены сборки работает?

Как вариант попрбовать сохранить без добавки (без префиксов/суфиксов), обновить сборку перед сохранением, проверить что там с сообщениями для которых сделан выбор БОЛЬШЕ НЕ СПРАШИВАТЬ и возмозможно отобразить их все. Ещё попробовал бы сохранить в архив ZIP.

 

Как костыль вероятно можно попрбовать копировать файл сборки через SaveAs, но там скорее всего будут старые ссылки и нужно будет переподключать на новые модели с префиксом/суфиксом.

Пример из справки работает.Только там нет вложенных сборок.

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

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

Пример из справки работает.Только там нет вложенных сборок.

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

Когда возникли проблемы с IPackAndGo в SW2011, я использовал SolidWorks Document Manager API. Функционал такой же, даже больше. Недостаток - должны быть закрыты документы в SolidWorks-e, но меня это устраивало и нужен ещё LicKey.

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

Когда возникли проблемы с IPackAndGo в SW2011, я использовал SolidWorks Document Manager API. Функционал такой же, даже больше. Недостаток - должны быть закрыты документы в SolidWorks-e, но меня это устраивало и нужен ещё LicKey.

про SolidWorks Document Manager API слышал.

если я его буду запускать на другом компьютере без лицензии он будет работать?

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

про SolidWorks Document Manager API слышал.

если я его буду запускать на другом компьютере без лицензии он будет работать?

После SW2011 не пробовал.  Как сейчас, не знаю.

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

без лицензии

Что нужно, чтобы программа работала с файлами SW без самого SW:

- лицензионный текстовый ключ, который надо подпихивать при создании SwDMApplication. Ключ запрашивается отдельно через американскую техподдержку, даже если у вас стоит лицензионный SW. Ключ либо зашивать с обфускацией в программу, либо хранить отдельно в зашифрованном виде. Чтоб не спёрли. Хотя, мало кому такое может понадобиться, но согласно лицензии вы в ответе за сохранность ключа.

- на целевом компьютере установленной библиотеки SwDocumentMgr.dll через regsvr32 (в моём случае было очень много ошибок, поэтому ставил аж сетап докменеджера с диска, но может сработать и простая регистрация, главное чтоб все зависимости были)

2 часа назад, Sturmann сказал:

Пример из справки работает.Только там нет вложенных сборок.

А что мешает подпихнуть туда свою сборку с подсборками то?

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

 

А что мешает подпихнуть туда свою сборку с подсборками то?

Ну она для чтения как бы) 

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

Ну она для чтения как бы) 

Ась?

 

Вот код https://help.solidworks.com/2019/english/api/sldworksapi/pack_and_go_an_assembly_example_vb.htm

Открываете свою сборку с подсборками и с чертежами. Создаёте папку "temp" в корне диска С

Заменяете код этим

' Open assembly
'openFile = "C:\Users\Public\Documents\SOLIDWORKS\SOLIDWORKS 2018\samples\tutorial\advdrawings\handle.sldasm"
'Set swModelDoc = swApp.OpenDoc6(openFile, swDocASSEMBLY, swOpenDocOptions_Silent, "", errors, warnings)
Set swModelDoc = swApp.ActiveDoc
Set swModelDocExt = swModelDoc.Extension

Всё должно сработать.

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

Ась?

 

Вот код https://help.solidworks.com/2019/english/api/sldworksapi/pack_and_go_an_assembly_example_vb.htm

Открываете свою сборку с подсборками и с чертежами. Создаёте папку "temp" в корне диска С

Заменяете код этим

' Open assembly
'openFile = "C:\Users\Public\Documents\SOLIDWORKS\SOLIDWORKS 2018\samples\tutorial\advdrawings\handle.sldasm"
'Set swModelDoc = swApp.OpenDoc6(openFile, swDocASSEMBLY, swOpenDocOptions_Silent, "", errors, warnings)
Set swModelDoc = swApp.ActiveDoc
Set swModelDocExt = swModelDoc.Extension

Всё должно сработать.

Ок. Спасибо. Попробую. 

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Барс
      Кстати, при добавлении в расчёт G меняется результат. Это как-то можно понять и простить?
    • maxx2000
      Насколько я понимаю font.ndx подхватывается только из системного каталога. Можно ли сделать чтобы CREO обращался к нему в пользовательском каталоге и как?  
    • Shura762
      Что происходит? кто может дать ответ. Открываем книгу Нарышкин Подшипники, смотрим упорные там указан ГОСТ 6874-75, ищем в сети , тоже есть а вот на оф сайте стандарта его нет, В ТФ тоже есть модели по этому госту, Сейчас действует гост 7872-89. Что не так с ГОСТ 6874, типа ой мы ошиблись и забыли?
    • Ганс В
      Доброе времени суток знатоки NX12CAM У меня такой вопрос. Мне нужен немного увеличить стрелку при построения размеров,  на фоне когда ставиться размер размер стрелки мелкий.  И посоветуйте пожалуйста ведоуроки по NX12  Спасибо заранее 
    • Bot
      Оригинал: Roopinder Tara. Watch this space: Here come manufacturable generative designs Такие кронштейны демонстрируют облегчение конструкции с помощью топологии. У этого кронштейна острые края и гладкие поверхности, это означает, что деталь еще можно подвергнуть машинной обработке, чтобы сделать ее максимально легкой Мы уже знакомы с Майклом Богомольным — мы встречались с ним на его предыдущем предприятии ParaMatters, которое было продано Carbon, компании по производству 3D-принтеров, в августе 2022 года. После этого он собрал свою команду ParaMatters (шестеро из них имеют докторскую степень) и получил инвестиции в размере 2,5 млн долларов для запуска InfinitForm. Эта компания вполне может создать первое генеративное программное обеспечение, которое проектирует подходящие для использования и производства детали. Крупные поставщики САПР могут заявить, что их программное обеспечение для генеративного проектирования имеет возможности для создания [...] View the full article
    • lux59
      построить дугами барашку я пробовал, не то слегка, он в списке выдаст количество сегментов, да норм сделаю покажу, что вышло, правда пришлось делать сборкой не единой деталью, в общем я понял как это работает, Спасибо за помощь!
    • lem_on
      Ага, особенно некоторых бестолочей со своим пониманием реальности.  По типу, я скачал программу, я так вижу, я пишу книгу. 
    • malvi.dp
      Так в чем проблема создать кривую и протянуть профиль? Единственная трудность это кривую сделать из дуг и отрезков, а не сплайном. Если же не использовать инструментарий сварных конструкций, то можно и сплайн использовать в качестве направляющей.  
    • Alexey0336
      Добрый день. Как то фигурировал тут вопрос с точкой в названии файла. У меня проблема, не могу захватить модель, пишет, что с этим символом нельзя. Обойти никак нельзя получается?
    • malvi.dp
      У вас там скорее всего скрыты размеры. Перетяните их дальше от штриховки, чтоб не пересекали.
×
×
  • Создать...