Для чего свойство "Сохраняемые данные" у реквизита формы

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

Для эксперимента создадим два реквизита формы с разным состоянием свойства "Сохраняемые данные" (см. рисунок 1):

  • ДорожнаяКарта - тип ГрафическаяСхема, свойство "Сохраняемые данные" установлено;
  • ОписаниеДорожнойКарты - тип ТабличныйДокумент, свойство "Сохраняемые данные" не установлено.

Рисунок 1. Реквизиты формы

В режиме 1С:Предприятие откроем элемент справочника, если мы изменим описание дорожной карты, то ничего не произойдет, но, если мы изменим дорожную карту, то в заголовке формы увидим звездочку (*) - признак модифицированности (см. рисунок 2). Данная звездочка означает, что данные, сохраняемые в базу данных, изменены.

Рисунок 2. Признак модифицированности у формы

Формы с установленным признаком модифицированности перед закрытием предупреждают пользователя о возможности потери изменений в данных и предлагают сохранить изменения (см. рисунок 3).

Рисунок 3. Вопрос о сохранении изменений

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

Установим для пользователя на уровне прав только просмотр элементов справочника (см. рисунок 4).

Рисунок 4. Право только просмотра справочника

В режиме 1С:Предприятие реквизит ДорожнаяКарта не доступен для редактирования в отличии от реквизита ОписаниеДорожнойКарты. Если говорить в контексте задачи, то оба реквизита формы не должны быть доступны для редактирования, так как нет смысла пользователю разрешать редактировать реквизиты формы, если элемент справочника доступен только для просмотра.

Теперь на уровне формы установим только просмотр элементов справочника, для этого в форме элемента в обработчике ПриСозданииНаСервере установим свойство ТолькоПросмотр в значение Истина.

	
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)	
    ЭтотОбъект.ТолькоПросмотр = Истина;	
КонецПроцедуры
  

В режиме 1С:Предприятие реквизит ДорожнаяКарта так же не доступен для редактирования в отличии от реквизита ОписаниеДорожнойКарты. Если говорить в контексте задачи, то оба реквизита формы должны быть доступны только для просмотра, так как форма, открытая только для просмотра, не позволит сохранить изменения в их данных.

Вывод

Свойство "Сохраняемые данные" у реквизита формы следует устанавливать, если его данные сохраняются в базу данных. В рамках нашей задачи нужно для обоих реквизитов формы установить свойство "Сохраняемые данные".

Реквизит с установленным свойством "Сохраняемые данные":

  • Устанавливает признак модифицированности у формы после редактирования;
  • Не доступен для редактирования при отсутствии права редактирования объекта;
  • Не доступен для редактирования в форме, которая открыта только на просмотр.

Комментарии

  1. Картинок нет, невозможно понять до конца тему

    ОтветитьУдалить

Отправить комментарий