12. Механизмы оперативного учета
#35

Готовишься к экзамену?

Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.

Перейти в бота

При записи набора записей в регистр накопления в 1С, какие из перечисленных возможностей оптимизации доступны для повышения параллельности (уменьшения блокировок при записи)?

Можно отключить использование итогов регистра при записи (не обновлять таблицу итогов во время записи), чтобы повысить параллельность.
Неправильно: Такая возможность действительно существует и часто применяется при массовых загрузках, потому что пересчет итогов при каждой записи усиливает конкуренцию и блокировки. Но в вопросе требуется выбрать единственный вариант, который отражает все доступные возможности, а этот пункт описывает только одну из них.
Можно отключить использование текущих итогов при записи (не обновлять текущие итоги во время записи), чтобы повысить параллельность.
Неправильно: Отключение текущих итогов тоже возможно и может снизить количество конфликтов при интенсивной записи движений. Однако этот вариант также неполный, потому что существует еще одна отдельная возможность оптимизации, указанная в другом пункте.
Доступны оба варианта: можно отключать и использование итогов, и использование текущих итогов (в зависимости от задачи).
Правильно: Платформа позволяет управлять тем, будут ли при записи пересчитываться итоги и текущие итоги, что нередко повышает параллельность записи наборов записей. При этом важно помнить о последствиях для отчетов/виртуальных таблиц остатков и о необходимости последующего расчета итогов при возвращении к обычной работе.

Пояснение

Итоги и текущие итоги в регистрах накопления - это служебные «сводные» данные, которые ускоряют получение остатков/оборотов, но требуют дополнительной работы при записи движений. При высокой нагрузке (много документов, параллельные пользователи, обмены, загрузки) обновление итогов при каждой записи может усиливать блокировки и снижать параллельность. Что можно сделать при массовых операциях: - Отключить использование итогов: запись будет идти в таблицу движений без пересчета итогов на каждом шаге. Это ускоряет загрузку и уменьшает конкуренцию за таблицы итогов. - Отключить использование текущих итогов: уменьшает нагрузку и блокировки, связанные с поддержанием «актуальных» итогов для оперативных запросов. Практический пример: вы загружаете большой объем движений (например, перенос остатков или импорт продаж) и видите, что запись «упирается» в блокировки по регистрам. В таких задачах часто временно отключают итоги/текущие итоги на период загрузки, выполняют запись, а затем запускают пересчет (расчет) итогов и возвращают обычный режим. Важно учитывать последствия: - Пока итоги/текущие итоги отключены или не пересчитаны, получение остатков/оборотов (через стандартные механизмы и виртуальные таблицы) может быть недоступно, работать медленнее или показывать некорректную картину до выполнения расчета. - После завершения массовой записи обычно выполняют регламентный расчет/восстановление итогов и только затем контролируют результаты отчетами. Лучший подход: использовать эти отключения точечно - для пакетных загрузок и технологических операций, а в обычной работе держать включенными, чтобы пользователи получали быстрые остатки и корректные отчеты.