Имя: Пароль:
1C
1С v8
Изменение номера документа обработкой
0 1CНовичок1C
 
02.08.18
14:41
Доброго времени суток.
Пытаюсь написать обработку, которая поменяет нумерацию у документов.

    Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    ПоступлениеТоваровУслуг.Ссылка КАК Ссылка,
        |    ПоступлениеТоваровУслуг.Номер КАК Номер
        |ИЗ
        |    Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
        |ГДЕ
        |    ПоступлениеТоваровУслуг.Дата МЕЖДУ &Дата1 И &Дата2";

        Запрос.УстановитьПараметр("Дата1", Дата(2018,06,01,00,00,00));
        Запрос.УстановитьПараметр("Дата2", Дата(2018,07,01,00,00,00));

       Объект.Результат.Загрузить(Запрос.Выполнить().Выгрузить());

Запрос выполняется, выгружается в ТЧ обработки.

Далее хочу перебрать все документы и изменить номер. Номер указываю в поле ввода на форме (например УТ-01333)

Делаю цикл

Для Каждого Стр Из Объект.Результат Цикл
            
             Стр.Номер = Номер + 1;
          
КонецЦикла;


Обработка просто прибавляет еденичку к номеру (становится УТ-013331)


Подскажите что не так. Не программист 1С, к сожалению.
1 Beduin
 
02.08.18
14:43
(0) А что в переменной Объект?
2 1CНовичок1C
 
02.08.18
14:44
Это не переменная.
3 Lexey_
 
02.08.18
14:45
(0) "Обработка просто прибавляет еденичку к номеру"  потому что тип строка
4 YaFedor
 
02.08.18
14:47
"Далее хочу перебрать все документы и изменить номер. Номер указываю в поле ввода на форме (например УТ-01333)"

Вообще не понятно, что происходит
5 unregistered
 
02.08.18
14:50
Номер документа имеет тип "Строка"
Выражение "КакаяТоСтрока" + КакаяТоПеременная является не сложением, а конкатенацией строк. При этом переменная КакаяТоПеременная неявно приводится к типу "Строка".

Всё логично.
6 Kondarat
 
02.08.18
14:51
1. Сохранить в отдельной переменной префикс
2. Числовую часть преобразовать в число, прибавить 1
3. Взять префикс + преобразовать в строку то, что в 2.
7 Beduin
 
02.08.18
14:54
При чем тут строки. У него предыдущее установленное значение не запоминается.
8 1CНовичок1C
 
02.08.18
14:54
Kondarat, не подскажите как это сделать?
9 Kondarat
 
02.08.18
14:56
(8) Это надо код писать... Лениво...
10 Мыш
 
02.08.18
15:04
(9) Отличная подсказка! Вальяжно, с ленцой, одним пальчиком постукивать по клавиатуре )
11 Kondarat
 
02.08.18
15:06
(10) Подсказал в (6). Можешь развить подсказку по своему усмотрению.
12 Мыш
 
02.08.18
15:12
(11) Ты шутку не понял, видимо.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс