gifts2017

Пересчет итогов регистров не монопольный

Опубликовал Андрей (AnKonAlm) в раздел Обработки - Универсальные обработки

Пересчет итогов регистров - не монопольный. Можно в Транзакции.

Работаю в крупной компании, база на MS SQL, но итоги 2-3 раза в месяц слетают, т.е. смотришь - записи в регистрах есть, а итоги по ним система собирает не верно. Вот, написал простую обработку, которая пересчитывает таблицы помесячных итогов в регистрах, при этом пользователей из базы выгонять не требуется.

Обработка простая, может кто уже аналогичное и писал, я искал - не нашел.

Методика такая - открываем обработку -> Помечаем галочками пересчитываемые регистры -> Выставляем Даты Начала и Окончания -> Жмем на нужную кнопку. Остается дождаться окончания работы, о чем выйдет сообщение.

 Не забываем про плюсики :) Всем удачи!!!

Скачать файлы

Наименование Файл Версия Размер
ПересчетИтоговРегистров 239
.epf 9,92Kb
19.06.15
239
.epf 9,92Kb Бесплатно

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. Станислав Патырило (wondermaker) 10.10.13 09:05
Я себе подобное делал, но выводил дополнительно количество записей, подлежащих пересчету. Иначе можно "попасть", если надо пересчитать большой регистр - несколько часов тормозов для всех обеспечено.
2. Андрей (AnKonAlm) 10.10.13 10:27
(1) wondermaker,
Спасибо за идею сделаю на днях!

Сейчас, если я попадаю - т.е. система конкретно подвисла,
тогда я делаю просто аварийное завершение работы,
и заново пересчитываю итоги меньшими порциями (по 1 регистру и по 1 месяцу).
Хотя, вывод количества записей - интересное, но тоже не координальное решение -
Ведь на скорость пересчета могут влиять и текущие транзакции пользователей.
3. 1 1 (natalil05) 14.07.14 12:56
4. Андрей (AnKonAlm) 14.07.14 13:34
(3) natalil05, Пожалуйста, Наташа!!! Удачи Вам!!!
5. metal doctor (metmetmet) 19.07.14 22:23
Я перед запуском подобной обработки запускал обработку для проверки расхождений между правильным значениями итоговых таблиц регистров, полученных расчетным путем, и текущими значениями в итоговых таблицах регистров.
Тогда пересчитывать нужно будет только определенные регистры.
6. Алексей Т. (CratosX) 19.06.15 17:40
(5) metmetmet, пересчёт итогов так же ещё "схлопывает" строки таблицы с нулевым значением, так что это полезно делать вне зависимости от наличия расхождений
7. metal doctor (metmetmet) 20.06.15 08:12
(6) Согласен, в идеале, наверное, лучше разделять ситуации планового пересчета итогов и экстренного, когда обнаруживается расхождение и нужно проверить остальные регистры на наличие расхождения.
8. Алекс Ю (AlexO) 04.08.15 15:41
(6) CratosX, пересчет итогов лишь пересчитывает итоги в отдельной "встроенной" таблице, если вам известно, что такое пересчет итогов. Никаких "схлопываний" нулевых строк не происходит (при этом, кроме всего прочего и отсутствия такого механизма в 1С, программа еще и должна знать, что это такое - "схлопнуть нулевые строки": нулевые по количеству, по сумме, по пустой ссылке...).
Они как были, так и остаются в регистрах. А транкейт таблиц SQL (удаление удаленных записей из базы) происходит при ТИИ. И то это у 1С нигде не обозначено в документации.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа