| 
    
            
         
         | 
    
  | 
Ускорение выдачи динамического списка. Какие отборы работают быстрее? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        23th    
     04.04.25 
            ✎
    15:31 
 | 
         
        В компановщике настроек есть отборы:
 
        Настройки.Отбор и ФиксированныеНастройки.Отбор Я всю жизнь добавлял в фиксированные настройки. Но сегодня столкнулся с тормозами в базе. При установке отборов (их 4) у меня выдача "думает" 4-5 сек. А это слишком много. Хотелось бы сократить хотя бы до 2 сек. Тут в темах ранее писали, что отбор отличается от установки параметров тем, что отбор работает с уже сформрованной выборкой. Но ведь когда мы делаем отборы все равно срабатывает событие ПриЧтенииДанныхНаСервере, т.е. как будто бы все равно запрос обновляется.  | 
|||
| 
    2
    
        Fragster    
     гуру 
    04.04.25 
            ✎
    15:31 
 | 
         
        (0) тебя обманывают. скорее всего тормозит из-за кривого запроса или архитектуры, например из-за сортировки по колонке со справочником, на котором RLS     
         | 
|||
| 
    3
    
        23th    
     04.04.25 
            ✎
    15:31 
 | 
         
        Вдогонку. У меня просто запрос тяжелый, там есть выбор когда и гурппировки. Я пока не могу от них избавиться, если от них уйду, то придется делать несколько временных таблиц, а это опять же тормоза. Во всем виноват регистр сведений "РаспределениеЗапасов" в УТ или КА и характеристики номенклатуры.
 
        Самой номенклатуры тоже не мало, более 500 к. Причем она очень ветвистая, мне кажется еще в этом проблема.  | 
|||
| 
    5
    
        23th    
     04.04.25 
            ✎
    15:32 
 | 
         
        (2) В УТ или КА есть форма подбора номенклатуры, но она неудобная и как раз работает супер медленно. Там еще когда по веткам скачешь, то не показывает все что входит в эту ветку по наследству, а только то что в самой находится, а это просто супер неудобно.     
         | 
|||
| 
    6
    
        Fragster    
     гуру 
    04.04.25 
            ✎
    15:35 
 | 
         
        ещё отборы автоматически не пробрасываются во вложенные запросы, надо делать это руками с помощью вкладки "компоновка данных" конструктура запроса (ну или руками добавляя конструкции в фигурных скобках {Где Поле.* КАК Поле} во вложенных запросах)     
         | 
|||
| 
    7
    
        23th    
     04.04.25 
            ✎
    15:59 
 | 
         
        Куку     
         | 
|||
| 
    8
    
        23th    
     04.04.25 
            ✎
    16:01 
 | 
         
        (6) У меня нет вложенных.
 
        Мне в принципе отборы нужны только на последнем пакете запросов. Там стоит поставить поля в компановкеданных?  | 
|||
| 
    9
    
        23th    
     04.04.25 
            ✎
    16:16 
 | 
         
        Так все-таки меня обманывают?
 
        Я про то, что, как ни крути, а запрос на сервер идет и переформировывается каждый раз, когда я устанавливаю отбор?  | 
|||
| 
    10
    
        Fragster    
     гуру 
    04.04.25 
            ✎
    16:17 
 | 
         
        (9) да. 
 
        (8) для наиболее эффективного использования возможно стоит рассмотреть реальные запросы, которые генерит платформа, например с помощью ПолучитьИсполняемуюСхемуКомпоновкиДанных и ПолучитьИсполняемыеНастройкиКомпоновкиДанных. можно почитать полуюмористическую статью на эту тему: https://infostart.ru/1c/articles/559370/  | 
|||
| 
    11
    
        23th    
     04.04.25 
            ✎
    16:40 
 | 
         
        (10) Спасибо!
 
        Щас прочекал, что через Настройки, что через ФиксированныеНастройки все одно, порядка 4-5 сек делает и читает сервер. Короче для самоуспокоения затолкал все в Настройки. Я вот вспомнил в отчетах я дурковал еще хлеще. Я делал табчасть "ТАбЗапроса", и присозданиинасервере ее заполнял 1 раз. Потом через СКД ее считывал, так получалось быстрее раз в 10 наверное. Но это реально костыль был.  | 
|||
| 
    12
    
        23th    
     04.04.25 
            ✎
    16:43 
 | 
         
        в динамическом списке нету наборов данных и самое главное считывание идет только из данных бд. Вообще я уже начинаю думать, что может сойти с ума и заполнять тупо ТаблицуЗначений из спецреквизита ТабЗапроса. Тогда походу если шарахаться по папкам в которых около 1000 позиций будет работать быстрее. Пока правда лень все переделывать... Все таки прятница на носу.     
         | 
|||
| 
    13
    
        Михаил Козлов    
     04.04.25 
            ✎
    17:11 
 | 
         
        (5) Коллега в КА переделывал, чтобы показывало всю номенклатуру. Если нужно, могу посмотреть.     
         | 
|||
| 
    14
    
        23th    
     05.04.25 
            ✎
    01:20 
 | 
         
        (13) Если не сложно, то посмотрите.
 
        Я где-то читал, что вид сравнения В ИЕРАРХИИ работает медленно. Я правда не шарю в СКЛ, как я понимаю этот метод и есть по сути ИЛИ и причем так как Номенклатура это реальная таблица, то там приходится еще и подсчитывать каждый раз список этой номенклатуры. Можно было бы сделать через Виды номенклатуры или иным способам отбора. Но люди не хотят менять иерархию на виды номенклатуры. Я еще не использую как основную таблицу справочник Номенклатура, так как все равно весь список никто не смотрит, только если поиск по частям слов наименования. Так что мне как в типовом решении динамическое считывание не нужно (по порциям). Хотя конечно пробовал делать и с основной таблицей справочник номенклатура. Эффекта никакого, даже еще медленне стало.  | 
|||
| 
    15
    
        23th    
     05.04.25 
            ✎
    02:43 
 | 
         
        Всем спасибо!
 
        Недаром говориться, утро вечера мудренее. Мне изначально не нужна была вся номенклатура, а только одна родительская папка, а в ней 100+кило позиций из 500к тотал. И я изначально ставил параметр на эту папку в условиях и параметрах вирт. таблиц. Сейчас убрал этот параметр, а на папку ставлю отбор. Ведь когда я хожу по вложенным папкам и подпапкам получается я всегда делал двойной отбор - сначала по параметру, а потом еще и по отбору. Сейчас довел выдачу списка до 2 сек. Ведь Сергей Арутюнов методист из УЦ1 1С говорил, что когда сидите в СКД то забирайте все подряд, а всякие отборы делайте в настройках компоновщика. Если прочтете, Сергей, вам спасибо, теперь буду знать это на собственном опыте с ДС.  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |