Где прячутся непроведенные документы и как вытащить их одним списком
Содержание
Чтобы отфильтровать непроведенные документы
в 1С 8.3, откройте список нужного документа, нажмите Ещё → Настроить список, на вкладке «Отбор» добавьте поле «Проведен» и поставьте условие «Равно — Нет». В списке останутся только записанные, но не проведенные документы. Чтобы не видеть удалённые черновики, добавьте второе условие: «Пометка удаления» равно «Нет».
Способ работает в любой типовой конфигурации на интерфейсе «Такси»: Бухгалтерии 3.0, ЗУП 3.1, УТ 11, это механизм самой платформы. Если же нужно найти непроведенные документы сразу по всем видам, понадобятся отчёт или запрос. Все варианты — от простого к продвинутому — разобраны по шагам.
Отбор по признаку «Проведен» в списке документов
В 1С каждый документ хранит служебный признак «Проведен» (Да/Нет). Документ без проведения записан в базу, но не сформировал ни проводок, ни движений по регистрам. В учёте его как бы нет: ни в оборотно-сальдовой ведомости, ни в декларации он не отразится.
Состояние видно по пиктограмме в первой колонке списка:
- ✅ значок с зелёной галочкой — документ проведен;
- 📄 значок без галочки — записан, но не проведен;
- ❌ значок с красным крестиком — помечен на удаление.
Глазами искать «пустые» значки в списке из тысячи строк бессмысленно. Включите отбор.
Пошагово
- Откройте журнал нужного документа, например
Продажи → Реализация (акты, накладные, УПД)в Бухгалтерии 3.0. - В командной панели нажмите
Ещё → Настроить список. - Перейдите на вкладку «Отбор».
- В левой части найдите поле «Проведен» и перетащите его вправо (или дважды щёлкните).
- Вид сравнения — «Равно», значение — флажок снят (то есть «Нет»).
- Добавьте поле «Пометка удаления» с тем же условием «Равно — Нет».
- Если нужен период, добавьте поле «Дата» с видом сравнения «Интервал» или «Больше или равно».
- Нажмите «Завершить редактирование».
Над списком появится строка с текущим отбором. Чтобы вернуть полный список, снова откройте настройку и снимите флажки у условий или выберите Ещё → Установить стандартные настройки.
Настройки списка сохраняются для пользователя. Открыли журнал завтра — отбор на месте. Это удобно для ежедневного контроля, но легко забыть, что часть документов скрыта. Строка отбора над таблицей — ваша подсказка.
Как провести найденное разом
Выделите строки (Shift + клик или Ctrl+A), затем в меню Ещё выберите команду «Провести». Программа проведёт документы по очереди и выведет сообщения по тем, которые провести не удалось: например, из-за нехватки остатков или закрытого периода.
Если в базе установлена дата запрета изменения данных, документы раньше этой даты не проведутся. Не снимайте запрет «на минутку» без согласования с главным бухгалтером: проведение задним числом меняет уже сданную отчётность.
Быстрые отборы и поиск в журнале
Настройка через «Отбор» точная, но долгая. Для повседневной работы есть приёмы быстрее.
Сортировка по пиктограмме. В ряде списков щелчок по заголовку первой колонки упорядочивает строки по состоянию. Непроведенные документы собираются в одну группу. Работает не во всех формах: если колонка не сортируется, используйте отбор.
Поиск по значению. Встаньте на ячейку и нажмите Ctrl+F — откроется расширенный поиск по текущей колонке. Им удобно сузить список по контрагенту или организации, а уже внутри него включить отбор по признаку «Проведен».
Варианты списка. Если вы часто переключаетесь между полным списком и непроведенными, сохраните настройку как вариант. В окне Ещё → Настроить список сохранение настроек вынесено в меню Ещё этого окна. Дайте варианту понятное имя: «Непроведенные за квартал».
Журнал «Все документы». Если нужен общий взгляд, откройте Главное меню → Все функции → Журналы документов. В журнале сводятся документы разных видов, и отбор по полю «Проведен» в нём тоже доступен. Команду «Все функции» включают в Главное меню → Сервис → Параметры флажком «Отображать команду “Все функции”».
| Способ | Охват | Когда удобен |
|---|---|---|
| Отбор в списке документа | Один вид документа | Ежедневная проверка своего участка |
| Сортировка по состоянию | Один вид | Быстро глянуть, есть ли «хвосты» |
| Журнал документов | Несколько видов из журнала | Общий контроль раздела |
| Универсальный отчет | Один вид, с выводом в таблицу | Нужно выгрузить и отдать коллеге |
| Консоль запросов | Любые виды, любые условия | Аудит базы, большие объёмы |
Универсальный отчет: список непроведенных документов в таблице
Отбор в журнале показывает документы, но их неудобно передать коллеге или выгрузить в Excel. Для этого подходит универсальный отчет
. В Бухгалтерии 3.0 он находится в разделе Отчеты → Универсальный отчет.
Настройка
- В шапке отчёта выберите тип объекта «Документ».
- В поле вида объекта укажите нужный документ, например «Поступление (акты, накладные, УПД)».
- Источник данных — «Основные данные».
- Задайте период.
- Откройте «Настройки» и переключитесь на расширенный вид.
- На вкладке «Отборы» добавьте поле «Проведен» со значением «Нет» и поле «Пометка удаления» со значением «Нет».
- На вкладке «Поля и сортировки» оставьте нужные колонки: дата, номер, контрагент, сумма, ответственный.
- Нажмите «Закрыть и сформировать».
Получится плоская таблица непроведенных документов. Её можно сохранить в Excel кнопкой сохранения на панели отчёта.
Добавьте в колонки поле «Ответственный» или «Автор» и сгруппируйте по нему. Сразу видно, у кого из сотрудников висят черновики, и разговор становится предметным.
Сохраните настройку как вариант отчёта. В следующий раз достаточно выбрать вариант и сменить период.
Консоль запросов: все непроведенные документы по базе
Когда видов документов десятки, перебирать их по одному долго. Запрос решает задачу целиком. Понадобится внешняя обработка «Консоль запросов» — её открывают через Файл → Открыть, если у пользователя есть право открывать внешние обработки.
Запрос по одному виду документа:
ВЫБРАТЬ
Док.Ссылка КАК Документ,
Док.Дата КАК Дата,
Док.Номер КАК Номер
ИЗ
Документ.РеализацияТоваровУслуг КАК Док
ГДЕ
НЕ Док.Проведен
И НЕ Док.ПометкаУдаления
И Док.Дата МЕЖДУ &НачалоПериода И &КонецПериода
УПОРЯДОЧИТЬ ПО
Дата
Параметры НачалоПериода и КонецПериода задайте в консоли перед выполнением. Конец периода указывайте с временем 23:59:59, иначе документы последнего дня выпадут.
Чтобы охватить несколько видов, соедините запросы через ОБЪЕДИНИТЬ ВСЕ:
ВЫБРАТЬ Д.Ссылка, Д.Дата, "Реализация" КАК Вид
ИЗ Документ.РеализацияТоваровУслуг КАК Д
ГДЕ НЕ Д.Проведен И НЕ Д.ПометкаУдаления
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ Д.Ссылка, Д.Дата, "Поступление"
ИЗ Документ.ПоступлениеТоваровУслуг КАК Д
ГДЕ НЕ Д.Проведен И НЕ Д.ПометкаУдаления
Имена документов в запросе — это имена объектов метаданных, а не надписи в интерфейсе. Конструктор запроса в консоли показывает их списком, так что угадывать не придётся.
Консоль запросов только читает данные. Но в некоторых сборках консоли есть режим выполнения произвольного кода. Не запускайте в рабочей базе чужой код из интернета — сначала проверьте его на копии.
Проводки и движения: проверить, что документ действительно отражён в учёте
Признак «Проведен» говорит, что программа выполнила проведение. Но бывает обратная ситуация: документ проведен, а движений у него нет. Например, в нём не заполнена табличная часть или выбрана операция, которая не формирует проводок. В отчётах такой документ тоже невидим.
Как посмотреть движения одного документа
Откройте документ и нажмите кнопку ДтКт в командной панели («Показать проводки и другие движения документа»). Если отчёт о движениях пуст, документ в учёт не попал. У непроведенного документа движений не будет никогда.
Как найти проведенные документы без проводок
Это задача для консоли запросов. Пример для Бухгалтерии 3.0 — проведенные реализации без записей в регистре бухгалтерии:
ВЫБРАТЬ
Док.Ссылка,
Док.Дата
ИЗ
Документ.РеализацияТоваровУслуг КАК Док
ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный КАК Пр
ПО Пр.Регистратор = Док.Ссылка
ГДЕ
Док.Проведен
И Пр.Регистратор ЕСТЬ NULL
И Док.Дата МЕЖДУ &НачалоПериода И &КонецПериода
Если запрос что-то вернул — откройте эти документы и посмотрите, почему они ничего не провели. Чаще всего виновата пустая табличная часть.
Почему документ не проводится
Найдя непроведенные документы, полезно понять, откуда они взялись. Признак «Проведен = Нет» появляется в четырёх случаях:
- 📝 документ записали кнопкой «Записать», а не «Провести и закрыть»;
- 🚫 проведение отклонила проверка: не хватает остатков, не заполнен обязательный реквизит, период закрыт датой запрета;
- ↩️ кто-то выполнил «Отмена проведения», чтобы поправить документ, и не провёл повторно;
- 📥 документ пришёл через обмен или загрузку без проведения: так настроены некоторые правила синхронизации.
Контроль по расписанию: автоматический поиск непроведенных
Проверять базу руками каждую неделю скучно, и про это забывают. В типовых конфигурациях на БСП есть два способа поручить проверку программе.
Рассылка отчёта
Сохранённый вариант универсального отчёта с отбором «Проведен = Нет» можно отправлять по расписанию на почту. Рассылки отчётов в Бухгалтерии 3.0 настраиваются в разделе Администрирование; для работы нужна учётная запись электронной почты в программе. Получатель каждое утро понедельника видит свежий список «хвостов» без входа в базу.
Дополнительная обработка с регламентной командой
Если нужен не отчёт, а запись в журнал регистрации или своё уведомление, программист оформляет проверку как дополнительную обработку. Её подключают в Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки. У серверной команды такой обработки можно включить выполнение по расписанию.
Ядро проверки выглядит так:
Функция КоличествоНепроведенных(НачалоПериода, КонецПериода)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КОЛИЧЕСТВО(Д.Ссылка) КАК Количество
|ИЗ
| Документ.РеализацияТоваровУслуг КАК Д
|ГДЕ
| НЕ Д.Проведен
| И НЕ Д.ПометкаУдаления
| И Д.Дата МЕЖДУ &НачалоПериода И &КонецПериода";
Запрос.УстановитьПараметр("НачалоПериода", НачалоПериода);
Запрос.УстановитьПараметр("КонецПериода", КонецПериода);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
Возврат Выборка.Количество;
КонецЕсли;
Возврат 0;
КонецФункции
Процедура ПроверитьНепроведенные() Экспорт
КонецПериода = КонецДня(ТекущаяДатаСеанса());
НачалоПериода = НачалоМесяца(КонецПериода);
Количество = КоличествоНепроведенных(НачалоПериода, КонецПериода);
Если Количество > 0 Тогда
Текст = СтрШаблон("Непроведенных реализаций с начала месяца: %1",
Формат(Количество, "ЧГ=0"));
ЗаписьЖурналаРегистрации("Контроль.Непроведенные",
УровеньЖурналаРегистрации.Предупреждение, , , Текст);
КонецЕсли;
КонецПроцедуры
Записи потом ищут в Администрирование → Обслуживание → Журнал регистрации с отбором по событию «Контроль.Непроведенные».
Регламентные операции в файловой базе выполняются только пока кто-то работает в программе. Для надёжного расписания нужна клиент-серверная база.
Перед закрытием месяца
Проверка на непроведенные — первый пункт перед закрытием периода. Короткий порядок: