Практический семинар Tekla Structures 2017

Tekla Open API. Доступ к переменным компонента

Ответить
vlad63
Сообщения: 3
Регистрация: 29 дек 2014, 01:37

Tekla Open API. Доступ к переменным компонента

Сообщение vlad63 » 29 дек 2014, 01:55

Добрый день.

Пытаюсь получить доступ к переменным пользовательского компонента (connection) через Connection.GetAttribute([имяАтрибута], ref [значениеАтрибута]). API возвращает значения только тех переменных, значения которых были либо явно заданы программно (SetAttribute), либо введены пользователем. Значения атрибутов (переменных), которые имеют значения по умолчанию (показаны в окне свойств компонента в квадратных скобках), или не изменялись пользователем (в том числе скрытые от пользователя), методы GetAttribute и GetAllReportProperties не возвращают.
Как можно "достучаться" до всех пользовательских переменных компонента?

И еще заметил одну особенность. После программной вставки компонента метод GetAllReportProperties видит одно количество атрибутов (в моем случае 10). Если пользователь открыл окно свойств компонента и нажал "Обновить/Modify", при этом даже не изменяя никакого из параметров, то GetAllReportProperties получает доступ к 30 переменным. В чем здесь особенность? Почему все 30 не видны с самого начала?

Заранее благодарен.

Аватара пользователя
Danila_ZLT
Сообщения: 603
Регистрация: 02 окт 2012, 12:14
Откуда: Златоуст
Контактная информация:

Re: Tekla Open API. Доступ к переменным компонента

Сообщение Danila_ZLT » 29 дек 2014, 04:34

Ну вот такая особенность хранения данных теклы. В базу записываются только измененные поля.
Автоматизируем хаос... Недорого...

vlad63
Сообщения: 3
Регистрация: 29 дек 2014, 01:37

Re: Tekla Open API. Доступ к переменным компонента

Сообщение vlad63 » 29 дек 2014, 10:33

Но где-то, ведь, хранятся значения полей по умолчанию? Тем более, что и незаписанные параметры влияют на итоговый результат компонента. Можно к ним получить доступ через API?

Аватара пользователя
100k
Сообщения: 172
Регистрация: 12 фев 2014, 11:04

Re: Tekla Open API. Доступ к переменным компонента

Сообщение 100k » 29 дек 2014, 10:56

vlad63 писал(а):Но где-то, ведь, хранятся значения полей по умолчанию? Тем более, что и незаписанные параметры влияют на итоговый результат компонента. Можно к ним получить доступ через API?
А вы программно нажмите Modyfy();

vlad63
Сообщения: 3
Регистрация: 29 дек 2014, 01:37

Re: Tekla Open API. Доступ к переменным компонента

Сообщение vlad63 » 29 дек 2014, 11:38

Странно, доступа к переменным нет даже после вызова Modify(); Мне кажется, там что-то другое. Например, скрытые переменные не видны и после нажания кнопки "Изменить" пользователем. У меня такое подоздрение, что переменные компонента хранятся отдельно от атрибутов узла.

Ответить
phpbb3 styles

Вернуться в «3D моделирование в Tekla Structures»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость