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