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

Как установить свойство Дата выпуска у объекта ReleaseStatus ?


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

Добрый день.

 

Создаю объект TCComponentReleaseStatus, пытаюсь у него установить свойство  date_released и вылетает ошибка  com.teamcenter.rac.kernel.TCExceptionPartial   Имя входного свойства пусто.

Исходник:

Скрытый текст

                TCComponentReleaseStatusType componentReleaseStatusType = (TCComponentReleaseStatusType)session.getTypeComponent("ReleaseStatus");
                TCComponentReleaseStatus tcStatus = (TCComponentReleaseStatus)componentReleaseStatusType.create("Validation");
                

                java.util.Date date = new java.util.Date();
                tcStatus.setDateProperty("date_released", date);

 

                tcStatus.lock();
                tcStatus.save();
                tcStatus.unlock();

 

Пытался присваивать и до  и после сохранения объекта статуса, ошибка та же.

В чем может быть проблема?

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


UnPinned posts

Там выше в логе есть ошибка Attempted to modify date_released which has it's modifiable set to FALSE

А нужно поставить конкретную дату? Или текущую?

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

Да, у этого свойства isModifiable = false, а как тогда вообще его установить?

 

Можно установить и текущую дату.

 

 

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

Да, у этого свойства isModifiable = false, а как тогда вообще его установить?

 

Можно установить и текущую дату.

 

 

Мы делали через задачи, он автоматом проставлял текущую дату, я так понимаю это ограничение

Возможно решается через itk

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

А можете рассказать, что за задачи?

EPM 

там хендлер сам поставит статус на целевые объекты

 

public static void executeStatusOperation(List<TCComponent> comps, String processName) throws Exception
         {
           TCSession session = (TCSession)AIFUtility.getDefaultSession();
           
           int[] types = new int[comps.size()];
            for (int i = 0; i < types.length; i++) {
             types[i] = 1;
            }
           TCComponentTaskTemplateType t = (TCComponentTaskTemplateType)session.getTypeComponent("EPMAddStatusTaskTemplate");
          TCComponentTaskTemplate find = t.find(processName, 0);
          if (find == null) {
             return;
          }
          NewProcessOperation op = null;
           op = new NewProcessOperation(session, AIFUtility.getActiveDesktop(),     "Статус",  "Статус",  find, (TCComponent[])comps.toArray(new TCComponent[comps.size()]),  types);
            op.executeOperation();
       }

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

Спасибо, решил через сервисы:

                WorkflowService wfs = WorkflowService.getService(session);
                Workflow.ReleaseStatusInput input = new Workflow.ReleaseStatusInput();
                input.objects = new TCComponent[] {component};
                Workflow.ReleaseStatusOption oper = new Workflow.ReleaseStatusOption();
                oper.newReleaseStatusTypeName = "Validation";
                oper.operation = "Append";
                input.operations = new Workflow.ReleaseStatusOption[] {oper};
                SetReleaseStatusResponse resp = wfs.setReleaseStatus(new Workflow.ReleaseStatusInput[] {input});

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

@alexeytur а св-во даты что-то не видно, как установили или Вам его уже не нужно устанавливать?

Этот метод ставит текущую дату, мне это подходит.

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

Этот метод ставит текущую дату, мне это подходит.

Понятно, спасибо за ответ!

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • АйнурБатталов
      В файле .gpp найдите строку trace "all":5, замените 5 на 0 и сохраните. Это трассировка, нужна при редактировании поста, чтобы знать какая переменная какие данные содержит, также какая процедура выдала кадр с G кодом.
    • the Devil incarnate
      Всем привет. Нужно мне в сборке использовать одинаковые детали из разных материалов. Для этого сделал деталь, сделал семейство деталей, а вот материал там менять нельзя, как оказалось. Может кто-то подскажет, возможно ли это как-то провернуть? Если открыть каждую дочернюю деталь и изменить там материал, то временно всё работает. Но после каких-то манипуляций с главной деталью, материал сам заменяется.
    • Kelny
      Выберите в Solidworks режим при открытии ТОЛЬКО ПРОСМОТР (в последних версиях так понимаю можно выбрать режим ДЕТАЛИЗАЦИЯ без подгрузки моделей) и тоже велика вероятность, что так же покажет, но это только картинки - редактировать ни чего нельзя. В режиме ДЕТАЛИЗАЦИЯ всё такие какое-то редактирование доступно.
    • Девочка_конструктор
      Да, но тогда почему сетка не показывает дробление этого твердого  тела там, где оно есть? Не понимаю)) Раньше у меня была похожая проблема, но там (оказалось) была интерференция, я исправила сопряжения и всё стало отображаться гуд. Cut Plots - показывает, что все в порядке. Следовательно, мне стоит не обращать внимания на Mesh? 
    • Jesse
      это не проблема. Просто инструментом Mesh вы выбрали отображение сетки на поверхностях твёрдого тела. У меня в клапане аналогично показывает. Вам надо юзать опцию Cut Plots. Тогда можно лицезреть сеточку во всей её "толще"
    • Марсель
      Прошу прощения. А.С. Иванов Конструируем машины. Шаг за шагом.
    • djrandom
      Что интересно, говорят, что в eDrawings файл открывается....
    • MFS
      Собственно сабж - мне нужно пообщаться, кто работает, работал, имеет знакомых на ЛОМО - большая просьба написать тут или в личку. Заранее спасибо!
    • Девочка_конструктор
      Уважаемые форумчане! Будьте добры, подскажите пожалуйста, на что мне обратить внимание для устранение следующего бага? Настраиваю сетку в FS - глобальную сетку в ручном режиме, базовую сетку, затем локально задаю наиболее тепловыделяющие элементы, маленьких габаритов. Размеры ячеек получаются оптимальными, на каждую толщину твердого тела приходится примерно по 3-4 слоя сетки. При анализе результата - сетка выдает корпус как какой-то тонкостенный элемент. Где-то местами вообще образовываются пропасти, щели, сквозь которые видны поверхности, находящиеся с противоположной стороны.  На рисунке слева - сетка, которая у меня получается. На рисунке справа - сетка + твердое тело.  Пространство, которое должно быть заполнено, почему-то становится пустым. Я проверяла сопряжения между деталями, там все хорошо, интерференции нет. Если у кого-то была похожая проблема, опишите пожалуйста, как вы с ней справлялись.     Рисунок    
    • MFS
      Вот хороший блог: https://blog.bolt.io/category/teardown/. Еще довольно много в английском ютубе, ключевое слово "teardown" - можно найти много всякого интересного.
×
×
  • Создать...