--- title: set_value summary: Используемые в проекте формы присваивания переменной MD и увеличения счётчика. section: reference kind: api status: reference tags: ["set_value","md","variables","exact","operation","API"] sources: ["https://wiki.egosoft.com/X4%20Foundations%20Wiki/Modding%20Support/"] --- ## Возвращаемое значение | Тип | Значение | | --- | --- | | [none (MD action)](wiki:type-md-values) | Записывает переменную MD; её тип определяется выражением и атрибутами. | [Типы и методы](wiki:types) ## Присваивание **Слой:** Mission Director, действия. ```xml ``` **Что произойдёт:** В текущем MD-контексте $Label = "example", $Revision = 0, $Records является пустой таблицей MD. Вывода в журнал нет. | Атрибут | Назначение | | --- | --- | | `name` | Путь записываемой переменной | | `exact` | Выражение значения | | `operation` | Операция над значением, если она указана | ## Увеличение ревизии ```xml ``` **Что произойдёт:** Если $Revision после инициализации равен 0, он станет 1. Изменяется значение переменной в указанном контексте. Счётчик должен существовать и иметь подходящий тип. Инициализацию и миграцию сохранённого состояния нужно проектировать отдельно. ## Область видимости `$Revision` текущего контекста и `Init.$Revision` не обязательно являются одной переменной. У обработчиков с экземплярами явно определите, что локально запросу, а что хранится в общем реестре. Это не полный перечень атрибутов элемента. Новые формы сверяйте с XSD своей версии и проверяйте запуск. Подробнее: [переменные MD](wiki:md-variables), [миграции](wiki:md-persistence).