|   |   | 
| 
 | Как прибавить к номеру документа единицу? | ☑ | ||
|---|---|---|---|---|
| 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) почему костыль-то? Номер в документе хранится как строка. Хотите работать с ним как с числом, преобразуйте его в число, предварительно убедившись что это возможно сделать - что там нет дробей, букв и прочей ереси, которую так любят бухгалтера в нумерации документов.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |