Если честно, я не уверен, что понимаю, в чем собственно проблема.
Если вас беспокоит возможность подключения клиентского приложения к отдельному серверу БД, это фактически норма, а не исключение. Просто используйте любой мост JDBC / ODBC, и ваш код может быть выполнен на клиенте только с данными, перемещаемыми в сеть и из сети.
Если вы хотите, чтобы ваша логика выполнялась на удаленном сервере (ваш пример с вызовом процедуры на именованном AppServer предложил бы последний), то основы те же, то есть используйте ODBC для подключения к сервер БД и перенесите большую часть своей логики в хранимые процедуры.
(Я думаю, что то, что вы ищете, называется в большинстве современных СУБД именем «хранимая процедура»: т. Е. Полные единицы кода, либо функции, либо процедуры, которые выполняются исключительно на самом сервере БД. Их можно вызывать удаленно. клиентами, но используют память и вычислительные ресурсы на сервере БД).
Опять же, это довольно стандартный архитектурный выбор при работе с БД. Progress ABL / 4GL имеет модель смешанной парадигмы, которая может немного запутать вашу перспективу (если память служит, APPServers - это процессы, которые выполняются как своего рода безголовые «супер-клиенты» и отсутствует понятие «хранимой процедуры», то есть кода запустить внутри самой БД, кроме, возможно, триггеров).