DEPO Firebird: путь к базе — и строкой подключения Fancy целиком (база на другом компьютере)

Поле пути в мастере и в «Таблицах обмена» принимает строку подключения из настройки Fancy: «сервер:путь»,
«сервер/порт:путь», «\\сервер\D:\путь», «\\сервер\D$\путь», «inet://сервер:порт/путь» — адрес и порт
bj берёт из неё (в мастере поля заполняются сразу при вставке). Сетевая папка «\\сервер\папка\…» — ошибка с
подсказкой: Firebird открывает базу только на своём диске, адрес — компьютер с сервером Firebird.
Проверено мастером на копии базы: пустой адрес + «127.0.0.1/3050:путь» — подготовка и BJ_PING.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q7eREaYwUt1i4fNLZcGnjn
This commit is contained in:
fontvielle
2026-10-27 19:15:46 +03:00
parent 50e420f4a0
commit 1d8bb0c032
8 changed files with 123 additions and 9 deletions
+12 -2
View File
@@ -248,10 +248,20 @@ func (h *setupHandlers) depoSetupForm(r *http.Request) (FancyMSSQLSettings, stri
return s, "", agent, "укажите имя базы DEPO — как она называется на сервере"
}
if dbType == "firebird" {
if !validFBPath(db) {
host, p, path, err := fbSplitConn(db) // строка подключения Fancy целиком: «сервер:путь» — сервер из неё
if err != nil {
return s, "", agent, err.Error()
}
if host != "" {
s.Server = host
if p != 0 {
s.Port = p
}
}
if !validFBPath(path) {
return s, "", agent, "путь к базе DEPO — без кавычек, ; ? и #"
}
return s, db, agent, ""
return s, path, agent, ""
}
if !validDBName(db) {
return s, "", agent, "имя базы DEPO — только латинские буквы, цифры и _, начинается с буквы"