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

Заполнение табличной части документа реквизитами табличной части справочника

Автор kaf_info, 10 мая 2017, 20:00

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

kaf_info

Добрый вечер!
Помогите, пожалуйста, разобраться. Есть справочник Номенклатура с табличной частью ДанныеТоваров, в которой реквизит ЕдиницаИзмерения и документ РеализацияТоваров с табличной частью Товары и реквизитами Товар - тип Ссылка.Справочник.Номенклатура и ЕдиницаИзмерения. Нужно при выборе в документе товара автоматически подставить единицу измерения.
Использовала запрос, проблема с параметром.

Заранее спасибо!!!!


&НаСервере
Процедура ЗаполнитьРеквизиты()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| НоменклатураДанныеТоваров.ЕдиницаИзмерения
|ИЗ
| Справочник.Номенклатура.ДанныеТоваров КАК НоменклатураДанныеТоваров
|ГДЕ
| НоменклатураДанныеТоваров.Ссылка = &Ссылка";

Запрос.УстановитьПараметр("Ссылка", Товар);

РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Стр=Товары.Добавить();
Стр.ЕдиницаИзмерения=ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
КонецЦикла;

КонецПроцедуры

&НаКлиенте
Процедура НоменклатураТоварПриИзменении(Элемент)
ЗаполнитьРеквизиты();
КонецПроцедуры


ilnur75

здесь проще сделать по учебнику Радченко. Объектная модель получения данных.
в справочнике Номенклатура достаточно сделать не таб часть с данными о товарах , а просто добавить реквизит ЕдИзм и другие если потребуются.
тогда в документе в таб части Товары можно будет на Номенклатуре установить обработчик события ТоварыНоменклатураПриИзменении(Элемент) , в ней сделать обращение к функции
Стр = Элементы.Товары.ТекущиеДанные;
Стр.ЕдИзм = ПолучитьЕдИзм (Номенклатура);
в этой функции написать возврат Номенклатура.ЕдИзм
что будет на Клиенте, а что на НаСервереБезКонтекста  думаю разберетесь.
и всё.

Теги:

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

Рейтинг@Mail.ru

Поиск