Перейти к содержимому
Tez Base

Обработка на Инфостарте

Чек-ап итогов и остатков 1С: месяц, позиция и короткий пересчёт

Когда остаток по позиции не бьётся с движениями, обработка показывает регистр, позицию и первый месяц, где хранимые итоги разошлись с суммой движений. Дальше она предлагает пересчёт за один-два месяца вместо всей истории, выполняет его по кнопке и сверяет заново. Все проверки, кроме самого пересчёта, только читают базу.

Обработка продаётся на Инфостарте за 10 SM, код открыт. Платформа 8.3.20 и новее, управляемые формы, любая конфигурация. К СУБД не подключается: SQL-скрипты формирует, но не выполняет.

Регистр остатков с включёнными итогами хранит готовый остаток на начало каждого месяца и отдельную строку текущих остатков. Запрос остатков на первое число берёт эту строку и движения не читает. Если строка испорчена, ошибку видно в любом отчёте, а перепроведение документов её не исправляет: при записи набора итоги меняются на разницу между старыми и новыми движениями, и у тех же движений эта разница нулевая.

Обычный совет в такой ситуации - пересчитать итоги целиком. На регистре с годами истории это окно на ночь, и до запуска никто не скажет, помог ли он. Обработка сначала находит место поломки, сравнивая итоги с активными движениями на каждой границе месяца, а потом пересчитывает только нужный период.

Сузить пересчёт по складу или товару платформа не даёт: методы пересчёта итогов отбора не принимают. Поэтому обработка выигрывает время за счёт периода, а место поломки показывает с точностью до позиции.

Что внутри

Обзор настроек итогов

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

Сверка с движениями

Остаток из итогов на каждую границу месяца против суммы активных движений, отдельно текущие итоги. Оборотные регистры по месяцам, бухгалтерия по счетам с подчинёнными. Отбор по измерениям, быстрый режим по окну месяцев и оценка объёма до запуска.

План пересчёта и код к нему

Какой период пересчитать, чтобы закрыть найденные расхождения, и готовый код на встроенном языке. План ничего не меняет, код можно отдать администратору.

Пересчёт с проверкой

Выполняется по кнопке после подтверждения, пишется в журнал регистрации, после него сверка запускается снова и ставит вердикт "починилось" или "не починилось".

Движения и качество остатков

Движения непроведённых документов, несуществующие регистраторы, битые и помеченные на удаление ссылки в измерениях. Отрицательные остатки, копеечная "пыль" при нулевом количестве, зависшие остатки по старым документам.

Закрытые периоды и SQL для администратора

Снимок остатков на границах месяцев в JSON и сравнение с ним позже: что поменялось задним числом и какими документами. Четыре скрипта только на чтение под MS SQL и PostgreSQL с подписью регистра 1С у каждой таблицы.

Прогон на тестовой УТ

УТ 11.5.22.67, платформа 8.3.27.1606, MS SQL 2022 на той же машине, 101 регистр накопления. Время снято внутри обработки. Регистр бухгалтерии - копия рабочей базы на 8.3.20, только чтение.

Показатель Значение Как надо Вердикт Что это значит
Обзор настроек итогов 1,0 с - норма 101 регистр накопления и регламентное задание
Сверка регистра товаров на складах 0,2-0,7 с - норма 2 898 позиций, 5 545 движений, 14 границ месяца
Сверка оборотного регистра выручки 0,6-9,0 с - норма 5 292 движения, 13 месяцев; разброс - холодный и тёплый кэш
Строка итогов, испорченная на копии движения 52, итоги 59 разница 0 чинить найдена позиция и граница 01.08, остальные месяцы и текущие итоги чистые
Пересчёт по плану и повторная сверка 150 мс - норма два месяца вместо всей истории, повторная сверка без расхождений
Проблемы в движениях, все регистры 79 с - инфо 101 регистр порциями по 20, в самом большом 10 млн движений
Качество остатков 12,3 с - инфо 133 проверки по всем регистрам остатков
Бухгалтерия, один счёт с подчинёнными 370 с - внимание быстрый режим, четыре границы, 120 451 движение в окне; полная история не уложилась в 25 минут

Разбор результата

На регистрах накопления тестовой базы сверка занимает секунды, и испорченная строка находится с точностью до позиции и месяца. Тяжело только с бухгалтерией рабочего размера: там сверка по одному счёту идёт минутами, поэтому обработка начинает с оценки объёма, предлагает быстрый режим и отбор, а запускать её лучше вне пиковых часов.

Как пользоваться

  1. 01

    Посмотреть обзор

    Вкладка "Обзор" показывает настройки итогов по всем регистрам с вердиктом у каждой строки. Здесь видно, где итоги выключены или период рассчитанных итогов давно не сдвигался.

  2. 02

    Сверить нужный регистр

    Выбрать регистр, при необходимости отбор по складу или номенклатуре, глубину в месяцах. Для большого регистра сначала оценка объёма и быстрый режим.

  3. 03

    Открыть план

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

  4. 04

    Пересчитать и проверить

    "Выполнить пересчёт" после подтверждения, лучше вне рабочего времени. Повторная сверка идёт сама, итог словом: починилось или нет.

Не получается самим? Напишите, разберёмся

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

Стоимость
450 000 - 600 000 ₸ТЗ и разовая наладка, без налогов; сопровождение - от 150 000 ₸/мес отдельно

Разборы по теме

Остатки в 1С не сходятся с движениями: как найти сломанный месяц итогов и не пересчитывать всю историю

Отчёт по движениям даёт одно число, запрос к остаткам другое, перепроведение ничего не меняет. Разбираем, как отличить сломанные итоги от ошибки в движениях, каким запросом найти позицию и месяц расхождения, почему строку итогов на 1 августа чинит пересчёт за август, а не за июль, в каком порядке пересчитывать текущие итоги и как посмотреть саму строку итогов на SQL. Все шаги проверены на тестовой копии УТ 11.5 с испорченной строкой.

CHECKDB нашёл ошибки в базе 1С: порядок действий до REPAIR и после

CHECKDB советует repair_allow_data_loss и на битый индекс, и на потерянные документы. Разбираем по шагам, что делать в первый час: что сохранить до исправления, как по таблице и номеру индекса понять, что задето в 1С, как перестроить битый индекс без потерь и как получить список пропавших документов, пока REPAIR не удалил их молча. Проверено на копии УТ для Казахстана с испорченными страницами.

Расхождение остатков 1С и WMS: как устроить сверку, которой можно верить

Когда сверка 1С и WMS регулярно находит расхождения, а склад их не подтверждает, первым делом проверяют саму сверку. Шесть требований к ней таблицей, порядок проверки по шагам и цифры из разбора робота, который за 60 дней сам создал 62,7% оборота технического склада.

Дедлок 1205 при проведении, а движения не пересекаются: что делать

Проведение падает с 1205, наборы записей по разным регистраторам не пересекаются ни одним ключом, диагностика по таблице движений возвращает пустоту. Это отдельный класс отказов, он живёт на таблице итогов, и лечится не тем, чем лечатся два соседних класса. Определитель по графу, три запроса проверки на своей базе, разбор пяти вариантов лечения с ценой каждого и список того, что в этом случае не поможет.

Карточка на Инфостарте →

Рядом по теме

Частые вопросы

Почему перепроведение документов не исправило остаток?

При записи движений итоги меняются на разницу между старым и новым набором. Если движения те же, разница нулевая, и ошибка, которая уже лежит в строке итогов, остаётся. Мы проверили это на копии: перезапись 1 800 записей трёх документов строку не починила.

Можно пересчитать итоги только по одному складу?

Нет. ПересчитатьИтоги, ПересчитатьИтогиЗаПериод и ПересчитатьТекущиеИтоги отбора не принимают и работают по всему регистру. Обработка сужает пересчёт по времени: один-два месяца вместо всей истории.

Какие права нужны?

Для пересчёта - право "Управление итогами" на регистр. Обзор, сверка, план, проверки движений и остатков только читают базу.

Работает с регистрами бухгалтерии?

Да, сверка идёт по счетам с подчинёнными. На базе рабочего размера это минуты даже по одному счёту, поэтому сначала стоит посмотреть оценку объёма и включить быстрый режим по окну месяцев.

Что показывает сверка, если итоги у регистра выключены?

Тогда остатки считаются по движениям на лету, и разница всегда ноль. Проверять нечего, обработка отметит это в обзоре, а разбираться стоит в том, почему итоги выключены.

Если неправильные сами движения, сверка это увидит?

Нет, итоги честно соответствуют движениям, и разница будет нулевой. Для этого есть отдельный раздел проверок движений: непроведённые документы, несуществующие регистраторы, битые ссылки в измерениях.

Бесплатный экспресс-аудит вашей 1С

За 1-2 дня посмотрим вашу базу, найдём, где теряется производительность, и скажем, что с этим делать. Без обязательств.

Получить бесплатный экспресс-аудит

Обсудим задачу

Быстрее всего в WhatsApp: напишите пару строк о задаче, ответим в течение рабочего дня.

[email protected]

Удобнее оставить заявку через форму