Результат запроса по регистру содержит нулевые значения функций #453684


#0 by kalinin
Здравствуйте! Вот не могу понять, как же так?! |без итогов; Результат: Номенклатура | Партия | Остаток и т.д. А в описании сказано, что во временный набор данных попадают строки с ненулевым значением хотя бы одной из функций.
#1 by Злопчинский
а зачем тебе итоги функции если без итогов?
#2 by kalinin
если убрать "без итогов" и Выгрузить(ТЗ,1,0) - то получили бы след.вариант:                        0 (общий итог) 1                       1 (итог по группировке Н) 1              1        1 и вопрос остается открытым.
#3 by kalinin
блин, все переехало (
#4 by kalinin
+ общий итог 1
#5 by Злопчинский
так что получить надо?
#6 by kalinin
вопрос в том, почему в результат запроса попадают строки с нулевым количеством?
#7 by Злобный Йожег
наверно потому что остатка по ним нет
#8 by kalinin
ээээ... цитата: "При работе запроса по регистрам следу¬ет помнить, что в этом случае обязательно наличие Функций, причем только в том случае, когда их вычисленные значения отличны от нуля (хотя бы одной из заданных Функций), ___найденные объекты включаются во временный набор данных___, формируемый запросом. Если при работе запроса по регистрам в тексте запроса операторы функций опущены, то программа не выдаст никакого сообщения об ошибке, добросовестно пройдет по всем Группировкам, не вычислит никаких значений Функций и, значит, ничего не запишет во временном файле."
#9 by Злопчинский
(ТЗ,0,0) - выводить значения групп и функций, при этом итоги по группировкам не выводить... + в запросе Без итогов - как-то оно криво имхо одно с другим согласуется... ???
#10 by AcaGost
Движения были? Не выведет только те, где за период небыло движений и остаток равен нулю.
#11 by los_hooliganos
период пакеж??
#12 by los_hooliganos
ага, тоже самое подумал))
#13 by dk
можно извратиться, если лениво в ТЗ удалять
#14 by dk
вернее <> )
#15 by miki
имхо в - пример кривого закрытия регистров. Посмотри regprint'oм остатки по _всем_ измерениям... Сдается мне, что для твоих номенклатуры/партий остатки по другим измерениям не нулевые.
#16 by los_hooliganos
неправильно тебе сдается миша.
#17 by МихаилМ
все правильно выводится. достаточно убрать группировку  "номенклатура" и нулевые остатки исчезнут. по измерению "номенклатура"  кон ост ненулевой.
#18 by los_hooliganos
альтернативная версия. предлагаю голосование.)
#19 by miki
телепат? обоснуй, плз... хочеца посмотреть результат работы regprint'a для всех измерений/ресурсов номенклатуры из .
#20 by los_hooliganos
да все просто вычисляются все агрегаты периода. те и начост и приход и расход и коност. просто в данном 1с-ном запросе берется последняя функция. версия в мне тоже интересна.
#21 by miki
>>вычисляются все агрегаты периода это чье-то авторитетное мнение или есть ссылка где про это почитать?
#22 by los_hooliganos
прочитать вряд ли где есть. но это по аналогии как 1с работает с таблицей регистров остатков, она пишет туда 0 чтобы знать, что его не следует переносить в следующий период.
#23 by miki
в как раз раз регистр остатков. Не перенесет, если "она запишет" 0 во все измерения. Следуя утверждению в могу я сделать вывод, что запрос за период (допустим год, не важно) с одной функцией "КонОст" будет требовать столько же системных ресурсов (и времени на исполнение) как и запрос за тот же период с набором всех функций: НачОст, Приход, Расход, КонОст?
#24 by los_hooliganos
предположу что да, ибо коност за период будет расчитан от начост+приход-расход.
#25 by miki
простой эксперимент показывает, что нет. Даже без замера производительности, на глаз, разница во времени исполнения в разы (на большой базе, за большой период) >>ибо коност за период будет расчитан от начост+приход-расход. не совсем правда. Т. е. в общем случае неправда. Не от НачОст, а от последнего закрытого периода регистра... И даже если НачалоПериода запроса совпадет с датой закрытия перода регистра, то НачОст не будет вычисляться, а возьмется готовый из таблицы. Насчет Приход-Расход согласен. Но только за текущий период регистра, вне зависимости от периода запроса (если в запросе только одна ф-ция КонОст)
#26 by МихаилМ
В я ошибся. Решил проверить. Все равно выводит нулевые остатки.
#27 by los_hooliganos
это очень странно. ты пробовал проверять на "сдвинутых" периодах. те чтобы начост брался не из rg?
#28 by МихаилМ
то пробовал. Я тоже на это надеялся. как вариант. Выводятся позиции по которым есть ненулевые остатки  хотябы по одному ресурсу. тк в ms sql profiler запрос расчитывает остатки по всем измерениям и ресурсам. проверялось на 25 релизе SQL.
#29 by los_hooliganos
удивительный мужик меня вывез в гелинжик... ну дак он все берет для собственной дбф-ки в темповой папке, шобы потом над ним куролесить
#30 by miki
а по-моему, логично. Запрос только с КонОст хоть за пару лет, хоть только за январь 2010 выпорлняется за одинаковое время. Запрос за год только с КонОст выполняется в разы быстрее, нежели за тот же период, но со всем набором функций. оттож. кстати, также интересен результат если убрать из условие... да и "без итогов" тоже
#31 by Злопчинский
ну как заборете - отпишите результат.. не верю я в приведени я
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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