Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут!

Как исправить нумерацию документов в 1С 8.3

Что делать, если в 1С 8.3 или 8.2 сбилась нумерация документов? В «1С Бухгалтерии предприятия 3.0» есть штатное средство для данной операции. Это функция «Экспресс-проверка ведения учета».

Но, к сожалению, она делает проверку на правильность нумерации только по кассовым документам (ПКО и РКО) и по счетам-фактурам.

В этой статье я хочу:

  • рассмотреть встроенные средства;
  • поэтапно создать простенькую обработку для перенумерации других документов.

Перед любыми действиями в базе данных обязательно сделайте резервную копию.

Перенумерация с помощью Экспресс-проверки ведения учета

Данная обработка для перенумерации документов 1С  находится в разделе «Отчеты». Далее ищем раздел «Анализ учета» и переходим в «Экспресс – проверка«. Появится следующее окно:

экспресс проверка 1

Устанавливаем нужный период и нажимаем кнопку «Выполнить проверку».

В случае, если в каком-то разделе учета будут обнаружены ошибки, это будет подсвечено красным.

В своей тестовой конфигурации я специально создал несколько ошибочных ситуаций для наглядности:

автоматическая перенумерация документов

Как видим, у нас нарушена нумерация документов. И как написано, программа 1С 8.3 предлагает автоматически это исправить. Жмем на выделенную ссылку:

перенумерация счетов-фактур

И прекрасно видим, что нумерация действительно нарушена и программа предлагает у последней счет-фактуры заменить номер четыре на номер три.

Обратите внимание, что есть возможность установить начальный номер для заданного периода. Это означает, что если нам нужно начать с номера 123, то именно так и произойдет. Это актуально, когда перенумерация происходит не с начала года.

Замечу! Перенумерация проведенных документов требует перепроведение этих документов. Поэтому процесс может занять длительное время. Кроме того, при перенумерации учитываются префиксы. Уточните, не менялись ли они.

Получите 267 видеоуроков по 1С бесплатно:

Нажмем «Продолжить», и начнется процесс перенумерации.

Для программистов: создание обработки 1С для перенумерации других документов

Для наших опытов выберем мой любимый документ «Реализация (акты, накладные)«.

Создадим новую внешнюю обработку и добавим на форму следующие реквизиты:

  • ДатаНачала.
  • ДатаОкончания.
  • НачальныйНомер.
  • Организация.

Реквизит «Организация» следует добавлять только в случае, если учет ведется по нескольким организациям в одной информационной базе. В ином случае достаточно добавить реквизит «Префикс». Запрос в этом случае будет немного попроще. Вот, что у меня получилось:

Перенумерация документов в 1с 8.3

Итак, создаем команду на клиенте. Так как запросы выполняются на сервере, в этой команде будет только вызов серверной процедуры, например, «ВыполнитьНаСервере()».

Далее переходим к этой процедуре. Сразу же создадим запрос:

Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	РеализацияТоваровУслуг.Ссылка,
		|	РеализацияТоваровУслуг.Организация.Префикс
		|ИЗ
		|	Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
		|ГДЕ
		|	РеализацияТоваровУслуг.Организация.Ссылка = &Организация
		|	И РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания";
	Запрос.УстановитьПараметр("ДатаНачала", НачалоДня(ЭтаФорма.ДатаНачала));
	Запрос.УстановитьПараметр("ДатаОкончания", КонецДня(ЭтаФорма.ДатаОкончания));
	Запрос.УстановитьПараметр("Организация", ЭтаФорма.Организация);
	РезЗапроса = Запрос.Выполнить();
	ВыборкаДетЗаписи = РезЗапроса.Выбрать();

Теперь в цикле пробежимся по результату выборки и перенумеруем документы:

НачНомер = ЭтаФорма.НачальныйНомер;
	Пока ВыборкаДетЗаписи.Следующий() Цикл
		Префикс = ВыборкаДетЗаписи.ОрганизацияПрефикс;
		ДокОбъект = ВыборкаДетЗаписи.Ссылка.ПолучитьОбъект();
	ДокОбъект.Номер = Префикс + Прав("000000000000000000" + НачНомер, 11 - СтрДлина(Префикс));
		НачНомер = НачНомер + 1;
		Попытка
			Если ДокОбъект.Проведен Тогда
				ДокОбъект.Записать(РежимЗаписиДокумента.Проведение);
			Иначе
				ДокОбъект.Записать(РежимЗаписиДокумента.Запись);
			КонецЕсли;
		Исключение
			Сообщить(ОписаниеОшибки());
		КонецПопытки
	КонецЦикла;

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

Вот какая ужасная нумерация у меня была до запуска  обработки:

до выполнения обработки

После запуска обработки нумерация выровнялась:

после выполнения обработки

Данную обработку для примера вы можете скачать по ссылке.

P.S. Наша компания предоставляет услуги по настройке, доработке и комплексному внедрению 1С. Закажите бесплатный расчет стоимости вашей задачи на странице Услуги 1С или по телефону +7 (499) 350 29 00.

Остались вопросы?

СПРОСИТЕ в комментариях!

Комментариев: 3 на “Как исправить нумерацию документов в 1С 8.3
  1. Добрый день!
    Наша компания не так давно работает, но нашими клиентами являются серьезные компании. Было уже несколько случаев, при выставлении счета на оплату, клиент задавал вопрос: «Почему счет, выставленный в августе имеет порядковый номер 000005».
    Подскажите, как можно настроить нумерацию документов следующим образом. Например,счет на оплату № ГВ-10003 от 15.10.2016г., где ГВ — префикс нашей компании, 10 — месяц выставления счета, 003 — порядковый номер счета в этом месяце. При таком виде номера счета у клиента будет меньше вопросов.

    Ответить

    • Добрый день!

      Такого типа нумерация в типовых конфигурациях настроить не получится. Вы можете обратится за доработках к специалистам. Это небольшая доработка, в среднем потребуется 2-3 часа специалиста.

      Ответить

  2. order by запросе еще добавить бы…

    Ответить

Добавить комментарий: