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