Wstęp
Funkcjonalność znajduje się w zakładce Administracja -> Konfiguracja systemu -> Przeniesienie konfiguracji i umożliwia wyeksportowanie wybranych elementów konfiguracji systemu do pliku JSON, a następnie zaimportowanie konkretnych elementów konfiguracji na innym nowym systemie.
...
Rysunek 1.1 przedstawia widok zakładki „Przeniesienie konfiguracji”.
Opis przycisków
Wczytaj z systemu – powoduje wczytanie drzewka z konfiguracją systemu, który aktualnie mamy uruchomiony. Ładowanie z systemu wykonuje się automatycznie w momencie wejścia w zakładkę „Przeniesienie konfiguracji”.
Wczytaj z pliku – pozwala na wczytanie konfiguracji systemu z wcześniej wyeksportowanego pliku w formacie JSON.
Eksportuj do pliku – pozwala wyeksportować załadowaną konfigurację systemu do pliku w formacie JSON.
Importuj do systemu – pozwala na zaimportowanie konfiguracji wczytanej z pliku, do systemu, który mamy aktualnie uruchomiony. Przycisk ten pojawia się tylko po wczytaniu konfiguracji z pliku.
Wybór obiektów do importu/eksportu
Rysunek 1.2 Przykładowy wybór obiektów do eksportu/importu
...
Dodatkowo procesy i role, których nie ma w systemie przed importem konfiguracji, zostaną w drzewku automatycznie odznaczone, a ich zaznaczenie nie będzie możliwe. Po załadowaniu procesu do systemu i ponownym wczytaniu konfiguracji z pliku procesy te zostaną odblokowane.
Import danych na czysty system
Uwagi:
1) Użytkownicy
- Użytkownik 'admin' znajduje się w każdym systemie więc w tej wersji przenoszenia konfiguracji jego zmiany należy wprowadzić ręcznie.
- Hasła użytkowników niedomenowych zostają wyczyszczone podczas wczytywania konfiguracji z systemu. Podczas importu struktury do systemu pojawi się pole, w którym należy wpisać domyślne hasło dla importowanych użytkowników. Hasła użytkowników domenowych nadal pozostaną puste.
- Ustawienia użytkowników - są to ustawienia z tabeli pm_userdata, czyli ustawienia wyglądu w profilu użytkownika.
- Widoki dokumentów - są to widoki dokumentów, które stworzył użytkownik, a w polu proces mają ustawioną wartość "Każdy". Widoki przypisane do konkretnych procesów będą znajdowały się w danych tego procesu.
- Uprawnienia - są to uprawnienia systemowe użytkownika z zakładki Administracja -> Uprawnienia.
...
- Prywatne widoki użytkownika, którego nie importujemy zostaną pominięte. Jego publiczne widoki zostaną przypisane do admina. Nazwa widoku będzie miałą miała dopisanego poprzedniego właściciela po myślniku (nazwa_widoku-poprzedni_username)
- W wyróżnieniach widoku, jeżeli ścieżka do obrazu jest bezwzględna, to zostanie zmieniona na '{plusworkflow.home}/distinguish/plik' dzięki czemu katalog z obrazami wyróżnień zostanie utworzony w katalogu domowym PlusWorkflow/distinguish.
Zmiana ta i możliwość edycji ścieżki pojawi się w drzewku tylko przy tych widokach, które posiadają ścieżkę do obrazu i ta ścieżka jest bezwzględna.
Import danych na istniejącym systemie
Główne elementy konfiguracji można doimportować do działającego już systemu. Jeżeli główny element znajduje się już w systemie to jego dane nie zostaną nadpisane. Lista elementów, które możemy doimportować i uwagi do nich:
...
- Widoki można doimportować do istniejącego już użytkownika w bazie bez konieczności zaznaczania go w drzewku. Uprawnienia do widoku również zostaną doimportowane do istniejących użytkowników/grup w bazie bez konieczności zaznaczania ich.
- Prywatne – jeżeli widok użytkownika istnieje już w systemie, to zostanie pominięty
- Publiczne - jeżeli widok użytkownika istnieje już w systemie, to zostanie pominięty. Publiczne widoki użytkownika, którego nie importujemy i użytkownik nie istniał prędzej w bazie zostaną przypisane do admina. Nazwa widoku będzie miałą dopisanego poprzedniego właściciela po myślniku (nazwa_widoku-poprzedni_username)
- W wyróżnieniach widoku, jeżeli ścieżka do obrazu jest bezwzględna, to zostanie zmieniona na '{plusworkflow.home}/distinguish/plik' dzięki czemu katalog z obrazami wyróżnień zostanie utworzony w katalogu domowym PlusWorkflow/distinguish. Zmiana ta i możliwość edycji ścieżki pojawi się w drzewku tylko przy tych widokach, które posiadają ścieżkę do obrazu i ta ścieżka jest bezwzględna.
Przeniesie konfiguracji wtyczek
Od wersji systemu ___ 4.0.12 dodano przenoszenie konfiguracji wtyczek. Wtyczki przystosowane do przenoszenia konfiguracji:
Nazwa wtyczki | Dostępna od wersji | Uwagi | ||
---|---|---|---|---|
Dashboard | 4.0.5 |
|
| |
Favourites | 4.0.5 |
| ||
Gadżety PlusWorkflow | 4.0.2 |
| ||
Database Explorer | 4.0.2 |
Błąd podczas importu
Jeżeli import z jakiegoś powodu nie powiedzie się, to dane z bazy zostaną automatycznie wycofane.
Warning | ||
---|---|---|
| ||
Wyjątkiem jest baza Oracle. Tutaj nie wszystkie dane zostaną wycofane w przypadku niepowodzenia (spróbujemy to naprawić w kolejnej wersji). Niżej umieszczone zostaną zapytania do wyczyszczenia bazy. |
Usunięcie zaimportowanych danych
W celu ręcznego usunięcia wszystkich zaimportowanych danych do nowego systemu można wykonać zapytania:
Warning | ||
---|---|---|
| ||
Jeżeli w systemie przed importem były już dane, to zostaną usunięte. Skrypty zawierają również czyszczenie konfiguracji wtyczek. |
PostgreSql
Code Block | ||
---|---|---|
| ||
DELETE FROM usergrouptable ut WHERE ut.userid <> (SELECT objectid FROM usertable WHERE userid = 'admin') or ut.groupID <> (SELECT objectid FROM grouptable WHERE groupid = 'Administrators'); DELETE FROM grouptable gr WHERE gr.groupid <> 'Administrators'; DELETE FROM pm_activityredirection_users; DELETE FROM pm_activityredirection_groups; DELETE FROM pm_activityredirection; DELETE FROM pm_userdata; DELETE FROM pm_substitutions; DELETE FROM pm_domainservers; DELETE FROM pm_position_role; UPDATE pm_positions SET organizationalunitid = NULL; UPDATE pm_organizationalunits SET directorpositionid = NULL; DELETE FROM pm_organizationalunits; DELETE FROM pm_positions; DELETE FROM userTable us WHERE us.objectid <> (SELECT objectid FROM usertable WHERE userid = 'admin'); DELETE FROM pm_actions; DELETE FROM pm_linkconnection; DELETE FROM pm_indexpattern; DELETE FROM pm_indecies; DELETE FROM pm_processdef_docclass; DELETE FROM pm_docclasses; DELETE FROM pm_docclassconditionprotection; DELETE FROM pm_docclassprotection; DELETE FROM pm_linkindecies; DELETE FROM pm_links; DELETE FROM pm_directories; DELETE FROM pm_devices; DELETE FROM pm_substitutions; DELETE FROM pm_document_views; DELETE FROM pm_processData; DELETE FROM pm_documenttemplate; DELETE FROM pm_notificationdef; DELETE FROM pm_notificationprocact; DELETE FROM pm_notificationrecipient; DELETE FROM pm_change_user_repl; DELETE FROM pm_advancesearchvariables; DELETE FROM pm_usersearchviewsprotection; DELETE FROM pm_usersearchviews; DELETE FROM pm_userdata WHERE userid <> (SELECT objectid FROM usertable WHERE userid = 'admin'); DELETE FROM pm_rights r WHERE r.resource_id <> 'admin'; DELETE FROM pm_variable_distinguish; //Wtyczki DELETE FROM pm_dashboard; DELETE FROM pm_favourites_set; |
...
Code Block | ||
---|---|---|
| ||
DELETE FROM usergrouptable WHERE userid <> (SELECT oid FROM usertable WHERE userid = 'admin') or groupID <> (SELECT oid FROM grouptable WHERE groupid = 'Administrators'); DELETE FROM grouptable WHERE groupid <> 'Administrators'; DELETE FROM pm_activityredirection_users; DELETE FROM pm_activityredirection_groups; DELETE FROM pm_activityredirection; DELETE FROM pm_userdata; DELETE FROM pm_substitutions; DELETE FROM pm_domainservers; DELETE FROM pm_position_role; UPDATE pm_positions SET organizationalunitid = NULL; UPDATE pm_organizationalunits SET directorpositionid = NULL; DELETE FROM pm_organizationalunits; DELETE FROM pm_positions; DELETE FROM userTable WHERE oid <> (SELECT oid FROM usertable WHERE userid = 'admin'); DELETE FROM pm_actions; delete from pm_file_versions; delete from pm_files; DELETE FROM pm_linkconnection; DELETE FROM pm_indexpattern; DELETE FROM pm_indecies; DELETE FROM pm_processdef_docclass; DELETE FROM pm_docclassconditionprotection; DELETE FROM pm_docclasses; DELETE FROM pm_linkindecies; DELETE FROM pm_links; DELETE FROM pm_directories; DELETE FROM pm_devices; DELETE FROM pm_substitutions; DELETE FROM pm_document_views; DELETE FROM pm_processData; DELETE FROM pm_documenttemplate; DELETE FROM pm_notificationdef; DELETE FROM pm_notificationprocact; DELETE FROM pm_notificationrecipient; DELETE FROM pm_change_user_repl; DELETE FROM pm_advancesearchvariables; DELETE FROM pm_usersearchviewsprotection; DELETE FROM pm_usersearchviews; DELETE FROM pm_userdata WHERE userid <> (SELECT oid FROM usertable WHERE userid = 'admin'); DELETE FROM pm_rights WHERE resource_id <> 'admin' //Wtyczki DELETE FROM pm_dashboard; DELETE FROM pm_favourites_set; |
Wtyczki
Narzędzie (od wersji systemu 3.3.x) obsługuje przenoszenie konfiguracji dla wtyczek:
Wtyczka | Dostępne od wersji | Uwagi |
---|---|---|
Dasboard | X |
|
Favourites | X |