ОбъектМетаданных: Задача.РеквизитыАдресации

Свойства · AddressingAttributes

Тип: КоллекцияОбъектовМетаданных. Коллекция объектов метаданных, описывающих реквизиты адресации данной задачи.

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

ОбъектМетаданных: Задача.РеквизитыАдресации (MetadataObject: Task.AddressingAttributes)

ОбъектМетаданных: Задача (MetadataObject: Task)

РеквизитыАдресации (AddressingAttributes)

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

Использование:
Только чтение.
Описание:
Тип: КоллекцияОбъектовМетаданных.
Коллекция объектов метаданных, описывающих реквизиты адресации данной задачи.
Доступность:

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

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

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

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

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

Разобрать настройки выбора в полях адресации

Отделяем допустимый быстрый выбор, группы/элементы, параметры выбора и связи по типу. Никакой исполнитель этим кодом не выбирается.

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

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

Подготовка

  1. Запускайте в учебной копии конфигурации. Примеры читают структуру метаданных, но не создают объекты, не записывают регистры и не проводят документы.

  2. Сверяйте вывод с деревом конфигурации в Конфигураторе. Имена, длины и настройки в УНФ, КА2, БП, УТ 11 и УТ 10.3 могут различаться.

  3. Имена объектов взяты из XML КА2 Progress: C:\claude\KA2\Progress\XML_CF_KA2_PROGRESS. Исходные XML не изменяйте. Выполняйте код только в своей учебной копии соответствующей конфигурации.

  4. В другой конфигурации предварительно найдите аналогичный объект в Конфигураторе и замените только строку имени в поиске. Отсутствие имени обрабатывается до чтения свойств; оно не доказывает отсутствие аналогичной возможности.

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

Описание = Метаданные.Задачи.Найти("ЗадачаИсполнителя");
Если Описание = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует Задачи.ЗадачаИсполнителя";
КонецЕсли;
Для Каждого Поле Из Описание.РеквизитыАдресации Цикл
    Сообщить(Поле.ПолноеИмя());
    Сообщить(СтрШаблон("Быстрый выбор %1; группы/элементы %2; создание при вводе %3; история выбора %4",
        Поле.БыстрыйВыбор, Поле.ВыборГруппИЭлементов, Поле.СозданиеПриВводе, Поле.ИсторияВыбораПриВводе));
    Сообщить(СтрШаблон("Параметров выбора %1; связей параметров %2",
        Поле.ПараметрыВыбора.Количество(), Поле.СвязиПараметровВыбора.Количество()));
    Сообщить("Тип связи по типу: " + Строка(ТипЗнч(Поле.СвязьПоТипу)));
    Форма = Поле.ФормаВыбора;
    Если Форма <> Неопределено Тогда
        Сообщить("Форма выбора: " + Форма.ПолноеИмя());
    Иначе
        Сообщить("Явная форма выбора не получена");
    КонецЕсли;
    Сообщить("Индексирование: " + Строка(Поле.Индексирование));
    Сообщить("Полнотекстовый поиск: " + Строка(Поле.ПолнотекстовыйПоиск));
КонецЦикла;

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

  1. Настройки выбора относятся к полю схемы; не передаём их как конкретную ссылку исполнителя.

  2. ПараметрыВыбора и СвязиПараметровВыбора — разные фиксированные массивы.

  3. СвязьПоТипу описывает зависимость типа; выводим только тип этого описания.

  4. ФормаВыбора может отсутствовать, а настройки индекса не подтверждают успешный поиск.

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

  1. Сверьте число параметров и связей в свойствах реквизитов адресации; не требуйте ненулевого значения.

  2. Отсутствующая форма обработана безопасно; выбор исполнителя и создание объекта не происходят.

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

Показан набор деклараций, который нужно учитывать в самостоятельной форме выбора.

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

  1. Связь параметра выбора не является полномочием на доступ к выбранному сотруднику.

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

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

Изучить настройки ввода реквизитов адресации перед созданием своей формы

Печатаем тип и настройки полей адресации, не вводя и не назначая исполнителя. Отдельно отмечаем, что парольный режим — только отображение.

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

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

Подготовка

  1. Запускайте в учебной копии конфигурации. Примеры читают структуру метаданных, но не создают объекты, не записывают регистры и не проводят документы.

  2. Сверяйте вывод с деревом конфигурации в Конфигураторе. Имена, длины и настройки в УНФ, КА2, БП, УТ 11 и УТ 10.3 могут различаться.

  3. Имена объектов взяты из XML КА2 Progress: C:\claude\KA2\Progress\XML_CF_KA2_PROGRESS. Исходные XML не изменяйте. Выполняйте код только в своей учебной копии соответствующей конфигурации.

  4. В другой конфигурации предварительно найдите аналогичный объект в Конфигураторе и замените только строку имени в поиске. Отсутствие имени обрабатывается до чтения свойств; оно не доказывает отсутствие аналогичной возможности.

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

Описание = Метаданные.Задачи.Найти("ЗадачаИсполнителя");
Если Описание = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует Задачи.ЗадачаИсполнителя";
КонецЕсли;
Для Каждого Поле Из Описание.РеквизитыАдресации Цикл
    Сообщить(Поле.ПолноеИмя());
    Сообщить("Тип: " + Строка(Поле.Тип));
    Сообщить("Подсказка: " + Поле.Подсказка);
    Сообщить("Маска: " + Поле.Маска);
    Сообщить(СтрШаблон("Многострочный %1; расширенное редактирование %2; пароль %3",
        Поле.МногострочныйРежим, Поле.РасширенноеРедактирование, Поле.РежимПароля));
    Сообщить("Формат просмотра: " + Поле.Формат);
    Сообщить("Формат ввода: " + Поле.ФорматРедактирования);
    Сообщить("Выделять отрицательные: " + Строка(Поле.ВыделятьОтрицательные));
    Сообщить("Проверка заполнения: " + Строка(Поле.ПроверкаЗаполнения));
    Сообщить("Заполнение из входных данных: " + Строка(Поле.ЗаполнятьИзДанныхЗаполнения));
КонецЦикла;

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

  1. Работаем с РеквизитыАдресации, не с фактическими исполнителями.

  2. Тип определяет допустимые значения; часть свойств ввода имеет смысл только для соответствующего типа.

  3. Формат, маска и РежимПароля не меняют права и не шифруют данные.

  4. ПроверкаЗаполнения и ЗаполнятьИзДанныхЗаполнения — настройки будущего стандартного поведения, не выполненная проверка записи.

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

  1. Число блоков совпадает с числом реквизитов адресации, а типы — с Конфигуратором.

  2. В сообщениях отсутствуют имена конкретных исполнителей и значения их задач.

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

Выделены настройки будущих полей формы без создания или назначения задачи.

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

  1. Не демонстрируйте маску строки на ссылочном поле без проверки его типа.

  2. Свойства не заменяют обработчики формы и проверки бизнес-правил.

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

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

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

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

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