#0
by Александр056
Всем дорого времени суток. Форма списка, на ней заявки - динамический список, примерно 1 500 000 документов. Запрос в динамическом списке произвольный с рядом временных таблиц и соединений - не спрашивайте как так, долгая история со странными требованиями заказчика и почему решили делать именно так неизвестно. По факту сейчас код установления отбора выполняется примерно 40! секунд Код: так же пробовал через процедуру: ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список,"ТипЗаявки.Родитель",ПредопределенноеЗначение("Справочник.ТипыЗаявок.СервисныеЗаявки"),ВидСравненияКомпоновкиДанных.Равно,,Истина,РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный,); время выполнения не отличается, разница только в том что через общий модуль, в меню настройка списка на вкладке "Основные" появляется этот отбор и его можно включать отключать галкой. Смотрел замером производительности, ничего там столь длительного не нашел, затрудняюсь куда копать? дабы ускорить время выполнения отбора.
#1
by Fedor-1971
Вариант1: наложи условия на выборку (в запросе ДС) всё то же самое, только в Где запроса. Относительный минус, пользователь не сможет снять этот отбор (или придётся предусмотреть программную возможность его снимать - динамически изменять текст запроса). Вариант2: ограничь стандартный период (не тащи сразу 100500 документов, а отбери, например, за квартал их там явно меньше)
#2
by Александр056
спасибо но за период не устраивает заказчика ГДЕ, т.е. программно менять текст запроса? у меня фильтров по кнопке несколько, т.е. каждый раз искатьэту область где и то удалять ее, то правильно заполнять?
#3
by Cyberhawk
"Смотрел замером производительности" // Так он время выполнения запросов не показывает. Профайлер СУБД смотри
#5
by Fedor-1971
Да, но можно и проще Запомнить исходный текст запроса (т.е. в нём нет ГДЕ) Создать строку для условий Список.ТекстЗапроса=ОригинальныйЗапрос+" ГДЕ "+ СтрокаУсловий Всяко проще чем что-то искать и учитывать разные комбинации
#6
by apokrit
, Вариант1 - это + / - бессмысленно. Отборы компоновки (списка) обычно и добавляются в ГДЕ. Могут еще в параметры виртуальных таблиц добавиться (а вот руками их туда уже совсем неудобно пихать будет).
#7
by Fedor-1971
Ну запрос нам не показали, может там есть простор для оптимизации. Если хотим ускорить выбор данных, накладывать условия на выборку лучше не доверять автоматике (программеру проще - это да, но можно получить совсем неочевидную засаду в виде неоптимальности)
#9
by ildary
в дин. списке случайно сортировка не особая? Если да, то это добавляет тормозов. Если убрать сортировку и документы пойдут в порядке дат, то работа Д.С. должна ускориться.
#10
by Александр056
попробовал программно засунуть в текст запроса условие, получилось, отработало, долго... суть не поменялась, не замерял время, но по ощущениям результата нет.
#11
by apokrit
В общем-то единственный надежный подход предлагается в Т.е. смотреть план выполнения запроса (ов) и уже исходя из этого решать как улучшать ситуацию.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Оптимизация регистра
- Управляемые формы. Удаление отбора динамического списка.
- Как скрыть доступное поле отбора динамического списка?
- УФ: Критерий отбора в качестве источника динамического списка
- 1с 8.2 Ошибка в элементе отбора: глобальные элементы отбора обязательно должны
- Оптимизация динамического списка
- Как найти элемент отбора в компоновщике по элементу пользовательского отбора?
- Ошибка в элементе отбора: глобальные элементы отбора обязательно должны использовать поля
- Отображение условия отбора динамического списка
В этой группе 1С
- ПолеHTMLДокумента ошибка скриптов
- УФ Как настроить расположение дополнительных реквизитов на форме
- Отбор в таблице управляемые формы
- ЗУП 3.1 Выплата аванса
- Преимущества УТ 11.3 над КА 2.1
- Перевод в структуру документа excel документа созданного word
- Как при выборе элемента справочника сделать отображение кода, а не наименование?
- Вариативный запрос по остаткам и оборотам номенклатуры (УТ 11.3.4.1)
- АТОЛ 30Ф. Передача ФД в ОФД.
- Управление торговлей, модуль обмен в реальном времени, как правильно настроить
- Как в форму передать ссылку на объект.
- БП 3.0 - учет по "Проектам"
- Переход с ЗУП КОРП 2.5 на ЗУП ПРОФ 2.5
- Глючит дата запрета редактирования БП 3.0
- Печать чека РКО на ФР из Бухгалтерии 3.0
- ERP: Справка-расчет списание РБП
- СКД и разные столбцы для разных значений
- Розница 2.2.6.28 + Атол 11Ф
- Обмен между УТ 11 и БП 3 с параметрами
- Владелец формы - поле ввода.