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

Modify database attributes of the part


Igor79

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

NX4

Java API

Задача, есть manifistation из которого нужно программно заполнить атрибуты мастер модели, которые синхронизированы с ТСЕ.

В Java Docs есть следующее:

Interface DatabaseAttributeManager

This class is responsible for setting and getting NX Manager database attribute.

Вроде то, что нужно, но нужно откуда-то получить объект DatabaseAttributeManager. Пытаюсь его получить следующим образом:

Session theSession = (Session)SessionFactory.get("Session");

Part workPart = theSession.parts().work();

PdmPart pp=workPart.pdmpart();

Для pdmPart в Java Docs описан метод

newDatabaseAttributeManager()

Create an instance of a DatabaseAttributeManager class that will be used to modify database attributes of the part.

Но, несмотря на то, что метод описан он не доступен. :wallbash:

post-18088-1311068441_thumb.png

И только в одном месте, на немецком форуме (спасибо переводчику Google) нашел комментарий, что это в NX4 не работает (пруфлинк <noindex>http://ww3.cad.de/foren/ubb/Forum442/HTML/...3.shtml?siemens</noindex>)

Вопрос, ThomasZwatz прав на счет NX4? И если да, то есть ли еще какие-нибудь способы сохранить значение синхронизированного с ТСЕ атрибута для мастер-части? Или я что-то не так делаю?

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


Вообщем нашел такой способ... нужно найти мастер-модель (Part или Component), оставлю за кадром как, а затем...

Component comp;

comp.prototype().setAttribute("AttrName","AttrValue");

Может у кого есть лучше идеи?

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

Вообщем нашел такой способ... нужно найти мастер-модель (Part или Component), оставлю за кадром как, а затем...

Component comp;

comp.prototype().setAttribute("AttrName","AttrValue");

Может у кого есть лучше идеи?

Здравствуйте,

Я с pdmPart пока совершенно не разобрался. В такой ситуации, setAttribute() действительно видится разумным выходом, собственно, другими я и не владею :).

У меня еще есть чем-то похожий вопрос. Пишем мы атрибуты через setAttribute(), причем можно задавать и латинские, и кириллические имена. А вот когда читаю атрибут есть проблема: получить имена всех атрубутов получается, а потом запрашиваю их значение через getAttribute() или как-то похоже называется (NX-а сейчас нет рядом). Так вот, при попытке получить значение атрибута, имя которого задано кириллицей, выдает ошибку - "атрибут не найдет". Что за мистика? Сталкивались ли вы с подобным?

ps получение кодировки в текущей сессии выдает результат 1251. Возможность изменения кодировки в NX не предусмотрена, я прав?

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

Defender, к сожалению есть только NX4, а в NX4 в JAVA API pdmpart.newDatabaseAttributeManager отсутствует :(. Но то что, NX с кириллицей не дружит - это во многом проявляется. Например, в NX4, при попытке открыть файл, в пути которого содержатся кириллические символы, валится ошибка.

Defender, я так понимаю у вас есть NX6 или более новая версия. Может вы знаете, можно ли сохранить атрибуты, синхронизированные с TCE посредством мапинга из Manifistation с помощью DatabaseAttributeManager.setAttribute()? И если да, то такое ограничение как отсутствие прав на запись для мастер-модели как влияет на эту возможность, если синхронизированный атрибут в ТСЕ находится на мастер-форме и на мастер-форму права на запись есть?

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

Defender, к сожалению есть только NX4, а в NX4 в JAVA API pdmpart.newDatabaseAttributeManager отсутствует :(. Но то что, NX с кириллицей не дружит - это во многом проявляется. Например, в NX4, при попытке открыть файл, в пути которого содержатся кириллические символы, валится ошибка.

Defender, я так понимаю у вас есть NX6 или более новая версия. Может вы знаете, можно ли сохранить атрибуты, синхронизированные с TCE посредством мапинга из Manifistation с помощью DatabaseAttributeManager.setAttribute()? И если да, то такое ограничение как отсутствие прав на запись для мастер-модели как влияет на эту возможность, если синхронизированный атрибут в ТСЕ находится на мастер-форме и на мастер-форму права на запись есть?

Igor79, у меня как раз NX4.

Сохранить синхронизированные аттрибуты я ниразу не прбовал, пока только начинаю разбираться и вникать в эти дела. Если что-то вдруг узнаю - напишу.

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

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

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

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

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

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

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

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

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

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

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




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