Имя: Пароль:
1C
1С v8
Как прибавить к номеру документа единицу?
0 Shecurok
 
08.04.21
14:40
Написал процедуру

Функция ПолучитьПоследнийНомерРеал()
    НомерДок = 0;
    Запрос = Новый Запрос("ВЫБРАТЬ Первые 1 Док.Номер КАК Номер ИЗ Документ.РеализацияТоваровУслуг КАК Док УПОРЯДОЧИТЬ ПО Номер УБЫВ");
    ВДЗ = Запрос.Выполнить().Выбрать();
    Если ВДЗ.Следующий() Тогда
        НомерДок = ВДЗ.Номер + 1;
    КонецЕсли;
    Возврат НомерДок;
КонецФункции

Был документ допустим БП-0000018, нумерует БП00000181, а надо 19. В каком месте облажался?

1С вроде сама нумерует классно, это я знаю, но мне надо получать сейчас так.
1 Shecurok
 
08.04.21
14:44
Хотя вру, необязательно мне таким образом получать номер нового дока. Можно запустить типовую нумерацию (так даже лучше будет). Вопрос тогда как типовую запустить?
2 AlexTim03
 
08.04.21
14:51
УстановитьНовыйНомер()
3 Александр111
 
08.04.21
14:54
ВДЗ.Номер - текстовая строка, прибавляешь единицу -добавляется единица к тексту.
4 Shecurok
 
08.04.21
14:56
(3) перевести в число, прибавить, потом обратно в строку? интересно кнч, такой себе костыль
5 Вафель
 
08.04.21
15:02
префикс назначай верный и все остальное само
6 Shecurok
 
08.04.21
15:07
ДокРеализации.Номер = ДокРеализации.УстановитьНовыйНомер();

Немного почитал об этой установке номера, но не понял. Как её вызвать. Тут ошибка обращение к процедуре как к фукции (или наоборот, закрыл уже ошиибку)
7 программистище
 
08.04.21
15:08
пока ты делаешь это запрос и прибавляешь 1
у тебя этот номер украдут
8 программистище
 
08.04.21
15:13
будь мужиком, прибавь единицу уже
9 Gbpltw
 
08.04.21
15:19
(8) в префикс)
10 Chameleon1980
 
08.04.21
15:23
(6) УстановитьНовыйНомер не возвращает номер, а устанавливает
ДокОбъект.УстановитьНовыйНомер()
сп украли?

ДокументОбъект.<Имя документа> (DocumentObject.<Document name>)
УстановитьНовыйНомер (SetNewNumber)
Синтаксис:
УстановитьНовыйНомер(<ПрефиксНомера>)
Параметры:
<ПрефиксНомера> (необязательный)
Тип: Строка.
Префикс устанавливаемого номера.
Значение по умолчанию: Пустая строка.
Описание:
Устанавливает новый номер документа для заданного префикса номера.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Примечание:
Для документов с нумерацией в пределах периода, номер устанавливается в пределах периода, соответствующего установленной дате документа. Если дата - пустая, процедура установит номер в пределах периода соответствующего пустой дате.
Пример:
РасходнаяНакладная.УстановитьНовыйНомер(ПрефиксИБ);
См. также:
ДокументОбъект.<Имя документа>, событие ПриУстановкеНовогоНомера
Использование в версии:
Доступен, начиная с версии 8.0.
     Методическая информация
11 Chameleon1980
 
08.04.21
15:24
где ты тут видишь возвращаемое значение?
12 Shecurok
 
08.04.21
15:44
(11) Понял, спасибо огромное
13 NorthWind
 
08.04.21
15:54
(4) почему костыль-то? Номер в документе хранится как строка. Хотите работать с ним как с числом, преобразуйте его в число, предварительно убедившись что это возможно сделать - что там нет дробей, букв и прочей ереси, которую так любят бухгалтера в нумерации документов.