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

Создание элемента типа деталь программно(java)


aleks1113

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

Программирование под Teamcenter начал изучать недавно. Нашел пример как создать TCComponentItem, с ним вроде все понятно. Вопрос: как создать деталь, чтобы допустим пользователь вводил имя, id, ревизию?

 

public static TCComponentItem createItem(String id, String rev, String type, String name) throws TCException {
     TCComponentItem search = searchItem(id);
     if (search == null) {
       TCComponentItemType typeItem = (TCComponentItemType)session.getTypeComponent("Item");
       search = typeItem.create(id, rev, type, name, "", new TCComponent());
       return search;
     }
     return null;     
   }
   
   public static TCComponentItem searchItem(String id) throws TCException
   {
     TCComponentItemType type = (TCComponentItemType)session.getTypeComponent("Item");
     TCComponentItem item = type.find(id);
     return item;
   }
   
   public static void addToNewStuff(TCComponentItem object) {
     try {
       TCComponentFolder newStuffFolder = session.getUser().getNewStuffFolder();
       addItemToFolder(object, newStuffFolder);
     } catch (TCException e) {
       e.printStackTrace();
     }
   }
   
   public static void addItemToFolder(TCComponentItem createItem, TCComponentFolder folder) {
     if (folder == null) {
       return;
     }
     try {
       folder.add("contents", createItem);
     }
     catch (Exception localException) {}
   }
Ссылка на сообщение
Поделиться на других сайтах


сделайте свою форму(диалог) с нужными полями и передавайте параметры в функцию создания Item

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

А тип какой указывать?

 

тип Item-a? Да какой хотите. Какой создан для олицетворения детали такой и используйте

Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...
13 часа назад, aleks1113 сказал:

А как созданный item добавить допустим в папку новое(NewStuff)?

 

component.add("contents",newstuff_tag);

Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...
В 01.12.2017 в 14:19, lexx174 сказал:

сделайте свою форму(диалог) с нужными полями и передавайте параметры в функцию создания Item

в этом случае лицензия для создания ITEM использует тот кто запустит форму кастомную?

 возможно сделать так, форму запускал один пользователь (у которого нет этой лицензии), а    функция создания Item запускалась от имени пользователя у кого это лицензия есть

Ссылка на сообщение
Поделиться на других сайтах
15 часов назад, nbg сказал:

в этом случае лицензия для создания ITEM использует тот кто запустит форму кастомную?

 возможно сделать так, форму запускал один пользователь (у которого нет этой лицензии), а    функция создания Item запускалась от имени пользователя у кого это лицензия есть

При чем тут лицензия и формы?это никак не связано. Просто вместо стандартного визарда создания айтема вы используете свою форму.

Откуда вы взяли про лицензии на создание айтема?бред

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

При чем тут лицензия и формы?это никак не связано. Просто вместо стандартного визарда создания айтема вы используете свою форму.

Откуда вы взяли про лицензии на создание айтема?бред

Разве для создания Item не нужна лицензия автора? в моем случае речь идет не об Item, а о другом объекте для создания которого требуется лицензия.

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

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

Разве для создания Item не нужна лицензия автора? в моем случае речь идет не об Item, а о другом объекте для создания которого требуется лицензия.

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

Так вы сразу и обрисуйте нюансы,это уже другая картина если вам нужен не стандартный айтем и его производные

Авторская лицензия teamcenter_author - это основная лицензия которая и так должна быть у пользователя.

 

Если вы создаете не классические айтемы, а например объекты модуля change_management  - то там да,уже используется другой тип лицензии.

Думаю такое не получится то что вы хотите.

Единственно что - попробовать запускать внешнюю ITK утилиту(если нужно пакетное создание),а это вряд ли удобно будет

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

Так вы сразу и обрисуйте нюансы,это уже другая картина если вам нужен не стандартный айтем и его производные

Авторская лицензия teamcenter_author - это основная лицензия которая и так должна быть у пользователя.

 

Если вы создаете не классические айтемы, а например объекты модуля change_management  - то там да,уже используется другой тип лицензии.

Думаю такое не получится то что вы хотите.

Единственно что - попробовать запускать внешнюю ITK утилиту(если нужно пакетное создание),а это вряд ли удобно будет

внешнюю ITK , т.е. утилиту которая запускается вне тимцентра? напрямую с базой работать?

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

внешнюю ITK , т.е. утилиту которая запускается вне тимцентра? напрямую с базой работать?

верно. внешняя утилита - это уже отдельная сессия тимцентра будет.

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

верно. внешняя утилита - это уже отдельная сессия тимцентра будет.

а данные в таком случае заносятся напрямую в базу? просто структура базы у тимцентра такая, что напрямую туда писать рискованно. или я не верно понял вас?

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

а данные в таком случае заносятся напрямую в базу? просто структура базы у тимцентра такая, что напрямую туда писать рискованно. или я не верно понял вас?

насколько я понимаю у вас очень слабое понимание архитектуры этой системы.

 

Данные естественно занесутся в базу,куда им деваться

 

с базой тимцентра на уровне СУБД (если вы имеете ввиду писать в таблицы БД) - никто не работает, тимцентр построен так чтобы туда вообще не лазить,вы работаете на более верхнем уровне абстракции, непосредственно все манипуляции с таблицами БД делает сама система.

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

 

 

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

насколько я понимаю у вас очень слабое понимание архитектуры этой системы.

 

с базой тимцентра на уровне СУБД (если вы имеете ввиду пиать в таблицы БД) - никто не работает, тимцентр построен так чтобы туда вообще не лазить,вы работаете на более верхнем уровне абстракции, непосредственно все манипуляции в таблицами БД делает сама система.

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

то что манипуляции с базой делает система я в курсе, не очень понял про концепцию про отдельную сессию тимцентра, если будет запускаться отдельная утилита вне тимцентра

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

то что манипуляции с базой делает система я в курсе, не очень понял про концепцию про отдельную сессию тимцентра, если будет запускаться отдельная утилита вне тимцентра

тут все просто, это как бы вызов внешнего приложения, которое соединяется с базой TC, создается сессия под нужным пользователем и все.

просто это немного извращенный вариант, для случая если пользователю нужно создать 1-2 определенных объекта.

Сама утилита ITK запускается обычно через батник, где настроены переменные доступа к базе,и время на логин и взятие лицензии проходит определенное

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

тут все просто, это как бы вызов внешнего приложения, которое соединяется с базой TC, создается сессия под нужным пользователем и все.

просто это немного извращенный вариант, для случая если пользователю нужно создать 1-2 определенных объекта.

Сама утилита ITK запускается обычно через батник, где настроены переменные доступа к базе,и время на логин и взятие лицензии проходит определенное

спасибо! тут еще хотят иметь возможность редактирования ))) сразу сказать нельзя так!

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

спасибо! тут еще хотят иметь возможность редактирования ))) сразу сказать нельзя так!

вы программируете на Java под TC я так понимаю?

что именно редактировать хотят?

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

вы программируете на Java под TC я так понимаю?

что именно редактировать хотят?

да Java.

хотят редактировать свойства этого объекта, который создадут таким образом

 

т.е. хотят редактирование из внешней утилиты, но при этом изменению в тимцентре происходили от имени другого пользователя, у которого есть лицензия

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

да Java.

хотят редактировать свойства этого объекта, который создадут таким образом

 

т.е. хотят редактирование из внешней утилиты, но при этом изменению в тимцентре происходили от имени другого пользователя, у которого есть лицензия

есть еще механизм user services - вызов из rich client функций зарегистрированных на сервере в dll. Это более удобный вариант,т .к никаких сторонних утилит и ожиданий нет. Единственно что нужно посмотреть возможно ли создать новую сессию ITK функциями

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • paull3
      да, стойка CD, чуть позже прикреплю фото
    • Nastyrnuy
      Где то тут путаница идет... не совпадние (жесткий диск (он жесткий или элетронный диск?)), есл жесткий диск то флоппик  точно 1.44 и эмулятор можно на 1ю44, Но если вы используете эмулятор на 720 то это как правило серия станка не CF а CD....и.т.д поэтому фотки давай и станка серию и тип, и плат, и ошибку на экране где Биос кажет и флорри и диск, а то мы все тут будем по разному понимать..!
    • Viktor2004
      Вы же лучше меня знаете что запрсто записать на машину не только чужой, но и свой OPRMINF не получится
    • gudstartup
      полная чушь если ид меняется ошибка 5523 гарантирована иначе чужо ой oprminf запросто можно было бы записать на любую машину
    • paull3
      Всем добрый день! докладываю - 1) батарейка живая и после отключения от сети на сутки показала 3,63в, 2) записал файлы из архива на юсб флешку размеролм 720кБ - вставил в эмулятор, затем включил станок- станок никак не отреагировал, флешка вроде как считалась( индикация светодиодом на ней) 3) сделал загрузочную дискету дос, удалил файлы те что там записались и записал из архива - вставил в дисковод, включил станок- реакции не последовало, ...индикации и характерных звуков считывания не было, возможно неисправен дисковод, хотя когда переключал его на эмулятор он был исправен....   Добрый день, посмотрю, напишу  
    • Nastyrnuy
      Не, загрузочная не помешает! Анатолий правильно говорит, у станков серии CF FCки разные могутьбыть! И причем это даже не напрямую от серии CF Зависит, а от конфиги трех плат которые составляют комп оператора. так Паюль фоткай морды этих плат тоже( они там могут быть из 3 плат самая правая PEC(o4/05/07) или 1(все в одном AMS-75(уже проц Пень 75)! )! Но, по любому станок уже в годах и винты не вечные, так что FC может и не смочь помочь с запуском станка(если винт сыпется..). А кстати JP soft у Вас запускается , или на отдельном компе проги рабочие пишете!!
    • Viktor2004
      Не обращал внимание, но наверняка менялся. А когда я платы FROM/SRAM местами на двух станках менял, для них вообще все ID должны поменяться. Ни разу сертификат не слетал
    • gudstartup
      @Viktor2004 вы же знаете как... а cncid менялось при  этом 
    • Viktor2004
      Как попробовать? Платы поменять? Так уже менял много раз.
    • gudstartup
×
×
  • Создать...