Параметры формы

Продолжаем изучать 1с в рубрике ‘Джуниор 1с’. Сегодня мы рассмотрим такую простую вещь как параметры формы. Вам кажется это очень простым вопросом? Тогда задайте своему коллеге вопрос: за что отвечает свойство параметра формы ‘Ключевой параметр’? Или в каком контексте формы он доступен? Многие не смогут дать ответа на этот вопрос!

Итак, начнем с простого: у нас есть форма документа ‘Задачи’. Давайте попытаемся её открыть и передать в неё структуру параметров:

Отлично, с этой задачей мы справились. Теперь идем в процедуру ‘ПриСоздании’ нашей формы документа и смотрим, где же найти наши параметры:

Параметры формы.
Параметры формы.

Мы видим что наши переданные параметры можно увидеть в переменной ‘Параметры’ / ДанныеФормыСтруктура. Они будут в самом конце списка (в красной рамке). Выше них идут стандартные параметры формы (предопределенные). И самыми первыми идут параметры (в зеленой рамке), которые мы можем определять непосредственно в самой форме:

Параметры.
Параметры.

Но давайте посмотрим, какие параметры будут жить вне процедуры ‘ПриСозданииНаСервере’. Для примера посмотрим что у нас доступно в клиентской процедуре ‘ПриОткрытии’:

Параметры формы в процедуре при открытии.
Параметры формы в процедуре при открытии.

Здесь мы видим что у нас остался только ограниченный список параметров. И наших параметров из вне здесь нет. А вот в процедуре ‘ТестоваяПроцедураСервер’, которая вызывается из ‘ПриСозданииНаСервере’ имеет полный список параметров формы:

Параметры в дополнительной процедуре.
Параметры в дополнительной процедуре.

И давайте еще проверим какие параметры мы видим из процедур, которые отдельно вызываются уже после создания формы (допустим по нажатию какой-либо кнопки):

Доступные параметры при нажатии на кнопку Выполнена.
Доступные параметры при нажатии на кнопку Выполнена.

Итак, мы можем подвести итог: полный список параметров формы доступен только в контексте процедуры ‘ПриСозданииНаСервере’ (плюс все процедуры, которые вызываются из неё)! Но тогда возникает вопрос, а что же это за параметры, которые живут все время, которое существует формы?

А все просто – это ключевые параметры формы. Доступны в контексте формы (в любых процедурах)! Что бы сделать свой ключевой параметр, достаточно создать параметр формы и указать у него свойство ‘Ключевой параметр’ (он тогда выделится жирным шрифтом):

Свойство 'Ключевой параметр'
Свойство ‘Ключевой параметр’.

Ключевых параметров может быть несколько. Так же программа сама формирует список предопределенных ключевых параметров. К примеру таких как ‘Ключ‘:

 Ключевые параметры формы.
Ключевые параметры формы.

Итак, с этим разобрались. Остался у нас теперь один вопрос, а как же нам к ним обращаться? А очень просто! Это НЕ обычная структура, а ДанныеФормыСтруктура, по сути из неё мы можем только читать наличия свойства и значения:

Обращение к параметрам формы.
Обращение к параметрам формы.

Вот в принципе и все! Ничего сложного! Всем удачи!

2+

2 комментария

  1. Программист 1С

    Прикольно оказывается в EDT все выглядит, для боевой разработки тоже используете?

    2+
    1. Admin (Автор записи)

      Пока нет, только для себя – для своих личных конфигураций. Изучаю из него как работать с git – довольно таки интересная замена хранилищу конфигурации + можно выкладывать в удаленный репозиторий на сайт.

      1+

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

Ваш адрес email не будет опубликован.