Имя: Пароль:
1C
1С v8
не могу изменить строки в документе
0 user-ok
 
02.10.15
12:11
Задача:
По некоторому списку нужно изменить существующий документ "Оприходование товаров" . А именно добавить товары, которые есть в моем списке и нет в оприходовании и изменить количество, если строка есть, но отличается от значения в списке
Что делаю:

Оприходование = ДокОприходование.ПолучитьОбъект();

Для каждого Строка Из МойСписок Цикл //На самом деле это ТЧ документа
Номенклатура = Строка.Номенклатура;
        Отбор = Новый Структура();
        Отбор.Вставить("Номенклатура", Номенклатура);
        НайденныеСтроки = Оприходование.Товары.НайтиСтроки(Отбор);

Если НайденныеСтроки.Количество() = 0 Тогда
  //Не нашли. добавляем. тут все отрабатывает
Иначе

// нашли и пытаемся править
//А оно никак :(
            Для каждого ТекСтрока Из НайденныеСтроки Цикл
            
                Если ТекСтрока.Количество <> ВводимыйОстаток Тогда
                
                    Сообщить("Изменили " + Номенклатура);
                
                КонецЕсли;
                
                ТекСтрока.Количество = ВводимыйОстаток;
                Сумма                 = ТекСтрока.Цена * ВводимыйОстаток;
                ТекСтрока.Сумма     = Сумма;
                ТекСтрока.СуммаРегл = Сумма;
                ТекСтрока.СуммаНУ     = Сумма;
            
            КонецЦикла;
КонецЕсли;
КонецЦикла;
Оприходование.Записать();

Сорри за форматирование. Вставил как мог
1 User_Agronom
 
02.10.15
12:13
а где строка Добавить?
2 user-ok
 
02.10.15
12:15
так не нужно ж "Добавлять"
нужно изменить количество и сумму в существующей строке
3 Живой Ископаемый
 
02.10.15
12:15
в в8 есть отладчик, гарантирую
4 Альбатрос
 
02.10.15
12:16
Должно работать. Отладчик в руки
Независимо от того, куда вы едете — это в гору и против ветра!