Dxl просмотр перемещаемых объектов - PullRequest
0 голосов
/ 07 августа 2020

Можете ли вы переместить весь объект из одного представления в другое (не удаляя его в одном представлении, загрузить другое представление, создать объект в новом представлении и заполнить его? Если да, можете ли вы сказать мне, как или указать мне справа Направление? А также, как я могу получить информацию из последнего столбца без необходимости повторять все столбцы. Спасибо.

Ответы [ 2 ]

0 голосов
/ 11 августа 2020

Что касается комментария об использовании второго скрипта в атрибуте DXL: атрибуты DXL не работают таким образом.

  1. в атрибуте DXL у вас никогда не будет al oop над всеми объектами, вы относятся только к одному объекту, и вы вычисляете значение для этого атрибута объекта.
  2. принимать и отклонять работу над представлениями, атрибуты DXL имеют содержимое, это разные концепции.

Если если вы хотите использовать атрибуты DXL, у вас может быть один из логических типов и сценарий, например

bool showMe=false
// in DXL Attributes, obj contains the currently evaluated object (not the "current" object!)
if intOf(obj."Absolute Number""") == 10 then showMe=true
if intOf(obj."Absolute Number""") > 20 then showMe=true
// the name of the DXL Attribute is stored automatically in the variable attrDXLName
obj.attrDXLName = showMe

, а затем у вас есть представление с фильтром, которое показывает только те объекты, для которых значение атрибута равно «true»

0 голосов
/ 07 августа 2020

Вы должны быть немного точнее в своих формулировках, непонятно, чего вы хотите. В DOORS модуль содержит объекты. Структура модуля определяет, какие атрибуты имеет каждый объект. Взгляды - это, в общем, взгляд на эти объекты. Представление определяет, какие атрибуты объекта отображаются, это столбцы, отображаемые в представлении. Кроме того, представление может иметь фильтр, который определяет, какие объекты модуля отображаются.

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

Ваш второй вопрос о DXL, верно? Нет, я не знаю функции, которая сообщает вам количество столбцов в представлении, чтобы вы могли использовать функцию column (index) для получения последнего столбца, но небольшого l oop

Column cLast
for cLast in m do {}
// now cLast contains the last column of the current view

не должно повредить. Но вы уверены, что действительно хотите работать со столбцами? Обычно скрипты имеют дело с атрибутами объектов и лишь в редких случаях со столбцами (исключение составляют столбцы макета dxl и, конечно, скрипты, управляющие представлениями).

Обновление: чтобы добавить к моему комментарию о фильтрах в представлениях, на самом деле это способ добавления отдельных объектов в представление, то есть метод принятия / отклонения. У вас может быть сценарий типа

Object o
for o in entire current Module do {
    reject o
    if intOf(o."Absolute Number""") == 10 then accept o 
    if intOf(o."Absolute Number""") > 20 then accept o
    if o."Requrement type""" == "Functional" then accept o
}
filtering on

, но это дополнение будет очень недолговечным: как только вы измените представление, он забывает о такой фильтрации, даже если вы сохраните представление. Итак, опять же, это не ход.

...