Как заполнить табличное поле данными таблицы значений (1С: Программисту)

Вопрос Как заполнить табличное поле данными таблицы значений?
Ответ
Предположим, на форме создано табличное поле «ТЗ» — см. рисунок: в «Диалоге» в свойствах табличного поля назначены «Данные» — «ТЗ» (верхняя половина рисунка), где «ТЗ» — это реквизит формы с типом «Таблица значений» (см. нижюю половину рисунка — это вкладка «Реквизиты» формы обработки):

В модуле формы формируется таблица значений «ТЗ». Требуется, чтобы эта таблица отображалась в диалоге формы в одноименном табличном поле.

Делается это с помощью такого кода:

// к примеру, таблицу значений мы получаем из результата запроса:
ТЗ = Запрос.Выполнить().Выгрузить(); // здесь ТЗ — это таблица значений, полученная при выгрузке результата запроса
ЭлементыФормы.ТЗ.СоздатьКолонки(); // здесь ЭлементыФормы.ТЗ — это табличное поле
ЭлементыФормы.ТЗ.Значение = ТЗ; // здесь значению табличного поля присваивается значение ТЗ

В результате выполнения такого кода в табличном поле «ТЗ» будет отображаться значение таблицы значений «ТЗ».

То же самое, но для списка значений см. тут: Как реализовать в форме выбор из списка и как отобразить в форме список

5 thoughts on “Как заполнить табличное поле данными таблицы значений (1С: Программисту)

  1. Последние две строки необходимо поменять местами, т.к. сначала присваиваем значение и уж потом создаём колонки.
    Правильно так:
    ЭлементыФормы.ТЗ.Значение = ТЗ; // здесь значению табличного поля присваивается значение ТЗ
    ЭлементыФормы.ТЗ.СоздатьКолонки(); // здесь ЭлементыФормы.ТЗ — это табличное поле

  2. Спасибо все заработало!!!
    …Читать с поправкой на верхний комментарий!

  3. Табличное поле заполняет, но только одно значение!!!
    Кто нибудь знает как сделать чтобы все строки заполняла?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *