Имя: Пароль:
1C
1С v8
Форма списка справочника, цикл по отображаемым строкам, значение флажка
,
0 бегинер
 
28.08.14
14:20
есть форма справочника списка, поле картинка с типом ЭУ - Флажок, флажок не привязан к данным (данные флажка  - пусто).

http://s7.postimg.org/tu9ccvqbb/image.jpg

флажок используется для пометки нужных элементов - для последущей обработки.

1) как пройтись циклом по текущим отображаемым строкам списка справочника
2) как узнать значение флажка  - отмечен или нет

можно конечно так отбирать через режим выделения "многострочный"
Для Каждого ВыделеннаяСтрока Из ЭлементыФормы.СправочникСписок.ВыделенныеСтроки Цикл
конеццикла;

но хочется реализовать через флажки выбор необходимых элементов
1 Зойч
 
28.08.14
14:28
откуда флажек знает что ему нужно выводиться на форму?
2 lxndr
 
28.08.14
14:28
(0)
1) никак
2) никак
Значение флажка будет доступно только через ОформлениеСтроки в обработчиках ПриВыводеСтроки и ПриПолученииДанных.
Грузи в таблицу значений, там бегай как угодно
3 бегинер
 
28.08.14
14:32
ПриВыводеСтроки и ПриПолученииДанных.
сам факт интерактивной отметки флажка идет же после этих событий, как мне вторично их инициализировать? чтоб сохранились флажки отмеченные интерактивно
4 del123
 
28.08.14
14:33
а через ЭлементыФормы разве нельзя добраться
5 lxndr
 
28.08.14
14:33
(3) что изначально надо сделать? Какую-то обработку выбранных строк?
6 бегинер
 
28.08.14
14:35
(5) дать пользователю интерактивно отобрать нужные ему элементы справочника. а что с ними делать потом не важно
7 lxndr
 
28.08.14
14:37
варианта 2:
или использовать таблицу значений, которую заполнять по нужному отбору
или использовать ВыделенныеСтроки списка справочника.
8 бегинер
 
28.08.14
14:37
можно конечно сделать кнопку, "сделать выбор" - по нажатию грузим еще одну форму - в ней уже обычный список строк - можно будет пройтись по строкам конструкцией "для кажого из"
но хочется без лишних телодвижений
9 бегинер
 
28.08.14
14:43
так и придется остановиться на многострочном режиме выбора
10 бегинер
 
28.08.14
14:44
просто в нем один большой минус, при выборе большого числа строк - можно легко потерять выборку - не туда нажав, и заново придется выбирать. а это не очень гуд
11 Зойч
 
28.08.14
14:44
покажи код привыводе строки
12 бегинер
 
28.08.14
14:46
(11)
оформлениестроки.ячейки.картинка.ОтображатьФлажок   = Истина;
13 alle68
 
28.08.14
17:42
(10) Состояние флажков хранить, н., в соответствии.
14 РенеДекарт
 
28.08.14
17:43
(0)>1) как пройтись циклом по текущим отображаемым строкам списка справочника
2) как узнать значение флажка  - отмечен или нет

"типовыми" средствами 1с - никак.
Делаешь флажки, при изменении - отслеживаешь и пишешь все в таблицу (ТЧ, реквизиты, тоже виртуальную, если хранить результаты выбора не надо).
Смотришь таблицу - обходишь её, видишь значения, все как на ладони.
Минус - весьма сложная реализация постоянной актуализации таблицы флажков для всевозможных вариантов выбора/удаления-добавления строк/еще какие там будут пертурбации ТП.
15 РенеДекарт
 
28.08.14
17:44
(13)>Состояние флажков хранить, н., в соответствии.
- вы хоть знаете, что это такое - СООТВЕТСТВИЕ в 1С? )
16 alle68
 
28.08.14
18:18
(15) Поведайте.
17 бегинер
 
28.08.14
19:07
(14) спасибо за наводку, остановился на вашем варианте.

Процедура СправочникСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)

внутри проверяем флажок значение:
оформлениестроки.ячейки.картинка.флажок
если истина - запоминаем код элемента - заносим в копилку выборки.

внешне - как раз что и требовалось, флажочки, никаких лишних форм.
18 Михаил Козлов
 
28.08.14
19:32
"если истина - запоминаем код элемента - заносим в копилку выборки." - заносите прямо ссылку. Я бы в СООТВЕТСТВИЕ -  получать быстрее.
19 бегинер
 
28.08.14
19:38
(18) покурил, своего рода коллекция значений, вроде удобно - спасибо
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой