Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Контекст модуля формы. 1. Локальный контекст модуля формы. 2. Реквизиты формы, которой «принадлежит» модуль. 3. Свойства и методы объекта «УправляемаяФорма».




Контекст модуля формы

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

Контекст модуля определяет набор доступных во время выполнения модуля объектов, переменных, процедур и функций.

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


Контекст модуля формы образуется:

„ локальным контекстом самого модуля формы;

„ реквизитами формы, которой «принадлежит» модуль;

„ свойствами и методами объекта УправляемаяФорма встроенного языка;

„ свойствами и методами расширения формы, определяемого типом того объекта, данные которого содержатся в основном реквизите формы;

„ глобальным контекстом, в том числе неглобальными общими модулями и экспортируемыми функциями и процедурами гло- бальных общих модулей;

„ экспортируемыми переменными, процедурами и функциями модуля управляемого приложения.

Рассмотрим подробнее, что собой представляет каждая из перечис- ленных составляющих.

1. Локальный контекст модуля формы.

Локальный контекст модуля формы – это переменные, процедуры и функции, объявленные в этом модуле.

Например, внутри модуля формы можно непосредственно обра- щаться по имени к процедуре ПолучитьСумму(), объявленной в этом же модуле (листинг 5. 2):

 

листинг 5. 2. Модуль формы

 

Или внутри модуля формы можно непосредственно обращаться по имени к переменной СлужебнаяПеременная, объявленной в этом модуле (листинг 5. 3).


листинг 5. 3. Модуль формы

 

2. Реквизиты формы, которой «принадлежит» модуль.

Например, если у формы существует реквизит СлужебныйРеквизит (рис. 5. 8), то к нему можно непосредственно обращаться по имени (листинг 5. 4).

 

 

листинг 5. 4. Модуль формы

 

3. Свойства и методы объекта «УправляемаяФорма».

Свойства и методы объекта встроенного языка УправляемаяФорма описаны в синтакс-помощнике (стр. 176): Интерфейс (управляемый) } УправляемаяФорма (рис. 5. 9).


 

К ним можно обращаться непосредственно по имени. Например, можно задать заголовок формы (листинг 5. 5).

листинг 5. 5. Модуль формы

 

Или можно закрыть форму (листинг 5. 6).

листинг 5. 6. Модуль формы

 


4. Свойства и методы расширения формы, определяемого типом того объекта, данные которого содержатся в основном реквизите формы.

Один из реквизитов формы может быть основным, в списке рекви- зитов он выделяется жирным. Как правило, основной реквизит формы содержит данные того объекта, который отображается в форме. Например, если это форма справочника, то основной реквизит будет содержать данные объекта СправочникОбъект. < имя> (рис. 5. 10).

 

 

А если это форма документа, то основной реквизит формы будет содержать данные объекта ДокументОбъект. < имя> (рис. 5. 11).

Тут следует пояснить, почему в списке реквизитов тип основного реквизита указан в скобках: (ДокументОбъект. Документ1). Дело в том, что это «ненастоящий» тип реквизита формы. Настоящий тип в данном случае будет ДанныеФормыСтруктура (рис. 5. 12).

Но ДанныеФормыСтруктура – это универсальный тип, который может содержать данные различных прикладных объектов. Поэтому, чтобы в редакторе формы можно было «ориентироваться», данные какого же именно прикладного объекта отображает эта форма, в колонке Тип редактора показывается не тип реквизита формы (ДанныеФормыСтруктура), а тип того объекта, данные которого


 

 

содержатся в этом реквизите. И этот «ненастоящий» тип показыва- ется в скобках.

 

Рис. 5. 11. Основной реквизит формы

 

 

От типа объекта, данные которого содержатся в основном реквизите формы, зависят некоторые особенности в поведении формы.


Например, если основной реквизит формы будет содержать данные документа, то при закрытии такой формы система будет запраши- вать подтверждение записи и проведения этого документа. Если же основной реквизит формы будет содержать данные справочника, то подобного запроса подтверждения при закрытии формы возникать не будет.

В зависимости от того, какой тип имеет объект, данные которого содержатся в основном реквизите, к контексту программного объекта УправляемаяФорма добавляется контекст соответствующего расши- рения.

Например, если основной реквизит – СправочникОбъект. < имя>, то в модуле формы становятся доступны свойства, методы объекта

встроенного языка Расширение управляемой формы для спра- вочника (синтакс-помощник – Интерфейс (управляемый) } Управляемая форма } Расширение справочника), рис. 5. 13.

 

 

Рис. 5. 13. Описание объектов в синтакс-помощнике

 

А если основной реквизит – ДинамическийСписок (рис. 5. 14), то в модуле формы становятся доступны свойства, методы объекта встроенного языка Расширение управляемой формы для динамиче- ского списка (синтакс-помощник – Интерфейс (управляемый) } Управ- ляемая форма } Расширение динамического списка), рис. 5. 15.


 

 

Рис. 5. 15. Описание объектов в синтакс-помощнике

 

Таким образом, в модуле формы, где основной реквизит содержит данные документа (рис. 5. 16), можно обратиться к свойству расши- рения управляемой формы для документа АвтоВремя (листинг 5. 7).


 

листинг 5. 7. Модуль формы

 

Или записать документ с помощью метода расширения управляемой формы для документа Записать(), листинг 5. 8:

листинг 5. 8. Модуль формы

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...