Все функции и процедуры в модулях форм 1С начинаются с описания директив -
- &НаСервере,
- &НаКлиенте,
- &НаСервереБезКонтеста,
- &НаКлиентеНаСервереБезКонтекста
Директивы компиляции – это специальные определения, с помощью которых платформа понимает, в каком контексте необходимо выполнять функцию или процедуру модуля
Если ее не указать, то значение автоматически будет присвоено &НаСервере. Такой код будет вызывать много лишних обращений на сервер, что увеличит время его работы. Рекомендуется стараться уменьшать число серверных вызовов.
Когда какую использовать?
Для этого нужно знать к каким данным мы хотим обращаться:
Директивы «Клиент» не имеют доступ базе данных. Директивы «Без контекста», не имеют доступа к контексту (данным) формы.
Директива &НаКлиентеНаСервереБезКонтекста имеет доступ только к данным, переданным в виде параметра.
И какие функции глобального контекста использовать:
Посмотреть, в каком контектсе работает функция можно в синтакс-помощнике:
Тонкий клиент означает , что функцию будет работать под директивой &НаКлиенте, Сервер соответственно под директивой &НаСервере или &НаСервереБезКонтеста.
При этом стоит помнить, что из Клиента можно вызвать процедуру НаСервере, в из Сервере НаКлиенте нет.
Ставь лайк, если дочитал до сюда и пиши в комментарии, какие темы а 1С самые сложные для тебя и как давно занимаешься 1С 😉