Разница между количеством строк в консоли и в отчете

1. srub 85 01.07.21 09:00 Сейчас в теме
Доброго времени суток! Есть вопрос по СКД .Чтобы избежать оптимизации запроса, сделал отчет программно , т. е. запрос в модуле объекта процедура ПриКомпоновкеРезультата получившуюся из запроса ТЗ передаю в набор данных объект ВнешниеНаборыДанных.Вставить("ТЗ", ТЗ); По итогу у меня консоль запросов и отчет выдают разные данные за одинаковый период. Правильные данные в консоли. Где может быть еще оптимизация и как это можно устранить?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
4. EVKash 15 01.07.21 09:18 Сейчас в теме +1 $m
(1) а если отладкой остановиться после формирования ТЗ, данные совпадают?
Из виртуальной таблицы остатков что-то выбираете? Может в границе дело?
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Kolesonik 14 01.07.21 09:14 Сейчас в теме
3. Albert_2008 01.07.21 09:16 Сейчас в теме
попробуйте у роли в скд установить свойство "обязательное"
mrChOP93; +1 Ответить
4. EVKash 15 01.07.21 09:18 Сейчас в теме +1 $m
(1) а если отладкой остановиться после формирования ТЗ, данные совпадают?
Из виртуальной таблицы остатков что-то выбираете? Может в границе дело?
5. srub 85 01.07.21 09:58 Сейчас в теме
(4) Данные не совпадают. У меня в консоли 22 строки, а в выгруженной ТЗ 19 строк, и плюс пропадают данные из одной из колонок, а в других данные неправильные
6. Alexponenta 01.07.21 10:05 Сейчас в теме
(5) Временные таблицы в запросе есть?
10. srub 85 01.07.21 10:22 Сейчас в теме
(6)да есть несколько. Дело было в параметрах. Я их прописал во вкладке параметры установив на начало и конец дня. Но почему то в модуле объекта дата окончания стояла на начало дня
7. Kolesonik 14 01.07.21 10:07 Сейчас в теме
(5) в процедуре при компоновке результата поставьте точку и посмотрите значение МакетКомпоновки.НаборыДанных.НаборДанных1.Запрос ,это реальный запрос который строит СКД и сравните с тем который у вас в консоли
8. EVKash 15 01.07.21 10:09 Сейчас в теме
(5) чудес не бывает.
Под одним пользователем выполняете запрос? RLS есть?
если в привилегированном режиме запрос выполнить, все так же?
на второй вопрос не ответили.
9. srub 85 01.07.21 10:18 Сейчас в теме
(8)Спасибо все нашел. Помог Ваш совет посмотреть , что находится в модуле объекта в выгруженной из запроса ТЗ. У меня в СКД в параметрах прописаны НачалоПериода(&ДатаНачала, "День") и КонецПериода(&ДатаОкончания, "День") поэтому в параметрах был уверен, и даже не смотрел их в отладчике)) Но как оказалось, в модуле в параметрах у меня ДатаОкончания была на начале дня. Отсюда и несоответствие результатов. Я просто в модуле поставил Запрос.УстановитьПараметр("ДатаОкончания", КонецДня(ДатаОкончания)); и все взлетело. Но я был уверен что СКД передает в модуль значение из вкладки Параметры. Теперь буду знать что это не так.
11. Alexponenta 01.07.21 12:30 Сейчас в теме
(9) СКД и временные таблицы с параметрами - вещи не всегда совместимые
12. srub 85 01.07.21 14:29 Сейчас в теме
(11) Уже несколько раз на это натыкался)) Приходится выносить запрос в модуль объекта. Советуют вместо временных таблиц использовать вложенные запросы, хотя читал что 1С рекомендует наоборот не использовать вложенные запросы. В общем иногда приходится плясать с бубном чтобы получить результат)))
13. Alexponenta 01.07.21 14:53 Сейчас в теме
(12) Ну как вариант есть инструкция что: у СКД отключить автозаполнение. И вручную занести данные последнего запроса. И это должно работать.
Оставьте свое сообщение

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