Контекст это окружение кода, те переменные и методы которые доступны в данной точке. Разработчик должен четко понимать в каком контексте он работает, и какими методами и свойствами в результате он может оперировать, иными словами он должен понимать какой контекст ему доступен. Контекст делится на глобальный , локальный контекст процедуры и локальный контекст метода, также нужно делить контекст на серверный и клиентский.
Глобальный контекст доступен в любой точке конфигурации, он образуется процедурами и функциями глобального контекста. Которые можно увидеть в синтаксис помощнике, в ветке Глобальный контекст
как вы можете заметить, их достаточно много. Также в глобальный контекст входят и встроенные функции для работы со строкой числом, датой и т.д. которые находятся: Общее описание встроенного языка – Встроенные функции
. В глобальный контекст, входят системные значения и системные перечисления. Это наборы цветов, для вывода на форму , варианты обхода запроса, доступ к которым необходим из любой точки конфигурации и тд. Глобальный контекст дополняют экспортные методы общих модулей, которые тоже можно вызывать из любой точки конфигурации следующим образом: ИмяОбщегоМодуля.НазваниеЭкспортнойПроцедуры().
Локальный контекст модуля определяется теми переменными, процедурами и функциями которые определены в данном конкретном модуле. Также существует локальный контекст процедуры. Например:
Перем а; Процедура ПроцедураОдин() Перем а; //в даннной точке а содержит неопределенно КонецПроцедуры Процедура ПроцедураДва() //в даннной точке а содержит число 1 КонецПроцедуры а = 1;//в данной точке а = 1;
в данном примере в процедуре ПроцедураОдин
мы переопределили в модуле переменную а
и можем работать с ней совершенно свободно. В других процедурах где она не переопределена переменная а будет по прежнему содержать число.
(следует более точно в теории разобрать почему это происходит а уже потом показывать пример).