1С-Предприятие 8.0. Практическое пособие разработчика

Письменные столы купить письменный стол.

Изменение данных табличного поля путем установки типа значения


Как мы уже говорили выше, путем установки типа значения элемента управления также можно изменять отображаемые данные, если данные используемого типа значения могут быть однозначно отображены в элементе управления. В следующем примере мы посмотрим, как можно изменять содержимое табличного поля, не используя реквизиты формы.

Нашей задачей будет создание в форме списка аналогичного механизма отображения движений документов "ОказаниеУслуги" в регистрах накопления.

Откроем конфигуратор и создадим основную форму списка документа "ОказаниеУслуги" с помощью конструктора. Расположим на ней переключатель из трех кнопок:

Зададим следующие выбираемые значения переключателей:

·"ОстаткиМатериалов" – "Остатки",
·"СтоимостьМатериалов" – "Стоимость",
·"Продажи" – "Продажи". [520]

Под переключателем расположим табличное поле с именем "ТабличноеПоле", типом ТаблицаЗначений и пустым свойством Данные:

Создадим процедуру обработки события "При открытии" формы и установим в ней начальное значение переключателя и начальное содержимое табличного поля:

Процедура ПриОткрытии()

ОстаткиМатериалов = "Остатки";

   Массив = Новый Массив;

   Массив.Добавить(Тип("РегистрНакопленияСписок.ОстаткиМатериалов"));

   НашеОписание = Новый ОписаниеТипов(Массив);

   ТабПоле = ЭлементыФормы.ТабличноеПоле;

   ТабПоле.ТипЗначения = НашеОписание;

   ТабПоле.СоздатьКолонки();

   ТабПоле.Значение.Отбор.Регистратор.Установить(, Истина);

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

 

В этой процедуре, в зависимости от выбранного значения переключателя мы создаем объект ОписаниеТипов, содержащий нужный нам тип данных. Затем указываем этот объект в качестве значения свойства ТипДанных табличного поля. После создания колонок поля мы устанавливаем использование отбора по значению [521] регистратора, которое, по умолчанию, не определено. Это позволит нам избежать отображения в табличном поле полного списка регистра в момент открытия формы.




Начало  Назад  Вперед