Итак, это немного сложнее, чем кажется, в основном потому, что DOORS не допускает непоследовательный выбор элементов без сценариев DXL.
Если бы я делал это, я бы сделал следующее:
Сначала установите для первого элемента каждой строки, которая будет удалена, что-то распознаваемое, например, «|| DELETED ||»
Далее я запустил бы следующий код:
// Use the current module
Module m = current
// Grab the first object
Object o = first ( m )
// Loop through the objects in the module - using a deletion in the loop, so no for o in m
while ( !null o ) {
// Check for our deletion flag
if ( o."Object Text" "" == "||DELETED||" ) {
// Grab the parent object - this will actually be the 'row object'
Object oP = parent ( o )
// Set 'o' to point to the object right before the deletion (to allow loop to continue)
o = previous ( parent ( o ) )
// Softdelete that row object
softDelete ( oP )
}
// Go to the next object (on the last object, will set equal to null)
o = next ( o )
}
Возможно, это не самый лучший способ сделать это - я всегда хотел попробовать непоследовательный выбор в графическом интерфейсе.Но он должен выполнить то, что вы хотите сделать.