Ошибка в 1С ЗУП «Начало периода болезни не может быть меньше 1 января 1900 г.»: как исправить
Содержание
Короткий ответ: в 90% случаев ошибка Начало периода болезни не может быть меньше 1 января 1900 г в 1С ЗУП лечится обновлением релиза до актуального и повторным перевыбором сотрудника в больничном. Программа не смогла определить дату начала расчётного периода и подставила «пустую» дату — 1 января 1900 года, отсюда и текст.
Ситуация знакомая: бухгалтер загрузил больничный из СФР, жмёт «Провести» — и вместо начисления пособия вылетает красное окно. Чаще всего это больничный по уходу за ребёнком, который пересекается с отпуском или уже начисленной зарплатой. Ниже — почему 1С выдаёт 1900 год и что делать по шагам.
Почему появляется ошибка «начало периода болезни не может быть меньше 1 января 1900 г»
Дата 1 января 1900 года — это техническое «дно» для дат в 1С. Когда программа при расчёте пособия не находит корректную дату (начало болезни, стаж, период предыдущего документа), она подставляет минимально возможную и тут же сама себя проверяет: такой даты быть не может.
Типичные источники «пустой» даты:
- 🐛 Ошибка релиза ЗУП 3.1. В ряде версий это признанная разработчиком проблема, которую закрывают патчем.
- 🔁 «Залипшие» данные документа. Сотрудник или период подтянулись некорректно при загрузке из СФР.
- 📅 Пересечение дат. Больничный накладывается на отпуск, другой больничный или командировку.
- 💰 Уже начисленная зарплата за месяц болезни — расчёт пособия «спотыкается» о готовые данные.
- 👶 Уход за ребёнком на фоне отпуска сотрудника — самый частый кейс.
Ошибка почти никогда не связана с реальной датой в самом больничном. Смотреть надо не на поле «Дата», а на окружение документа — релиз, сотрудника и пересечения.
Диагностика: с чего начать
Прежде чем что-то менять, определите свой случай — от этого зависит решение.
Решение 1. Обновить релиз и установить патчи
Самый правильный путь. Если ошибка массовая — почти наверняка виноват релиз.
- Проверьте текущую версию:
Главное меню → О программе(или «Сервис и настройки»). - Обновите конфигурацию ЗУП 3.1 до актуального релиза через
Администрирование → Обновление программы. - Установите доступные патчи (исправления) — они ставятся отдельно и часто закрывают именно эту ошибку.
- Перезапустите 1С и повторно проведите проблемный больничный.
Перед обновлением сделайте резервную копию базы. Обновление на «живой» базе без бэкапа — риск потерять данные при сбое.
Решение 2. Перевыбрать сотрудника и перепровести документ
Помогает, когда ошибка «прилипла» к одному документу — частый результат загрузки ЭЛН из СФР.
- Откройте больничный, зайдите в поле «Сотрудник».
- Очистите значение и выберите того же сотрудника заново.
- Нажмите «Пересчитать» (или «Обновить»), затем «Провести».
- Если не сработало — отмените проведение, закройте документ, откройте снова и повторите.
Этот приём «пересобирает» расчётный период заново, и дата 1900 года исчезает.
Решение 3. Разобрать пересечение «отпуск + больничный по уходу»
Классический кейс: сотрудник в отпуске 26.01–15.02, а больничный по уходу за ребёнком — 03.02–13.02.
Логика простая: за дни оплачиваемого отпуска пособие по уходу не назначается, и отпуск при этом не продлевается. Значит, наложение нужно убрать.
- Оплачиваются только дни ухода вне отпуска (в примере — их нет, весь больничный внутри отпуска).
- Если весь период ухода попал в отпуск — пособие за него не полагается, документ проводить как оплату не нужно.
- Проверьте документы отсутствий: нет ли задвоенного отпуска или второго больничного на те же даты.
Решение 4. Если пособие не требуется — ответ в СФР
Иногда проводить больничный в ЗУП вообще не нужно: пособие платит работодатель, дни попали в отпуск, или сотрудник отказался.
- В разделе
Кадры → Больничные / Электронные больничныеоткройте запрос СФР. - Сформируйте «Ответ на запрос (СведСоц)» с признаком «Пособие не требуется».
- Отправьте в СФР. Сам больничный лист в ЗУП можно не проводить.
Так вы закрываете обязательство перед фондом, не сражаясь с ошибкой расчёта.
Решение 5. Проверить скрытую причину — зарплату и отсутствия
Если предыдущие шаги не помогли, ищите «тихий» конфликт данных.
- 💰 Зарплата за месяц уже начислена. Отмените проведение документа начисления, проведите больничный, затем пересчитайте зарплату.
- 📄 Дубли документов отсутствий — второй больничный, отгул или командировка на те же даты.
- 👤 Данные о стаже сотрудника пусты — заполните стаж в карточке, иначе расчёт периода «уходит» в 1900 год.
Пошаговый чек-лист исправления
Если не помогло
Прошли все шаги, а ошибка держится — действуйте так:
- Проверьте, что патчи реально применились (
Администрирование → Обновление → Установленные патчи). - Скопируйте документ через
Ещё → Скопировать, заполните заново и проведите копию. - Проведите тестирование и исправление базы (
chdbfl.exeдля файловой базы, «Тестирование и исправление» в конфигураторе — обязательно с бэкапом). - Соберите текст ошибки и версию релиза и обратитесь к своему специалисту по сопровождению 1С.
Если база файловая и давно не «чистилась», плановое тестирование и исправление снимает целый пласт подобных сбоев с датами.