Непонятно требование к обработке для 1С:Фреш

1. user1516933 03.04.22 22:23 Сейчас в теме
Доброго времени суток коллеги.

Для заказчика модифицировал обработку. Передали на проверку через фирму-франчайзи и пришел ответ:
--
Дополнительный отчет или обработка Обмен с системой (версия 1.06 от 31.03.2022 7:27:35 UTC):
1. Дополнительный отчет/обработка не должен приводить к чрезмерной нагрузке на компоненты сервиса или клиентское приложение.
При использовании виртуальных таблиц в запросах следует передавать в параметры таблиц все условия, относящиеся к данной виртуальной таблице. Не рекомендуется фильтровать виртуальные таблицы при помощи условий в секции ГДЕ и т. п. Такой запрос будет возвращать правильный (с точки зрения функциональности) результат, но СУБД будет намного сложнее выбрать оптимальный план для его выполнения. В некоторых случаях это может привести к ошибкам оптимизатора СУБД и значительному замедлению работы запроса.
Подробнее с причинами неоптимальной работы запросов и их оптимизацией можно ознакомиться здесь https://its.1c.ru/db/v8std#browse:13:-1:26:28
--
Прочитал все статьи в поиске изменений и ошибок. Упростил запросы - разделил отдельно запрос номенклатуры и отдельно остатков (ранее было все в одном запросе что бы не усложнять). Пришел такой же ответ.

В коде используются запросы:
                Запрос.Текст = "ВЫБРАТЬ
                               |             ВЫРАЗИТЬ(Номенклатура.Наименование КАК СТРОКА(80)) КАК Наименование,
                               |             ВЫРАЗИТЬ(Номенклатура.Штрихкод КАК СТРОКА(13)) КАК Штрихкод,
                               |             Номенклатура.Ссылка КАК Номенклатура,
                               |             Номенклатура.ДополнительныеРеквизиты.(
                               |                            Свойство КАК Свойство,
                               |                            Значение КАК Значение
                               |             ) КАК ДополнительныеРеквизиты
                               |ИЗ
                               |             Справочник.Номенклатура КАК Номенклатура
                               |ГДЕ
                               |             Номенклатура.ДополнительныеРеквизиты.Значение = ИСТИНА
                               |             И Номенклатура.ДополнительныеРеквизиты.Свойство = &ЭтоНоменклатураПоставки";
Показать


И запрос по остаткам:
                Запрос.Текст = "ВЫБРАТЬ
                |            ЗапасыНаСкладахОстатки.Номенклатура КАК Номенклатура,
                |            ЗапасыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток
                |ИЗ
                |            РегистрНакопления.ЗапасыНаСкладах.Остатки КАК ЗапасыНаСкладахОстатки
                |ГДЕ
                |            ЗапасыНаСкладахОстатки.Номенклатура = &Номенклатура";
Показать


Что от меня хотят?
Может я не то смотрю?

P.S. Через кого подавали уже предложили за деньги переписать код (точнее все написать с нуля, хотя это же работало), но этот вариант мне не нравится...
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. starjevschik 03.04.22 23:07 Сейчас в теме
ну там же написано
При использовании виртуальных таблиц в запросах следует передавать в параметры таблиц все условия, относящиеся к данной виртуальной таблице

. Они просто хотят вот так. И совершенно правы...
Запрос.Текст = "ВЫБРАТЬ
                |            ЗапасыНаСкладахОстатки.Номенклатура КАК Номенклатура,
                |            ЗапасыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток
                |ИЗ
                |            РегистрНакопления.ЗапасыНаСкладах.Остатки(Номенклатура = &Номенклатура) КАК ЗапасыНаСкладахОстатки";
3. user1516933 04.04.22 07:29 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот