Top.Mail.Ru
Меню
Каталог Программы 1С Опыт и отзывы Услуги Компания Интересное Контакты
Обработка выполняет свертку (сжатие) базы 1С:ERP. Самый длительный этап свертки - удаление старых записей регистров и пометка на удаление старых документов выполняется в многопоточном режиме. Выбирайте число потоков самостоятельно. В планах добавить отбор по организации при свертке (пишите, если вам это необходимо).

Алгоритм создания вводов остатков взят из стандартной обработки свертки 1С:ERP
Многопоточная свертка 1С:ERP

Многопоточная свертка 1С:ERP

Обработка выполняет свертку (сжатие) базы 1С:ERP. Самый длительный этап свертки - удаление старых записей регистров и пометка на удаление старых документов выполняется в многопоточном режиме. Выбирайте число потоков самостоятельно. В планах добавить отбор по организации при свертке (пишите, если вам это необходимо).

Алгоритм создания вводов остатков взят из стандартной обработки свертки 1С:ERP.

Купить в один клик
Многопоточная свертка 1С:ERP
19 950 ₽

Отзывы клиентов

Загрузка галереи...

  • Отзыв от компании ООО «ПРОТОН» — российский производитель и дистрибьютор металлической мебели
  • Отзыв от компании Компания Еврохимсервис уже более 20 лет является проверенным и надежным партнером для российских сельхоз товаропроизводителей.
  • Отзыв от компании АРГО
  • Отзыв от компании Волгаметраком
  • Отзыв от компании Oxtron
  • Отзыв от компании Кристалл
  • Отзыв от компании Дон-Партнер
  • Отзыв от компании ВИЛАР
  • Отзыв от компании Авис-софт

Почему Moscowsoft?

  • Опыт работы сотрудников с 2007 года.
  • Компания MoscowSoft появилась в 2015 году.
  • Специализация: переносы данных 1С и интеграция 1С с маркетплейсами.
  • Официальный партнер фирмы 1С в статусе "1С:Франчайзи".
  • Являемся коммерческим партнером фирмы Инфостарт (Инфостарт - дочернее предприятие фирмы 1С).
  • С 2015 года продали 4850 лицензий на собственные программные продукты.
  • Отзывы клиентов >>
  • Среди клиентов - крупнейшие российские компании. Изучить список >>
  • 77 программных продуктов зарегистрированы в реестре российского ПО.
  • 6 сертификатов "1С:Специалист" и 7 сертификатов "1С:Профессионал" (сертификаты выдает фирма 1С как подтверждение квалификации сотрудников)
  • Команда состоит из четырех сотрудников в офисе и пятнадцати удаленных программистов 1С.
  • Большой выбор тарифов по переносу данных между программами 1С. С помощью обработки можно выполнить переход, как самостоятельно (тариф PRO), так и заказать перенос "под ключ" (тарифы VIP или MINI-VIP).
  • Остались вопросы? Звоните по номеру +7 (499) 67-333-75 или задайте вопросы по почте task@MoscowSoft.com

Описание: Этапы выполнения свертки 1С:ERP

Свертка базы выполняется в три этапа:

  • Этап 1. Создание документов ввода остатков.
  • Этап 2. Удаление старых движений по регистрам. Пометка на удаление старых документов.
  • Этап 3. Проведение документов ввода остатков.

Ограничения обработки свертки 1С

Некоторые данные не могут быть свернуты:

  1. Неподтвержденный НДС по ставке 0%
  2. Отражены операции поступления импортных товаров, по которым ГТД еще не оформлена
  3. Денежные средства в пути (за исключением операций поступления из банка по эквайрингу)
  4. Товары отгруженные без перехода права собственности
  5. Товары к оформлению отчетов комитенту
  6. Учет внеоборотных активов версии 2.2
  7. Выбывающие основные средства (счет 01.09)
  8. Взаиморасчеты с контрагентами акционерами
  9. Незавершенное производство
  10. Брак в производстве

Эти сведения при свертке будут удалены. Не рекомендуется выполнять свертку информационной базы, если используется перечисленный функционал.

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

Введение

С развитием компании и ростом документооборота информационная база 1С:ERP со временем значительно разрастается. Накопление старых и ненужных документов приводит к большим объемам данных (иногда сотни гигабайт) и снижает быстродействие системы. Для оптимизации работы и сокращения базы применяется процедура свертки базы. Свертка — это «обрезка» истории: все документы и записи регистров до указанной даты свертки заменяются их итоговыми остатками. В результате вместо множества бухгалтерских и управленческих движений остаётся один набор «вводов остатков», а база данных освобождается от тысяч старых записей. Этот процесс требует подготовки и аккуратного выполнения: всегда делайте резервную копию ИБ и работайте с ней.

Задача стандартной свертки в 1С:ERP

Стандартный механизм свертки 1С:ERP, встроенный в платформу, состоит из трёх этапов: (1) ввод начальных остатков по всем регистрам на дату свертки; (2) удаление данных прошлых периодов: стираются движения регистров и старые документы отмечаются на удаление; (3) сверка остатков с исходной базой. При этом формируются специальные документы «Ввод начальных остатков» по остаткам ТМЦ, взаиморасчетам, деньгам и другим учетным регистрам. Затем стандартная свертка помечает ненужные документы на удаление, но не всегда физически удаляет их из БД. После пометки разработчику приходится запускать дополнительные процедуры очистки: стандартный механизм удаления помеченных объектов часто «зависает» при десятках тысяч записей. В результате весь процесс свертки на больших базах может занимать дни и даже не привести к реальному уменьшению БД.

Преимущества многопоточной обработки

Для ускорения длительных операций в 1С:ERP используется механизм фоновых заданий и многопоточности (через расширение «Длительные операции» или функции платформы). Такой подход особенно эффективен, когда данные можно разбить на независимые блоки. Параллельное выполнение разнородных участков кода позволяет значительно повысить производительность на больших объёмах данных. В частности, можно обрабатывать сразу несколько блоков регистров или документов в отдельных потоках, если они «не пересекаются» по измерениям. Например, при большом количестве движений по регистрам можно разделить дату или диапазон документов на несколько частей и запустить удаление каждой части в параллельном задании. Как отмечено экспертами, возможность «разделить фоновый процесс на потоки и выполнять операцию в потоках» позволяет ускорить операции с большим объёмом данных.

Алгоритм ввода остатков (стандартный)

Первый этап свертки – формирование документов ввода остатков – выполняется по стандартному алгоритму 1С:ERP. Наша обработка использует именно этот проверенный механизм. Система автоматически рассчитывает остатки по каждому регистру (балансовые и управленческие) на конец указанной даты и заполняет документы «Корректировка записей регистров накопления» или специальные «Ввод начальных остатков». Например, после выбора даты свертки 31.12.2024 обычно создаются документы на дату 01.01.2025 по всем видам остатков: складские запасы, остатки по кассе и счетам, взаиморасчёты с контрагентами и т.д. Ключевой момент – дату документов ввода остатков ставят следующим днём после свёрнутой даты; иначе эти документы попали бы под свертку. Это гарантирует, что остатки сформируются корректно и в соответствии с алгоритмами платформы.

Многопоточное удаление старых данных

Ключевой новинкой нашей обработки является именно второй этап – удаление старых записей – в многопоточном режиме. После создания документов ввода остатков система должна удалить движения регистров и отметить на удаление документы за всё время до даты свертки. В стандартной обработке это делается последовательно и может занимать очень много времени. Мы разделяем эту задачу на N потоков, которые одновременно чистят разные части данных. Алгоритм следующий:

  1. Подготовка выборки: с помощью запроса выбираем все движения регистров и ссылки на документы, «устаревшие» (дата до даты свертки). Например, запрос может получать ключи записей из регистра накопления по критерию. Важно: каждый поток будет работать со своей порцией таких данных.
  2. Разбивка на порции: разделяем полученный список ключей или промежутков дат на несколько частей – по числу потоков. Например, при 4 потоках первая четверть движений удаляется первым потоком, вторая – вторым и т.д. Если объектов много, последнему потоку даётся и оставшийся «хвост».
  3. Параллельное удаление: запускаем фоновую многопоточную задачу. В платформе 1С (в расширении БСП) это делается через ДлительныеОперации.ВыполнитьФункциюВНесколькоПотоков или аналог. Каждый поток вызовет одну и ту же функцию-удаления, но с разными параметрами (порцией ключей или диапазоном дат). Каждый поток удаляет свою часть записей, при этом интерфейс не блокируется – всё выполняется в фоновом режиме. Благодаря параллелизму можно в разы сократить время процедуры: как замечено, многопоточный подход «позволяет увеличить производительность операции с большим объёмом данных».

Настройка потоков и фильтр по организации

При запуске многопоточной свертки пользователь задаёт число потоков – обычно равное или немного больше числу ядер сервера. (Заметьте: слишком много потоков не даёт пропорционального ускорения и может привести к переключению контекста CPU; оптимальное количество обычно 4–8, но его стоит подобрать экспериментально.) Кроме того, в планах реализовать в обработке опциональный отбор по организации: т.е. при необходимости можно очищать данные только по одной фирме. Пока фильтр не реализован, но при заказе расширенной версии мы учтём пожелания по отбору. Возможность указать организации будет полезна, если в холдинге в одной базе ведётся учет нескольких компаний, и нужно сжимать данные выборочно.

Пошаговая инструкция работы с обработкой

Ниже приведён пример шагов для сверки базы с нашим решением (ссылка на физический запуск зависит от интерфейса вашей системы):

  1. Шаг 1 – Подготовка ИБ: Создайте резервную копию базы и протестируйте свёртку на копии. Убедитесь, что установлен запрет на изменение свернутого периода (дата запрета редактирования). Закройте все месяцы до даты свертки (например, 31.12.2024) и завершите документы.
  2. Шаг 2 – Запуск ввода остатков: В форме обработки укажите дату свертки (например, 31.12.2024). Нажмите «Создать документы ввода остатков». Система автоматически создаст документы «Ввод начальных остатков» на дату 01.01.2025 по всем регистрам (склад, касса, расчеты и т.д.). Проверьте их в базе – остатки в них должны соответствовать итогам предыдущего периода.
  3. Шаг 3 – Параллельное удаление: В настройках обработки выберите число потоков (например, 4). Запустите функцию «Свернуть базу». Наш код разобьёт список устаревших данных на 4 части и одновременно удалит их в 4 фоновых задачах. Во время выполнения на экране будет отображаться прогресс (0–100%). Обычно в журнале логов обработки указывается количество удалённых записей каждым потоком и общее время.
  4. Шаг 4 – Проверка и сверка: После завершения процесс сверки запустится автоматически (этап 3 стандартного алгоритма). Система сравнит остатки по каждому регистру в «свернутой» копии и исходной базе. Итоговые суммы по ресурсам должны совпадать. Если найдены расхождения, их анализируют более детально. Обычно расхождения отсутствуют при корректно проведённой свертке.
  5. Шаг 5 – Завершение: Если всё прошло успешно, можете переименовать протестированную копию ИБ в рабочую базу (или сделать её новой базой на сервере). Также проверьте отчеты по складу, кассе, взаиморасчетам – они должны показывать архивные остатки вместо движений.

Особенности и рекомендации

Обратите внимание на важные нюансы: свертку ИБ следует выполнять под учётной записью администратора и только на стабильной копии. Запуск процедуры на живой базе может привести к сбоям. Обычно свертку делают на выходных: параллельно пока одни специалисты очищают базу, другие продолжают вести учёт в «новом» (свежем) экземпляре. Будьте готовы к тому, что сами документы вводов остатков после свертки нужно проверить вручную – их возможно придётся скорректировать, если в учетной базе были ошибки. Полная автоматическая корректировка не всегда возможна.

Заключение и призыв к действию

Применение многопоточной свертки 1С:ERP позволяет существенно сократить время очистки регистров на больших объёмах данных и поддерживать базу в оптимальном состоянии. Такой подход особенно эффективен на многопроцессорных серверах: вместо последовательного удаления сотен тысяч записей, система выполняет параллельные операции, что даёт мультикратный выигрыш в скорости. Мы рекомендуем использовать этот метод для крупных баз или когда стандартная свертка занимает слишком много времени. Благодаря знакомым алгоритмам ввода остатков наша обработка гарантируюет корректность итоговых данных. Если вы хотите узнать больше или заказать внедрение многопоточной свертки — свяжитесь с командой MoscowSoft, подпишитесь на нашу рассылку и ознакомьтесь с другими статьями на сайте. Задавайте вопросы – мы рады помочь сделать вашу 1С:ERP быстрее и стабильнее!

Быстрый заказ
На этой странице можно приобрести программный продукт от компании MoscowSoft онлайн. Разработка будет автоматически отправлена вам на указанный адрес электронной почты сразу же после получения нами оплаты. В случае задержки доставки более 30 минут звоните +7 (967) 051-90-52. Оплата производится через сервис ЮKassa. Доступен широкий перечень способов оплаты - от банковской карты до Яндекс.Денег и прочее.

Обратите внимание, при оплате онлайн будет предоставлен электронный чек. Если вам нужны закрывающие документы (договор и акт о передаче прав на ПО), то оплатить заказ следует по счету на оплату от юридического лица. В этом случае вам нужно сделать заказ через корзину на сайте.

Совершая оплату, вы подтверждаете свое полное согласие с условиями договора-оферты, опубликованными на странице: https://moscowsoft.com/company/oferta/