|   |   | 
| 
 | Динамический список. Колонка заполняемая в списке. | ☑ | ||
|---|---|---|---|---|
| 0
    
        YF 04.09.13✎ 10:23 | 
        Задача:
 Есть динамический список, отображает список документов. Нужно выделив несколько строк (произвольное количество, в произвольном порядке) затем сделать с выделенными данными какое-то действие, например напечатать отчет по ним. Вариант с выделением строк с нажатым Ctl не устраивает, так как может быть нужно выбрать много строк и все не вмещаются в один экран. Хочется: Ставить галочку (как в списке с пометками), а потом уже нажимать кнопку запускающую нужное действие. Вопрос: как такую галку в динамическом списке организовать. Примечание: динамический список можно изменять как угодно, менять источник на произвольный запрос и т.п., главное, чтобы список отображал нужные документы и позволял их редактировать, вводить новые и т.п. | |||
| 1
    
        Лодырь 04.09.13✎ 10:24 | 
        Добавь руками реквизит булево в  динамический список. В чем проблема?     | |||
| 2
    
        YF 04.09.13✎ 10:27 | 
        (1) Прекрасно, а как это сделать? Если в запросе, например:
 Истина КАК мое поле, то как его потом изменять, если оно будет всегда считываться как Истина? | |||
| 3
    
        Лодырь 04.09.13✎ 10:44 | 
        Понял.. Кхм.. Есть мнение тчо придется отказываться от динамического списка с переделкой в таблицу или список.     | |||
| 4
    
        Лодырь 04.09.13✎ 11:00 | 
        Есть еще безумная идея, обрабатывать клик по ячейке с флагом, выбранные сохранять в список, который скармливать запросу динамического списка и выделять их )     | |||
| 5
    
        YF 04.09.13✎ 11:19 | 
        Хорошо, вопрос по другому:
 Как установить выделение строки, при нажатии на нее, но чтобы она выделялась не одна, а добавлялась к выделенным строкам? так же как с Ctl, но без Ctl | |||
| 6
    
        Лодырь 04.09.13✎ 11:22 | 
        (5) Ты задаешь тот же самый вопрос.     | |||
| 7
    
        Classic 04.09.13✎ 11:25 | 
        (2)
 А зачем оно будет потом считываться? Обновляешь данные - значит и выделение сбрасывать надо. (5) Выделяй цветом в условном оформлении:) Я еще держал список значений, в котором были выделенные строки | |||
| 8
    
        YF 04.09.13✎ 11:27 | 
        (6) Не, я добился вот:
 &НаКлиенте Процедура Реквизит1ПриАктивизацииПоля(Элемент) Элементы.Реквизит1.ВыделенныеСтроки.Добавить(Элементы.Реквизит1.ТекущаяСтрока); КонецПроцедуры Смотрю отладчиком - строки добавляются в массив, но выделение на форме не показывается, блин | |||
| 9
    
        YF 04.09.13✎ 11:28 | 
        (7) А как получить цвет фона такой же как и у цвета выделения?     | |||
| 10
    
        YF 04.09.13✎ 11:55 | 
        +
 Хорошо, условное оформление. Т.е.: 1. В условном оформлении если элемент в Списке, то выделяем цветом строку 2. При клике на строке, я добавляю в в список условного оформления новый элемент Это же будет ужасно тормозить? | |||
| 11
    
        Лодырь 04.09.13✎ 11:57 | 
        (10) Не используй динамический список.     | |||
| 12
    
        YF 04.09.13✎ 12:01 | 
        (11) Ну идею-то с условным оформлением я правильно понял?     | |||
| 13
    
        YF 04.09.13✎ 12:03 | 
        +
 Меня интересует вопрос: как "подсвечивается" стандартное выделение? Я вот в список выделенных строк строки добавляю, а они не выделяются. Там же что-то тоже вроде условного оформления - как бы на него воздействовать | |||
| 14
    
        NicolayNN 04.09.13✎ 12:16 | 
        (8) Добавляем индекс строки Элементы.Реквизит1.ВыделенныеСтроки.Добавить(0);
 Элементы.Реквизит1.ВыделенныеСтроки.Добавить(1); и т.п. | |||
| 15
    
        NicolayNN 04.09.13✎ 12:18 | 
        ВыделенныеСтроки (SelectedRows)
 Использование: Только чтение. Описание: Тип: Массив. Содержит массив идентификаторов выделенных строк. | |||
| 16
    
        YF 04.09.13✎ 12:22 | 
        (14) Я же написал в (8) что строки добавляются, но выделение цветом в форме нет     | |||
| 17
    
        NicolayNN 04.09.13✎ 12:24 | 
        добавляй не строки, а индексы строк     | |||
| 18
    
        YF 04.09.13✎ 12:27 | 
        (17) Сам-то пробовал? тоже самое     | |||
| 19
    
        NicolayNN 04.09.13✎ 12:29 | 
        пробывал, все выделяется как надо     | |||
| 20
    
        NicolayNN 04.09.13✎ 12:31 | 
        событие ПриАктивизацииЯчейки     | |||
| 21
    
        YF 04.09.13✎ 12:38 | 
        (19) Кусочек своего кода выдай, а то у меня вот не получается:
 &НаКлиенте Процедура Реквизит1ПриАктивизацииЯчейки(Элемент) //Элементы.Реквизит1.ВыделенныеСтроки.Добавить(Элементы.Реквизит1.ТекущаяСтрока); Элементы.Реквизит1.ВыделенныеСтроки.Добавить(5); Элементы.Реквизит1.ВыделенныеСтроки.Добавить(6); Сообщить(Элементы.Реквизит1.ВыделенныеСтроки.Количество()); КонецПроцедуры | |||
| 22
    
        YF 04.09.13✎ 12:43 | 
        Сообщить() выдает всегда 3, хотя это неправильно, количество должно нарастать     | |||
| 23
    
        NicolayNN 04.09.13✎ 12:45 | 
        Я ввел тебя в заблуждение, у меня тип реквизита ТаблицаЗначений, сейчас гляну на динамич. списке что можно сделать     | |||
| 24
    
        NicolayNN 04.09.13✎ 12:54 | 
        типа того
 &НаКлиенте Процедура СписокПриАктивизацииЯчейки(Элемент) Элементы.Список.ВыделенныеСтроки.Добавить(ПолучитьСсылку()); КонецПроцедуры &НаСервереБезКонтекста Функция ПолучитьСсылку() Возврат Справочники.Прокат.НайтиПоКоду("0000007") КонецФункции | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |