Имя: Пароль:
1C
1С v8
Работа с ДокументСписок отбор по нему
0 Валидатор
 
06.03.13
14:24
Есть документ список - План продаж - http://pikucha.ru/iasc8
ставлю отбор по текущему значению в колонке. потом ставлю установить галочки: http://pikucha.ru/iasc9, и потом меняю статус на кнопке "установить состояние", НО меняется состояние не у отмечанных документов, а у всех, так как отметка всех документов не настроена по отбору, помогите с настройкой, чтобы изменялись состояния только тех документов, которые стоят по отбору
1 Валидатор
 
06.03.13
14:27
http://pikucha.ru/iascb
вот, статус у всех меняется
2 Валидатор
 
06.03.13
14:27
делаю выбор всех данных запросом:
роцедура ДействияФормыУстановитьВсеФлажки(Кнопка)
   
   Запрос = Новый Запрос;
   Запрос.Текст = "ВЫБРАТЬ
   |    ПланПродаж.Ссылка
   |ИЗ
   |    Документ.ПланПродаж КАК ПланПродаж
   |ГДЕ
   |    ПланПродаж.ПометкаУдаления = ЛОЖЬ";
   Результат = Запрос.Выполнить().Выгрузить();
   ОтмеченныеСтроки.ЗагрузитьЗначения(Результат.ВыгрузитьКолонку("Ссылка"));
   ЭлементыФормы.Список.ОбновитьСтроки();

КонецПроцедуры
3 Maxus43
 
06.03.13
14:27
это самописное или типовое?
4 Валидатор
 
06.03.13
14:27
самописное
5 Maxus43
 
06.03.13
14:28
(2) в построитель отчета запихни ДокументСписок, и потом в ТЗ выгрузи результат - получишь только видимые документы
6 Валидатор
 
06.03.13
14:28
как сделать в форме списка документа отбор, чтобы при дальнейших действиях со списком, отбор сохранялся?
7 Maxus43
 
06.03.13
14:28
щас запросом получаешь естественно все документы
8 Classic
 
06.03.13
14:28
Построитель = Новый ПостроительЗапроса;
   Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ЭлементыФормы.ДокументСписок.Значение);
   Отбор = Построитель.Отбор;
   
   Для Сч = 0 ПО ЭлементыФормы.ДокументСписок.ОтборСтрок.Количество()-1 Цикл
       ЭлементОтбора = ЭлементыФормы.ДокументСписок.ОтборСтрок[Сч];
       ЭлементОтбораПостроителя = Отбор.Добавить(ЭлементОтбора.Имя);
       ЗаполнитьЗначенияСвойств(ЭлементОтбораПостроителя,ЭлементОтбора);
   КонецЦикла;

   Выборка = Построитель.Результат.Выбрать();
   
   Пока Выборка.Следующий() Цикл
9 Maxus43
 
06.03.13
14:30
(8) зачем цикл? построитель сам проглотит отбор в документсписок, и выведет только то, что на экране
10 Classic
 
06.03.13
14:30
(9)
Думаешь?
11 Maxus43
 
06.03.13
14:31
(10) думаю. недавно делал, построитель выдавал учитывая отбор
12 Валидатор
 
06.03.13
14:31
(5) можно подробнее? не понимаю ((
13 Maxus43
 
06.03.13
14:32
(12)>(8)
14 Classic
 
06.03.13
14:32
(11)
Источником данных что было?
15 Maxus43
 
06.03.13
14:32
(14) ДокументСписок именно
16 Classic
 
06.03.13
14:33
(15)
ДокументСписок.Значение?
17 Валидатор
 
06.03.13
14:33
(13)
Построитель = Новый ПостроительЗапроса;
   Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ЭлементыФормы.ДокументСписок.Значение);
   Отбор = Построитель.Отбор;

Построитель.Результат.выгрузить

так?
18 Maxus43
 
06.03.13
14:36
(16) точно не помню уж, ну короче можно без установки отбора циклом. надо проверить
19 Валидатор
 
06.03.13
14:36
{Документ.ПланПродаж.Форма.ттФормаСписка.Форма(134)}: Поле объекта не обнаружено (ДокументСписок)
   Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ЭлементыФормы.ДокументСписок.Значение);
20 Classic
 
06.03.13
14:38
(18)
Только что проверил.
Не хавает
21 Classic
 
06.03.13
14:39
(19)
Посмотри как у тебя элементформы называется
22 Classic
 
06.03.13
14:40
(20)
Виноват. Хавает аж бегом
23 Валидатор
 
06.03.13
14:41
теперь на отбор ругается:
{Документ.ПланПродаж.Форма.ттФормаСписка.Форма(135)}: Поле объекта недоступно для записи (Отбор)
   Отбор = Построитель.Отбор;

надо Отбор = построитель.отбор.значение?
24 Maxus43
 
06.03.13
14:41
(20) вот и всё что надо:
   Построитель = Новый ПостроительОтчета;
   Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ДокументСписок);
   Рез = Построитель.Результат.Выгрузить();
25 Classic
 
06.03.13
14:42
(23)
Вообще эту строку убери
26 Maxus43
 
06.03.13
14:42
(23) > (24), 3 строчки кода всего. больге не надо ничего
27 Валидатор
 
06.03.13
14:44
не ставятся галочки(
28 Валидатор
 
06.03.13
14:46
нажимаю на них, но ничего не происходит, в случае массового выбора документов и проставления галокъ
29 Reset
 
06.03.13
14:48
Префикс тт у имени формы неспроста :)
такая вот форма, tt
30 Maxus43
 
06.03.13
14:49
(28) мы тебе сказали как получить список документов с учетом отбора, а что ты с ним потом будешь делать - я хз
31 Валидатор
 
06.03.13
14:49
(30) так как мне отметить все данные, которые я получил с результатом отбора? документы с отбора показываются, но галочки в них для выбора мне не поставить
32 Валидатор
 
06.03.13
14:53
все, спасибо парни, получилось