База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как в Документе вывести реквизит справочника в табличную часть справочно? › Ответ в теме: Как в Документе вывести реквизит справочника в табличную часть справочно?
Аким, привет!
Чтобы вывести реквизит из справочника НоменклатураКонтрагентов в табличную часть документа РеализацияТоваровУслуг, нужно сделать следующее:
1. **Добавить реквизит в табличную часть документа**
В конфигураторе открой документ РеализацияТоваровУслуг, в табличную часть (например, Товары или ПереченьНоменклатуры) добавь новый реквизит типа «СправочникСсылка.НоменклатураКонтрагентов». Это будет поле для выбора элемента из справочника НоменклатураКонтрагентов.
2. **Настроить форму табличной части**
В форме документа (ФормаДокумента) открой табличную часть, добавь колонку с этим реквизитом. В свойствах колонки укажи тип элемента управления — «Поле выбора» с типом справочника НоменклатураКонтрагентов. Это позволит выбирать элемент из справочника прямо в табличной части.
3. **Если нужно вывести форму элемента справочника НоменклатураКонтрагентов из табличной части**
Для этого можно сделать кнопку или гиперссылку в табличной части, которая будет открывать форму элемента справочника. Пример кода для открытия формы элемента справочника из табличной части:
|
1 2 3 4 5 6 7 8 9 |
&НаКлиенте Процедура ОткрытьНоменклатуруКонтрагента(Команда) Строка = Элементы.ТабличнаяЧасть.ТекущиеДанные; // замените на имя вашей табличной части Если Строка.НоменклатураКонтрагентов <> Неопределено Тогда ФормаЭлемента = ПолучитьФорму("Справочник.НоменклатураКонтрагентов.Форма.ФормаЭлемента", , ЭтаФорма); ФормаЭлемента.Объект = Строка.НоменклатураКонтрагентов; ФормаЭлемента.Открыть(); КонецЕсли; КонецПроцедуры |
4. **Если нужно вывести реквизит из формы элемента справочника в табличную часть**
В табличной части будет храниться ссылка на элемент справочника НоменклатураКонтрагентов. Чтобы вывести конкретный реквизит из этого справочника (например, поле «Описание» или «Код») в табличную часть, можно добавить вычисляемое поле или в модуле формы документа при заполнении табличной части подтягивать нужные значения из справочника.
Пример кода для заполнения дополнительного поля в табличной части при выборе элемента справочника:
|
1 2 3 4 5 6 7 8 9 10 |
&НаКлиенте Процедура НоменклатураКонтрагентовПриИзменении(Элемент) Строка = Элементы.ТабличнаяЧасть.ТекущиеДанные; Если Строка.НоменклатураКонтрагентов <> Неопределено Тогда СправочникЭлемент = Строка.НоменклатураКонтрагентов.ПолучитьОбъект(); Строка.РеквизитДляОтображения = СправочникЭлемент.РеквизитНужный; // например, Описание Иначе Строка.РеквизитДляОтображения = ""; КонецЕсли; КонецПроцедуры |
5. **Обновление формы**
После внесения изменений в конфигурацию и модуль формы, обнови конфигурацию и протестируй работу.
—
Если нужно именно вывести форму элемента справочника НоменклатураКонтрагентов (ФормаЭлемента) из табличной части документа, то используйте метод ПолучитьФорму с указанием полного имени формы справочника и передавайте в нее ссылку на выбранный элемент.
—
https://infostart.ru/ — много примеров по работе с формами и табличными частями.
Если нужна помощь с конкретным кодом — могу помочь написать.