|
Как при создании нового документа увеличить его номер на единицу?
| ☑ |
0
wrxsti
03.06.19
✎
20:36
|
При программном создании нового документа, ему присваивается номер 000000001. Хотя у предыдущего документа номер 000002746. Тип данных у номера "строка".
Документ создаю так:
Для Каждого ЭлементМассива из Массив Цикл
Если ЭлементМассива.Id1C = "0" Тогда
ДокументОбъект = Документы.Док1.СоздатьДокумент();
НаименТеста = ЭлементМассива.english;
ТестСсылка = Справочники.ОУ_Тесты.НайтиПоНаименованию(НаименТеста);
ДокументОбъект.Тест = ТестСсылка;
ДокументОбъект.Дата = ТекущаяДата();
ДокументОбъект.Записать();
КонецЕсли;
КонецЦикла;
Я так понимаю необходимо сделать выборку максимального номера в запросе, перевести его в число, прибавить единицу и вернуть в строку?
Подскажите пожалуйста, как это можно сделать?
|
|
1
wrxsti
03.06.19
✎
21:33
|
Добавил такой код:
Строка1 =Строка(Число(Прав(Номер,9)) + 1);
ДлиннаСтроки1 = СтрДлина(Строка1);
Разница = 9 - ДлиннаСтроки1;
Для р = 1 По Разница Цикл
Строка1 = "0" + Строка1;
КонецЦикла;
Строка1 = Строка1;
Номер = Строка1;
Номер документа стал 000002 746. Откуда взялся пробел и как его убрать?
|
|
2
vde69
03.06.19
✎
21:43
|
ДокументОбъект.Дата = ТекущаяДата();
ДокументОбъект.УстановитьНовыйНомер();
ДокументОбъект.Записать();
|
|
3
wrxsti
03.06.19
✎
22:14
|
(2) Создает с номером 000000001
|
|
4
vde69
03.06.19
✎
23:45
|
(3)
1. какая периодичность нумерации
2. попробуй разово выполнить ОбновитьНумерацию()
3. что-то ты не договариваешь, 000002746 - длина 9, а 000000001 - длина 8, так не бывает...
|
|
5
Zombi
03.06.19
✎
23:51
|
(1) Пробел появился из разделителя триад. Убрать его теперь руками или обработкой.
|
|