Всем добрый день!
В многострочной части документа надо скопировать значение из колонки слева в колонку справа. И ВСЁ! И не работает!
В модуле справочника такой код
Док = СоздатьОбъект("Документ.Потребность");
Док.ВыбратьДокументы();
ПОКА Док.ПолучитьДокумент() = 1 ЦИКЛ
ТекДок = Док.ТекущийДокумент();
ТекДок.ВыбратьСтроки();
Пока ТекДок.ПолучитьСтроку() = 1 Цикл
кол_во = ТекДок.ПолучитьАтрибут( Колонка1);
ТекДок.УстановитьАтрибут(Колонка2,кол_во);
КонецЦикла;
Попытка
ТекДок.Записать();
Исключение
Сообщить( ОписаниеОшибки() );
КонецПопытки;
КОНЕЦЦИКЛА;
Пытался блокировать текущий документ. Тоже не работает.
Я сижу один, никого больше нет. Да и базу-то я развернул локально.
Зашёл в 1С под администратором. Всё равно!
Выдаёт ошибку:
не выбран документ
Если не выбран, тогда почему указатель отладчика попадает в цикл?
Тогда не должен попадать. Сразу переход на КОНЕЦЦИКЛА. Но этого не происходит.
Подскажите пожалуйста.
ТекДок - у вас не документ, а ссылка на него - через ссылку данные, конечно, можно получить, но вот записать ничего не получиться.
Нужно создать объект "Документ", спозиционировать на нужном документе, а потом уже менять что-то и записывать.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший