Инструменты пользователя

Инструменты сайта


1c:коллекции:фиксированная_структура

Фиксированная структура

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

Назначение фиксированной структуры по первоначальной задумке разработчиков 1с - использование в качестве значений параметров сеанса. Но в ходе развития платформы фиксированная структура всё чаще встречается в качестве параметра различных встроенных функций и методов. Использование параметров такого типа гарантирует, что этот параметр не будет изменён внутри тела процедуры или функции.

Англоязычный аналог - FixedStructure.

Создание и использование

Фиксированная структура поддерживает оба варианта конструирования простой структуры. Но так как в фиксированную структуру невозможно добавить новые реквизиты, есть смысл использовать лишь вариант с передачей начальных значений:

Структура = Новый ФиксированнаяСтруктура(«КакойТоКлюч1, КакойТоКлюч2»,
                ЗначениеКотороеНадоСохранить1, ЗначениеКотороеНадоСохранить2);

Существует также способ создания переменных данного типа на основе уже созданной обычной структуры:

Структура  = Новый Структура;
Структура.Вставить(«КакойТоКлюч1», ЗначениеКотороеНадоСохранить1);
Структура.Вставить(«КакойТоКлюч2», ЗначениеКотороеНадоСохранить2);
 
Структура2 = Новый ФиксированнаяСтруктура(Структура);

К значениям структуры можно обращаться как к значениям обычной структуры:

Сообщить(Структура2.КакойТоКлюч2);

Возможен также перебор значений в цикле посредством оператора Для Каждого...Из...Цикл. Порядок следования пар при таком переборе не определён.

Запись в фиксированную структуру невозможна - будет вызвано исключение. Методы изменения содержимого отсутствуют.

Фиксированная структура может быть выгружена/загружена с помощью механизма XDTO. Для этого существует тип FixedStructure пространства имён http://v8.1c.ru/8.1/data/core (является частью платформы). Разумеется, для успешной операции подобными свойствами должны обладать все сохранённые в структуре значения.

Ограничения

Ограничения у фиксированной структуры такие же, что и у обычной - к ключу предъявляются требования как к именам переменных. Плюс невозможность изменения содержимого.

Доступность

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер).

Свойства и методы

Наименование Назначение
Свойства
<Имя ключа>Возвращает значение, связанное с ключом <Имя ключа>.
Методы
ФиксированнаяСтруктураСоздаёт переменную данного типа.
КоличествоВозвращает число элементов структуры.
СвойствоПозволяет определить наличие свойства.

См. также

Только авторизованные участники могут оставлять комментарии.
1c/коллекции/фиксированная_структура.txt · Последние изменения: 2016/10/26 10:11 — alex