Inventor и промышленное производство - Русский

Inventor и промышленное производство - Русский

Ответить
Сообщение 1 из 7 (149 просмотров)

iLogic и VBA

149 Просмотры, 6 Ответы
02-16-2017 09:16 AM

Приветствую! Возможно ли с помощью правила организовать связь между двумя документами (деталями)? Необходимо приравнять параметр из детали А параметру из детали Б избегая прямой ссылки между деталями

Сообщение 2 из 7 (135 просмотров)

Re: iLogic и VBA

02-16-2017 09:53 AM в ответ на: mikoyan985

Добрый день! 

 

Детали находятся в одной сборке?

 

Тогда 

 

Parameter("Имя_компонента_1:1", "Имя_параметра")=Parameter("Имя_компонента_2:1", "Имя_параметра_2")=

Mikhailov Andrey / Михайлов Андрей
Mechanical & Electronics engineer / Инженер-машиностроитель и приборостроитель
Blog (EN) | Blog (RU)
Facebook | Twitter | LinkedIn

Сообщение 3 из 7 (129 просмотров)

Re: iLogic и VBA

02-16-2017 10:16 AM в ответ на: MikhailovAndrey

Нет, документы не находятся в одной сборке. Нужно что-то вроде:

Parameter("Имя_документа", "Имя_параметра")=Parameter("Имя_документа", "Имя_параметра_2")
Насколько мне понятно, для обмена параметрами документы должны быть открыты? Если при открытии сборки, все входящие в неё компоненты открываются в "фоновом режиме", то возможно ли реализовать такой же подход для не связанных между собой деталей?

 

Сообщение 4 из 7 (112 просмотров)

Re: iLogic и VBA

02-16-2017 11:40 AM в ответ на: mikoyan985

Inventor сам откроет нужный файл, вставлять его никуда не нужно, равно как и открывать

 

Sub Link_Param
    Dim oFile As String = ThisDoc.Path & "\" & "Деталь1.ipt"
    Dim oDoc As Document = ThisApplication.Documents.Open(oFile, False)
    Dim oCD As ComponentDefinition = oDoc.ComponentDefinition
    oCD.Parameters.Item("Параметр_1") = Parameter.Param("Параметр_1")
    oDoc.Update
    oDoc.Save
    oDoc.Close
End Sub 

Mikhailov Andrey / Михайлов Андрей
Mechanical & Electronics engineer / Инженер-машиностроитель и приборостроитель
Blog (EN) | Blog (RU)
Facebook | Twitter | LinkedIn

Сообщение 5 из 7 (102 просмотров)

Re: iLogic и VBA

02-16-2017 01:01 PM в ответ на: MikhailovAndrey

Спасибо. Есть пара вопросов:

  1. Деталь_1 это сборка/деталь?
  2. В строке oCD.Parameters.Item("d1") = Parameter.Param ("A1") выдаёт ошибку :

Общая процедура Set "Item" для типа "Parameters" не найдена.  Используйте функцию CallByName с CallType.Let.

 

 Что я делаю не так? =)

Сообщение 6 из 7 (96 просмотров)

Re: iLogic и VBA

02-16-2017 01:14 PM в ответ на: mikoyan985

1. В этом коде это файл детали.

2. Файл, в который вы хотите забрать параметр, должен быть сохранен. Файл, из которого забираете параметры, должен лежать в той же самой папке.

3. Попробуйте переставить местами правые и левые части равенств.

 

 

Mikhailov Andrey / Михайлов Андрей
Mechanical & Electronics engineer / Инженер-машиностроитель и приборостроитель
Blog (EN) | Blog (RU)
Facebook | Twitter | LinkedIn

Highlighted
Сообщение 7 из 7 (56 просмотров)

Re: iLogic и VBA

[ Изменено ]
02-22-2017 07:37 PM в ответ на: MikhailovAndrey

Не помогло, к сожалению.

Параметр задан неверно. (Исключение из HRESULT: 0x80070057 (E_INVALIDARG))

Спросить Сообщество

Есть вопросы по продуктам Автодеска? Спроси Сообщество

Новое сообщение