From 9b4045a94cc2169d51826dbf0e6e6b56f47399c9 Mon Sep 17 00:00:00 2001 From: lsv Date: Thu, 30 Apr 2026 10:43:43 +0500 Subject: [PATCH] fix compare report. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit При сравнении баз некорректно определялся путь в дереве объектов. --- frm/frmReport.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/frm/frmReport.cpp b/frm/frmReport.cpp index 3e3c380..d353bc6 100644 --- a/frm/frmReport.cpp +++ b/frm/frmReport.cpp @@ -1669,6 +1669,8 @@ wxWindow *reportCompareFactory::StartDialog(frmMain *form, pgObject *obj) wxTreeItemIdValue foldercookie; wxTreeItemId folderitem = browser->GetFirstChild(browser->GetRootItem(), foldercookie); wxString path(form->GetNodePath(obj->GetId())); + wxString src_serverGroupname=path.AfterFirst('/').BeforeFirst('/'); + wxString trg_serverGroupname; // ������ ��������/�������/serverN/Datebases/dbname // p1 p2 p3 wxString p_db; @@ -1704,7 +1706,7 @@ wxWindow *reportCompareFactory::StartDialog(frmMain *form, pgObject *obj) p_server_obj=path.substr(p2,p3-p2); // � /������N/ } wxString p_db_replace=_("Databases")+"/"+p_db+"/"; - wxString p_server_replace=_("Servers")+p_server_obj; + wxString p_server_replace=src_serverGroupname+p_server_obj; pgServer *server; pgDatabase *db=NULL,*lastdb=NULL; wxString trg_db_replace; @@ -1732,6 +1734,8 @@ wxString trg_server_replace; treeObjectIterator dbs(browser, coll); while ((db = (pgDatabase *)dbs.GetNextObject()) != 0) { + wxString path(form->GetNodePath(server->GetId())); + trg_serverGroupname=path.AfterFirst('/').BeforeFirst('/'); // есть открытая БД lastdb=db; if (db->GetConnected()) { @@ -1755,7 +1759,7 @@ wxString newpath; if (lastdb!=NULL) { p_db=browser->GetItemText(lastdb->GetId()).BeforeFirst('(').Trim(); trg_db_replace=_("Databases")+"/"+p_db+"/"; - trg_server_replace=_("Servers")+"/"+trg_server_replace; + trg_server_replace=trg_serverGroupname+'/'+trg_server_replace; newpath=path;