Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Изменение номера документа обработкой

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

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

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

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует