Загрузить собственную таблицу в данные управляемой формы

Учебные задачи

ТаблицаЗначений создаётся на сервере и переносится в одноимённый реквизит управляемой формы.

Где и как запускать

Модуль собственной управляемой формы, серверное событие ПриСозданииНаСервере.

Подготовка

  1. В своей учебной обработке создайте управляемую форму. Реквизит УчебныеКниги типа ТаблицаЗначений: колонки Наименование Строка 100 и Количество Число 10.0.

  2. Перетащите реквизит с обеими колонками на форму. Таблица формы должна иметь путь УчебныеКниги, поля колонок — УчебныеКниги.Наименование / УчебныеКниги.Количество.

  3. Назначьте обработчик событию самой формы ПриСозданииНаСервере. Не присваивайте серверную ТаблицаЗначений клиентскому реквизиту напрямую.

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Книги = Новый ТаблицаЗначений;
    Книги.Колонки.Добавить("Наименование", Новый ОписаниеТипов("Строка"));
    Книги.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));
    СтрокаКниги = Книги.Добавить();
    СтрокаКниги.Наименование = "Учебная книга";
    СтрокаКниги.Количество = 3;
    ЭтотОбъект.ЗначениеВРеквизитФормы(Книги, "УчебныеКниги");
    Сообщить("В форме подготовлена одна собственная строка");
КонецПроцедуры

Разбор по шагам

  1. Создайте типизированный реквизит и связанный элемент таблицы.

  2. На сервере заполните одну собственную строку.

  3. Откройте форму и измените своё количество вручную: это данные формы, не запись справочника.

Как проверить результат

  1. В таблице видна Учебная книга, количество 3.

  2. ЗначениеВРеквизитФормы преобразует серверную таблицу в подходящие данные формы. Новая строка не записана в базу.

Ожидаемый результат

Показан обычный мост серверной таблицы и коллекции данных управляемой формы.

На что обратить внимание

  1. Имена и типы колонок должны совпадать в таблице и реквизите.

  2. BSL и открытие формы при сборке HTML не выполнялись.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.