|
Сбилась нумерация после обновления на 3.0 | ☑ | ||
---|---|---|---|---|
0
Trimax
06.11.13
✎
14:36
|
Исходные данные:
Старая версия - БП типовая 2.0.51. Догнал до БП 3.0.24.9 В итоге сбилась нумерация. Последний документ до обновления имеет номер БПК00002450, следующий уже 0КБП-000001. Куда смотреть и что сделать? Гл.буху принципиальна сквозная нумерация. |
|||
1
qeos
06.11.13
✎
14:37
|
в справку смотреть
|
|||
2
Trimax
06.11.13
✎
15:11
|
(1) Молодец. Уж если такой знаток - подскажи как это исправить.
|
|||
3
zak555
06.11.13
✎
15:12
|
(2) в БП 3 новый принцип нумерации
|
|||
4
ptiz
06.11.13
✎
15:18
|
В БП 3.0 жестко зашито в процедуре УстановитьПрефикс:
ШаблонПрефикса = "[ОР][ИБ]-[Префикс]"; ШаблонПрефикса = СтрЗаменить(ШаблонПрефикса, "[ОР]", ПрефиксОрганизации); ШаблонПрефикса = СтрЗаменить(ШаблонПрефикса, "[ИБ]", ПрефиксИнформационнойБазы); ШаблонПрефикса = СтрЗаменить(ШаблонПрефикса, "[Префикс]", Префикс); Префикс = ШаблонПрефикса; |
|||
5
Trimax
06.11.13
✎
15:20
|
(4) Спасибо. Ща по-пробую "ковырнуть" её. Ибо дотянуть надо до НГ. А там уж на стандарте будем.
|
|||
6
Скай
06.11.13
✎
15:23
|
Суровые 1С-ки мануалов не читают, проще ж потом на форуме поспрашивать.
Из http://downloads.v8.1c.ru/content/Accounting/3_0_26_11/ReadMe.txt Способ нумерации документов в редакции 3.0 изменен по сравнению с редакцией 2.0. Для правильной нумерации документов необходимо изменить номер первого создаваемого документа каждого вида так, чтобы он продолжал нумерацию из старой версии. При этом номера документов, перенесенных из редакции 2.0, в печатных формах будут отображаться правильно. Например, последний номер документа «Реализация товаров и услуг» был 00000000131. После обновления на редакцию 3.0 первый введенный документ будет иметь номер 0000-000001. Чтобы сохранить правильную нумерацию, необходимо в этом документе изменить номер на 0000-000132. В дальнейшем всем введенным документам «Реализация товаров, услуг» будет присваиваться правильный номер. |
|||
7
vladko
06.11.13
✎
15:23
|
где-то здесь в темах проскакивала ссылка про рекомендации 1С по переходу на 3.0 Там есть абзац, что делать, чтобы не слишком коверкалась нумерация
|
|||
8
mortal
06.11.13
✎
15:44
|
не претендую на красоту решения, сделал так:
добавил общий модуль, в котором 1 функция Функция ПолучитьНомер(Ссылка) Экспорт ДокИмя = Ссылка.Метаданные().Имя; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | " + ДокИмя + ".Ссылка, | " + ДокИмя + ".Дата, | " + ДокИмя + ".Номер КАК Номер |ИЗ | Документ." + ДокИмя + " КАК " + ДокИмя + " |ГДЕ | " + ДокИмя + ".Дата МЕЖДУ &ДатаНачала И &ДатаКонца //| И " + ДокИмя + ".ПометкаУдаления = ЛОЖЬ | И " + ДокИмя + ".Ссылка <> &ЭтотОбъект | И ПОДСТРОКА(" + ДокИмя + ".Номер, 1, 5) <> ""-"" | И ПОДСТРОКА(" + ДокИмя + ".Номер, 1, 1) = ""0"" | |УПОРЯДОЧИТЬ ПО | Номер УБЫВ"; Запрос.УстановитьПараметр("ДатаНачала", '20130101000000'); Запрос.УстановитьПараметр("ДатаКонца", '20131231235959'); Запрос.УстановитьПараметр("ЭтотОбъект", Ссылка); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Выборка.Следующий(); НомерЧислом = Число(Прав(Выборка.Номер,6)); НовыйНомерСтрокой = Формат((НомерЧислом + 1),"ЧГ=0"); Если СтрДлина(НовыйНомерСтрокой) = 1 Тогда НовыйНомерСтрокой = ("0000000000" + НовыйНомерСтрокой); ИначеЕсли СтрДлина(НовыйНомерСтрокой) = 2 Тогда НовыйНомерСтрокой = ("000000000" + НовыйНомерСтрокой); ИначеЕсли СтрДлина(НовыйНомерСтрокой) = 3 Тогда НовыйНомерСтрокой = ("00000000" + НовыйНомерСтрокой); ИначеЕсли СтрДлина(НовыйНомерСтрокой) = 4 Тогда НовыйНомерСтрокой = ("0000000" + НовыйНомерСтрокой); ИначеЕсли СтрДлина(НовыйНомерСтрокой) = 5 Тогда НовыйНомерСтрокой = ("000000" + НовыйНомерСтрокой); КонецЕсли; Возврат(НовыйНомерСтрокой); КонецФункции в модуле объекта нужных документов (для которых обязательна сквозная нумерация до конца года) добавил //mortal temp+ Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) Если ЭтотОбъект.ЭтоНовый() Тогда Если ЭтотОбъект.Дата <= '20140101000000' И ТекущаяДата() <= '20140101000000' Тогда ЭтотОбъект.Номер = mortalАвтонумерация.ПолучитьНомер(ЭтотОбъект.Ссылка); КонецЕсли; КонецЕсли; КонецПроцедуры //mortal temp- Все. в начале след года можно сие без труда почистить :) П.С. говн0кодность в общем модуле из-за наличия в базе вручную пронумерованных документов :( |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |