Восстановление удалённых и пропавших счетов в базе 1С
Содержание
Бухгалтер открывает журнал счетов на оплату, а половины документов за месяц нет. Или контрагент звонит и просит повторить счёт, который вы точно выставляли, — а в списке его не видно. Первое, что нужно понять: пропали счета физически или просто не отображаются. От этого зависит, каким из методов их восстанавливать — снять пометку на удаление, вернуть из резервной копии, перенести обменом или перепровести.
Ниже — порядок действий от самого безопасного (поправить отбор в списке) к радикальному (загрузка базы из копии через Конфигуратор). Пути даны для 1С:Бухгалтерии 8.3 с интерфейсом «Такси»; в ЗУП и Управлении торговлей разделы называются так же или близко.
Сначала уточните, что именно пропало — метод зависит от типа объекта:
- Счёт на оплату (покупателю или от поставщика) — это документ. Он восстанавливается снятием пометки, из копии или обменом, как описано ниже.
- Счёт-фактура — тоже документ, но связанный с реализацией или поступлением. После восстановления его обычно нужно перепровести вместе с документом-основанием, чтобы вернулись записи в книге покупок и книге продаж.
- Счёт учёта из плана счетов (например, 62.01 или 90.01) — это элемент справочника. Если из типового плана счетов пропал предопределённый счёт, его не вводят руками: он возвращается при обновлении конфигурации. Добавленные вручную субсчета восстанавливают из копии.
Почему счета исчезают из журнала
Чаще всего документ не удалён, а скрыт настройками списка или пометкой. Сначала исключите простые причины, и только потом беритесь за копии и Конфигуратор.
Типичные ситуации и что с ними делать:
Ещё → Настроить список → Отбор.Ещё → Режим просмотра → Показывать помеченные на удаление (название пункта зависит от конфигурации) — зачёркнутые строки вернутся в список.Прежде чем менять что-либо в базе, посмотрите дату и автора последнего изменения документа: в списке это видно через Ещё → Изменить форму (добавить колонки) либо в самом документе внизу. Часто это сразу показывает, кто и когда пометил счёт на удаление.
Как вернуть счёт, помеченный на удаление
Если счёт только помечен на удаление, но ещё не удалён физически, — это самый лёгкий случай. Пометка не стирает данные, а лишь готовит объект к удалению.
Порядок действий:
- Откройте список счетов:
Продажи → Счета покупателям(для исходящих) илиПокупки → Счета от поставщиков. - Включите показ помеченных:
Ещё → Показывать помеченные на удаление. Зачёркнутые строки — это и есть кандидаты на удаление. - Откройте нужный счёт двойным кликом или выделите его в списке.
- Снимите пометку: правой кнопкой
Снять пометку на удалениелибо кнопкой в карточке документа. - Если счёт был проведён, перепроведите его, чтобы вернулись движения по регистрам.
Снять пометку можно сразу у нескольких документов: выделите их в списке с зажатым Ctrl и вызовите команду через контекстное меню.
Стоит понимать, как работает физическое удаление. Команда Администрирование → Обслуживание → Удаление помеченных объектов не стирает всё помеченное подряд: сначала она ищет ссылки на объект. Если на счёт ссылаются другие документы (например, оплата или реализация по этому счёту), программа не даст его удалить и покажет список ссылок. Поэтому физически исчезают обычно те счета, которые нигде больше не использовались. Это же свойство помогает в профилактике: пока на документ есть ссылки, случайно потерять его не получится.
Проверяйте, почему счёт был помечен. Иногда это сделали намеренно (ошибочный документ, дубль). Прежде чем снимать пометку оптом, убедитесь, что возвращаете именно нужные счета, а не чей-то брак.
Восстановление из резервной копии через Конфигуратор
Если счета удалены физически (операция Администрирование → Обслуживание → Удаление помеченных объектов уже прошла) или база повреждена, единственный надёжный путь — резервная копия.
Файловая база. В режиме 1С:Предприятие есть встроенный механизм: Администрирование → Обслуживание → Резервное копирование и восстановление → Восстановление из резервной копии. Он подойдёт, если вы делали копии именно отсюда.
Через Конфигуратор (копия .dt). Это универсальный способ:
- Закройте все сеансы пользователей в этой базе.
- Запустите базу в режиме Конфигуратора.
- Выполните
Администрирование → Загрузить информационную базуи укажите файл.dtс нужной датой. - Подтвердите замену — текущие данные будут заменены данными из копии.
Загрузка .dt полностью затирает текущую базу. Все изменения, сделанные после даты копии, пропадут. Если после пропажи счетов в базе успели поработать, сначала выгрузите текущую базу отдельным файлом (Администрирование → Выгрузить информационную базу), а копию с утраченными счетами разверните как отдельную базу — и перенесите счета обменом (следующий раздел).
Повреждённая файловая база. Если база (1Cv8.1CD) не открывается, сначала попробуйте проверку целостности:
- В Конфигураторе:
Администрирование → Тестирование и исправление— отметьте проверку логической и ссылочной целостности и реиндексацию таблиц. В настройках режима есть выбор, что делать при обнаружении ошибок: только обнаруживать или исправлять. Для первого прогона полезно сначала посмотреть, что найдено, и лишь затем включать исправление. - Утилитой
chdbfl.exeиз каталогаbinустановленной платформы — она чинит физические ошибки файла1Cv8.1CD. Перед запуском обязательно сделайте копию файла базы: если утилита не сможет исправить ошибку, у вас останется исходник.
Для клиент-серверной базы (на сервере 1С и СУБД PostgreSQL или MS SQL) проверка целостности делается тем же пунктом Тестирование и исправление в Конфигураторе, подключённом к серверной базе, а резервные копии — средствами самой СУБД. Утилита chdbfl.exe в этом случае не применяется — она только для файлового варианта.
Перенос счетов обменом в формате XML
Этот способ нужен, когда полная загрузка копии не подходит: вы не хотите терять свежие данные, а надо достать из копии только пропавшие счета. Принцип — развернуть копию как отдельную базу и перенести из неё нужные документы в рабочую.
Инструмент — типовая обработка от 1С «Выгрузка и загрузка данных XML» (встречается также под названием «Универсальный обмен данными в формате XML»). Загрузите её через Файл → Открыть.
Порядок:
- Разверните резервную копию как отдельную базу (добавьте новую базу из
.dt), чтобы рабочая осталась нетронутой. - В базе-копии откройте обработку, на закладке выгрузки отберите объекты — счета за нужный период и связанные с ними элементы (контрагенты, договоры, номенклатура). Сохраните файл XML.
- В рабочей базе откройте ту же обработку, на закладке загрузки укажите полученный файл и загрузите.
Важно: конфигурация и её версия в обеих базах должны совпадать, иначе загрузка выдаст ошибки по структуре данных. Переносите счета вместе со ссылочными объектами, иначе в документах будут «пустые ссылки».
Про формат DBF. Обмен через DBF — это старый механизм времён 1С 7.7 и ранних обменов. Для 1С 8.3 он практически не используется: перенос данных между одинаковыми базами делают через XML, а связь с внешними учётными системами — через стандартные правила обмена или веб-сервисы. Если встретите совет «выгрузить в DBF», для восстановления счётов в 8.3 он не нужен.
Чистка дублей и восстановление движений по счетам
После загрузки обменом или ручного ввода нередко всплывают две проблемы: задвоённые счета и счета без проводок (движений по регистрам).
Поиск и удаление дублей. Используйте типовую обработку Администрирование → Обслуживание → Поиск и удаление дублей. Задайте, что ищем (например, счета покупателям), настройте правила сравнения (контрагент + дата + сумма), запустите поиск. Обработка покажет группы дублей и позволит оставить один документ как главный, а остальные пометить на удаление с заменой ссылок.
Сначала оставляйте дубли помеченными на удаление, а не удаляйте физически. Проверьте пару дней, что замена ссылок прошла корректно, и только потом запускайте удаление помеченных объектов.
Восстановление движений. Если счёт в списке есть, но проводок по нему нет (документ не проведён или проведён без движений), сделайте групповое перепроведение:
- Откройте
Операции → Групповое перепроведение документов. - Задайте период и, при необходимости, список видов документов.
- Запустите перепроведение — программа заново сформирует движения по регистрам.
Проверить результат удобно отчётом: Отчёты → Оборотно-сальдовая ведомость по нужным счетам учёта. Если суммы сошлись — движения восстановлены.
Восстановление счетов-фактур и записей по НДС. Если восстанавливали счёт-фактуру, одного перепроведения документа мало — нужно вернуть записи в книгу покупок и книгу продаж
. Для этого в 1С:Бухгалтерии есть регламентные операции по НДС в разделе Операции → Регламентные операции НДС (помощник по учёту НДС). Он подскажет, какие операции не выполнены за период, и заново сформирует записи книги покупок и продаж. После этого сверьте показатели декларации по НДС с оборотами по счёту 68.02.
Порядок при восстановлении счетов-фактур:
- Восстановите документ-основание (реализацию или поступление) и сам счёт-фактуру.
- Перепроведите их за нужный период.
- Запустите регламентные операции НДС за квартал.
- Сформируйте книгу покупок/продаж и сверьте с данными декларации.
Как защитить базу от потери счетов
Большинство обращений «пропали счета» — это не сбой, а человеческий фактор: кто-то удалил или пометил документ, у кого-то слишком широкие права. Несколько настроек снимают проблему в корне.
Разберём ключевые пункты.
Права доступа
. Откройте Администрирование → Настройки пользователей и прав → Профили групп доступа. Для профиля обычного бухгалтера уберите права на удаление объектов и на физическое удаление помеченных. Тогда даже случайное нажатие не сотрёт счета без участия администратора.
Дата запрета изменения. Путь: Администрирование → Настройки пользователей и прав → Даты запрета изменения данных. Закрыли месяц — поставьте дату запрета на его конец. После этого документы прошлого периода нельзя будет ни изменить, ни пометить на удаление.
Версионирование. В разделе Администрирование → Общие настройки → История изменений (название пункта в вашем релизе может отличаться) включите хранение версий документов. Тогда по каждому счёту будет видно, кто и что менял, а прежнюю версию можно восстановить.
Можно ли восстановить счёт, если резервной копии нет?
После загрузки базы из копии пропали данные за последнюю неделю. Как вернуть?
.dt полностью заменяет базу. Свежие данные можно вернуть только из более поздней копии. Поэтому перед загрузкой всегда выгружайте текущую базу отдельным файлом.