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

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 пользователей

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




  • Сообщения

    • Jesse
      судя по всему, у вас разные детали построены в разных системах единиц
    • Guhl
      Вам бы схему смотреть на станок. Что понять, почему силовое не приходит
    • Jesse
      выкиньте призмы из расчёта.. считайте балочными конечными элементами, ограничив на концах лишь перемещения, как на картинке выше. Тогда всё будет збс..))
    • Jesse
      хз, запустил расчёт с вашими дефолтными настройками, всё посчитало. Но я бы упростил модель. Трубу можно точно исключить из расчётной модели (можно юзануть опцию "рассматривать как удалённую массу"). Всё остальное можно сделать оболочками, временно выкинув болты из модели. Также лучше использовать "Сетка на основе смешанной кривизны". Вот результаты. Напряжения небольшие, 09Г2С спокойно выдержит..))  
    • Killerchik
      Смысл в том, что подача должна указываться для фактического перемещения режущего клина. При одинаковой угловой скорости, в зависимости от радиуса траектории линейная скорость движения точки будет пропорциональна радиусу.
    • Killerchik
      Вероятно, я не совсем понятно написал. почта "имя@домен компании.com", хостер почты - Гугл.   Я, быть может, был бы готов из интереса рискнуть своей компанией - но точно не чужой.
    • Turgenev
      Не, греться будет, конкретно, потому что разъем будет прямо на стенке "стакана", а сам "стакан" будет нагреваться от нагревателя до 300 градусов. 3Д модель в процессе. погуглил, это разъемы типа таких: У них все круто, но нет фланца, чтобы хоть как-то закрепить разъем на стенке "стакана". По вашей наводке нагуглил еще разъемов, стоят дорого и очень большой габарит: Есть интересные варианты, но я не смог найти к ним ответную часть:   Это что-то типа такого: Мне не подходит по форм-фактору. Нагреватель должен быть в форме диска- плоский цилиндр диаметром 75мм и высотой около 10-20мм То есть запах идет от обгорания металла нагревателя? Вариант с заливкой нагреватель термостойким бетоном был, я даже его опробовал, но очень уж трудозатратно выходит. Любой металл будет иметь запах при нагреве, если его никуда не засовывать?
    • FROST_R6
      Здравствуй, ты можешь свой дискорд дать и показать?
    • Guhl
      У вас питание силовое на привод приходит? Е09 - отсутствие силового питания
    • Максим604
      В мануале написано что подача при Резьбофрезеровании считается по центру инструмента. Ок. Тогда почему когда пишешь в кам системе, то выдает подачу для движение  по траектории.      Перефразирую.  Нужно нарезать внутреннюю резьбу М20х2.  Фреза 3 зуба ∅12. Скорость резания 50. (Оборотов 1326)  Подача на зуб 0.05   Когда пишу в джи кодах, то выдаётся подача 198.9 мм/мин. С этой подачей станок и режет.    А если написать через шопмилл, то при тех же условиях( скорость резания и подача на зуб), он подачу пересчитывает для центра фрезы.  И выходит подача 80 мм/мин.   И выходит что при одних и тех же условиях меняется время обработки.    Когда пишешь через кам, то подача считается по траектории, а шопмилл считает для центра.    И я не понимаю как правильно считать. И почему именно так.  И в мануалах не нашёл ответа. 
×
×
  • Создать...