diff --git a/doc/CHANGELOG b/doc/CHANGELOG
index 991faa9..7fc7ad2 100644
--- a/doc/CHANGELOG
+++ b/doc/CHANGELOG
@@ -4,9 +4,12 @@
# Author: Sergey Kalinin svk@nuk-svk.ru
# Home page: https://bitbucket.org/svk28/rac-gui
######################################################
+22/05/2018
+- Реализована форма добавления рабочего сервера
+
20/05/2018
-- Добавлены процедуры работы (добавления, удаления) с кластером (базой, сервера)
-- Добавлен диалог добавления базы
+- Добавлены процедуры работы (добавления, удаления) с кластером (базой, сервером)
+- Сделан диалог добавления базы (только обязательные параметры)
15/05/2018
- Добавлен вывод списка кластеров, серверов, баз и т.д
@@ -16,3 +19,4 @@
- Beginning the project
+
diff --git a/img/document-new-symbolic.svg b/img/document-new-symbolic.svg
new file mode 100644
index 0000000..631ffe6
--- /dev/null
+++ b/img/document-new-symbolic.svg
@@ -0,0 +1,36 @@
+
+
+
+
diff --git a/img/edit-delete-symbolic.svg b/img/edit-delete-symbolic.svg
new file mode 100644
index 0000000..9d6e356
--- /dev/null
+++ b/img/edit-delete-symbolic.svg
@@ -0,0 +1,26 @@
+
+
+
+
diff --git a/img/system-shutdown-symbolic.svg b/img/system-shutdown-symbolic.svg
new file mode 100644
index 0000000..4ddd67e
--- /dev/null
+++ b/img/system-shutdown-symbolic.svg
@@ -0,0 +1,31 @@
+
+
+
+
diff --git a/lib/function.tcl b/lib/function.tcl
index 0d5e851..398fafc 100644
--- a/lib/function.tcl
+++ b/lib/function.tcl
@@ -6,7 +6,6 @@
# https://bitbucket.org/svk28/rac-gui
######################################################
-
proc Quit {} {
exit
}
@@ -20,6 +19,7 @@ proc TreePress {tree} {
if {$key eq "server"} {
set host $values
}
+ #puts "$id $host $values"
Run::$key $tree $host $values
#RunCommand $root "infobase summary list --cluster=$cluster $host"
}
@@ -27,7 +27,6 @@ proc TreePress {tree} {
namespace eval Run {} {}
# Получение данных по кластерам
proc Run::server {tree host values} {
- puts "Server info $host $values"
set lst [RunCommand server::$host "cluster list $host"]
set l [split $lst "&"]
foreach i $l {
@@ -51,8 +50,7 @@ proc Run::server {tree host values} {
proc Run::cluster {$tree host values} {
global active_cluster
set active_cluster $values
- puts "Server info $host $values"
- puts [RunCommand cluster::$values "cluster info --cluster=$values $host"]
+ RunCommand cluster::$values "cluster info --cluster=$values $host"
}
proc Run::infobases {tree host values} {
@@ -256,77 +254,74 @@ proc Del {} {
set id [.frm_tree.tree selection]
set values [.frm_tree.tree item [.frm_tree.tree selection] -values]
set key [lindex [split $id "::"] 0]
- puts "$key, $id , $values"
Del::$key .frm_tree.tree $host $values
}
-namespace eval Del {} {
- proc work_server {tree host values} {
- global active_cluster
- set answer [tk_messageBox -message "Удалить рабочий сервер $values?" \
- -icon question -type yesno ]
- switch -- $answer {
- yes {
- set lst [RunCommand infobase::$values "server remove --cluster=$active_cluster --server=$values $host"]
- $tree delete "work_server::$values"
- .frm_work.tree_work delete [ .frm_work.tree_work children {}]
- }
- no {return}
+namespace eval Del {} {}
+proc Del::work_server {tree host values} {
+ global active_cluster
+ set answer [tk_messageBox -message "Удалить рабочий сервер $values?" \
+ -icon question -type yesno ]
+ switch -- $answer {
+ yes {
+ set lst [RunCommand infobase::$values "server remove --cluster=$active_cluster --server=$values $host"]
+ $tree delete "work_server::$values"
+ .frm_work.tree_work delete [ .frm_work.tree_work children {}]
}
+ no {return}
}
- proc cluster {tree host values} {
- set answer [tk_messageBox -message "Удалить кластер $values?" \
- -icon question -type yesno ]
- switch -- $answer {
- yes {
- set lst [RunCommand infobase::$values "cluster remove --cluster=$values $host"]
- $tree delete "cluster::$values"
- .frm_work.tree_work delete [ .frm_work.tree_work children {}]
- }
- no {return}
- }
- }
- proc infobase {tree host values} {
- global active_cluster
- set answer [tk_messageBox -message "Удалить информационную базу $values?" \
- -icon question -type yesno ]
- switch -- $answer {
- yes {
- set lst [RunCommand infobase::$values "infobase drop --infobase=$values --cluster=$active_cluster $host"]
- $tree delete "infobase::$values"
- .frm_work.tree_work delete [ .frm_work.tree_work children {}]
- }
- no {return}
- }
- }
- proc server {tree host values} {
- global dir
- set answer [tk_messageBox -message "Удалить сервер $values?" \
- -icon question -type yesno ]
- switch -- $answer {
- yes {
- #set lst [RunCommand infobase::$values "cluster remove --cluster=$values $host"]
- file copy [file join $dir(work) 1c_srv.cfg] [file join $dir(work) 1c_srv.cfg.bak]
- set orig_file [open [file join $dir(work) 1c_srv.cfg.bak] "r"]
- set file [open [file join $dir(work) 1c_srv.cfg] "w"]
- while {[gets $orig_file line] >=0 } {
- puts $line
- if { $line ne "" && $line ne "$values"} {
- puts $file $line
- }
- }
- close $file
- close $orig_file
- #return "$host:$port"
- $tree delete "server::$values"
- .frm_work.tree_work delete [ .frm_work.tree_work children {}]
- file delete [file join $dir(work) 1c_srv.cfg.bak]
- }
- no {return}
- }
- }
-
}
+proc Del::cluster {tree host values} {
+ set answer [tk_messageBox -message "Удалить кластер $values?" \
+ -icon question -type yesno ]
+ switch -- $answer {
+ yes {
+ set lst [RunCommand infobase::$values "cluster remove --cluster=$values $host"]
+ $tree delete "cluster::$values"
+ .frm_work.tree_work delete [ .frm_work.tree_work children {}]
+ }
+ no {return}
+ }
+}
+proc Del::infobase {tree host values} {
+ global active_cluster
+ set answer [tk_messageBox -message "Удалить информационную базу $values?" \
+ -icon question -type yesno ]
+ switch -- $answer {
+ yes {
+ set lst [RunCommand infobase::$values "infobase drop --infobase=$values --cluster=$active_cluster $host"]
+ $tree delete "infobase::$values"
+ .frm_work.tree_work delete [ .frm_work.tree_work children {}]
+ }
+ no {return}
+ }
+}
+proc Del::server {tree host values} {
+ global dir
+ set answer [tk_messageBox -message "Удалить сервер $values?" \
+ -icon question -type yesno ]
+ switch -- $answer {
+ yes {
+ #set lst [RunCommand infobase::$values "cluster remove --cluster=$values $host"]
+ file copy [file join $dir(work) 1c_srv.cfg] [file join $dir(work) 1c_srv.cfg.bak]
+ set orig_file [open [file join $dir(work) 1c_srv.cfg.bak] "r"]
+ set file [open [file join $dir(work) 1c_srv.cfg] "w"]
+ while {[gets $orig_file line] >=0 } {
+ puts $line
+ if { $line ne "" && $line ne "$values"} {
+ puts $file $line
+ }
+ }
+ close $file
+ close $orig_file
+ #return "$host:$port"
+ $tree delete "server::$values"
+ .frm_work.tree_work delete [ .frm_work.tree_work children {}]
+ file delete [file join $dir(work) 1c_srv.cfg.bak]
+ }
+ no {return}
+ }
+}
proc Add {} {
global active_cluster host
set id [.frm_tree.tree selection]
@@ -339,160 +334,253 @@ proc Add {} {
Add::$key .frm_tree.tree $host $values
}
-namespace eval Add {} {
- proc server {} {
- global default
- toplevel .add
- set frm [ttk::labelframe .add.frm -text "Добавление основного сервера" -labelanchor nw]
-
- label $frm.lbl_host -text "Адрес сервера"
- entry $frm.ent_host
- label $frm.lbl_port -text "Порт"
- entry $frm.ent_port
- $frm.ent_port insert end $default(port)
- grid $frm.lbl_host -row 0 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_host -row 0 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_port -row 1 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_port -row 1 -column 1 -sticky nsew -padx 5 -pady 5
- #grid $frm.btn_ok -row 2 -column 1 -sticky nw -padx 5 -pady 5
- #grid $frm.btn_cancel -row 2 -column 1 -sticky se -padx 5 -pady 5
- grid columnconfigure $frm 0 -weight 1
- grid rowconfigure $frm 0 -weight 1
- set frm_btn [frame .add.frm_btn -border 0]
- ttk::button $frm_btn.btn_ok -image add_grey_24 -command {
- set host [SaveMainServer [.add.frm.ent_host get] [.add.frm.ent_port get]]
- .frm_tree.tree insert {} end -id "server::$host" -text "$host" -values "$host"
- destroy .add
- return $host
- }
- ttk::button $frm_btn.btn_cancel -command {destroy .add} -image quit_grey_24
- pack $frm $frm_btn -padx 5 -pady 5 -expand true -fill x
- pack $frm_btn.btn_cancel -side right
- pack $frm_btn.btn_ok -side right -padx 10
- puts $host
- }
- proc work_server {tree host values} {
- }
- proc infobase {tree host values} {
- Add::infobases $tree $host $values
- }
- proc infobases {tree host values} {
- global default active_cluster
- toplevel .add
- wm title .add "Добавление информационной базы"
- ttk::label .add.lbl -image add_database_grey_64
- set frm [ttk::labelframe .add.frm -text "Добавление информационной базы" -labelanchor nw]
-
- label $frm.lbl_host -text "Адрес сервера баз даннных"
- entry $frm.ent_host
- label $frm.lbl_db_user -text "Имя пользователя базы даннных"
- entry $frm.ent_db_user
- label $frm.lbl_db_pass -text "Пароль"
- entry $frm.ent_db_pass
- #$frm.ent_host insert end $host
- label $frm.lbl_locale -text "Язык базы данных"
- entry $frm.ent_locale
- $frm.ent_locale insert end $default(locale)
- label $frm.lbl_infobase_name -text "Имя информационной базы"
- entry $frm.ent_infobase_name
- label $frm.lbl_base_name -text "Имя базы данных"
- entry $frm.ent_base_name
- label $frm.lbl_base_type -text "Тип СУБД"
- set combo [ttk::combobox $frm.cb_base_type -textvariable dbms -values $default(dbms)]]
- grid $frm.lbl_host -row 0 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_host -row 0 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_db_user -row 1 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_db_user -row 1 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_db_pass -row 2 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_db_pass -row 2 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_locale -row 3 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_locale -row 3 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_infobase_name -row 4 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_infobase_name -row 4 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_base_name -row 5 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_base_name -row 5 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_base_type -row 6 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.cb_base_type -row 6 -column 1 -sticky nsew -padx 5 -pady 5
- # grid $frm.lbl_host $frm.ent_host -sticky nwse -padx 5 -pady 5
- # grid $frm.lbl_db_user $frm.ent_db_user -sticky nwse -padx 5 -pady 5
- # grid $frm.lbl_db_pass $frm.ent_db_pass -sticky nwse -padx 5 -pady 5
- # grid $frm.lbl_locale $frm.ent_locale -sticky nwse -padx 5 -pady 5
- # grid $frm.lbl_infobase_name $frm.ent_infobase_name -sticky nwse -padx 5 -pady 5
- # grid $frm.lbl_base_name $frm.ent_base_name -sticky nwse -padx 5 -pady 5
- # grid $frm.lbl_base_type $frm.cb_base_type -sticky nwse -padx 5 -pady 5
- #
- grid columnconfigure $frm 0 -weight 1
- grid rowconfigure $frm 0 -weight 1
-
- set active_cluster $values
-
- set frm_btn [frame .add.frm_btn -border 0]
- ttk::button $frm_btn.btn_ok -image add_grey_24 -command {
- #puts [RunCommand "" "cluster insert --host=[.add.frm.ent_host get] --port=[.add.frm.ent_port get] --name=[.add.frm.ent_cluster_name get] $host"]
- RunCommand "" "infobase create --create-database \
- --name=[.add.frm.ent_infobase_name get] \
- --dbms=$dbms \
- --db-server=[.add.frm.ent_host get] \
- --db-name=[.add.frm.ent_base_name get] \
- --locale=[.add.frm.ent_locale get] \
- --db-user=[.add.frm.ent_db_user get] \
- --db-pwd=[.add.frm.ent_db_pass get] \
- --cluster=$active_cluster $host"
- #SaveCluster [.add.frm.ent_host get] [.add.frm.ent_port get]]
- #.frm_tree.tree insert "server::$host" end -id "er::$host" -text "$host" -values "$host"
- destroy .add
- #return $host
- }
- ttk::button $frm_btn.btn_cancel -command {destroy .add} -image quit_grey_24
- grid .add.lbl -row 0 -column 0 -sticky nw -padx 5 -pady 10
- grid $frm -row 0 -column 1 -sticky nw -padx 5 -pady 5
- grid $frm_btn -row 1 -column 1 -sticky se -padx 5 -pady 5
- # pack .add.lbl -side left
- # pack $frm -padx 5 -pady 5 -expand true -fill x -side left
- # pack $frm_btn -padx 5 -pady 5 -expand true -fill x
- pack $frm_btn.btn_cancel -side right
- pack $frm_btn.btn_ok -side right -padx 10
-
- }
+namespace eval Add {} {}
+proc Add::server {} {
+ global default
+ toplevel .add
+ set frm [ttk::labelframe .add.frm -text "Добавление основного сервера" -labelanchor nw]
- proc cluster {tree host values} {
- global default
- toplevel .add
- set frm [ttk::labelframe .add.frm -text "Добавление кластера" -labelanchor nw]
-
- label $frm.lbl_host -text "Адрес основного сервера"
- entry $frm.ent_host
- #$frm.ent_host insert end $host
- label $frm.lbl_port -text "Порт"
- entry $frm.ent_port
- $frm.ent_port insert end $default(port)
- label $frm.lbl_cluster_name -text "Название кластера"
- entry $frm.ent_cluster_name
-
- grid $frm.lbl_host -row 0 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_host -row 0 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_port -row 1 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_port -row 1 -column 1 -sticky nsew -padx 5 -pady 5
- grid $frm.lbl_cluster_name -row 2 -column 0 -sticky nw -padx 5 -pady 5
- grid $frm.ent_cluster_name -row 2 -column 1 -sticky nsew -padx 5 -pady 5
-
- grid columnconfigure $frm 0 -weight 1
- grid rowconfigure $frm 0 -weight 1
- set frm_btn [frame .add.frm_btn -border 0]
- ttk::button $frm_btn.btn_ok -image add_grey_24 -command {
- puts [RunCommand "" "cluster insert --host=[.add.frm.ent_host get] --port=[.add.frm.ent_port get] --name=[.add.frm.ent_cluster_name get] $host"]
-
- #SaveCluster [.add.frm.ent_host get] [.add.frm.ent_port get]]
- #.frm_tree.tree insert "server::$host" end -id "er::$host" -text "$host" -values "$host"
- destroy .add
- #return $host
- }
- ttk::button $frm_btn.btn_cancel -command {destroy .add} -image quit_grey_24
- pack $frm $frm_btn -padx 5 -pady 5 -expand true -fill x
- pack $frm_btn.btn_cancel -side right
- pack $frm_btn.btn_ok -side right -padx 10
- puts $host
+ label $frm.lbl_host -text "Адрес сервера"
+ entry $frm.ent_host
+ label $frm.lbl_port -text "Порт"
+ entry $frm.ent_port
+ $frm.ent_port insert end $default(port)
+ grid $frm.lbl_host -row 0 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_host -row 0 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_port -row 1 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_port -row 1 -column 1 -sticky nsew -padx 5 -pady 5
+ grid columnconfigure $frm 0 -weight 1
+ grid rowconfigure $frm 0 -weight 1
+ set frm_btn [frame .add.frm_btn -border 0]
+ ttk::button $frm_btn.btn_ok -image add_grey_24 -command {
+ set host [SaveMainServer [.add.frm.ent_host get] [.add.frm.ent_port get]]
+ .frm_tree.tree insert {} end -id "server::$host" -text "$host" -values "$host"
+ destroy .add
+ return $host
}
+ ttk::button $frm_btn.btn_cancel -command {destroy .add} -image quit_grey_24
+ pack $frm $frm_btn -padx 5 -pady 5 -expand true -fill x
+ pack $frm_btn.btn_cancel -side right
+ pack $frm_btn.btn_ok -side right -padx 10
+ puts $host
+}
+proc Add::servers {tree host values} {
+ global default dedicate_manager using_central_server
+ set dedicate_manager "none"
+ set using_central_server "normal"
+ set active_cluster $values
+ toplevel .add
+ wm title .add "Добавление рабочего сервера"
+ ttk::label .add.lbl -image server_grey_64
+ set frm [ttk::labelframe .add.frm -text "Добавление рабочего сервера" -labelanchor nw]
+
+ label $frm.lbl_server_desc -text "Описание сервера"
+ entry $frm.ent_server_desc
+
+ label $frm.lbl_host -text "Адрес сервера"
+ entry $frm.ent_host
+
+ label $frm.lbl_port -text "Порт"
+ entry $frm.ent_port
+ $frm.ent_port insert end $default(port)
+
+ label $frm.lbl_ports_range -text "Диапазон портов"
+ entry $frm.ent_ports_range
+ $frm.ent_ports_range insert end $default(ports_range)
+
+ label $frm.lbl_ram_max -text "Максимальный объём памяти раб. процессов"
+ entry $frm.ent_ram_max
+ $frm.ent_ram_max insert end $default(ram_max)
+
+ label $frm.lbl_ram_sec -text "Безопасный расход памяти за вызов"
+ entry $frm.ent_ram_sec
+ $frm.ent_ram_sec insert end $default(ram_sec)
+
+ label $frm.lbl_ram_work -text "Объём памяти рабочих процессов"
+ entry $frm.ent_ram_work
+ $frm.ent_ram_work insert end $default(ram_work)
+
+ label $frm.lbl_base_on_process -text "Количество ИБ на процесс"
+ entry $frm.ent_base_on_process
+ $frm.ent_base_on_process insert end $default(base_on_process)
+
+ label $frm.lbl_connection_on_process -text "Количество соединений на процесс"
+ entry $frm.ent_connection_on_process
+ $frm.ent_connection_on_process insert end $default(connection_on_process)
+
+ label $frm.lbl_manager_port -text "Порт главного менеджера кластера"
+ entry $frm.ent_manager_port
+ $frm.ent_manager_port insert end $default(port)
+
+ label $frm.lbl_manager_each_service -text "Менеджер под каждый сервис"
+ checkbutton $frm.ent_manager_each_service -variable dedicate_manager -onvalue all -offvalue none
+
+ label $frm.lbl_central_server -text "Центральный сервер"
+ checkbutton $frm.ent_central_server -variable using_central_server -onvalue main -offvalue normal
+
+ grid $frm.lbl_server_desc -row 0 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_server_desc -row 0 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_host -row 1 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_host -row 1 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_port -row 2 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_port -row 2 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_ports_range -row 3 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_ports_range -row 3 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_ram_max -row 4 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_ram_max -row 4 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_ram_sec -row 5 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_ram_sec -row 5 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_ram_work -row 6 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_ram_work -row 6 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_base_on_process -row 7 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_base_on_process -row 7 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_connection_on_process -row 8 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_connection_on_process -row 8 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_manager_port -row 9 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_manager_port -row 9 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_manager_each_service -row 10 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_manager_each_service -row 10 -column 1 -sticky nw -padx 5 -pady 5
+ grid $frm.lbl_central_server -row 11 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_central_server -row 11 -column 1 -sticky nw -padx 5 -pady 5
+
+ #grid $frm.btn_ok -row 2 -column 1 -sticky nw -padx 5 -pady 5
+ #grid $frm.btn_cancel -row 2 -column 1 -sticky se -padx 5 -pady 5
+ grid columnconfigure $frm 0 -weight 1
+ grid rowconfigure $frm 0 -weight 1
+ set frm_btn [frame .add.frm_btn -border 0]
+ ttk::button $frm_btn.btn_ok -image add_grey_24 -command {
+ RunCommand "" "server insert \
+ --agent-host=[.add.frm.ent_host get] \
+ --agent-port=[.add.frm.ent_port get] \
+ --port-range=[.add.frm.ent_ports_range get] \
+ --name=[.add.frm.ent_server_desc get] \
+ --using=$using_central_server \
+ --infobases-limit=[.add.frm.ent_base_on_process get] \
+ --memory-limit=[.add.frm.ent_ram_work get] \
+ --connections-limit=[.add.frm.ent_connection_on_process get] \
+ --cluster-port=[.add.frm.ent_manager_port get] \
+ --dedicate-managers=$dedicate_manager \
+ --safe-working-processes-memory-limit=[.add.frm.ent_ram_max get] \
+ --safe-call-memory-limit=[.add.frm.ent_ram_sec get] \
+ --cluster=$active_cluster $host"
+ Run::servers $tree $host $active_cluster
+ destroy .add
+ }
+ ttk::button $frm_btn.btn_cancel -command {destroy .add} -image quit_grey_24
+ grid .add.lbl -row 0 -column 0 -sticky nw -padx 5 -pady 10
+ grid $frm -row 0 -column 1 -sticky nw -padx 5 -pady 5
+ grid $frm_btn -row 1 -column 1 -sticky se -padx 5 -pady 5
+ pack $frm_btn.btn_cancel -side right
+ pack $frm_btn.btn_ok -side right -padx 10
+}
+proc Add::work_server {tree host values} {
+ Add::servers $tree $host $values
+}
+proc Add::infobase {tree host values} {
+ Add::infobases $tree $host $values
+}
+proc Add::infobases {tree host values} {
+ global default active_cluster
+ toplevel .add
+ wm title .add "Добавление информационной базы"
+ ttk::label .add.lbl -image add_database_grey_64
+ set frm [ttk::labelframe .add.frm -text "Добавление информационной базы" -labelanchor nw]
+
+ label $frm.lbl_host -text "Адрес сервера баз даннных"
+ entry $frm.ent_host
+ label $frm.lbl_db_user -text "Имя пользователя базы даннных"
+ entry $frm.ent_db_user
+ label $frm.lbl_db_pass -text "Пароль"
+ entry $frm.ent_db_pass
+ #$frm.ent_host insert end $host
+ label $frm.lbl_locale -text "Язык базы данных"
+ entry $frm.ent_locale
+ $frm.ent_locale insert end $default(locale)
+ label $frm.lbl_infobase_name -text "Имя информационной базы"
+ entry $frm.ent_infobase_name
+ label $frm.lbl_base_name -text "Имя базы данных"
+ entry $frm.ent_base_name
+ label $frm.lbl_base_type -text "Тип СУБД"
+ set combo [ttk::combobox $frm.cb_base_type -textvariable dbms -values $default(dbms)]]
+ grid $frm.lbl_host -row 0 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_host -row 0 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_db_user -row 1 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_db_user -row 1 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_db_pass -row 2 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_db_pass -row 2 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_locale -row 3 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_locale -row 3 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_infobase_name -row 4 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_infobase_name -row 4 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_base_name -row 5 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_base_name -row 5 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_base_type -row 6 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.cb_base_type -row 6 -column 1 -sticky nsew -padx 5 -pady 5
+ grid columnconfigure $frm 0 -weight 1
+ grid rowconfigure $frm 0 -weight 1
+
+ set active_cluster $values
+
+ set frm_btn [frame .add.frm_btn -border 0]
+ ttk::button $frm_btn.btn_ok -image add_grey_24 -command {
+ RunCommand "" "infobase create --create-database \
+ --name=[.add.frm.ent_infobase_name get] \
+ --dbms=$dbms \
+ --db-server=[.add.frm.ent_host get] \
+ --db-name=[.add.frm.ent_base_name get] \
+ --locale=[.add.frm.ent_locale get] \
+ --db-user=[.add.frm.ent_db_user get] \
+ --db-pwd=[.add.frm.ent_db_pass get] \
+ --cluster=$active_cluster $host"
+ destroy .add
+ }
+ ttk::button $frm_btn.btn_cancel -command {destroy .add} -image quit_grey_24
+ grid .add.lbl -row 0 -column 0 -sticky nw -padx 5 -pady 10
+ grid $frm -row 0 -column 1 -sticky nw -padx 5 -pady 5
+ grid $frm_btn -row 1 -column 1 -sticky se -padx 5 -pady 5
+ pack $frm_btn.btn_cancel -side right
+ pack $frm_btn.btn_ok -side right -padx 10
+}
+
+proc Add::cluster {tree host values} {
+ global default
+ toplevel .add
+ wm title .add "Добавление кластера"
+ ttk::label .add.lbl -image cluster_grey_64
+ set frm [ttk::labelframe .add.frm -text "Добавление кластера" -labelanchor nw]
+
+ label $frm.lbl_host -text "Адрес основного сервера"
+ entry $frm.ent_host
+ #$frm.ent_host insert end $host
+ label $frm.lbl_port -text "Порт"
+ entry $frm.ent_port
+ $frm.ent_port insert end $default(port)
+ label $frm.lbl_cluster_name -text "Название кластера"
+ entry $frm.ent_cluster_name
+
+ grid $frm.lbl_host -row 0 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_host -row 0 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_port -row 1 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_port -row 1 -column 1 -sticky nsew -padx 5 -pady 5
+ grid $frm.lbl_cluster_name -row 2 -column 0 -sticky nw -padx 5 -pady 5
+ grid $frm.ent_cluster_name -row 2 -column 1 -sticky nsew -padx 5 -pady 5
+
+ grid columnconfigure $frm 0 -weight 1
+ grid rowconfigure $frm 0 -weight 1
+ set frm_btn [frame .add.frm_btn -border 0]
+ ttk::button $frm_btn.btn_ok -image add_grey_24 -command {
+ RunCommand "" "cluster insert \
+ --host=[.add.frm.ent_host get] \
+ --port=[.add.frm.ent_port get] \
+ --name=[.add.frm.ent_cluster_name get] $host"]
+ destroy .add
+ }
+ ttk::button $frm_btn.btn_cancel -command {destroy .add} -image quit_grey_24
+ grid .add.lbl -row 0 -column 0 -sticky nw -padx 5 -pady 10
+ grid $frm -row 0 -column 1 -sticky nw -padx 5 -pady 5
+ grid $frm_btn -row 1 -column 1 -sticky se -padx 5 -pady 5
+ pack $frm_btn.btn_cancel -side right
+ pack $frm_btn.btn_ok -side right -padx 10
}
proc SaveMainServer {host port} {
global dir
@@ -501,5 +589,3 @@ proc SaveMainServer {host port} {
close $file
return "$host:$port"
}
-
-
diff --git a/rac_gui.tcl b/rac_gui.tcl
index aa875d6..f674c29 100755
--- a/rac_gui.tcl
+++ b/rac_gui.tcl
@@ -53,16 +53,6 @@ source [file join $dir(work) rac_gui.cfg]
if [file exists [file join $dir(work) 1c_srv.cfg]] {
set f [open [file join $dir(work) 1c_srv.cfg] "RDONLY"]
while {[gets $f line] >=0} {
- #puts $line
.frm_tree.tree insert {} end -id "server::$line" -text "$line" -values "$line"
}
-} else {
- #Add::main_server
}
-
-
-#.frm_tree.tree insert {} end -id "server::$host" -text "$host" -values "$host:$port"
-#.frm_tree.tree insert {} end -id "$host" -text "$host" -values "$host"
-
-#RunCommand $host "cluster list $host $port"
-