В процессе эксплуатации конфигурации 1С:Розница пользователи иногда сталкиваются с критической ошибкой: при попытке заполнить документ Пересчет товаров программа аварийно закрывается без вывода диагностических сообщений. Разберем, почему это происходит и какие шаги нужно предпринять для диагностики и устранения данной неисправности.
Когда 1С просто «схлопывается» через несколько секунд после выполнения действия (например, нажатия кнопки «Заполнить»), это почти всегда указывает на ошибку на уровне платформы или нарушение целостности среды выполнения. Рассмотрим основные сценарии, которые мы можем проанализировать вместе:
1С:Предприятие.Рассмотрим ситуацию, с которой часто сталкиваются администраторы. Если база была восстановлена из копии и запущена на версии платформы, отличной от той, что используется на основном сервере, возможны непредсказуемые сбои. В нашем случае, использование 8.3.15 на одной машине и 8.3.17 на другой привело к краху при выполнении стандартной процедуры заполнения.
Что делать: Убедитесь, что на всех рабочих местах установлена идентичная версия платформы. Если проблема наблюдается на одном компьютере, приведите его версию в соответствие с актуальной, на которой работает остальная сеть. В большинстве случаев обновление платформы до последней стабильной версии решает подобные «загадочные» вылеты.
Если обновление платформы не помогло, нам необходимо выяснить, на каком этапе выполнения кода происходит обрыв. Для этого мы можем воспользоваться встроенным отладчиком:
Пересчет товаров.Заполнить).Если программа вылетает при выполнении конкретного запроса, например:
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ ... ИЗ Справочник.Номенклатура ...";
Результат = Запрос.Выполнить().Выгрузить();
Скорее всего, проблема кроется в данных (битых ссылках или поврежденных объектах) или во внешних модулях, обращающихся к оперативной памяти.
Часто причиной является накопленный «мусор» в профиле пользователя. Разберем, как произвести очистку:
%AppData%\1C\1CEStart (или в папку профиля пользователя в Local/Roaming).Если «вылет» происходит мгновенно и логи не успевают записаться, настройте технологический журнал (ТЖ) на сервере. В файле logcfg.xml можно настроить фильтрацию событий уровня EXCP (ошибки). Если 1С ссылается на временные файлы, попробуйте очистить системные папки Temp пользователя, так как нехватка места или права доступа к ним также провоцируют аварийное завершение процесса 1cv8.exe.
Итог нашей работы: Помните, что чудес в 1С не бывает. Если документ перестал заполняться, всегда есть причина: от простой разницы в версиях платформы до специфических ошибок в коде, которые проявляются на конкретных данных. Идите от простого (кэш, обновление платформы) к сложному (трассировка, дампы памяти), и вы обязательно найдете источник проблемы.