Как перебрать все строки динамического списка? #740711


#0 by megabax
Подскажите пожалуйста, как перебрать все строки динамического списка?
#1 by D_E_S_131
Почему нужно перебирать именно строки дин.списка? Больше нечего что ли в базе перебрать?
#2 by megabax
Потому что стоит задача: написать универсальную обработину, в которой при помощи универсаьных фильтров сделает отбор объектов, а потом с ними деаються определенные действия. Дя универсаьности я решил применить динамический список, так как там ножно настроить фильтр и это достаочно универсально.
#3 by Живой Ископаемый
ну раз у тебя есть отборы, то стало быть ты можешь по ним построить запрос, в который попадет все то, что попадает в динамический список
#4 by megabax
И как же мне по этим отборам построить запрос? Мне что, теперь перебирать все установенне поьзоватеем отборы и динамиечески фомрировать текст запроса? ии как?
#5 by Живой Ископаемый
в 8.3.6 расширили объектную модель запроса
#6 by eklmn
нет, просто правильный запрос сделать и все
#7 by megabax
Что значит правильный запрос?
#8 by tushich
Пойди от обратного. Добавь таблицу значений и прикрути к ней скд.
#9 by Фрэнки
попробуй вот так, например:
#10 by megabax
Уже пробовал. Сделал вот так: пишет: "{Форма.Форма.Форма}: Ошибка при вызове конструктора (ОписаниеИсточникаДанных)     Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(Список); по причине: Несоответствие типов (параметр номер '1')" Сделал так:
#11 by AntonH851
Синтаксис: Новый ОписаниеИсточникаДанных(<ИсточникДанных>) Параметры: <ИсточникДанных> (обязательный) Тип: ТаблицаЗначений; РезультатЗапроса; ОбластьЯчеекТабличногоДокумента. Описываемый источник данных. Из динамического списка источник не умеет же делать
#12 by Фрэнки
Не построитель отчета, а построитель Запроса. Там какие-то отличия между ними есть. И в источник я ставил данные, которые указаны были в качестве значения параметра "Данные" у табличного поля. Т.е. в Описание источника данных надо не название Элемента формы, а ссылку на Данные, которые отобразил динамический список.
#13 by megabax
У Динамического списка нету поля Данные.
#14 by megabax
Попробовал создать отчет на СКД, создал в нем команду, сделал в ней так: Тоже самое. Как еще можно орагнизовать выборку строк из какой нибудь универсаьной фигни?
#15 by megabax
up
#16 by DrShad
ВыделенныеСтроки
#17 by megabax
Там массив с номерами строк. А как к самой то строке обратиться по ее номеру (в динамическом списке)?
#18 by fisher
Под УФ нормальное решение только в 8.3.6 запилили. Под обычными - через построитель запроса.
#19 by DrShad
это не номера строк, а их ИД обратиться потом через ПолучитьПоИдентификатору
#20 by DrShad
кроме того Выделенные строки доступен для записи, а не только на чтение
#21 by megabax
У динамического списка нету поучить по идентифкатору
#22 by sapphire
Ну и глупец. Используй СКД.
#23 by megabax
А не поделитесь примером как перебрать все строки из отчета СКД?
#24 by megabax
Сделал вот так вот так (в отчете на СКД): {Отчет.УниверсаьнаяОбработка.Форма.ФормаОтчета.Форма}: Ошибка при получении значения атрибута контекста (Результат)
#25 by Фрэнки
он не смог в построителе отчета сгенерить запрос. В запросе не оказалось выражения Выбрать.
#26 by megabax
А делать то теперь что?
#27 by megabax
Пробовал еще так: сообщить(Результат.ПолучитьОбласть(1,1,1,1)); Резуьтат - это табичный документ где результа работы СКД. Но Результат.ПолучитьОбласть(1,1,1,1) возвращает еще один табличный документ. А как до самой ячейки то добарться? Еси я пишу Результат.ПолучитьОбласть(1,1,1,1).Значение то значение ндоступно для чение? и что тепреь делать?
#28 by Фрэнки
Может быть у готового СКД есть такое: Методы: Инициализировать (Initialize)
#29 by sapphire
Не из отчета, а из ДереваЗначений
#30 by sapphire
#31 by DrShad
#32 by DrShad
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С