Заметки эксперта. Расследование длительного выполнения отчета “Движение ТМЦ и затрат в производстве” (1С:ERP 2)

19.05.22

База данных - HighLoad оптимизация

Кратко: в ходе проведения нагрузочного тестирования “1С:ERP 2” под ОС Linux на СУБД Postgres выявлено существенное замедление формирования отчета “Движение ТМЦ и затрат в производстве” - до 60 минут. После проведенного расследования и точечной корректировки СКД в отчете, без изменения бизнес-логики результатов его работы, работа отчета была ускорена в 80 раз - средний показатель формирования составил 30 секунд.

Заметки эксперта. Расследование длительного выполнения отчета “Движение ТМЦ и затрат в производстве” (1С:ERP 2)

 

Кратко: в ходе проведения нагрузочного тестирования “1С:ERP 2” под ОС Linux на СУБД Postgres выявлено существенное замедление формирования отчета “Движение ТМЦ и затрат в производстве” - до 60 минут. После проведенного расследования и точечной корректировки СКД в отчете, без изменения бизнес-логики результатов его работы, работа отчета была ускорена в 80 раз - средний показатель формирования составил 30 секунд.

Мы опубликовали в предыдущих двух статьях на наш взгляд интересные и довольно необычные кейсы расследования деградации производительности. Эта статья про случай попроще, но мы считаем, что и он заслуживает вашего внимания. Во-первых, и тут есть существенная проблема с быстродействием. Во-вторых, этот пример показателен тем, что далеко не всегда нужно вообще что-то “переписывать” в конфигурациях 1С. Надеемся, вам будет интересно ;)

Инфраструктура исследуемой системы

  • Технологическая платформа 1С:Предприятие 8, версия 8.3.19.1264
  • Конфигурация: 1С:ERP Управление предприятием 2, версия 2.5.6.234
  • Операционная система: Astra Linux Орел 2.12
  • СУБД: Postgres Pro Enterprise 13
  • Размер базы данных: около 500 Гб
  • Количество пользователей: около 2200

 

Проблема

В ходе проведения нагрузочного тестирования прикладного решения “1С:ERP 2” в рамках программы перехода на операционную систему Linux с использованием СУБД Postgres выявлено длительное формирование отчета "Движение ТМЦ и затрат в производстве”.

Если установить в отчете параметры отбора “Период (месяц)” и “Подразделение”, после чего запустить его формирование – это занимает от 40 до 60 минут. Причем, формирование “под нагрузкой” (одновременная работа пользователей) такого отчета у части пользователей завершается с ошибкой “Недостаточно памяти для получения результата запроса к базе данных”.

В остальных случаях результирующий табличный документ пустой – по установленным отборам данных к выводу нет.
 

Задача

Выявить и устранить причины крайне медленного формирования отчета “Движение ТМЦ и затрат в производстве” в инфраструктуре 1С:ERP 2 / Linux / Postgres.

 

Расследование

На момент выполнения такого рода расследования, у нас должна быть подключена подсистема БСПОценка производительности”, включен технологический журнал 1С (ТЖ 1С), желательно включить подробное логирование в журнале регистраци 1С (ЖР 1С).

Для начала ищем самый длительный замер по ключевой операции формирования этого отчета, полученный подсистемой БСП “Оценка производительности” - запоминаем “Номер сеанса”:

 

Дата начала замера

Дата окончания замера

Номер сеанса

Длительность, сек.

Пользователь

16.01.2022 16:43:18

16.01.2022 17:23:09

2218

2 390,844

ЭкономистПроизводства_012

 

После чего в ТЖ 1С ищем событие CALL (клиент-серверный вызов), соответствующее данному замеру: ”SessionID=11811(2218)”

22:38.093000-2359346998,CALL,1,Usr=ЭкономистПроизводства_012,SessionID=11811(2218),p:processName=erp,Func=Background job,Module=ДлительныеОперации,Method=ВыполнитьСКонтекстомКлиента,Memory=-858220508,MemoryPeak=15575941249,InBytes=117587968,OutBytes=133120366,CpuTime=336095413

Действительно: вызов длился почти 40 минут.

Обращаем внимание на еще один момент: в пике ему потребовалось почти 15 Гб оперативной памяти (свойство MemoryPeak). Это еще одна причина, которая требует расследования (многовато выходит для отчета, который в итоге ничего не выводит).

Кроме этого держим в голове, что у части тестовых пользователей возникала ошибка “Недостаточно памяти для получения результата запроса к базе данных”.

Для анализа ситуации смотрим на запросы, которые выполняются при формировании запроса к базе данных, анализируем события ТЖ 1С  DBPOSTGRS для данного клиент-серверного вызова (сопоставляем по тому же SessionID=11811):

45:09.657000-108177999,DBPOSTGRS,5,process=rphost,p:processName=erp,OSThread=7838,t:clientID=2832,t:applicationName=BackgroundJob,t:computerName=erp02,t:connectID=15586,SessionID=11811,Usr=ЭкономистПроизводства_012,DBMS=DBPOSTGRS,DataBase=erp04\erp,Trans=0,dbpid=27776,Sql="<...>",RowsAffected=42998,Result=PGRES_TUPLES_OK,Context='
ОбщийМодуль.ДлительныеОперации.Модуль : 1063 : ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);
    ОбщийМодуль.ДлительныеОперации.Модуль : 1073 : ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
        ОбщийМодуль.ОбщегоНазначения.Модуль : 5180 : Выполнить(Текст);
             : 1 : ВариантыОтчетов.СформироватьОтчетВФоне(Параметры[0],Параметры[1])
                ОбщийМодуль.ВариантыОтчетов.Модуль : 2773 : Формирование = СформироватьОтчет(Параметры, Ложь, Ложь);
                    ОбщийМодуль.ВариантыОтчетов.Модуль : 1718 : ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);
                        Отчет.ПроизводственныеЗатраты.МодульОбъекта : 81 : ПроцессорВывода.Вывести(ПроцессорКомпоновки);'
57:10.549000-720529999,DBPOSTGRS,5,process=rphost,p:processName=erp,OSThread=7838,t:clientID=2832,t:applicationName=BackgroundJob,t:computerName=erp02,t:connectID=15586,SessionID=11811,Usr=ЭкономистПроизводства_012,DBMS=DBPOSTGRS,DataBase=erp04\erp,Trans=0,dbpid=27776,Sql="<...>",RowsAffected=2841404,Result=PGRES_TUPLES_OK,Context='
ОбщийМодуль.ДлительныеОперации.Модуль : 1063 : ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);
    ОбщийМодуль.ДлительныеОперации.Модуль : 1073 : ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
        ОбщийМодуль.ОбщегоНазначения.Модуль : 5180 : Выполнить(Текст);
             : 1 : ВариантыОтчетов.СформироватьОтчетВФоне(Параметры[0],Параметры[1])
                ОбщийМодуль.ВариантыОтчетов.Модуль : 2773 : Формирование = СформироватьОтчет(Параметры, Ложь, Ложь);
                    ОбщийМодуль.ВариантыОтчетов.Модуль : 1718 : ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);
                        Отчет.ПроизводственныеЗатраты.МодульОбъекта : 81 : ПроцессорВывода.Вывести(ПроцессорКомпоновки);'
04:07.978000-292160999,DBPOSTGRS,5,process=rphost,p:processName=erp,OSThread=7838,t:clientID=2832,t:applicationName=BackgroundJob,t:computerName=erp02,t:connectID=15586,SessionID=11811,Usr=ЭкономистПроизводства_012,DBMS=DBPOSTGRS,DataBase=erp04\erp,Trans=0,dbpid=28219,Sql="<...>",RowsAffected=3023307,Result=PGRES_TUPLES_OK,Context='
ОбщийМодуль.ДлительныеОперации.Модуль : 1063 : ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);
    ОбщийМодуль.ДлительныеОперации.Модуль : 1073 : ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
        ОбщийМодуль.ОбщегоНазначения.Модуль : 5180 : Выполнить(Текст);
             : 1 : ВариантыОтчетов.СформироватьОтчетВФоне(Параметры[0],Параметры[1])
                ОбщийМодуль.ВариантыОтчетов.Модуль : 2773 : Формирование = СформироватьОтчет(Параметры, Ложь, Ложь);
                    ОбщийМодуль.ВариантыОтчетов.Модуль : 1718 : ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);
                        Отчет.ПроизводственныеЗатраты.МодульОбъекта : 81 : ПроцессорВывода.Вывести(ПроцессорКомпоновки);'

Видим, что два запроса выполняются долго - в листинге выше: 720529999 мкс второй запрос, 292160999 мкс третий запрос. Кроме этого, они еще и возвращают в итоге около 3 миллионов строк каждый: RowsAffected=2841404 во втором запросе, RowsAffected=3023307 в третьем запросе.

Это явно избыточная нагрузка на СУБД. К тому же выходит, что фильтрация осуществляется уже после получения данных из базы, ведь результат, как мы помним - у пользователей все равно пустой.

 

Переходим к самому отчету в конфигурации 1С.

Помним: в варианте отчета, вызывающем проблему, отбор устанавливается по периоду и по подразделению.

Открываем настройки схемы компоновки данных (СКД) для данного отчета и видим: отбор по подразделению указан не для отчета, а в отдельных группировках.

 

 

Такая настройка СКД приводит к избыточному чтению данных из СУБД: из базы данных сначала выбираются все данные, без отбора по подразделению. И только после этого компоновщик СКД для каждой группировки накладывает отбор по подразделению.

 

Решение

Проанализировав полученные выше данные по работе 1С с СУБД в контексте этого отчета и структуру его СКД, делаем вывод: основной отбор по подразделению можно перенести в сам отчет, не нарушая логику его работы. Вот так:

 

 

То есть условия в отборе для отчета будут применяться сразу, что ожидаемо снизит нагрузку на СУБД, минимизируя получаемые оттуда данные.

 

Применяем изменения в конфигурации 1С и проверяем формирование отчете в рамках следующей итерации нагрузочного тестирования:

52:05.794000-1516999,DBPOSTGRS,5,process=rphost,p:processName=erp,OSThread=4120,t:clientID=253,t:applicationName=BackgroundJob,t:computerName=erp01,t:connectID=2740,SessionID=2298,Usr=ЭкономистПроизводства_012,DBMS=DBPOSTGRS,DataBase=erp04\erp,Trans=0,dbpid=30344,Sql="<...>",RowsAffected=0,Result=PGRES_TUPLES_OK,Context='
ОбщийМодуль.ДлительныеОперации.Модуль : 1063 : ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);
    ОбщийМодуль.ДлительныеОперации.Модуль : 1073 : ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
        ОбщийМодуль.ОбщегоНазначения.Модуль : 5180 : Выполнить(Текст);
             : 1 : ВариантыОтчетов.СформироватьОтчетВФоне(Параметры[0],Параметры[1])
                ОбщийМодуль.ВариантыОтчетов.Модуль : 2773 : Формирование = СформироватьОтчет(Параметры, Ложь, Ложь);
                    ОбщийМодуль.ВариантыОтчетов.Модуль : 1718 : ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);
                        Отчет.ПроизводственныеЗатраты.МодульОбъекта : 81 : ПроцессорВывода.Вывести(ПроцессорКомпоновки);'                        
52:22.199000-15617999,DBPOSTGRS,5,process=rphost,p:processName=erp,OSThread=4120,t:clientID=253,t:applicationName=BackgroundJob,t:computerName=erp01,t:connectID=2740,SessionID=2298,Usr=ЭкономистПроизводства_012,DBMS=DBPOSTGRS,DataBase=erp04\erp,Trans=0,dbpid=30668,Sql="<...>",RowsAffected=0,Result=PGRES_TUPLES_OK,Context='
ОбщийМодуль.ДлительныеОперации.Модуль : 1063 : ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);
    ОбщийМодуль.ДлительныеОперации.Модуль : 1073 : ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
        ОбщийМодуль.ОбщегоНазначения.Модуль : 5180 : Выполнить(Текст);
             : 1 : ВариантыОтчетов.СформироватьОтчетВФоне(Параметры[0],Параметры[1])
                ОбщийМодуль.ВариантыОтчетов.Модуль : 2773 : Формирование = СформироватьОтчет(Параметры, Ложь, Ложь);
                    ОбщийМодуль.ВариантыОтчетов.Модуль : 1718 : ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);
                        Отчет.ПроизводственныеЗатраты.МодульОбъекта : 81 : ПроцессорВывода.Вывести(ПроцессорКомпоновки);'
52:25.135000-2789999,DBPOSTGRS,5,process=rphost,p:processName=erp,OSThread=4120,t:clientID=253,t:applicationName=BackgroundJob,t:computerName=erp01,t:connectID=2740,SessionID=2298,Usr=ЭкономистПроизводства_012,DBMS=DBPOSTGRS,DataBase=erp04\erp,Trans=0,dbpid=30562,Sql="<...>",RowsAffected=0,Result=PGRES_TUPLES_OK,Context='
ОбщийМодуль.ДлительныеОперации.Модуль : 1063 : ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);
    ОбщийМодуль.ДлительныеОперации.Модуль : 1073 : ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
        ОбщийМодуль.ОбщегоНазначения.Модуль : 5180 : Выполнить(Текст);
             : 1 : ВариантыОтчетов.СформироватьОтчетВФоне(Параметры[0],Параметры[1])
                ОбщийМодуль.ВариантыОтчетов.Модуль : 2773 : Формирование = СформироватьОтчет(Параметры, Ложь, Ложь);
                    ОбщийМодуль.ВариантыОтчетов.Модуль : 1718 : ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка);
                        Отчет.ПроизводственныеЗатраты.МодульОбъекта : 81 : ПроцессорВывода.Вывести(ПроцессорКомпоновки);'
52:25.333001-25484999,CALL,1,Usr=ЭкономистПроизводства_012,SessionID=2298(766),p:processName=erp,Func=Background job,Module=ДлительныеОперации,Method=ВыполнитьСКонтекстомКлиента,Memory=-184943301,MemoryPeak=14490779,InBytes=0,OutBytes=0,CpuTime=5387584

Видим, что отбор сразу применился на уровне запроса к базе данных (RowsAffected=0). Потребление памяти при этом снизилось до 15 Мб (MemoryPeak=14490779).

Отчет сформировался за 30 секунд:

 

Дата начала замера

Дата окончания замера

Номер сеанса

Длительность, сек.

Пользователь

24.01.2022 12:51:59

24.01.2022 12:52:29

766

29,804

ЭкономистПроизводства_012

 

Таким образом, без серьезной корректировки отчета, не углубляясь в его бизнес-логику и не меняя её, мы ускорили формирование отчета почти в 80 раз. Кроме этого, избавились от высокого потребления памяти процессами сервера, что порождало ошибку недостатка памяти для получения результата запроса и отображению пользователю.

a3e52412cd0e9ba5955aaa995474074f.png

Приобретайте 1С:ERP в Инфостарт с бонусом 15%!

  • Бесплатное демо продукта и консультация
  • Команда экспертов 1С с опытом 10+ лет
  • Оценка проекта, четкий план работ, документация, обучение и поддержка

Закажите расчет внедрения ERP - получите дорожную карту в подарок!


эксперт быстродействие erp 1С:Эксперт технологическим вопросам платформа деградация производительности производительность высокая нагрузка highload

См. также

HighLoad оптимизация Технологический журнал Системный администратор Программист Бесплатно (free)

Обсудим поиск и разбор причин длительных серверных вызовов CALL, SCALL.

24.06.2024    6026    ivanov660    12    

56

HighLoad оптимизация Программист Платформа 1С v8.3 Бесплатно (free)

Метод очень медленно работает, когда параметр приемник содержит намного меньше свойств, чем источник.

06.06.2024    10466    Evg-Lylyk    61    

45

HighLoad оптимизация Программист Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Анализ простого плана запроса. Оптимизация нагрузки на ЦП сервера СУБД используя типовые индексы.

13.03.2024    5654    spyke    28    

49

HighLoad оптимизация Программист Платформа 1С v8.3 Бесплатно (free)

Оказывается, в типовых конфигурациях 1С есть, что улучшить!

13.03.2024    8363    vasilev2015    20    

43

HighLoad оптимизация Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Обработка для простого и удобного анализа настроек, нагрузки и проблем с SQL сервером с упором на использование оного для 1С. Анализ текущих запросов на sql, ожиданий, конвертация запроса в 1С и рекомендации, где может тормозить.

2 стартмани

15.02.2024    13439    268    ZAOSTG    87    

116

HighLoad оптимизация Системный администратор Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Принимать, хранить и анализировать показания счетчиков (метрики) в базе 1С? Почему бы нет? Но это решение быстро привело к проблемам с производительностью при попытках построить какую-то более-менее сложную аналитику. Переход на PostgresSQL только временно решил проблему, т.к. количество записей уже исчислялось десятками миллионов и что-то сложное вычислить на таких объемах за разумное время становилось все сложнее. Кое-что уже практически невозможно. А что будет с производительностью через пару лет - представить страшно. Надо что-то предпринимать! В этой статье поделюсь своим первым опытом применения СУБД Clickhouse от Яндекс. Как работает, что может, как на нее планирую (если планирую) переходить, сравнение скорости работы, оценка производительности через пару лет, пример работы из 1С. Все это приправлено текстами запросов, кодом, алгоритмами выполненных действий и преподнесено вам для ознакомления в этой статье.

1 стартмани

24.01.2024    6421    glassman    20    

42

HighLoad оптимизация Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Встал вопрос: как быстро удалить строки из ТЗ? Рассмотрел пять вариантов реализации этой задачи. Сравнил их друг с другом на разных объёмах данных с разным процентом удаляемых строк. Также сравнил с выгрузкой с отбором по структуре.

09.01.2024    17381    doom2good    49    

71
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. sapervodichka 6937 19.05.22 16:10 Сейчас в теме
Информативно, спасибо.
mitia.mackarevich; it-expertise; sasha_r; +3 Ответить
2. starik-2005 3098 19.05.22 17:52 Сейчас в теме
3. TMV 14 20.05.22 00:05 Сейчас в теме
Собирать ТЖ в данном случае излишне.
echo77; zqzq; RustIG; +3 Ответить
4. sasha_r 20.05.22 09:28 Сейчас в теме
(3) почему? Мне казалось, собирать ТЖ никогда не вредно.
it-expertise; +1 Ответить
5. TMV 14 20.05.22 10:43 Сейчас в теме
(4) Это не вредно, но и не нужно именно здесь - из пушки по воробьям.
15. bugagashenka 203 23.05.22 08:45 Сейчас в теме
(5) чтобы посмотреть потребление памяти вызовом, например. Без ТЖ не посмотришь.
Опять же, в запросе может быть несколько временных таблиц и увидеть, на какой именно проблема, поможет либо ТЖ, либо трассировка. Но, из первого предложения возникает логичная гипотеза, что с помощью ТЖ можно увидеть сразу всю картину.

Можно было бы еще в дополнение план запроса посмотреть и там явно было бы видно, что ближе к концу на входе в оператор толстая линия, а на выходе тонкая, что тоже говорит о позднем отборе.

Я бы лично сначала план посмотрел, но любой подход верный, если приведет к положительному результату.
it-expertise; +1 Ответить
16. TMV 14 23.05.22 10:03 Сейчас в теме
(15)из Москвы в СПБ можно улететь, а можно и в плацкарте доехать - вопрос эффективности.
17. bugagashenka 203 23.05.22 11:22 Сейчас в теме
(16) Вопрос эффективности - итоговое время формирования отчета при наименьших трудозатратах на оптимизацию. В данном случае пусть и не совсем обычно подошли к экспертизе, так как обычно начинается все с плана запроса, но тем не менее, расследование с помощью ТЖ, как одно из фундаментальных средств показал результат.
Предложите свой вариант, как бы Вы расследовали.
Напомню, что у части пользователей отчет вылетал по памяти.
it-expertise; +1 Ответить
7. IT_Magnit 20.05.22 14:24 Сейчас в теме
(3) Как и писать статью..
6. capitan 2593 20.05.22 12:05 Сейчас в теме

Давайте поговорим об этом)
1. При чем тут переход
под ОС Linux на СУБД Postgres
, разве на windows & mssql СКД по другому работает?
В СКД можно поймать итоговый запрос, а в ТЖ можно поймать его план
2. Что будет с пользователем который не хочет в разрезе подразделений такой отчет строить, например старший экономист ?)

Не относящееся к делу замечание,
да какое уж там замечание, просто камень в огород секты центосников как сервера 1С)
На Astra Linux перешли все кто только мог, а он то на дебиане
8. s22 23 20.05.22 15:58 Сейчас в теме
Логика вроде изменилась.

Сейчас отбор накладывается на все таблицы, а раньше только на одну
9. s22 23 20.05.22 16:00 Сейчас в теме
А вообще от 1с нужны функции получения от запроса плана и скл варианта.
Сделать просто, поможет сильно
it-expertise; sapervodichka; +2 Ответить
10. ivanov660 4596 20.05.22 16:27 Сейчас в теме
Внесу свои пять копеек)
1. Должны быть отборы обязательно - без отборов тормоза случаются).
2. Что-то очень странное условие отбора "Группировка ИЛИ". Если задача стояла в том, чтобы пользователь обязательно указывал подразделение. то это делается значительно проще - во вкладке СКД "Параметры" ставится флаг "запрещать незаполненные значения".
3. Рекомендую также пользоваться обработкой "Консоль системы компоновки данных" с ИТС, она покажет какой запрос формируется в итоге на языке запросов 1С. В результате можно увидеть к чему приводят различные манипуляции со схемой СКД.
11. s22 23 20.05.22 17:01 Сейчас в теме
(10)
2. Что-то очень странное условие отбора "Группировка ИЛИ". Если задача стояла в том, чтобы пользователь обязательно указывал подразделение. то это делается значительно проще - во вкладке СКД "Параметры" ставится флаг "запрещать незаполненные значения".


Нормальное. Если заполнено подразделение то отбор по нему иначе нет отбора.
triviumfan; +1 Ответить
12. ivanov660 4596 20.05.22 17:57 Сейчас в теме
(11)Тогда вышеуказанная оптимизация на половину бессмысленная, сняли отбор и опять тормоза.
13. Fragster 1152 20.05.22 18:17 Сейчас в теме
На картинке в статье не показано, как быстро отловить это дело (отсутствие фильтрации в запросе) в настройках:
14. echo77 1916 22.05.22 11:38 Сейчас в теме
(0) Спасибо, что еще раз обратили на это внимание.
Вспоминая себя: чем больше знаешь, тем более изощренными(сложными) способами решаешь задачи.
Наверное, стоило начать с обзора настроек компоновщика настроек, за тем посмотреть итоговый запрос с параметрами в консоли СКД и уж потом...
VladC#; it-expertise; +2 Ответить
18. Andrekaa 24.05.22 08:05 Сейчас в теме
а в техподдержку 1С написали о своих результатах?
19. it-expertise 369 24.05.22 08:55 Сейчас в теме
(18) мы довольно плотно сотрудничаем с 1С по линии производительности и отказоустойчивости.
Оставьте свое сообщение