Элементы встроенного языка
Процедуры и функции
Действия, заданные в диалоге, оформляются в модуле как процедуры. Процедурой является некоторый отдельный алгоритм, имеющий имя - имя процедуры. Процедура оформляется строкой начала процедуры и строкой конца процедуры.
Процедура МояПроцедура()
<Тело процедуры> КонецПроцедуры
Между этими строками располагается тело процедуры - алгоритм, описывающий действия, которые процедура будет выполнять. В процедуре можно определить список передаваемых параметров, значения которым передаются при вызове процедуры и используются в теле процедуры. По умолчанию параметру процедуры всегда передается ссылка на значение. Для передачи самого значения используется ключевое слово Знач.
• Передача параметров по ссылке
Процедура Моя(а)
а = 12;
КонецПроцедуры Процедура А1(а)
а=10 ;
б = а ;
Моя(б); КонецПроцедуры
В конце процедуры А1 переменная «б» равна 12, потому что и переменная «б», и параметр процедуры Моя «а» идентифицируют один и тот же адрес.
\/ Формат исходных текстов программных модулей._____________________________ 33_
¦ Передача параметров по значению
Процедура Моя(а)
а=12;
КонецПроцедуры Процедура А1(а)
а=10 ;
б = а ;
Моя ( Знач б); КонецПроцедуры
В конце процедуры А1 переменная «б» равна 10 , потому что при вызове процедуры Моя() передавалась не ссылка, а значение.
Функция отличается тем, что возвращает значение, используя, оператор «Возврат».
Функция МояФункция()
··················
Возврат Авс; КонецФункции
Поэтому функции можно ставить в правой части операции присваивания и в поле «формула» элемент а диалоговой формы типа «Текст».
В языке также определено предварительное описание процедур и функций с помощью ключевого слова Далее
Процедура Моя(а) Далее Процедура al(a)
Моя(б) ;
КонецПроцедуры Процедура Моя(а)
а=12; КонецПроцедуры
Переменная — это строка идентификатора, определяющая область оперативной памяти, в которую записываются значения объекта.
Переменные могут определяться явно, с помощью ключевого слова Перем перед именем переменной, или неявно при присваивании им значения.
Область действия переменной определяется контекстом, в котором она создана. Это может быть локальный контекст процедуры или функции,
34_______________________ 1С:Првдприятие. Практика программирования на платформе V7
Функция С1()
Перем а, б, в;
- ·················
- ·················
Г=а; Возврат г;
КонецФункции
контекст модуля объекта или глобальный контекст.
Перем а,б,в;
Функция С1{)
КонецФункции
Выражение — это текст на встроенном языке.
Оператор это логически завершенная последовательность выражений.
Операторы в тексте разделяются точкой с запятой. Отдельно стоящая точка с запятой воспринимается системой, как пустой оператор.
Для объединения частей выражения — операндов, используются операции. Операнды должны иметь тип, соответствующий операции (см. Таблицу). Порядок выполнения операций в выражении соответствует общепринятому, с учетом скобок и приоритетов операций.
Операция определенные во встроенном языке
V Формат исходных текстов программных модулей._____________________________ 35