Сквозная нумерация двух справочников с помощью запроса

1. mqlochink 7 28.09.23 16:11 Сейчас в теме
Имеется справочник с строковым кодом длиной 9 символов, например, Контрагенты, необходимо чтобы при присвоении кода код не совпадал с кодом в другом справочнике, где код так же строковый, например, Сотрудники. Подскажите пожалуйста запрос который бы возвращал свободный следующий номер из двух справочников. В справочнике Сотрудники коды могут идти не по порядку. Известен код который присвоится при записи нового элемента Контрагента.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
14. mqlochink 7 03.10.23 07:29 Сейчас в теме +0.14 $m
Получилось как то так:
Использовал минимализмы, которые в свою очередь использовали

30. Первый пропущенный артикул
http://www.forum.mista.ru/topic.php?id=759443

Нумерация Сотрудников очень плохая в том плане что и пробелов много и нумерация есть без лидирующих нулей, поэтому в начале её привожу к одному виду

Функция ВернутьКодБезДубляПоСотрудникам(Код)
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ВЫБОР
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 9, 1) <> """"
		|			ТОГДА СОКРЛП(Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 8, 1) <> """"
		|			ТОГДА СОКРЛП(""0"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 7, 1) <> """"
		|			ТОГДА СОКРЛП(""00"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 6, 1) <> """"
		|			ТОГДА СОКРЛП(""000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 5, 1) <> """"
		|			ТОГДА СОКРЛП(""0000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 4, 1) <> """"
		|			ТОГДА СОКРЛП(""00000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 3, 1) <> """"
		|			ТОГДА СОКРЛП(""000000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 2, 1) <> """"
		|			ТОГДА СОКРЛП(""0000000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 1, 1) <> """"
		|			ТОГДА СОКРЛП(""00000000"" + Сотрудники.Код)
		|	КОНЕЦ КАК КодСотрудника
		|ПОМЕСТИТЬ ВТ_КодыСотрудников
		|ИЗ
		|	Справочник.Сотрудники КАК Сотрудники
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ
		|	ПРАВ(ВТ_КодыСотрудников.КодСотрудника, 6) КАК Код
		|ПОМЕСТИТЬ ВТ_Дано
		|ИЗ
		|	ВТ_КодыСотрудников КАК ВТ_КодыСотрудников
		|ГДЕ
		|	ПОДСТРОКА(ПРАВ(ВТ_КодыСотрудников.КодСотрудника, 6), 1, 2) = ПОДСТРОКА(ПРАВ(&Код, 6), 1, 2)
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ
		|	ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 6, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 5, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 10 + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 4, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 100 + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 3, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 1000 + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 2, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 10000 + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 1, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 100000 КАК Х
		|ПОМЕСТИТЬ Числа
		|ИЗ
		|	ВТ_Дано КАК ВТ_Дано
		|
		|ДЛЯ ИЗМЕНЕНИЯ
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ
		|	Числа.Х КАК Х,
		|	ЛОЖЬ КАК Свободен
		|ПОМЕСТИТЬ ЧислаПлюс
		|ИЗ
		|	Числа КАК Числа
		|
		|ОБЪЕДИНИТЬ
		|
		|ВЫБРАТЬ
		|	Числа.Х + 1,
		|	ИСТИНА
		|ИЗ
		|	Числа КАК Числа
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ ПЕРВЫЕ 1
		|	ЧислаПлюс.Х КАК ПервыйСвободныйАртикул
		|ИЗ
		|	ЧислаПлюс КАК ЧислаПлюс
		|
		|СГРУППИРОВАТЬ ПО
		|	ЧислаПлюс.Х
		|
		|ИМЕЮЩИЕ
		|	КОЛИЧЕСТВО(*) = 1 И
		|	МАКСИМУМ(ЧислаПлюс.Свободен) = ИСТИНА";	
	
	Запрос.УстановитьПараметр("Код", СокрЛП(Код));
	
	РезультатЗапроса = Запрос.Выполнить();
	
	Если РезультатЗапроса.Пустой() Тогда
		Возврат Код;
	Иначе
		ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
		ВыборкаДетальныеЗаписи.Следующий();
		Если ВыборкаДетальныеЗаписи.ПервыйСвободныйАртикул > Число(Код) Тогда
			Возврат "000" + Формат(ВыборкаДетальныеЗаписи.ПервыйСвободныйАртикул,"ЧГ=0");
		Иначе
			Возврат Код;	
		КонецЕсли;
	КонецЕсли;
	
КонецФункции
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Raskad 10 28.09.23 16:26 Сейчас в теме
ВЫБРАТЬ
	Контрагенты.Код КАК Код
ИЗ
	Справочник.Контрагенты КАК Контрагенты

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	Сотрудники.Код
ИЗ
	Справочник.Сотрудники КАК Сотрудники

УПОРЯДОЧИТЬ ПО
	Код
АВТОУПОРЯДОЧИВАНИЕ
Показать


Такой подойдет?
newlogin1; +1 Ответить
3. newlogin1 28.09.23 16:29 Сейчас в теме
(2)Подойдет только в том случае, если коды будут идентичные и пользаки не влезут в нумерацию руками и нет обмена, т.к. обмен может свои префиксы притащить.
4. Raskad 10 28.09.23 16:32 Сейчас в теме
(3) Тогда одним запросом не сделать. В цикле удалять символы отличные от цифр. Потом сортировку к таблице применить. Ну и к получившемуся числу прибавить префикс.
newlogin1; +1 Ответить
5. newlogin1 28.09.23 16:40 Сейчас в теме
(4)Думаю ТС получил ответ на свой вопрос и даже указания на возможные проблемы.
7. mqlochink 7 28.09.23 16:48 Сейчас в теме
(2) получается все коды, и если дублируются то ну и что
6. mqlochink 7 28.09.23 16:46 Сейчас в теме
Я сделал через генерацию числовой последовательности, преобразования кодов сотрудников в числа и связь между ними, думал может есть что то более лаконичное и всё в запросе
8. user1936667 28.09.23 21:41 Сейчас в теме
(6)
через генерацию числовой последовательности,
Создать объект второго справочника, дернуть у него УстановитьНовыйКод, присвоить полученный код первому справочнику, объект второго справочника не записывать. Не?
mqlochink; +1 Ответить
13. mqlochink 7 03.10.23 07:21 Сейчас в теме
(8)классное решение, но у меня нарушение в нумерации у справочника Сотрудники, много неиспользованных кодов, хотел нумерацию продолжать в номерах Контрагентов
9. Dr.HiHi 2 28.09.23 23:55 Сейчас в теме
как в (2), но лимиты навешать
ВЫБРАТЬ
	ВложенныйЗапрос.Код КАК Код
ИЗ
	(ВЫБРАТЬ ПЕРВЫЕ 1
		Контрагенты.Код КАК Код
	ИЗ
		Справочник.Контрагенты КАК Контрагенты
	
	УПОРЯДОЧИТЬ ПО
		Код УБЫВ) КАК ВложенныйЗапрос

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ВложенныйЗапрос.Код
ИЗ
	(ВЫБРАТЬ ПЕРВЫЕ 1
		Сотрудники.Код КАК Код
	ИЗ
		Справочник.Сотрудники КАК Сотрудники
	
	УПОРЯДОЧИТЬ ПО
		Сотрудники.Код УБЫВ) КАК ВложенныйЗапрос

УПОРЯДОЧИТЬ ПО
	Код УБЫВ
Показать
10. Said-We 29.09.23 00:36 Сейчас в теме
(1) Вам это зачем запросом в 1С делать?
Представьте 100 пользователей выполнили запрос примерно в одно и то же время, мгновение и стали один и тот же номер куда-то присваивать.

Есть нумератор. Его и используйте. Только номер надо не в код справочника сувать, а отдельным реквизитом. А какой код у справочника будет не важно.

Но если честно, ума не приложу зачем у справочников коды разводить на разные. Тип справочника и так дает понять кто есть где. Коды же не обязательно должны идти подряд.
Физлица: "Ф" + 9 символов кода, или "1" + 9 символов кода.
Контрагенты: "К" + 9 символов кода, или "2" + 9 символов кода.
11. mqlochink 7 02.10.23 14:31 Сейчас в теме
(10) в дальшейшем коды импортируются в другую систему, где нельзя использовать буквы для префикса потому что только числа принимает система, для числового префикса тоже не хватает длины и нумерация потом нарушится
12. Said-We 02.10.23 15:30 Сейчас в теме
(11) Проще поправить систему приема данных. Расширить длину кода, до необходимого. Либо вообще код не переносить. Пусть принимающая система свои генерит. Добавить внешний ключ из базы источника куда прописать GUID из 1С и усё. Какая разница какой там код.
В общем, по моему, не с той стороны задачу решаете.
mqlochink; +1 Ответить
15. mqlochink 7 03.10.23 07:30 Сейчас в теме
(12)всё так, но по структуре компании не очень могу перенаправить на другое подразделение
14. mqlochink 7 03.10.23 07:29 Сейчас в теме +0.14 $m
Получилось как то так:
Использовал минимализмы, которые в свою очередь использовали

30. Первый пропущенный артикул
http://www.forum.mista.ru/topic.php?id=759443

Нумерация Сотрудников очень плохая в том плане что и пробелов много и нумерация есть без лидирующих нулей, поэтому в начале её привожу к одному виду

Функция ВернутьКодБезДубляПоСотрудникам(Код)
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ВЫБОР
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 9, 1) <> """"
		|			ТОГДА СОКРЛП(Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 8, 1) <> """"
		|			ТОГДА СОКРЛП(""0"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 7, 1) <> """"
		|			ТОГДА СОКРЛП(""00"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 6, 1) <> """"
		|			ТОГДА СОКРЛП(""000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 5, 1) <> """"
		|			ТОГДА СОКРЛП(""0000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 4, 1) <> """"
		|			ТОГДА СОКРЛП(""00000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 3, 1) <> """"
		|			ТОГДА СОКРЛП(""000000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 2, 1) <> """"
		|			ТОГДА СОКРЛП(""0000000"" + Сотрудники.Код)
		|		КОГДА ПОДСТРОКА(Сотрудники.Код, 1, 1) <> """"
		|			ТОГДА СОКРЛП(""00000000"" + Сотрудники.Код)
		|	КОНЕЦ КАК КодСотрудника
		|ПОМЕСТИТЬ ВТ_КодыСотрудников
		|ИЗ
		|	Справочник.Сотрудники КАК Сотрудники
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ
		|	ПРАВ(ВТ_КодыСотрудников.КодСотрудника, 6) КАК Код
		|ПОМЕСТИТЬ ВТ_Дано
		|ИЗ
		|	ВТ_КодыСотрудников КАК ВТ_КодыСотрудников
		|ГДЕ
		|	ПОДСТРОКА(ПРАВ(ВТ_КодыСотрудников.КодСотрудника, 6), 1, 2) = ПОДСТРОКА(ПРАВ(&Код, 6), 1, 2)
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ
		|	ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 6, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 5, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 10 + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 4, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 100 + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 3, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 1000 + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 2, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 10000 + ВЫБОР ПОДСТРОКА(ВТ_Дано.Код, 1, 1)
		|		КОГДА ""1""
		|			ТОГДА 1
		|		КОГДА ""2""
		|			ТОГДА 2
		|		КОГДА ""3""
		|			ТОГДА 3
		|		КОГДА ""4""
		|			ТОГДА 4
		|		КОГДА ""5""
		|			ТОГДА 5
		|		КОГДА ""6""
		|			ТОГДА 6
		|		КОГДА ""7""
		|			ТОГДА 7
		|		КОГДА ""8""
		|			ТОГДА 8
		|		КОГДА ""9""
		|			ТОГДА 9
		|		ИНАЧЕ 0
		|	КОНЕЦ * 100000 КАК Х
		|ПОМЕСТИТЬ Числа
		|ИЗ
		|	ВТ_Дано КАК ВТ_Дано
		|
		|ДЛЯ ИЗМЕНЕНИЯ
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ
		|	Числа.Х КАК Х,
		|	ЛОЖЬ КАК Свободен
		|ПОМЕСТИТЬ ЧислаПлюс
		|ИЗ
		|	Числа КАК Числа
		|
		|ОБЪЕДИНИТЬ
		|
		|ВЫБРАТЬ
		|	Числа.Х + 1,
		|	ИСТИНА
		|ИЗ
		|	Числа КАК Числа
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ ПЕРВЫЕ 1
		|	ЧислаПлюс.Х КАК ПервыйСвободныйАртикул
		|ИЗ
		|	ЧислаПлюс КАК ЧислаПлюс
		|
		|СГРУППИРОВАТЬ ПО
		|	ЧислаПлюс.Х
		|
		|ИМЕЮЩИЕ
		|	КОЛИЧЕСТВО(*) = 1 И
		|	МАКСИМУМ(ЧислаПлюс.Свободен) = ИСТИНА";	
	
	Запрос.УстановитьПараметр("Код", СокрЛП(Код));
	
	РезультатЗапроса = Запрос.Выполнить();
	
	Если РезультатЗапроса.Пустой() Тогда
		Возврат Код;
	Иначе
		ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
		ВыборкаДетальныеЗаписи.Следующий();
		Если ВыборкаДетальныеЗаписи.ПервыйСвободныйАртикул > Число(Код) Тогда
			Возврат "000" + Формат(ВыборкаДетальныеЗаписи.ПервыйСвободныйАртикул,"ЧГ=0");
		Иначе
			Возврат Код;	
		КонецЕсли;
	КонецЕсли;
	
КонецФункции
Показать
16. Said-We 03.10.23 11:15 Сейчас в теме
(15) В 10 написал: "Есть нумератор. Его и используйте. Только номер надо не в код справочника сувать, а отдельным реквизитом. А какой код у справочника будет не важно."
Рассматривали такой вариант? Что бы при одновременном создании элементов уникальность номера сама платформа 1С отслеживала.
17. mqlochink 7 04.10.23 06:15 Сейчас в теме
(16) Такой вариант не рассматривался из-за того что основная цель для чего создавалась нумерация это выгрузка в стороннюю систему где соответсвие по коду сотрудника, если добавлю нумератор, нужно как то с системой решить вопрос как идентифицировать уже созданные и переданные данные. Нужно будет присваивать текущий код? А как потом будет работать нумератор, не очень представляю.
18. user1969989 04.10.23 14:08 Сейчас в теме
Еще можно в одном справочнике присваивать только четные номера, а в другом - нечетные :)
mqlochink; +1 Ответить
Оставьте свое сообщение

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