Клиент-серверный общий модуль должен именоваться с постфиксом "КлиентСервер"
В отдельных случаях, допустимо создание клиент-серверных общих модулей с процедурами и функциями, содержание которых одинаково и на сервере, и на клиенте. Такие процедуры и функции размещаются в общих модулях с признаками:
- Клиент (управляемое приложение)
- Сервер* (флажок
ВызовCервера
сброшен) - Клиент (обычное приложение)
- Внешнее соединение
Общие модули этого вида именуются с постфиксом КлиентСервер
.
Например: РаботаСФайламиКлиентСервер, ОбщегоНазначенияКлиентСервер
В общем случае, не рекомендуется определять общие модули одновременно для сервера и для клиента (управляемое приложение). Функциональность, определенную для клиента и для сервера, рекомендуется реализовывать в разных общих модулях – см. пп. 2.1 и 2.3. Такое явное разделение клиентской и серверной бизнес-логики продиктовано соображениями повышения модульности прикладного решения, упрощения контроля со стороны разработчика над клиент-серверным взаимодействием и снижением риска ошибок из-за принципиальных отличий требований к разработке клиентского и серверного кода (необходимость минимизации кода, выполняемого на клиенте, разной доступностью объектов и типов платформы и др.). При этом нужно иметь в виду неизбежное увеличение числа общих модулей в конфигурации.
Особым случаем смешанных клиент-серверных модулей являются модули форм и команд, которые специально предназначены для реализации серверной и клиентской бизнес-логики в одном модуле.
См. также
Экранирование кода
// sonar:CommonModuleNameClientServer:off
// sonar:CommonModuleNameClientServer:on