Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 11:20

Открытие формы кнопкой

Автор Sheriff, 19 фев 2018, 06:07

0 Пользователей и 1 гость просматривают эту тему.

Sheriff

Всем привет!
Вопрос такой, Розница 1.0 - обычное приложение.
Добавил кнопку в РМК, по нажатию которой, должна выходить форма номенклатуры, которая выделена в строке табличной части РМК. И прописал код &НаКлиенте
Процедура КнопкаОткртиеИзображенияНажатие(Элемент)
// Вставить содержимое обработчика.
Форма = ОткрытьФорму("Справочник.Номенклатура.Форма.ФормаЭлемента");
КонецПроцедуры

Но он открывает создание новой номенклатуры.
Как сделать чтоб открывалась именно та номенклатура, которая выделена.
Или ещё лучше, чтоб выходило изображение, именной той номенклатуры, которая выделена.
Помогите пожалуйста!

AIFrame

Лучше вместо кнопки нарисуй поле с изображением (Поле картинки).
И по событию выделения строки в ТЧ (ПриАктивизацииСтроки) сделай
Перем мПустаяКартинка;

Процедура СписокПриАктивизацииСтроки(Элемент)
ТекущиеДанныеСписка = ЭлементыФормы.Список.ТекущиеДанные;

Если НЕ ТекущиеДанныеСписка = Неопределено
   И НЕ ТекущиеДанныеСписка.ОсновноеИзображение.Пустая() Тогда
ЭлементыФормы.ОсновноеИзображение.Картинка = ТекущиеДанныеСписка.ОсновноеИзображение.Хранилище.Получить();
Иначе
ЭлементыФормы.ОсновноеИзображение.Картинка = мПустаяКартинка;
КонецЕсли;
КонецПроцедуры

мПустаяКартинка = Новый Картинка;

Где Список - имя элемента списка
ОсновноеИзображение - имя элемента для вывода изображения (Поле картинки)
ТекущиеДанныеСписка.ОсновноеИзображение - реквизит номенклатуры, хранящий ссылку на изображение (с типом СправочникСсылка.ХранилищеДополнительнойИнформации или как там будет в Рознице 1.0)

Если у тебя не список, а ТЧ, то для текущихданных нужно будет указать колонку со ссылкой.
Типа
ТекущиеДанныеСписка = ЭлементыФормы.Список.ТекущиеДанные.Номенклатура;
Где "Номенклатура" - это имя колонки ТЧ, содержащей ссылку.

Вот тебе для примера.

Sheriff

Цитата: AIFrame от 19 фев 2018, 06:25
Лучше вместо кнопки нарисуй поле с изображением (Поле картинки).
И по событию выделения строки в ТЧ (ПриАктивизацииСтроки) сделай
Перем мПустаяКартинка;

Процедура СписокПриАктивизацииСтроки(Элемент)
ТекущиеДанныеСписка = ЭлементыФормы.Список.ТекущиеДанные;

Если НЕ ТекущиеДанныеСписка = Неопределено
   И НЕ ТекущиеДанныеСписка.ОсновноеИзображение.Пустая() Тогда
ЭлементыФормы.ОсновноеИзображение.Картинка = ТекущиеДанныеСписка.ОсновноеИзображение.Хранилище.Получить();
Иначе
ЭлементыФормы.ОсновноеИзображение.Картинка = мПустаяКартинка;
КонецЕсли;
КонецПроцедуры

мПустаяКартинка = Новый Картинка;

Где Список - имя элемента списка
ОсновноеИзображение - имя элемента для вывода изображения (Поле картинки)
ТекущиеДанныеСписка.ОсновноеИзображение - реквизит номенклатуры, хранящий ссылку на изображение (с типом СправочникСсылка.ХранилищеДополнительнойИнформации или как там будет в Рознице 1.0)

Если у тебя не список, а ТЧ, то для текущихданных нужно будет указать колонку со ссылкой.
Типа
ТекущиеДанныеСписка = ЭлементыФормы.Список.ТекущиеДанные.Номенклатура;
Где "Номенклатура" - это имя колонки ТЧ, содержащей ссылку.

Вот тебе для примера.

Сделал, картинка выводится, но при удалении или закрытии чека ,выходит сообщение:
Документ.ЧекККМ.Форма.ФормаРегистрацииПродаж(3300)}: Значение не является значением объектного типа (Номенклатура)
   ТекущиеДанныеСписка = ЭлементыФормы.Товары.ТекущиеДанные.Номенклатура;

AIFrame

Добавь проверку
ЭлементыФормы.Товары.ТекущиеДанные <> неопределено

Sheriff

Цитата: AIFrame от 19 фев 2018, 07:10
Добавь проверку
ЭлементыФормы.Товары.ТекущиеДанные <> неопределено
Не могу понять только куда добавить эту проверку)
Если делать так ТекущиеДанные = ЭлементыФормы.Товары.ТекущиеДанные.Номенклатура <> неопределено;
То ошибка

AIFrame

Если ЭлементыФормы.Товары.ТекущиеДанные = неопределено Тогда
    Возврат;
КонецЕсли;

Же

Sheriff

Цитата: AIFrame от 19 фев 2018, 07:29
Если ЭлементыФормы.Товары.ТекущиеДанные = неопределено Тогда
    Возврат;
КонецЕсли;

Же
Точняк, спасибо!)

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск