Простой запрос в консоли и скд выполняется по разному #808689


#0 by Sam1C
Добрый вечер! Обычным способ запрос  выдает нужные данные в скд тот же запрос иные. Суть выбирается из регистра накопления отрицательные остатки в разрезе номенклатуры и склада помещаются в ВТ и вторым запрос выбираются остатки в разрезе Номенклатуры и склада по уже приготовленным в ВТ Номенклатуре. В СКД выдаются данные без учета склада, т.е. выдаются только те Номенклатуры, которые имеют минус только в измерении Номенклатура, без СКД все выдается правильно с учетом склада. Собственно запрос: ВЫБРАТЬ     РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты КАК Товары ИЗ     РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(             ,             ,             ,             , Если за комментировать "Товары.Склад КАК Склад," в ПЕРВОМ запросе, то в консоле выдаст также как и в СКД.
#1 by Cyberhawk
Настройки СКД влияют на результирующий запрос
#2 by Sam1C
Если в СКД отправляю первый запрос отдельно, выдает все правильно, т.е. в виртуальной таблице данные верные, список ТМЦ для дальнейшей обработки верен. Но в итог попадает не вся Номенклатура, а только та которая отрицательна только по измерению "Номенклатура"
#3 by Sam1C
да я 3 часа уже мучаюсь, не каких вообще отборов или настроек нет в СКД, голый запрос и вывод детальных записей
#4 by Cyberhawk
"только та которая отрицательна только по измерению "Номенклатура"" // Ну так ты же сам ставишь этот фильтр во втором запросе
#5 by Sam1C
Во втором запросе фильтр по списку Номенклатуры. Первый запрос сформировал список из 10 уникальных Номенклатур к примеру. Но второй выдает только 4, хотя должен выдать этих 10. Тем более НЕ в СКД он и выдает эти 10.
#6 by Sam1C
Опытным путем было просто установлено, что эти 4-ре которые в свернутом виде по измерению Номенклатура с минусом. Т. е. если "Товар А" на "Складе№1" - минус 10,  а на "Складе№2" плюс 10, То в СКД он не попадает (свернуто Товар А = 0), а в запросе без СКД попадает.
#7 by Sam1C
Дело в 1 -ом запросе, а именно в помещении в ВТ, если не помещать в ВТ выдает верные данные, если поместить в ВТ, а потом достать список, выдает не полный список и именно в СКД, обычным запросом все ок. Ниже запрос выдает разные данные: ВЫБРАТЬ
#8 by Sam1C
Если не помещать в ВТ, то СКД дает верные данные. Такое ощущение, что при помещении в ВТ, что-то ни то происходит
#9 by Sam1C
Нервы не выдержали переписал запрос на вложенное условие, заработало и  в СКД:     ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад,     РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты КАК ТоварыНаСкладахОстаткиИОбороты
#10 by Franchiser
Напиши в первом запросе другие имена полей, например, как Склад_ВТ, как Номенклатурп_ВТ
#11 by Franchiser
Оптимизатор СКД у тебя везде склад просто выкидывает, т.к. поле не используется и не помечено как обязательное
#12 by TormozIT
Посмотри запрос, который получается в макете компоновки и станет понятно в чем дело. Его можно посмотреть например в консоли компоновки ИР
#13 by Sam1C
Спасибо, точно оптимизатор убирает первую строку запроса в этом и была проблема.
#14 by Sam1C
только это не помогает и   Роль "Склад" - Измерение, Обязательное, но роль я так понимаю на результирующий запрос влияет, а не на ВТ.
#15 by DexterMorgan
Начальный и конечный остаток нужно всегда вместе выбирать
#16 by Buster007
снимаешь галку "Автозаполнение"
#17 by Cyberhawk
Так твое поле Склад из первой ВТ нигде не используется, вот оно и не выбирается. Хоть зауказывайся.
#18 by Sam1C
Снимал галку, не спасает.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С