&НаСервере выполняет процедуру на сервере с передачей контекста формы — все данные формы (реквизиты, таблицы) автоматически сериализуются и отправляются на сервер, а после выполнения возвращаются обратно.
&НаСервереБезКонтекста выполняется на сервере без передачи контекста формы — данные формы не сериализуются, что делает вызов значительно быстрее.
Используй эту директиву, когда процедура должна читать или изменять реквизиты формы напрямую:
ЭтаФорма и её реквизитам&НаСервере
Процедура ЗаполнитьРеквизитыНаСервере()
ЭтаФорма.Наименование = "Тест";
КонецПроцедуры
Используй эту директиву для изолированных операций, не зависящих от состояния формы:
&НаСервереБезКонтекста
Функция ПолучитьДанныеНаСервере(Параметр)
Запрос = Новый Запрос;
// ...
Возврат Результат;
КонецФункции
&НаСервереБезКонтекста работает быстрее, так как исключает сериализацию контекста формы&НаСервереБезКонтекста все необходимые данные передаются явно через параметры&НаСервереБезКонтекста — это снижает нагрузку на сервер и улучшает читаемость кодаДиректива &НаСервереБезКонтекста автоматически сериализует все реквизиты формы и отправляет их на сервер, но работает медленнее, чем &НаСервере.
Новый — ещё не проверен сообществом
Вы