Тип: Булево. Управляет защитой табличного документа. Истина - защита включена.
Полное описание, параметры и ограничения
Расширение поля формы для поля табличного документа.Защита (Form field extension for a spreadsheet document field.Protection)
Расширение поля формы для поля табличного документа (Form field extension for a spreadsheet document field)
Защита (Protection)
Доступен, начиная с версии 8.2.
Использование:
Чтение и запись.
Описание:
Тип: Булево.
Управляет защитой табличного документа. Истина - защита включена.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Ограничить учебную таблицу просмотром без сохранения
Вывод запрещён, редактирование выключено, имя сохранения очищено. Это настройки UI, а не шифрование или серверные права.
Где и как запускать
Модуль новой управляемой формы учебной внешней обработки. Код содержит готовые процедуры с директивами; вставляйте на уровне модуля, не внутрь другого обработчика. Каждую задачу запускайте в отдельной копии формы.
Подготовка
Создайте отдельную внешнюю обработку с новой пустой управляемой основной формой в учебной базе. ПриСозданииНаСервере назначьте одноимённой процедуре.
Вставьте полный модуль на уровне модуля формы. УчебныйДокумент, УчебноеПолеТаблицы и кнопку вручную не создавайте: их добавляет код.
Каждый урок — отдельная копия формы. Таблица содержит только собственную Книгу (3) и Ручку (1); это не печатная форма рабочего документа.
Настольный тонкий/толстый или веб-клиент. Для урока очистки выделения выберите интерфейс Версия 8.5: его поведение выделения отдельно отмечено в справке.
Код не вызывает печать, сохранение файла, сетевой обмен или запись базы. Внешняя кнопка остаётся вне табличного поля и его состояния.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Новые = Новый Массив;
Новые.Добавить(Новый РеквизитФормы("УчебныйДокумент", Новый ОписаниеТипов("ТабличныйДокумент")));
ЭтаФорма.ИзменитьРеквизиты(Новые);
Документ = Новый ТабличныйДокумент;
Документ.Область(1, 1).Текст = "Товар";
Документ.Область(1, 2).Текст = "Количество";
Документ.Область(2, 1).Текст = "Книга";
Документ.Область(3, 1).Текст = "Ручка";
Для НомерСтроки = 2 По 3 Цикл
Ячейка = Документ.Область(НомерСтроки, 2);
Ячейка.СодержитЗначение = Истина;
Ячейка.ТипЗначения = Новый ОписаниеТипов("Число");
Если НомерСтроки = 2 Тогда
Ячейка.Значение = 3;
Иначе
Ячейка.Значение = 1;
КонецЕсли;
КонецЦикла;
Документ.Область(, 1, , 1).ШиринаКолонки = 25;
Документ.Область(, 2, , 2).ШиринаКолонки = 12;
Документ.Область(2, 1, 3, 2).Имя = "УчебныеТовары";
Документ.ТолькоПросмотр = Истина;
ЭтаФорма.УчебныйДокумент = Документ;
Поле = Элементы.Добавить("УчебноеПолеТаблицы", Тип("ПолеФормы"));
Поле.Вид = ВидПоляФормы.ПолеТабличногоДокумента;
Поле.ПутьКДанным = "УчебныйДокумент";
Поле.Редактирование = Ложь;
Поле.РазрешитьНачалоПеретаскивания = Ложь;
Поле.РазрешитьПеретаскивание = Ложь;
Поле.Защита = Истина;
Поле.Редактирование = Ложь;
Поле.Вывод = ИспользованиеВывода.Запретить;
Поле.ИспользуемоеИмяФайла = "";
КомандаДействия = ЭтаФорма.Команды.Добавить("УчебноеДействие");
КомандаДействия.Действие = "УчебноеДействие";
КомандаДействия.Заголовок = "Проверить свою таблицу";
КомандаДействия.Подсказка = "Действие только над данными учебной формы";
КомандаДействия.ИзменяетСохраняемыеДанные = Ложь;
Кнопка = Элементы.Добавить("КнопкаУчебноеДействие", Тип("КнопкаФормы"));
Кнопка.ИмяКоманды = КомандаДействия.Имя;
Кнопка.Заголовок = КомандаДействия.Заголовок;
КонецПроцедуры
&НаКлиенте
Процедура УчебноеДействие(Команда)
Поле = Элементы.УчебноеПолеТаблицы;
Сообщить(Поле.Защита);
Сообщить(НЕ Поле.Редактирование);
Сообщить(Поле.Вывод = ИспользованиеВывода.Запретить);
Сообщить(Поле.ИспользуемоеИмяФайла = "");
Сообщить(НЕ Поле.РазрешитьНачалоПеретаскивания И НЕ Поле.РазрешитьПеретаскивание);
Сообщить(ЭтаФорма.УчебныйДокумент.Область(2, 2).Значение = 3);
Сообщить(ЭтаФорма.УчебныйДокумент.Область(3, 2).Значение = 1);
КонецПроцедурыРазбор по шагам
Редактирование = Ложь отдельно выключает изменение содержимого через поле. Защита — другой флаг табличного документа.
Вывод = Запретить ограничивает печать, сохранение и операции вывода элемента; программа продолжает читать своё значение.
ИспользуемоеИмяФайла заполнялось бы при программной установке или Сохранить как. Пустая строка сама не удаляет и не создаёт файл.
Перетаскивание в обоих направлениях отключено. Здесь нет обработчика внешних файлов или вызова Записать/Напечатать.
Как проверить результат
Семь Истина, числовые значения по-прежнему 3 и 1.
Нажатие проверки не открывает принтер и диалог записи файла.
Ожидаемый результат
Настройки просмотра отделены от реального вывода и безопасности данных.
На что обратить внимание
Эти флаги не защищают данные от чтения доверенным кодом.
ИспользуемоеИмяФайла — не факт существования файла.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.