Структуры в языке 1С 8.3

 

Структура представляет собой коллекцию пар КлючИЗначение. При этом ключ может быть только строковым и должен удовлетворять требованиям, предъявляемым к именованию переменных встроенного языка. Структуры обычно используются для хранения небольшого количества значений, каждое из которых имеет некоторое имя.

К значениям структуры можно обращаться как к свойствам объекта. При этом ключ используется как имя свойства.

Элементы коллекции: КлючИЗначение

Для объекта доступен обход коллекции посредством оператора Для каждого Из Цикл.

При обходе выбираются элементы коллекции.

Свойства:

Имя ключа В качестве свойств структура предоставляет элементы. Имя свойства определяется ключом, а значение свойства определяется значением элемента.

Методы:

Вставить(Ключ, Значение) Устанавливает значение элемента структуры по ключу. Если элемент с переданным значением ключа существует, то его значение заменяется, в противном случае добавляется новый элемент.
Количество() Получает количество элементов структуры.
Очистить() Удаляет все элементы структуры.
Свойство(Ключ,  НайденноеЗначение) Получает значение элемента по указанному имени, а также проверяет, имеется ли указанное свойство.
Возвращает значения:
Истина – ключ найден.
Ложь – в противном случае.
Удалить(Ключ) Удаляет элемент структуры с заданным ключом.

Конструкторы:

Новый Структура(ФиксированнаяСтруктура) Создаваемая структура заполняется свойствами из исходной фиксированной структуры.
Новый Структура(Ключи, Значения) Создает структуру с ключами, значения которых передаются в параметре конструктора. Если в первом параметре заданы ключи элементов структуры, то в следующих параметрах могут быть указаны значения этих элементов в том же порядке, в котором они расположены в строке в первом параметре.

Примеры работы со структурами:

//// Создание структуры (способ 1):
Время = Новый Структура("Часы, Минуты, Секунды", 12, 45, 33);
Сообщить("Время " + Время.Часы + ":" + Время.Минуты + ":" + Время.Секунды);
//// Создание структуры (способ 2):
ЛичныеДанные = Новый Структура;
// Добавляем в структуру записи в формате: пара ключ - значение (имя переменной – её значение произвольного типа)
ЛичныеДанные.Вставить("Фамилия", "Иванов");
ЛичныеДанные.Вставить("Имя", "Иван");
ЛичныеДанные.Вставить("ДатаРождения", '19800802');
Сообщить(ЛичныеДанные.Имя + " " + ЛичныеДанные.Фамилия + " родился " + ЛичныеДанные.ДатаРождения);
//// Изменение значения поля структуры (способ 1):
Время.Часы = 13;
//// Изменение значения поля структуры (способ 2):
ЛичныеДанные.Вставить("Фамилия", "Сидоров");
//// Как узнать количество элементов структуры:
Сообщить(Время.Количество());
//// Обход всех элементов структуры:
Для Каждого Элемент Из ЛичныеДанные Цикл
  Сообщить(Элемент.Ключ + " " + Элемент.Значение);
КонецЦикла;
//// Удалить элемента структуры:
ЛичныеДанные.Удалить("ДатаРождения");
//// Очистка всех элементов структуры:
ЛичныеДанные.Очистить();

Обратный звонок