Имя: Пароль:
1C
1С v8
Как в новом году сохранить длину номера документа как в старом году?
0 WED
 
21.12.23
15:42
Периодичность нумерации - год.
Длина номера документа в конфигурации 11 символов, но реально используется от 4 до 6 (разные подразделения компании -> разные базы -> разная длина).

У первого документа в новом году автоматически установится номер длиной 11 символов, как сохранить длину номера такую же как в старом году?

Кроме принудительной установки номера у первого в году документа перед записью идей нет, но делать проверку ради 1 документа в году тоже не очень интересно.

Есть идеи?
1 Eiffil123
 
21.12.23
17:08
(0) записать сейчас документ, вручную подогнать номер под тот, который нужен. документ можно пометить на удаление, главное чтобы он номер занял.
2 RoRu
 
21.12.23
17:32
(0) а зачем вообще это ? чем плохо если будет 11 у всех ?
3 mishaPH
 
21.12.23
18:16
(0) уже сейчас во всех базах сделать док от 01.01.24 с нужным форматом. пустой. Далее все пойдет штатно
4 mishaPH
 
21.12.23
18:18
(2) меня всегда умиляли такие ответы вопросы. Ну надо вот. Очевидность сделать 11 я думаю автор сам бы догадался и хочет этого избежать.

А зачем - очень часто из за интеграции с какими-то системами именно той базы
5 mikecool
 
21.12.23
18:31
(4) сделать отдельный реквизит для интеграции, не трогать штатный номер
и не лохматить бабушек
6 RomanYS
 
21.12.23
18:46
(2)(4) просто ради наглядности и удобства. Иногда так делаю, оперировать номерами 00XXX гораздо удобнее чем 00000000XXX
7 RomanYS
 
21.12.23
18:47
(1) +1 создать нулевые документы, после начала года перенести на следующий
8 lEvGl
 
21.12.23
21:45
(4) такой мусор это следствие кривой архитектуры, при нормальном подходе таких потребностей не возникает
9 СвинТуз
 
21.12.23
21:49
Процедура  ПриУстановкеНовогоНомера(СтандартнаяОбработка,Префикс)
10 lEvGl
 
21.12.23
21:57
(9) лень ему
11 WED
 
22.12.23
11:09
(1) Так и делали, надоело. Хотим не руками, а "само".
(2) Хотели бы 11 знаков в нумерации, вопросов бы не задавал. Есть базы, где используются все 11 знаков, но в 90% 4-6 знаков и 11 для них неудобно.
(3) Руками? Опять? Нет уж, спасибо :)
(6) Именно!
(9) И это было первое про что подумал, но вопрос стоит КАК узнать, что документ первый за год и откорректировать его номер, сократив до длины такой же как в прошлом году.
(10) Было бы мне лень - делали бы руками, как все последние годы.
12 WED
 
22.12.23
11:12
(9) И, кстати, в этом обработчике у объекта ещё нет номера, а значит для определения, что документ первый в году потребуется дёргать базу, что не есть хорошо, т.к. нужно 1 раз для 1 документа.
13 YFedor
 
22.12.23
11:20
(12) А как ты хочешь узнать, что документ первый в году не дергая базу?
14 WED
 
22.12.23
11:45
(13) Пока что лучше, чем по номеру записываемого документа я не придумал:
Если из номера удалить лидирующие нули и останется только "1" - это первый док за год и тогда номер надо сократить по формату прошлого года.

Проблема в том, что сделать это можно только после присвоения номера записываемому документу, т.е. после записи. И придётся записывать дважды.
15 RomanYS
 
22.12.23
11:56
(14) чем (7) не устраивает? Просто создай сейчас документы с номером Префикс-0000 в 2024 году и всё. Потом их же перенесешь в 2025й
16 WED
 
22.12.23
13:01
(15) Кстати, натолкнуло на мысль, что решение не в момент записи нового документа.
Задачу можно решить с помощью регламентного задания - создать новый документ с нужным номером по расписанию на 01.01.20хх 00:00:01


Спасибо. :)
17 lEvGl
 
22.12.23
13:10
охренеца
18 WED
 
22.12.23
13:14
(17) А есть что сказать по сути?
19 СвинТуз
 
22.12.23
13:15
(0)
Блокировку на базу жесткую.
И '20240101000001' сглотнув шампанского, по удаленке
завести все нужные документы с нужными номерами.
Разблокировать базу.
20 lEvGl
 
22.12.23
13:19
в целом, просто лень разбираться в этой ситуации
доки из других ИБ, длина какая то переменная, платформа генерит исходя из последнего в году с учетом длины последнего, один вид документа или много... много чего не сходится из того что тут объяснили
21 lEvGl
 
22.12.23
13:24
а так, не смотря, пол палец потолок - почему не грузится с родными номерами из смежных баз? они там сами что надо генерят, а сюда сливается уже готовый номер, обычно это должно происходить так. как то проще в одной базе поставить длину 9 префикс + длина номера, какая нужна ИМ ТАМ, и перенести в консолидирующую базу. Чем в базе, в которую стекается из кучи мест, разруливать всю поступающую ботву и еще чтобы на автомате!
22 WED
 
22.12.23
13:22
(19) Надоело руками.
(20) Ну если лень разбираться, то зачем участвовать и что-то писать?
23 WED
 
22.12.23
13:25
(21) Нет никаких смежных баз. Есть базы по разным юрлицам. Конфигурация одинаковая, а вот длина номера принятая в конкретном юрлице разная. При записи первого документа в году платформа делает все 11 знаков и люди устали исправлять руками, попросили автоматизировать.
Всё это касается только одного конкретного вида документа.
24 YFedor
 
22.12.23
13:26
(14) А вдруг это будет не 1?

Но если в твоем решении, то да в ПриЗаписи или ПослеЗаписи, в тот момент, когда уже будет номер.

Ну и что, что записывать дважды? Дважды придется записать только первый документ каждого типа, остальные же нет
25 lEvGl
 
22.12.23
13:31
+ (20) вам там виднее, что за ситуация, архитектура и логика обменов. процедуры, где можно рулить номером вам обозначили, но это затычные решения
(23) ну вот, уже что то понятно... хотя и не совсем
Нет никаких смежных баз. Есть базы по разным юрлицам

это как? базЫ по разным конторам или базА по разным контрам. это как то принципиально разные ситуации
26 WED
 
22.12.23
13:28
(24) решение уже есть: создание документа с нужным форматом номера в регламентном задании по расписанию в 1 секунду нового года. Если в этом (новом) году уже есть документы, то ничего не создаётся.
27 YFedor
 
22.12.23
13:28
+(24) Чем тогда (9) не устраивает? Там уже будет новый сгенерированный номер - его и подмените.
28 lEvGl
 
22.12.23
13:33
и вот сейчас вы скажете "да задолбал ты со своими вопросами, тупой чтоли"
поэтому и лень
29 lEvGl
 
22.12.23
13:38
(27) а что, в УТ есть настройка отдельной нумерации с учетом длины номера по каждой организации? префикс всегда был, длины что то не помню
или это не ут, цифра 11 на подсознание сыграла
30 lEvGl
 
22.12.23
13:42
че вобще происходит
(0)
разные подразделения компании -> разные базы -> разная длина

как это можно понять так, чтобы вести речь об одной базе, как в (23)
ну и в (5) про интеграцию пишут, я не одинок. уже думал, к концу года все, приехали
31 lEvGl
 
22.12.23
13:46
чем больше читаю, тем веселее
Нет никаких смежных баз. Есть базы по разным юрлицам. Конфигурация одинаковая, а вот длина номера

хотите сказать, что разные базы, между которыми обмен, нельзя назвать смежными?
бугага в общем. интуитивная лень никогда не обманывает
32 WED
 
22.12.23
13:53
(31) Сам придумал - сам посмеялся. Молодец.

Еще раз: Нет никаких смежных баз.

Есть разные юридические лица. У каждой своя база. Ни обмена, ни любого другого взаимодействия между базами нет. Ничего никуда не выгружается и не загружается. Конфигурация используется одинаковая в каждом юрлице.

Решение найдено. Вопрос закрыт.
33 lEvGl
 
22.12.23
13:58
охренеца
34 mishaPH
 
22.12.23
16:33
(11) ты программист или кто? сделай автоматом 0е доки генерацию. (8) кэп. система уже есть. И менять ее ради заморочки 1 раз в год странно