Тип: ОписаниеТипов. Содержит объект, описывающий допустимые типы значений для ячеек области.
Полное описание, параметры и ограничения
ОбластьЯчеекТабличногоДокумента.ТипЗначения (SpreadsheetDocumentRange.ValueType)
ОбластьЯчеекТабличногоДокумента (SpreadsheetDocumentRange)
ТипЗначения (ValueType)
Доступен, начиная с версии 8.2.
Использование:
Чтение и запись.
Описание:
Тип: ОписаниеТипов.
Содержит объект, описывающий допустимые типы значений для ячеек области.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Примечание:
Свойство доступно, если ячейка содержит значение (свойство СодержитЗначение равно Истина).
Применимо только для прямоугольных областей.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Очистить выделение пустым массивом в интерфейсе 8.5
Сначала устанавливаем собственную область, затем явно передаём пустой массив. Это не очистка документа и не удаление строк.
Где и как запускать
Модуль новой управляемой формы учебной внешней обработки. Код содержит готовые процедуры с директивами; вставляйте на уровне модуля, не внутрь другого обработчика. Каждую задачу запускайте в отдельной копии формы.
Подготовка
Создайте отдельную внешнюю обработку с новой пустой управляемой основной формой в учебной базе. ПриСозданииНаСервере назначьте одноимённой процедуре.
Вставьте полный модуль на уровне модуля формы. УчебныйДокумент, УчебноеПолеТаблицы и кнопку вручную не создавайте: их добавляет код.
Каждый урок — отдельная копия формы. Таблица содержит только собственную Книгу (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, 1, 3, 2));
Поле.УстановитьВыделенныеОбласти(Области);
ДоОчистки = Поле.ПолучитьВыделенныеОбласти();
Сообщить(ДоОчистки.Количество() > 0);
Поле.УстановитьВыделенныеОбласти(Новый Массив);
ПослеОчистки = Поле.ПолучитьВыделенныеОбласти();
Сообщить(ПослеОчистки.Количество() = 0);
Сообщить(ЭтаФорма.УчебныйДокумент.ВысотаТаблицы = 3);
Сообщить(ЭтаФорма.УчебныйДокумент.Область(2, 2).Значение = 3);
Сообщить(ЭтаФорма.УчебныйДокумент.Область(3, 2).Значение = 1);
КонецПроцедурыРазбор по шагам
Сначала создаётся непустое выделение одной своей области, чтобы очистка имела проверяемый эффект.
Пустой массив передаётся явно, аргумент не опускается. Справка отдельно обещает пустое текущее выделение в интерфейсе Версия8_5.
Массив повторно считывается после изменения. Документ не получает вызов Очистить.
В другом интерфейсе не выдавайте второе сравнение за универсальную гарантию: этот урок требует Версия 8.5.
Как проверить результат
В интерфейсе Версия 8.5: пять Истина. Документ всё ещё содержит три строки и количества 3/1.
Повторное нажатие опять сначала создаёт, потом убирает своё выделение.
Ожидаемый результат
Показана очистка состояния выбора, не данных.
На что обратить внимание
Это интерфейсное отличие 8.5, не общий контракт для всех старых клиентов.
Нет обращения к [0] после получения пустого массива.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Сравнить технический и читательский вид своей таблицы
Сетка, заголовки координат и имена областей помогают разработчику. Их видимость не удаляет строки или именованную область.
Где и как запускать
Модуль новой управляемой формы учебной внешней обработки. Код содержит готовые процедуры с директивами; вставляйте на уровне модуля, не внутрь другого обработчика. Каждую задачу запускайте в отдельной копии формы.
Подготовка
Создайте отдельную внешнюю обработку с новой пустой управляемой основной формой в учебной базе. ПриСозданииНаСервере назначьте одноимённой процедуре.
Вставьте полный модуль на уровне модуля формы. УчебныйДокумент, УчебноеПолеТаблицы и кнопку вручную не создавайте: их добавляет код.
Каждый урок — отдельная копия формы. Таблица содержит только собственную Книгу (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).Имя = "УчебныеТовары";
Документ.ТолькоПросмотр = Истина;
ЭтаФорма.УчебныйДокумент = Документ;
Поле = Элементы.Добавить("УчебноеПолеТаблицы", Тип("ПолеФормы"));
Поле.Вид = ВидПоляФормы.ПолеТабличногоДокумента;
Поле.ПутьКДанным = "УчебныйДокумент";
Поле.Редактирование = Ложь;
Поле.РазрешитьНачалоПеретаскивания = Ложь;
Поле.РазрешитьПеретаскивание = Ложь;
Поле.ОтображатьСетку = Истина;
Поле.ОтображатьЗаголовки = Истина;
Поле.ОтображатьГруппировки = Истина;
Поле.ОтображатьИменаСтрокИКолонок = Истина;
Поле.ОтображатьИменаЯчеек = Истина;
Поле.ЧерноБелыйПросмотр = Ложь;
Поле.ЦветРамки = Новый Цвет(180, 195, 210);
Поле.РежимМасштабированияПросмотра = РежимМасштабированияПросмотра.Обычный;
КомандаДействия = ЭтаФорма.Команды.Добавить("УчебноеДействие");
КомандаДействия.Действие = "УчебноеДействие";
КомандаДействия.Заголовок = "Проверить свою таблицу";
КомандаДействия.Подсказка = "Действие только над данными учебной формы";
КомандаДействия.ИзменяетСохраняемыеДанные = Ложь;
Кнопка = Элементы.Добавить("КнопкаУчебноеДействие", Тип("КнопкаФормы"));
Кнопка.ИмяКоманды = КомандаДействия.Имя;
Кнопка.Заголовок = КомандаДействия.Заголовок;
КонецПроцедуры
&НаКлиенте
Процедура УчебноеДействие(Команда)
Поле = Элементы.УчебноеПолеТаблицы;
ТехническийВид = НЕ Поле.ОтображатьСетку;
Поле.ОтображатьСетку = ТехническийВид;
Поле.ОтображатьЗаголовки = ТехническийВид;
Поле.ОтображатьГруппировки = ТехническийВид;
Поле.ОтображатьИменаСтрокИКолонок = ТехническийВид;
Поле.ОтображатьИменаЯчеек = ТехническийВид;
Поле.ЧерноБелыйПросмотр = НЕ ТехническийВид;
ОбластьТоваров = ЭтаФорма.УчебныйДокумент.Области.Найти("УчебныеТовары");
Если ОбластьТоваров = Неопределено Тогда
ВызватьИсключение "Собственная именованная область потеряна";
КонецЕсли;
Сообщить(ОбластьТоваров.Верх = 2 И ОбластьТоваров.Низ = 3);
Сообщить("Технический вид: " + Строка(ТехническийВид));
Сообщить(ЭтаФорма.УчебныйДокумент.Область(2, 2).Значение = 3);
Сообщить(ЭтаФорма.УчебныйДокумент.Область(3, 2).Значение = 1);
КонецПроцедурыРазбор по шагам
Режимы относятся к отображению поля. УчебныеТовары — собственная именованная область, созданная до привязки поля.
После переключения область снова ищется по имени и проверяется на отсутствие. Координаты остаются 2..3.
Группировки в этой маленькой таблице не созданы. ОтображатьГруппировки лишь разрешает их вывод и не создаёт группы само.
ЧерноБелыйПросмотр меняет просмотр, не преобразует и не записывает файл. Изменение свойств на клиенте может обращаться к серверу.
Как проверить результат
Три Истина и флаг технического вида. Первое нажатие скрывает служебное отображение, второе возвращает.
Без созданных групп не обещается появление значков группировки.
Ожидаемый результат
Служебные подсказки скрыты без удаления собственных областей.
На что обратить внимание
Черно-белый просмотр не равен настройке конкретного принтера.
Имена строк/колонок и именованная область ячеек — разные виды служебного отображения.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.