Нумерация документов

1. user1913441 04.06.24 22:39 Сейчас в теме
Добрый день! Кто может подсказать? нумерация документов слетела после обновления, отладкой в модуле объекта смотрю, префиксы заполняются просто "0000" в Процедуре УстановитьПрефиксы() после того как отрабатывает номер автоматом заполняется, в общем ничего необычного в коде, вроде как нет. А суть такая были номера нормальные "0000-008314" а стали такие:"0000-0000-1" до 9 доходит и ошибка Номер не уникальный, так как строка 11 символов. Разные варианты испробовал, ничего не помогает, все документы нормально пронумерованы с самого начала учета в базе. Попробовал добавить префикс ИБ и вот такие номера генерит теперь "00УТ-00УТ-1". Конфигурация УТ 11.5
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. EVKash 16 05.06.24 08:08 Сейчас в теме
(1)
нумерация документов слетела после обновления

Какой релиз? Обновлялись штатно? Отложенные задания прошли без ошибок?
5. user1671936 1 05.06.24 09:33 Сейчас в теме
(1)
А суть такая были номера нормальные "0000-008314"
когда-то вручную был создан документ с "кривым" номером. Возможно его уже удалили либо перезаписали с нормальным номером. Но не обновили нумерацию через ОбновитьНумерациюОбъектов(<Метаданные>). Тоже создавал подобную тему, помогло решение перезаписать кривые номера и обновить нумерацию. Сейчас всем бухгалтерам так же говорю, как мне посоветовали в комментарии. Либо, как вариант, создавать подписку на событие.
Процедура УстановитьНомерДокумента(Источник, СтандартнаяОбработка, Префикс) Экспорт
	ВидДокумента = Источник.Метаданные().Имя;
	Если ВидДокумента = "РеализацияТоваровУслуг" 
		И Год(ТекущаяДатаСеанса()) = 2024 Тогда  
		Попытка
			СтандартнаяОбработка = Ложь;
			Префикс = "00БП-";
			Запрос = Новый Запрос("ВЫБРАТЬ ПЕРВЫЕ 1
			|	РеализацияТоваровУслуг.Номер КАК Номер
			|ИЗ
			|	Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
			|ГДЕ
			|	ДЛИНАСТРОКИ(СТРЗАМЕНИТЬ(РеализацияТоваровУслуг.Номер, "" "", """")) = 11
			|	И РеализацияТоваровУслуг.Номер ПОДОБНО ""%00БП-0%""
			|	И ГОД(РеализацияТоваровУслуг.Дата) = 2024
			|
			|УПОРЯДОЧИТЬ ПО
			|	РеализацияТоваровУслуг.Дата УБЫВ,
			|	Номер УБЫВ");
			ПоследнийНомер = Запрос.Выполнить().Выгрузить()[0].Номер; 
			ДлинаНомера = СтрДлина(ПоследнийНомер);
			НомерЧислом = Число(СтрЗаменить(ПоследнийНомер, "00БП-", ""));
			НовыйНомер = СокрЛП(СтрЗаменить(НомерЧислом + 1, Символы.НПП, ""));
			Пока СтрДлина(Префикс) + СтрДлина(НовыйНомер) < ДлинаНомера Цикл
				Префикс = Префикс + "0";	
			КонецЦикла;
			Источник.Номер = Префикс + НовыйНомер;
		Исключение
			Сообщить(ОписаниеОшибки());
		КонецПопытки;
	КонецЕсли;
КонецПроцедуры
Показать
Прикрепленные файлы:
2. muskul 05.06.24 02:17 Сейчас в теме
3. novohatko 05.06.24 07:57 Сейчас в теме
Так если все в порядке, вручную проставить номер и записать, а потом новый создать.
6. user1913441 05.06.24 15:26 Сейчас в теме
Все сделал, крч суть такова, я в Казахстане живу в России 11.5 конф у нас послед 3.3 номера отличаются, но суть одна. Поставил 3.2 погнали номера, ничего не помогало, а я захожу проверяю всегда релиз, док и тп, увидел ошибку, пытался решить и никак, сегодня решил на 3.3 обновиться, обновился и пошло нормально, ну исправил косячные и все очередь восстановилась, а в 3.2 такое не сработало. Так что имейте в виду и такое бывает
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот