Блок begin..end |
Блок <.begin..end.> входит в состав процедур и программных блоков формы.
Синтаксис блока <.begin..end.> в форме имеет следующие особенности:
ключевое слово .begin имеет префикс точку и располагается в первой позиции строки;
ключевое слово end. имеет окончание точку и может стоять в любой позиции строки.
<блок .begin..end> ::= .begin { [<описание переменных и массивов> ] [<SQL оператор>] [<оператор вызова метода формы>]} [<ADV оператор>] } end.
Блок <.begin..end.> представляет собой набор, состоящий из описаний и операторов, заключенный в скобки .begin..end..
Операторы исполняются последовательно, в том порядке, в котором они встречаются в тексте блока.
В блоках <.begin..end.> формы можно использовать:
переменные и массивы, объявленные в форме-прототипе, которой принадлежит данная форма. Область видимости подобных переменных и массивов распространяется на форму-прототип и на все присоединенные к ней формы;
переменные и массивы, объявленные в форме. Область видимости данных переменных и массивов ограничивается формой, в которой они объявлены;
переменные и массивы, объявленные в блоке <.begin..end.> формы. Подобные переменные и массивы видны в своем программном блоке и во всех вложенных блоках;
переменные, поступающие в форму из прикладной программы (поля формы-прототипа). Поля формы-прототипа видны в форме-прототипе и во всех присоединенных к ней формах;
поля таблиц базы данных;
операторы вызова стандартных процедур и функций.
<SQL оператор> ::= <оператор модификации данных> | <оператор навигации по таблице>
Вы имеете возможность вносить изменения в базу данные непосредственно из формы, используя оператор модификации данных.
<оператор вызова метода формы> ::= <оператор метода break> |<оператор метода continue> |<оператор метода dofilter>
<ADV оператор> ::=
<блок .begin..end.>
| <оператор присваивания>
| <оператор set>
| <условный оператор if>
| <оператор выбора case>
| <оператор for>
| <оператор while>
| <оператор do..while>
| <оператор exit>
| <оператор вызова функции и процедуры>
| <оператор вызова объекта>
<оператор вызова объекта> ::= <оператор вызова интерфейса> | <оператор вызова диалога> | <оператор вызова формы>
Вы можете вызывать интерфейсы, диалоги и автономные формы непосредственно из формы.
Используя <оператор вызова функции и процедуры>, можно вызывать стандартные функции и процедуры.
Исключением являются следующие группы стандартных процедур и функций:
- функции для работы со словарем;
- функции для работы с интерфейсом;
- функции для работы с формами из интерфейса;
- внутренние функции.