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

SaveAs программно, Java rac


ANU_CHEEKI_BREEKI

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

В приложении "мой teamcenter" можно выделить, например, элемент детали, и в главном меню -> файл -> сохранить как -> ввести Id, имя, ревизию(с которой копировать). Это создаст копию элемента и копию выбранной ревизии, с прикрепленным материалом, формами и тп.

 

Подскажите, пожалуйста, как это можно реализовать программно на Java для толстого клиента?

Документации нормальный нет... Пытался смотреть в сторону TCComponent.copyRecursively,  TCComponentItemRevision.copyRecursively, но ничего не получается. 

TCComponent.copyRecursively создаёт только пустой элемент с одной формой внутри (без ревизий), а TCComponentItemRevision.copyRecursively вообще не работает. Выдает исключение ICCTException с сообщением "пустой список ошибок"...

 

Пытался так:

revRuleType = TcSession.getTypeComponent("RevisionRule");

bomType = TcSession.getTypeComponent("BOMWindow");

bom = bomType.create(revRuleType.getDefaultRule());

 

copyItem = item.copyRecursively(bom, "ICBaseLineTemppate", "name", "desc"); //но ревизий в элементе нет...

//Пробую сам добавить ревизии

ItemRev = item.getReferenceListProperty("revision_list")[0];

copyItemRev = itemRev.copyRecursively(bom,bom,"ICBaseLineTemppate", "name", "desc", "id" , "revId"); //тут исключение

copyItem.add("revision_list", copyItemRev);

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


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

Вам нужен просто SaveAs Item?

зачем вам BOM и правила ревизий тогда в вашем коде?

Потому что я нашел только методы copyRecursively... А они требуют передачи BOMWindow в качестве параметра. Документация javadoc для TC нормально не объясняет что да как. Вот я и искал тыкая пальцем в небо (перебирая методы классов TCComponent и TCComponentType).

 

Кроме того, в диалоговом окне "сохранить как" нужно выбрать ревизию на которой будет основана копия элемента... На первый взгляд всё сходится

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

Есть такой метод у ревизии

 

Цитата

saveAsItem


public TCComponentItem saveAsItem(java.lang.String itemID,
                                  java.lang.String revisionID)
                           throws TCException
Takes a copy of this ItemRevision component and creates a new Item.

 

Parameters:
itemID - the item ID
revisionID - the revision id
Returns:
A Tc Component representing the newly copied Item Revision.

 

А на Java SOA не хотите попробовать?

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

Есть такой метод у ревизии

 

 

А на Java SOA не хотите попробовать?

То что надо! Спасибо!)

Даже и не знаю как я его проглядел...

 

SOA предпочитаю не касаться в плагинах для ТС, пока нет необходимости. Не зря же RAC писали, намного удобнее всё.

А вот когда приходится писать что то отдельное от клиента ТС, тут уж не отвертеться.

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

SOA предпочитаю не касаться в плагинах для ТС, пока нет необходимости. Не зря же RAC писали, намного удобнее всё.

А вот когда приходится писать что то отдельное от клиента ТС, тут уж не отвертеться.

Как раз таки в RAC не мало функций на SOA, если захотите покопаться. Там смесь из core java API и SOA.

 

На SOA гораздо быстрей создавать массивы объектов

Цитата

Даже и не знаю как я его проглядел...

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

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

Как раз таки в RAC не мало функций на SOA, если захотите покопаться. Там смесь из core java API и SOA.

 

На SOA гораздо быстрей создавать массивы объектов

Спасибо, учту

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

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

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

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

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

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

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

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

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

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

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




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