Tab.MultiSelection
| MultiSelection (Таблица выделения) | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||
Получить таблицу, описывающую все регионы, выделенные пользователем, для визуальных таблиц с возможностью выделения регионов (опция isMultiSelectAllowed в редакторе форм или объекте экранного элемента). Таблица не будет содержать ни одной строки, если таблица не привязана к визуальному объекту, либо в объекте не выбрана ни одна строка. Таблица имеет два столбца с именами BEGLINE и ENDLINE, каждая строка представляет собой отдельный регион выделения, регионы могут пересекаться, проверка уникальности строк в регионах не ведется.
Синтаксис
Tab.MultiSelection:<Таблица с выбранными регионами (TAB)>
Возвращаемое значение
Возвращает таблицу, перечисляющую все текущие выделенные регионы таблицы.
Примеры
//Фрагмент, подсчитывающий сумму всех столбиков "масса" в выделенных строках.
//Фрагмент также показывает, как можно обойти проблему пересекающихся регионов.
If Таб.SelectedLine=0 Then
Exit;
EndIf;
aTab:=Таб.MultiSelection;
Чл:=0;
aList:=List.Create();
aTab.Select();
While aTab.Next() Do
aBeg:=aTab.BegLine;
aEnd:=aTab.EndLine;
For i:=aBeg To aEnd Do
If aList.Find(i)=0 Then
aList.Add(i);
If i<=Таб.Size() Then
Чл:=Чл+Таб.Get(i,"Масса");
EndIf;
EndIf;
EndDo;
EndDo;
Message("Результат: "+Чл);