Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Периодичность в запросе по оборотному регистру накопления.

Периодичность в запросе по оборотному регистру накопления.
Я
   НачинающийВ1С
 
10.04.19 - 13:44
Добрый день.
Есть оборотный регистр накопления. Создан до меня и уже два года как работающий. И есть куча алгоритмов, которые на нем завязаны и работали правильно до сегодняшнего дня.

Сейчас нашел ошибку в данных. Результаты запроса задваиваются.
Запрос такой:
ВЫБРАТЬ
    НашРегистрОбороты.Номенклатура,
    НашРегистрОбороты.ХарактеристикаНоменклатуры,
    НашРегистрОбороты.КоличествоОборот КАК Количество
ИЗ
    РегистрНакопления.НашРегистр.Обороты(
            &НачалоПериода,
            &КонецПериода,
            авто,
            Параметр = &Параметр
                И Категория = ЗНАЧЕНИЕ(Перечисление.Параметры.Параметр)
                И Операция = ЗНАЧЕНИЕ(Перечисление.Параметры.Параметр1)) КАК НашРегистрОбороты


Данные выгребаются за год, поэтому параметр НачалоПериода это у нас НачалоГода(ТекущаяДатаСеанса()), а КонецПериода(КонецГода(ТекущаяДатаСеанса()).
Количество почему-то задваивается. И я никак  не могу понять почему. Если в консоли запросов ставлю конец периода, например, 10 апреля, то количество правильное. Если хотя бы 1 мая, количество двоится.
Если периодичность ставлю не авто, а Регистратор, то запрос отрабатывает как нужно и данные возвращает правильные.

В чем проблема? И почему раньше ошибок не было, а сейчас есть?
 
 
   DrWatson
 
1 - 10.04.19 - 14:04
Что предшествовало появлению этой ошибки?
   НачинающийВ1С
 
2 - 10.04.19 - 14:06
(1) Сделал обновления макетов в подключенных обработках. И на следующий день пользователи нашли ошибку, которая появилась, мол, в рамках моего обновления. Хотя я эти документы и запросы даже близко не трогал. Последнее их изменение полтора года назад было, судя по комментариям.
   sqr4
 
3 - 10.04.19 - 14:07
(0) пересчет итогов попробуй
   1Сергей
 
4 - 10.04.19 - 14:07
Ставь не Авто, а Период
   НачинающийВ1С
 
5 - 10.04.19 - 14:08
(1) По всей видимости, раньше просто ошибок не замечали. Но почему вообще количество задваивается, если периодичность не указывать или указывать "авто"? Если ошибка здесь, вероятно, мне надо еще кучу таких аналогичных запросов найти и поправить.
   НачинающийВ1С
 
6 - 10.04.19 - 14:09
(4) С периодом тоже результат двоится, как с авто.
   1Сергей
 
7 - 10.04.19 - 14:10
(6) я так понимаю, в (0) запрос не весь
   НачинающийВ1С
 
8 - 10.04.19 - 14:12
(7) Запрос весь. В данном случае этот кусок просто из события "При изменении".
Мы заполняем поле, и на основании Параметра заполняем в табличной части количество и номенклатуру.
   1Сергей
 
9 - 10.04.19 - 14:13
(8) тогда соглашусь с (3)
   DrWatson
 
10 - 10.04.19 - 14:13
(5) Нет ошибок в тексте запроса. Авто - вполне нормальный вариант.
 
 Рекламное место пустует
   SuperVasek
 
11 - 10.04.19 - 15:42
(0) Если абсолютно точно задваивается, то, да, пересчитай итоги.
   Жан Пердежон
 
12 - 10.04.19 - 15:54
ещё не советовали итоги пересчитать?
   НачинающийВ1С
 
13 - 10.04.19 - 16:47
(12) Советовали дважды.

В общем, пересчитал итоги по этому регистру, проблема исчезла.

Но возник вопрос, каким образом данные то множились?

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

Забавно что это случилось именно после моего обновления макетов, а не, например, после обновления релиза. Итоги, кстати, здесь не пересчитывали никогда.

Кстати, верно ли я понимаю, эти итоги можно пересчитывать необязательно в монопольном режиме из конфигуратора, а можно прямо внешней обработкой в предприятии?
Как часто Вы делаете эти процедуры (обязательно в целях профилактики или когда возникают проблемы?)
   НачинающийВ1С
 
14 - 10.04.19 - 16:49
И большое спасибо всем) Я до сегодняшнего дня и не знал о таком механизме как пересчет итогов.
   sqr4
 
15 - 10.04.19 - 16:52
(13) что то случилось с таблицей итогов, она сломалась, почему да черт его знает, базу не так закрыли в момент транзакции или еще что то.
   1Сергей
 
16 - 10.04.19 - 16:54
Может, динамически обновлял
   НачинающийВ1С
 
17 - 10.04.19 - 16:56
(16) Не, мы тут никогда динамически не обновляем. Ходят легенды что у кого-то когда-то что-то поломалось из-за этого, поэтому динамическое обновление строжайше запрещено)

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует