При разработке доработок мы все процедуры стараемся держать в своих общих модулях. Один соответственно только серверный, второй с галочками "Сервер, Внешнее соединение, Клиент (обычное приложение)".
Вот вопрос, а в какой из них запихивать процедуру, если она потенциально может и там и там работать?
Как правильнее?
правильнее там, где она нужна.
В режиме обычного приложения она вам нужна? Во внешнем соединении она вам нужна? Если да, тогда во втором, если нет, тогда только в серверном модуле.
(4) в (1) всё верно указано. Если это может быть выполнено в рамках контекста клиента - незачем на сервер лезть! Вас ведь оптимальность решения тоже интересует?
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший