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

поиск в BOMWindow


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

Товарищи выручайте!
 

Есть ли возможность поиска в BOMWindow необходимого компонента (например выделенный компонент на рисунке)? Перебирать от корневого элемента не вариант, т.к. имеется массив объектов, для каждого из которых необходимо запомнить три уровня структуры выше него.

Или может есть какой другой способ получить структуру для необходимого компонента, как в менеджере структуры?

post-46624-0-55153000-1425638880.jpg

пока делаю так, сконфигурировал по заданому вариантному правилу и правилу модификации, и застрял на поиске элемента...

                      TCComponentItemRevision top_rev = (TCComponentItemRevision) Session.getClassService().findByClass("ItemRevision", "object_name", item_name)[0];
                      TCComponentRevisionRule rev_rule = (TCComponentRevisionRule) Session.getClassService().findByClass("RevisionRule", "object_name", revRule)[0];
                      TCComponentBOMWindowType bom_view_type = (TCComponentBOMWindowType) Session.getTypeService().getTypeComponent("BOMWindow");
                      TCComponentBOMWindow bom_window = bom_view_type.create(rev_rule);
                      TCComponentBOMLine topline = bom_window.setWindowTopLine(null, top_rev, null, null);
                      
                      TCComponentVariantRule var_rule_org = bom_window.askVariantRule();
                      TCComponentVariantRule var_rule = var_rule_org.copy();  
                      TCComponentVariantRuleType var_rule_type = (TCComponentVariantRuleType) var_rule.getTypeComponent();
                      TCComponent vr_list[] = var_rule_type.listVRules(top_rev);

                      if(vr_list !=null && vr_list.length > 0)
                      {
                          for (int i=0; i<vr_list.length-1; i++)
                          {[attachment=77477:example.jpg]
                              if(vr_list[i].toString().startsWith(var_rule_name))
                              {
                                  variant_rule = vr_list[i];
                              }
                          }
                      }
                      var_rule.applyFullVRule(variant_rule);
                      var_rule.apply(bom_window);
Ссылка на сообщение
Поделиться на других сайтах


если есть интерактивный поиск в МС,то и программно скорее всего так же найдете

Это в частности классический поиск (по атрибутам) применяемый к загруженной и сконфигурированной структуре
Ссылка на сообщение
Поделиться на других сайтах
Ссылка на сообщение
Поделиться на других сайтах

Спасибо, но не очень помогло =/ пришлось написать рекурсию, пока не найду более оптимальный подход...

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

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

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

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

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

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

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

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

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

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

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




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