На прошлых занятиях мы изучили примитивные типы данных Число, Строка, Дата, Буллево, Неопределено и Тип ознакомьтесь с этими материалами, прежде чем приступить к изучению этого.
Ранее мы уже рассматривали универсальные коллекции значений Массив и Соответствие. В этот раз мы их рассмотрим подробнее их и другие типы коллекций. Эта статья – логическое продолжение материала про Типы значений Неопределено и Тип, здесь мы продолжаем работать с той же внешней обработкой.
Универсальные коллекции значений. Особенности и синтаксис
Найдем а Синтаксис-помощнике Универсальные коллекции значений. Помимо вышеназванных, существуют также хранилища Структура, Список значений, Таблица значений, Дерево значений.
Универсальные коллекции значений предназначены для хранения временных наборов данных в течение сеанса работы пользователя. Они не являются объектами базы данных и служат для вспомогательного сбора, группировки, анализа и обработки информации.
Создадим на управляемой форме внешней обработки аналогичные команды и процедуры-обработчики этих команд.
Поместим команды на управляемую форму.
Теперь напишем процедуры–обработчики команд, которые назначат переменной А тип универсального хранилища значений. При этом в поле Комментарий отобразится используемый в обработке код.
После выполнения команды получаем результат, например:
Универсальная коллекция «Таблица Значений»
Таблица значений - это несохраняемый в базе данных объект, который позволяет строить динамические наборы значений и манипулировать ими (добавлять, редактировать, удалять элементы, сортировать). Он может быть наполнен значениями любого типа, т.е. в одной таблице типы хранимых значений могут быть разными.
Для знакомства с ТаблицейЗначений, во-первых, создадим на управляемой форме реквизит Багаж (тип ТаблицаЗначений) с колонками реквизита: Номер (тип Число), Наименование (тип Строка), Количество (тип Число).
Затем поместим Таблицу Значений на управляемую форму
Создадим команду ЗаполнитьБагаж и процедуры-обработчики этой команды. Для заполнения колонки Наименование мы используем коллекцию ТаблицаЗначений и Циклы. Циклы – это функции, которые позволяют выполнять повторяющиеся действия. Возможны различные варианты перебора:
- Для Каждого – когда при повторении цикла переменной присваивается значение очередного элемента коллекции
- Пока – цикл выполняется, пока результат заданного логического выражения Истина
- Для – когда при повторении цикла значение переменной увеличивается на 1
В составе процедур-обработчиков команды «Заполнить» созданы универсальные коллекции значений: Массив –«ДамаСдавала» и ТаблицаЗначений-«ТЗ». Перебирая в цикле элементы массива, заполняем построчно таблицу значений и затем загружаем табличную часть реквизита формы «Багаж» - типа ТаблицаЗначений из заполненной ТаблицыЗначений –ТЗ.
Для очистки табличной части реквизита «Багаж», реквизитов «Комментарий» и «ПрисвоенныйТип» создадим команду «Очистить», поместим ее на форму и напишем процедуру-обработчик этой команды.
Освойте навыки разработчика 1С на очных специализированных курсах от крупнейшей компании-франчайзи 1С.