&НаКлиенте
Процедура ПродукцияКоличествоРолловПриИзменении(Элемент)
ТекущаяСтрока = ТекущийЭлемент.ТекущаяСтрока; //При удалении нескольких строк в документе индексы остаются старые...
Если НужнаяНоменклатура(ТекущаяСтрока) Тогда
ТекущийЭлемент.ТекущиеДанные.Количество = ТекущийЭлемент.ТекущиеДанные.КоличествоРоллов * 8;
Иначе
ТекущийЭлемент.ТекущиеДанные.КоличествоРоллов = 0;
КонецЕсли;
КонецПроцедуры
&НаСервере
Функция НужнаяНоменклатура(ТекущаяСтрока)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Ссылка КАК Ссылка
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| Номенклатура.ЭтоГруппа = ЛОЖЬ
| И Номенклатура.Родитель = &Родитель
| И Номенклатура.Ссылка = &Ссылка
| И НЕ Номенклатура.ПометкаУдаления";
Запрос.УстановитьПараметр("Ссылка", Объект.Продукция[ТекущаяСтрока].Номенклатура); //Вот сюда нужно предать данные строки
Запрос.УстановитьПараметр("Родитель", Справочники.Номенклатура.НайтиПоКоду("ФР-00000129"));
Результат = Запрос.Выполнить().Выбрать();
Возврат Результат.Следующий();
КонецФункции
Этьа конструкция работает, но вот если заполнить таблицу каким либо обработчиком и потом удалить несколько строк, то данная конструкция не работает, говорит что "Индекс находится за пределами массива"...Так вот вопрос, как ещё можно передать данные текущей строки???