ОбъектМетаданных: Поле.Тип

Свойства · Type

Тип: ОписаниеТипов. Тип данных объекта метаданных.

Полное описание, параметры и ограничения

ОбъектМетаданных: Поле.Тип (MetadataObject: Field.Type)

ОбъектМетаданных: Поле (MetadataObject: Field)

Тип (Type)

Доступен, начиная с версии 8.2.

Использование:
Только чтение.
Описание:
Тип: ОписаниеТипов.
Тип данных объекта метаданных.
Доступность:

Сервер, толстый клиент, внешнее соединение.

Использование в версии:

Доступен, начиная с версии 8.2.

Методическая информация

Практические примеры

Прочитать настройки отображения поля

Формат, маска и режим пароля описывают интерфейс. Они не преобразуют хранимое число в строку и не шифруют внешние данные.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Используйте отдельную учебную конфигурацию Учебная85 без расширений, не рабочие КА2/УНФ/УТ. В Конфигураторе создайте Внешние источники данных → УчебныйВнешний → Таблицы → Товары. Строку подключения оставьте пустой: упражнения читают только метаданные, внешняя СУБД не требуется.

  2. Для таблицы задайте вид Таблица, тип ОбъектныеДанные, имя в источнике guide_books, ТолькоЧтение=Истина. В её Полях создайте Код (Строка 20, имя book_code), Наименование (Строка 100, имя book_name), Количество (Число 9.0, имя book_quantity) и Версия (Число 15.0, имя book_version). Это описание учебного источника, не команда создания SQL-таблицы.

  3. В ПоляКлюча и ПоляБлокировкиДанных включите Код, ПолеПредставления=Наименование, ПолеВерсииДанных=Версия, ПолеРодителя не задавайте. ВводПоСтроке: Код и Наименование. Для Количество запретите Null, задайте заполнение 0 и Подсказку «Количество книг». Для Наименование задайте Синоним «Название книги». СозданиеПриВводе оставьте без использования.

  4. Модули и справку оставьте пустыми, не создавайте обработчики подключения и команды записи. Обновите только эту учебную конфигурацию. Фрагменты запускайте отдельно на сервере в учебной обработке: они не обращаются к данным источника и не меняют метаданные.

Источник = Метаданные.ВнешниеИсточникиДанных.Найти("УчебныйВнешний");
Если Источник = Неопределено Тогда
    ВызватьИсключение "Создайте только учебный внешний источник УчебныйВнешний";
КонецЕсли;
Таблица = Источник.Таблицы.Найти("Товары");
Если Таблица = Неопределено Тогда
    ВызватьИсключение "В учебном источнике нет описания таблицы Товары";
КонецЕсли;
Поле = Таблица.Поля.Найти("Количество");
Если Поле = Неопределено Тогда
    ВызватьИсключение "В собственной учебной таблице нет поля Количество";
КонецЕсли;
Сообщить("Формат: " + Поле.Формат);
Сообщить("Формат редактирования: " + Поле.ФорматРедактирования);
Сообщить("Маска: " + Поле.Маска);
Сообщить("Многострочный режим: " + Строка(Поле.МногострочныйРежим));
Сообщить("Расширенное редактирование: " + Строка(Поле.РасширенноеРедактирование));
Сообщить("Режим пароля: " + Строка(Поле.РежимПароля));
Сообщить("Выделение отрицательных: " + Строка(Поле.ВыделятьОтрицательные));
Сообщить("Быстрый выбор: " + Строка(Поле.БыстрыйВыбор));
Сообщить("Создание при вводе: " + Строка(Поле.СозданиеПриВводе));
Сообщить(Поле.Тип.СодержитТип(Тип("Число")));

Разбор по шагам

  1. Формат применяется для представления, ФорматРедактирования — при вводе, Маска задаёт ограничение формы ввода.

  2. МногострочныйРежим и РасширенноеРедактирование диагностируются; для собственного числового поля они не превращаются в работу с текстовым документом.

  3. РежимПароля означает маскировку отображаемых символов. Он не является криптографией, безопасным хранением или TLS.

  4. ВыделятьОтрицательные — оформление, не запрет отрицательного значения.

  5. После чтения настроек числовой тип описания остаётся числовым. Метаданные не изменялись.

Как проверить результат

  1. Девять диагностических строк и одно сравнение Истина.

  2. Значения сверяются с палитрой свойств Количество в Конфигураторе.

Ожидаемый результат

Настройки интерфейса отделены от типа и безопасности данных.

На что обратить внимание

  1. Не используйте РежимПароля как доказательство шифрования.

  2. Настройки метаданных не доказывают фактический вид произвольной пользовательской формы: там могут быть свои свойства.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Проверить тип и допустимость Null у количества

Количество книг — числовое поле описания. Проверяем имя в источнике, тип и ограничения, не пытаясь получить количество товаров из метаданных.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Используйте отдельную учебную конфигурацию Учебная85 без расширений, не рабочие КА2/УНФ/УТ. В Конфигураторе создайте Внешние источники данных → УчебныйВнешний → Таблицы → Товары. Строку подключения оставьте пустой: упражнения читают только метаданные, внешняя СУБД не требуется.

  2. Для таблицы задайте вид Таблица, тип ОбъектныеДанные, имя в источнике guide_books, ТолькоЧтение=Истина. В её Полях создайте Код (Строка 20, имя book_code), Наименование (Строка 100, имя book_name), Количество (Число 9.0, имя book_quantity) и Версия (Число 15.0, имя book_version). Это описание учебного источника, не команда создания SQL-таблицы.

  3. В ПоляКлюча и ПоляБлокировкиДанных включите Код, ПолеПредставления=Наименование, ПолеВерсииДанных=Версия, ПолеРодителя не задавайте. ВводПоСтроке: Код и Наименование. Для Количество запретите Null, задайте заполнение 0 и Подсказку «Количество книг». Для Наименование задайте Синоним «Название книги». СозданиеПриВводе оставьте без использования.

  4. Модули и справку оставьте пустыми, не создавайте обработчики подключения и команды записи. Обновите только эту учебную конфигурацию. Фрагменты запускайте отдельно на сервере в учебной обработке: они не обращаются к данным источника и не меняют метаданные.

Источник = Метаданные.ВнешниеИсточникиДанных.Найти("УчебныйВнешний");
Если Источник = Неопределено Тогда
    ВызватьИсключение "Создайте только учебный внешний источник УчебныйВнешний";
КонецЕсли;
Таблица = Источник.Таблицы.Найти("Товары");
Если Таблица = Неопределено Тогда
    ВызватьИсключение "В учебном источнике нет описания таблицы Товары";
КонецЕсли;
Поле = Таблица.Поля.Найти("Количество");
Если Поле = Неопределено Тогда
    ВызватьИсключение "В собственной учебной таблице нет поля Количество";
КонецЕсли;
Сообщить(Поле.Имя = "Количество");
Сообщить("Синоним: " + Поле.Синоним);
Сообщить("Комментарий: " + Поле.Комментарий);
Сообщить(Поле.ИмяВИсточникеДанных = "book_quantity");
Сообщить(Поле.Тип.СодержитТип(Тип("Число")));
Сообщить(Не Поле.РазрешитьNull);
Сообщить("Только чтение поля: " + Строка(Поле.ТолькоЧтение));
Сообщить("Проверка заполнения: " + Строка(Поле.ПроверкаЗаполнения));
Сообщить(Поле.Подсказка = "Количество книг");

Разбор по шагам

  1. Поле найдено только в собственной учебной таблице и проверено на отсутствие.

  2. Имя Количество и имя book_quantity относятся к разным слоям: конфигурации 1С и внешнему источнику.

  3. ОписаниеТипов.СодержитТип проверяет числовой контракт, а не значение конкретной записи.

  4. РазрешитьNull отвечает за отдельное значение Null. Оно не тождественно числу 0, пустой строке или Неопределено.

  5. ТолькоЧтение поля и ПроверкаЗаполнения показывают настройки поведения; данные источника не читаются.

Как проверить результат

  1. Пять сравнений Истина; три подписи и два режима диагностические.

  2. Объект Поле не используется как запись с количеством 3.

Ожидаемый результат

Проверен контракт числового поля без обращения к строкам.

На что обратить внимание

  1. Правило Null в метаданных не доказывает наличие ограничения NOT NULL в самой внешней БД.

  2. Число 0 может быть допустимым количеством, но смысл обязательности определяется задачей.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.