Как программно выделить все строки на форме в табличной части документа?

1. Petrosyanc 7 20.08.14 10:26 Сейчас в теме
Есть вообще какой-то вариант решения данной проблемы без написания внешних компонент?
Проблема в том, что требуется обработать все строки табличной части, а процедура в общем модуле обрабатывает только выделенные строки. Не хотелось бы трогать общий модуль, там и так изменений достаточно, чтобы при обновлении за голову хвататься. 2 день мучаюсь, а решения проблемы так и не нашел.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
8. Prikum 3 20.08.14 11:22 Сейчас в теме
(6) Petrosyanc, вот правильный код:
&НаКлиенте
Процедура Команда1(Команда)
	// Вставить содержимое обработчика.
	Для каждого стр из Объект.Фармация Цикл
        Элементы.Фармация.ВыделенныеСтроки.Добавить(стр.НомерСтроки);
    КонецЦикла;



КонецПроцедуры
Показать
Проверил у меня работает.
thueirby; nnnnnndfge; IvStark; shima; tdml; m_o; +6 1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Prikum 3 20.08.14 10:29 Сейчас в теме
(1) Petrosyanc,
ТаблицаФормы (FormTable)
ВыделенныеСтроки (SelectedRows)
Использование:

Только чтение.
Описание:

Тип: Массив.
Содержит массив идентификаторов выделенных строк.

осталось только в массив загнать нужные строки
3. Petrosyanc 7 20.08.14 10:32 Сейчас в теме
Только чтение массив, пробовал уже(
4. Prikum 3 20.08.14 10:34 Сейчас в теме
(3) Petrosyanc, еще можно попробовать через :
Свойства:

ОтборСтрок (RowFilter)

Описание:

Дополнительные свойства элемента управления ТаблицаФормы, применимые для табличных частей.
В качестве значений для свойств ТекущаяСтрока, ТекущийРодитель и элемента коллекции, содержащейся в свойстве ВыделенныеСтроки, используется идентификатор строки.
6. Petrosyanc 7 20.08.14 10:53 Сейчас в теме
(4) Prikum, Тоже не получается.
При отборе ключ надо устанавливать одним из реквизитов ТЧ. Устанавливаю отбор по всем строкам, а выделения все равно не происходит.
7. Prikum 3 20.08.14 11:13 Сейчас в теме
(6) Petrosyanc, не мое, но вдруг поможет :
Для каждого стр из Объект.ТЗЗаказы Цикл
        Элементы.ТЗЗаказы.ВыделенныеСтроки.Добавить(Элементы.ТЗЗаказы.ДанныеСтроки(стр).ПолучитьИдентификатор());
    КонецЦикла;
user798355; +1 Ответить
8. Prikum 3 20.08.14 11:22 Сейчас в теме
(6) Petrosyanc, вот правильный код:
&НаКлиенте
Процедура Команда1(Команда)
	// Вставить содержимое обработчика.
	Для каждого стр из Объект.Фармация Цикл
        Элементы.Фармация.ВыделенныеСтроки.Добавить(стр.НомерСтроки);
    КонецЦикла;



КонецПроцедуры
Показать
Проверил у меня работает.
thueirby; nnnnnndfge; IvStark; shima; tdml; m_o; +6 1 Ответить
15. Aleksandr_prof 192 08.09.22 14:28 Сейчас в теме
(8) А ещё бы перед этим циклом добавить строку:
Элементы.Фармация.ВыделенныеСтроки.Очистить()

Без её добавления можно заметить, как массив пополняется дублирующими номерами строк. Не критично, но что-то подсказывает, что это не правильно.
16. vlh_usk 06.02.24 16:24 Сейчас в теме
(8) Номер строки и идентификатор строки - вещи суть разные. в выделенных строках должны быть именно идентификаторы.
Поэтому правильный код такой:
Элементы.Фармация.ВыделенныеСтроки.Добавить(стр.ПолучитьИдентификатор());
5. Petrosyanc 7 20.08.14 10:36 Сейчас в теме
9. Petrosyanc 7 20.08.14 11:46 Сейчас в теме
Вот Спасибо ))
Уррааа заработало ))) 2 дня ведь мучался ... а надо было в массив передать не строку, а номер строки)
10. Petrosyanc 7 20.08.14 20:07 Сейчас в теме
    
    Для каждого стр из Объект.Фармация Цикл
        Элементы.Фармация.ВыделенныеСтроки.Добавить(стр.НомерСтроки-1);
    КонецЦикла;


Вот так будет вообще замечательно)
Raybek; IvStark; cheiser1982; +3 Ответить
11. Prikum 3 20.08.14 21:02 Сейчас в теме
(10) Petrosyanc, ну я как бы не стал разбираться, почему если текущая строка не первая в табличной части, то тогда она не выделяется. Каюсь, было лень, да и времени не было.
12. user779117 12.12.18 16:02 Сейчас в теме
Предложенные выше варианты добавят в выделение все строки таб части. И все бы хорошо, но люди на форме часто пользуются "отборами".. кто-то из пользователей может удивиться, отобрав из 100 строк фильтрами 5, а обработаются все 100
andogskiy; +1 Ответить
13. user1080864 24.05.19 11:12 Сейчас в теме
Для каждого стр из Объект.Фармация Цикл
    Элементы.Фармация.ВыделенныеСтроки.Добавить(стр.ПолучитьИдентификатор());
КонецЦикла;


Этот массив должен содержать идентификаторы - если пользователь может несколько раз перезаполнить табличную часть - тогда они могут не совпадать с номером строки.
MoshkovEV; DoReMu; +2 Ответить
14. Shishkibam 4 26.09.19 18:06 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот