Свойство Сохранять

<< Click to Display Table of Contents >>

Navigation:  Проект в MasterSCADA 4D > Свойства > Категория свойств Общие >

Свойство Сохранять

Определяет, требуется ли сохранять последнее значение, полученное в результате работы среды исполнения, при повторном старте. Свойство соответствует модификатору RETAIN.

Может принимать одно из 4 значений:

Наследуется - свойство определяется у родительского элемента;

Да - значение сохраняется, настройки задаются в службе Сохранение состояния;

Нет - значение не сохраняется;

Константа - значение не может быть изменено в режиме исполнения.

Пусть Программа 1 состоит из трех экземпляров функциональных блоков ФБ Да, ФБ Нет, ФБ Наследуется, каждый функциональный блок содержит три параметра. При создании типов ФБ у всех их параметров установили разные настройки свойства Сохранять:  у Параметра 1 = Наследуется, у Параметра 2 =Нет, у Параметра 3= Да

У самих типов были выполнены настройки:

ФБ Да  - Сохранять =Да,

ФБ Нет  -Сохранять =Нет

ФБ Наследуется - Сохранять = Наследуется

sv_sohranyat

Рассмотрим, какие параметры функциональных блоков будут сохраняться, если в зависимости от значения свойства Сохранять у их родительского элемента Программа_FBD_1

 

Да

Нет

Наследуется

ФБ Да

Параметр 1 - Да

Параметр 2 -Нет

Параметр 3 -Да

Параметр 1 - Нет

Параметр 2 -Нет

Параметр 3 -Нет

Параметр 1 - Да

Параметр 2 -Нет

Параметр 3 -Да

ФБ Нет

Параметр 1 - Нет

Параметр 2 -Нет

Параметр 3 -Нет

Параметр 1 - Нет

Параметр 2 -Нет

Параметр 3 -Нет

Параметр 1 - Нет

Параметр 2 -Нет

Параметр 3 -Нет

ФБ Наследуется

Параметр 1 - Да

Параметр 2 -Нет

Параметр 3 -Да

Параметр 1 - Нет

Параметр 2 -Нет

Параметр 3 -Нет

Параметр 1 - Нет

Параметр 2 -Нет

Параметр 3 -Да

Вывод

Если у родителя установлено свойство Сохранять  = Да, то будут сохраняться все параметры дочерних элементов за исключением тех, у которых выставлено значение Нет

Если у родителя установлено свойство Сохранять=Нет, то независимо от того какие свойства будут установлены для его дочерних элементов сохраняться последнее значение не будет. Для всех элементов будет использоваться модификатор NON_RETAIN

Если у родителя установлено свойство Сохранять  = Наследуется, то будут сохраняться параметры только тех дочерних элементов, у которых установлено значение Да,

Такой же принцип сохранения действует и при работе с экземплярами объектов.

Важно! Свойство Сохранять=Да нельзя устанавливать для параметров программ, у которых свойств Доступ=InOut

Смотрите также: