В базе существует не типовой документ. Автонумерация = Истина, Длина кода - 9 символов, Тип - строка. Контроль уникальности есть, периодичность не используется. В первый раз сталкиваюсь с тем, что закончилась нумерация документов. Прошу помощи решить проблему. Последний номер документа - ОТЧТ99999.
Все-таки проще оказалось изменить префикс, так как система обменивается документами с другими системами и необходимо, после перенумерации в одной системе синхронизация в других. Были ещё нюансы с тем, что док нетиповой и он не включён в подписку при установке нового номера, т.е. Смотрит последний старший номер, не учитывая префикс.
Пока, как временное решение пойдёт.
В перспективе необходимо сделать все-таки периодичность в пределах года, увеличить длину номера, убрать автонумерацию в форме, чтобы избежать пропуски номеров, сделать при записи ( добавить в подписку при установке нового номера), чтобы выдавал номер в разрезе префикса организации. Возможно рассмотреть единый префикс для данного типа документа, чтобы избежать перенумерацию текущих документов. В других системах также необходимо при создании изменить алгоритмы поиска уже существующих документов по номеру, но уже с учётом периода. Задача не на один день, необходимо тестирование все-таки, в рамках дня -это диагностика и выработка схемы, поэтому было принято более простое решение.
Надеюсь кому-нибудь данный пост поможет в принятии решения по данной проблеме.
Как вариант можно сократить длину префикса: "ОТЧ" вместо "ОТЧТ" - смысл префикса остается понятным, номера существующих документов тоже можно фактически сохранить, перенумеровав обработкой по принципу "ОТЧТ99999" в "ОТЧ099999" и продолжить нумерацию дальше начиная с ОТЧ100000.
Тупо использовать другие префиксы: ОТЧУ, ОТЧФ, ОТЧХ, ОТЧШ и так далее.
А вообще из длины кода в 9 символов реально используется только 5, так что налицо ошибка при проектировании использования этого "нетипового документа".
(5)ну да, ошибка. Видимо на момент разработки документов не рассматривались масштабы развития компании.
Изначально идея была в том, чтобы добавить периодичность нумерации документов и сделать длину 11 с расчетом, что в год будет не более миллиона документов и перенумеровать текущие доки, созданные в этом году. Их вроде немного.
Посмотрю ещё с префиксом предложение. Спасибо вам, коллеги:)
Как вариант можно сократить длину префикса: "ОТЧ" вместо "ОТЧТ" - смысл префикса остается понятным, номера существующих документов тоже можно фактически сохранить, перенумеровав обработкой по принципу "ОТЧТ99999" в "ОТЧ099999" и продолжить нумерацию дальше начиная с ОТЧ100000.
(7)В этом случае, наверное, придется все документы перенумеровывать, которые идут с таким префиксом и добавлять лидирующие нули. Если увеличить длину номера с 9 на 10 и перенумеровать док с номером ОТЧТ99999 в ОТЧТ099999, то в качестве следующего номера автонумератор предлагает номер ОТЧТ99999, так как предыдущий был ОТЧТ99998. После ввода документа с номером ОТЧТ99999, автонумератор для следующего документа предлагает его же.
Если увеличить длину номера с 9 на 10 и перенумеровать док с номером ОТЧТ99999 в ОТЧТ099999, то в качестве следующего номера автонумератор предлагает номер ОТЧТ99999, так как предыдущий был ОТЧТ99998
Перенуменовать надо все документы, а не только последний. То есть, ОТЧТ00001 в ОТЧ000001 (по моей версии) или в ОТЧТ000001 (по вашей), ОТЧТ00002 в ОТЧ000002 или в ОТЧТ000002 соответственно и так далее вплоть до ОТЧТ99999 в ОТЧТ099999 или ОТЧТ099999. Тогда, возможно, надо будет один раз вручную задать номер вида ОТЧ100000 или ОТЧТ100000, а дальше автонумерация заработает как надо.
(9)в моем случаи придётся перенумеровывать с 14 года, так как нумерация сквозная без периодиночности. Это большой объём документов + эти документы взаимодействовали с другими внешними системами.
Наверное, самым оптимальном вариантом, как уже писал выше будет установка периодичности в пределах года, увеличение длины номера и перенумерация документов, созданных в текущем периоде. Их мало, так как год только начался:)
А что за конфигурация? Если БП2.0 - перейдите на БП3.0: в ней изменён механизм префиксации (префикс вынесен из номера документа) и значащая длина номера увеличена.
Все-таки проще оказалось изменить префикс, так как система обменивается документами с другими системами и необходимо, после перенумерации в одной системе синхронизация в других. Были ещё нюансы с тем, что док нетиповой и он не включён в подписку при установке нового номера, т.е. Смотрит последний старший номер, не учитывая префикс.
Пока, как временное решение пойдёт.
В перспективе необходимо сделать все-таки периодичность в пределах года, увеличить длину номера, убрать автонумерацию в форме, чтобы избежать пропуски номеров, сделать при записи ( добавить в подписку при установке нового номера), чтобы выдавал номер в разрезе префикса организации. Возможно рассмотреть единый префикс для данного типа документа, чтобы избежать перенумерацию текущих документов. В других системах также необходимо при создании изменить алгоритмы поиска уже существующих документов по номеру, но уже с учётом периода. Задача не на один день, необходимо тестирование все-таки, в рамках дня -это диагностика и выработка схемы, поэтому было принято более простое решение.
Надеюсь кому-нибудь данный пост поможет в принятии решения по данной проблеме.
Выбрать "8" > "9" РезультатСравнения, "8 > 9" Выражение
Объединить все Выбрать "9" > "8", "9 > 8"
Объединить все Выбрать "9" > "а", "9 > а (кириллица)"
Объединить все Выбрать "а" > "9", "а (кириллица) > 9"
Объединить все Выбрать "005" > "02 ", """005"" > ""02 """
Объединить все Выбрать "02 " > "005", """02 "" > ""005"""
Объединить все Выбрать "а001" > "9999", """a001"" > ""9999"""
Иными словами, проблема любой нумерации решается добавлением буквы (последний пример). Нумератор принимает ее за первый номер. и продолжает нумерацию с а001. Такой вариант может решить большую часть проблем, в большинстве случаев.
Ограничения- обработчики отсекающие лидирующие нули не сработают.