8.х Вывод ссылочных полей.

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Максим, 9 авг 2010.

  1. TopicStarter Overlay
    Максим
    Offline

    Максим Опытный в 1С

    Регистрация:
    28 фев 2008
    Сообщения:
    684
    Симпатии:
    7
    Баллы:
    29
    Вывод ссылочных полей в табличный документ. Знаю что об этом много написано, но можно еще разок специально для экипажей бронетехники, оборудованной ручным блокиратором гусеничного привода ).
    Например нужно вывести в табличный документ элементы справочника номенклатура.
    Получаю элементы справочника запросом. Хочу чтобы работала расшифровка (по нажатию на наименование номенклатуры открывалась форма элемента).
    В запросе получаю ссылку и представление ссылки.
    Вопрос - Что выводить в табличное поле.
    Мне нужна что бы расшифровка работала поэтому ссылкуСсылку да ? а не будет ли обращения к БД для получения представления ссылки (хотя я его представление получил в запросе или это не то?).
    Или выводить представление ссылки, а потом как-то мудрить в расшифровкой (это возможно вообще?)
  2. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Ну да, в ТД выводите представления, а в расшифровку - ссылку.
    Посмотрите, в свойствах ячейки ТД есть поле "Расшифровка".
    Т.е. в "Параметр" у вас будет Представление, в "Расшифровка" - Ссылка.
  3. TopicStarter Overlay
    Максим
    Offline

    Максим Опытный в 1С

    Регистрация:
    28 фев 2008
    Сообщения:
    684
    Симпатии:
    7
    Баллы:
    29
    А можно какой-нибудь маленький пример, где заполняется параметр и заполняется расшифровка
  4. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Допустим сам текст запроса:
    Код:
    Запрос.Текст = 
    "ВЫБРАТЬ
    |	Номенклатура.Ссылка,
    |	Номенклатура.Представление
    |ИЗ
    |	Справочник.Номенклатура КАК Номенклатура";
    
    
    Вывод в таблицу:
    Код:
    Пока ВыборкаЗаписи.Следующий() Цикл
    ОбластьМакета.Параметры.Представление = ВыборкаЗаписи.Представление;
    ОбластьМакета.Параметры.Ссылка = ВыборкаЗаписи.Ссылка;
    КонецЦикла;
    
    
    Где у ячейки в области макета имеющей тип "Параметр", свойствам Параметр и ПараметрРасшифровки заданы соответственно имена "Представление" и "Ссылка". При этом естественно надо понимать, что имена в ячейках не обязательно должны совпадать и именами полей в запросе. Просто если уж они совпадают - можно использовать метод "Заполнить", т.е. в примере можно было написать:
    Код:
    ОбластьМакета.Параметры.Заполнить(ВыборкаЗаписи);
    

Поделиться этой страницей