4. Описание встроенного языка
4.3. Коллекция значений VBA
  

План:

1.         Определение коллекции

2.         Массивы

3.         Список значений

4.         Таблица значений

 

1. Определение коллекции


Коллекция представляет собой не хранящуюся в базе данных совокупность значений или объектов — элементов коллекции. В 1С:Предприятии 8.0 работа с коллекциями унифицирована: добавление, удаление и обход элементов всех коллекций производится однотипным образом.


Некоторые коллекции называются универсальными, т.к. разработчик может их создавать средствами встроенного языка для решения своих задач.


К универсальным коллекциям значений относятся следующие:

- массив,

- список значений,

- таблица значений,

- дерево значений,

- структура,

- соответствие.


Все эти объекты создаются средствами встроенного языка с помощью ключевого слова Новый. Массив, структура и соответствие имеют конструкторы с параметрами, которые определяют начальное состояние объекта, например, количество элементов в массиве.


 

2. Массивы


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

Создание нового массива производится следующим образом:

 

Мас1 = Новый Массив; //одномерный массив без элементов

Мас2 = Новый Массив(10); //одномерный массив из 10 элементов

Мас3 = Новый Массив(4,5); //массив с двумя измерениями

 

Для добавления и удаления элементов массива можно использовать методы объекта Массив:

Мас1.Добавить("Иванов"); //добавить элемент в конец массив

Мас2.Вставить(0,"Сидоров"); //вставить элемент в массив

//по указанному индексу

Мас2.Удалить(0); //удалить элемент из массива

 

(Мас2[1].Добавить("Петров"); //добавить эл-т в двумерный массив)



3. Список значений


Список значений — это аналог одномерного массива, который предназначен в основном для решения интерфейсных задач, например, при использовании элементов управления СписокВыбора и ПолеВыбора. В списке значений могут храниться значения разных типов, т.е. в одном списке типы хранимых значений могут быть разными, но можно наложить ограничение с помощью свойства ТипЗначения.




4. Таблица значений


Таблица значений — это не сохраняемый в базе данных объект, предназначенный для создания динамических наборов данных. Таблица значений состоит из строк и колонок. В отличие от списка значений, таблица значений имеет структуру, которую определяет разработчик.


Разработчик средствами встроенного языка может добавлять и удалять строки и колонки, перебирать строки, искать значение, сортировать по любым колонкам и выполнять другие операции.


При создании новой таблицы значений в нее обычно добавляются колонки:

тзТовары = Новый ТаблицаЗначений;

тзТовары.Колонки.Добавить("Ссылка");

тзТовары.Колонки.Добавить("Наименование");


У таблицы значений есть свойство Колонки, которое представляет собой коллекцию колонок и позволяет добавлять, удалять и менять их порядок. По умолчанию в таблице значений могут храниться значения разных типов. Но в 1С:Предприятии 8.0 для колонки можно задать список возможных типов значений.


При работе со строками таблицы значений следует, что строка — это объект типа СтрокаТаблицыЗначений. Поэтому добавление строк в таблицу значений производится следующим образом:


//удаляем все строки из таблицы (колонки остаются)

тзТовары.Очистить();

СпрВыборка = Справочники.Номенклатура.Выбрать();

Пока СпрВыборка.Следующий() Цикл

         НовСтрока = тзТовары.Добавить();

         НовСтрока.Ссылка = СпрВыборка.Ссылка;

         НовСтрока.Наименование = СпрВыборка.Наименование;

КонецЦикла;

 

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

Свернуть(<Колонки группировок>, <Колонки суммирования>)


Этот метод осуществляет свертку таблицы значений по указанным колонкам группировки. Строки, у которых совпадают значения в колонках, указанных в первом параметре, сворачиваются в одну строку. Значения по этим строкам, хранящиеся в колонках, указанных во втором параметре, суммируются.


Таблица значений позволяет подсчитать итог по колонке числового типа, например:

ВсегоДоход = тзДоходыСотр.Итог("Доход");

ПОИСК
МОЯ КНОПКА
Контакты
МБОУ "Лицей им.Атякшева"

628260 г. Югорск, ул. Ленина 24,
ХМАО-Югра, Тюменская область
Телефон: 8 (34675)2-48-30
Факс: 8 (34675)2-48-30



89222596815 nady_er@mail.ru
Карта
sample map