Moduł Repozytorium jest dostępny zarówno dla Comarch DMS Standalone, jak i dla wszystkich form współpracy: z Comarch ERP XL, Comarch ERP Optima, Comarch ERP Altum i Comarch ERP CEE.
-
-
- Microsoft Edge
- Google Chrome
- Mozilla Firefox
- Opera
-
System Comarch DMS składa się z modułów:
-
-
- Comarch DMS Workflow (Obieg Dokumentów)
- Comarch DMS Repozytorium
-
Aby umożliwić działanie modułu Workflow i modułu Repozytorium, niezbędne jest zainstalowanie trzech odrębnych aplikacji na serwerze IIS, z których jedna służy potrzebom modułu Comarch DMS Workflow (Obieg Dokumentów), a dwie tworzą moduł Comarch DMS Repozytorium.
Instalacja serwera MongoDB w systemie Windows
W celu pobrania instalatora serwera MongoDB należy wejść na stronę https://www.mongodb.com/, następnie wybrać zakładkę „Products”, później „Community Edition”, następnie „MongoDB Community Server” i w panelu „Available Downloads” nacisnąć zielony przycisk „Download” (bezpośredni link do „MongoDB Community Server”: MongoDB Community Download | MongoDB).
Proces instalacji przedstawiony poniżej to skrócona wersja instalacji – przy założeniu, że na tej samej maszynie, gdzie Mongo DB jest uruchamiany, zainstalowana jest też baza. Z pełnym procesem instalacji środowiska MongoDB można zapoznać się w instrukcji producenta pod adresem Install MongoDB Community Edition on Windows — MongoDB Manual.
Po pobraniu pliku instalacyjnego należy go otworzyć. Wówczas na ekranie pojawia się okno instalatora Mongo DB, gdzie powinno się kliknąć „Next”.

Następnie należy wyrazić zgodę na umowę licencyjną, zaznaczając checkbox i kliknąć „Next”.

Kolejnym krokiem jest wybór typu instalacji – należy wybrać opcję „Complete”.

Następnie należy w oknie konfiguracji usługi wybrać checkbox „Run service as Network Service user”.

W kolejnym oknie instalacyjnym zaznacza się parametr „Install Mongo DB Compass”. Mongo DB Compass to aplikacja, która służy do przeglądania bazy danych, analogicznie do SSMS dla SQL Server. Po wyborze przycisku „Next” następuje przejście do kolejnego okna.

Następnie należy kliknąć „Install”.

Na zakończenie instalacji należy kliknąć przycisk „Finish”.

Po ukończeniu instalacji konieczne jest upewnienie się, czy usługa MongoDB jest uruchomiona. Można to sprawdzić wchodząc do Menedżera zadań systemu Windows, wybierając zakładkę Usługi i znajdując pozycję Mongo DB, dla której w polu „Stan” powinno wyświetlać się „Uruchomiony”.

Dodawanie administratora MongoDB i bazy danych dla Comarch DMS Repozytorium za pomocą MongoDB Compass
Po instalacji na MongoDB należy uruchomić MongoDB Compass. Jeśli Mongo DB zostało zainstalowane lokalnie, wówczas nie ma konieczności uzupełniania connection stringa – wystarczy nacisnąć „Connect”, aby zalogować się do serwera.

Kiedy zalogowano się do serwera Mongo DB, wówczas należy utworzyć użytkownika o uprawnieniach administratora na serwerze – w poniższym przykładzie taki użytkownik to admin, zaś jego hasło to Passwd1234. Posiada najwyższy poziom uprawnień na serwerze. Aby utworzyć użytkownika należy:
- wpisać instrukcję use admin na konsoli _MONGOSH BETA, zatwierdzić przyciskiem Enter
- wprowadzić na konsoli _MONGOSH BETA następujące polecenie:
db.createUser( { user:"admin", pwd:"Passwd1234", roles:[{role:"root",db:"admin"}] } )
- zatwierdzić klawiszem Enter

Następnie należy utworzyć bazę danych dla Comarch DMS Repozytorium i dodać użytkownika, dla którego będzie następowało łączenie się aplikacji Comarch DMS Repozytorium z bazą danych. W tym celu konieczne jest, aby:
- wpisać instrukcję use Repository na konsoli _MONGOSH BETA, zatwierdzić przyciskiem Enter
- wprowadzić na konsoli _MONGOSH BETA następujące polecenie, aby dodać użytkownika:
db.createUser( { user:"MongoUser", pwd:"Passwd1234", roles:[{role:"readWrite",db:"Repository"}] } )


Po wykonaniu powyższych czynności Mongo DB Compass może zostać zamknięty.
Wprowadzanie zmian w pliku mongod.cfg
Następnie należy dokonać edycji pliku konfiguracyjnego mongod.cfg. Plik znajduje się w lokalizacji:
<install directory>\bin\mongod.cfg
domyślnie lokalizacja to: C:\Program Files\MongoDB\Server\<wersja>\bin\mongod.cfg

Zmiany, których należy dokonać w pliku mongod.cfg:
- w sekcji #network interfaces:
port: 27017 – port domyślny
bindIp: 127.0.0.1 – domyślnie jest w tym miejscu ustawiony localhost – tu powinien być umieszczony adres IP klienta, który komunikuje się z serwerem bazodanowym (dla Comarch DMS Repozytorium: z serwerem IIS). Jeżeli zamiast bindIp zostanie wpisane bindIpAll: true, wówczas można będzie połączyć się z serwerem z każdego komputera.
- w sekcji #security:
Dzięki tej zmianie możliwe będzie logowanie do bazy MongoDB przy użyciu loginu i hasła.

Następnie należy zapisać plik i uruchomić ponownie serwer MongoDB w Menedżerze zadań Windows, klikając na niego prawym przyciskiem myszy i naciskając „Uruchom ponownie”.

mongodb://<mongodb user>:<mongodb password>@<server ip>:<server port>/<database name>?authSource=<database name>
Przykładowo dla administratora:
mongodb://admin:Passwd1234@localhost/?authSource=admin
Przykładowo dla użytkownika MongoUser:
mongodb://MongoUser:Passwd1234@localhost/Repository?authSource=Repository
Instalacja serwera MongoDB w systemie Linux, dystrybucja Ubuntu
Instalacja serwera MongoDB na Ubunt powinna zostać przeprowadzona według instrukcji producenta, do której można przejść za pomocą następującego linku: Install MongoDB Community Edition on Ubuntu — MongoDB Manual.
Wprowadzanie zmian w pliku mongod.conf
Kiedy zainstalowano serwer, kolejnym krokiem jest wprowadzenie zmian w pliku konfiguracyjnym mongod.conf, dostępnym w lokalizacji: /etc/mongod.conf. Polecenie, które uruchamia plik mongod.conf do edycji, to:
sudo gedit/etc/mongod.conf
Zmiany, których należy dokonać w pliku mongod.conf:
- w sekcji #network interfaces:
port: 27017 - port domyślny
bindIp: 127.0.0.1 - domyślnie jest w tym miejscu ustawiony localhost - tu powinien być umieszczony adres IP klienta, który komunikuje się z serwerem bazodanowym (dla Comarch DMS Repozytorium: z serwerem IIS). Jeżeli zamiast bindIp zostanie wpisane bindIpAll: true, wówczas można będzie połączyć się z serwerem z każdego komputera.
- w sekcji #security:
Dzięki tej zmianie możliwe będzie logowanie do bazy MongoDB przy użyciu loginu i hasła.
Po zapisaniu wprowadzonych zmian należy ponownie uruchomić serwer MongoDB, przykładowo używając poniższej komendy:
sudo systemctl restart mongod
Dodawanie administratora MongoDB i bazy danych dla Comarch DMS Repozytorium z poziomu terminala w Ubuntu
Następnie należy zalogować się do MongoDB z poziomu terminala w Ubuntu, a później utworzyć bazę danych i dodać operatora, dla którego nastąpi łączenie się Comarch DMS Repozytorium z bazą danych.
Aby utworzyć bazę, powinna zostać wpisana komenda: use Repository.
W dalszej kolejności należy utworzyć użytkownika, zaczynając od wpisania komendy use admin. Później konieczne jest wprowadzenie polecenia, które utworzy użytkownika o uprawnieniach administratora na serwerze - w poniższym przykładzie taki użytkownik to admin, zaś jego hasło to Passwd1234. Posiada najwyższy poziom uprawnień na serwerze:
db.createUser(
{
user:"admin",
pwd:"Passwd1234",
roles:[{role:"root",db:"admin"}]
}
)
Następnie należy dodać użytkownika, dla którego będzie następowało łączenie się aplikacji Comarch DMS Repozytorium z bazą danych. W tym celu konieczne jest wprowadzenie następującego polecenia:
db.createUser(
{
user:"MongoUser",
pwd:"Passwd1234",
roles:[{role:"readWrite",db:"Repository"}]
}
)
Tworzenie i odtwarzanie backupów bazy danych MongoDB
Backupy baz danych Mongo DB mogą być tworzone i odtwarzane za pomocą narzędzi mongodump oraz mongorestore, które należą do MongoDB Database Tools. Można je pobrać ze strony producenta:
Download MongoDB Command Line Database Tools | MongoDB
Z dokumentacją dotyczącą narzędzi do tworzenia i odtwarzania baz MongoDB można się zapoznać na stronie producenta: The MongoDB Database Tools Documentation — MongoDB Database Tools.
Konfiguracja aplikacji na serwerze IIS
Instalacja komponentów
Zanim rozpocznie się konfigurację aplikacji Comarch DMS na serwerze IIS, konieczne jest zainstalowanie dwóch komponentów, niezbędnych do poprawnego działania aplikacji:
- URL Rewrite - do pobrania poprzez link: URL Rewrite : The Official Microsoft IIS Site
- ASP.NET Core 3.1 Runtime - Windows Hosting Bundle Installer - do pobrania poprzez link: Download ASP.NET Core 3.1 Runtime (v3.1.14) - Windows Hosting Bundle Installer (microsoft.com)

Przenoszenie katalogów DocumentManager.WebApi i DocumentManager.WebClient
Jeżeli na serwerze nie jest zainstalowany Comarch DMS, konieczna jest instalacja aplikacji Comarch DMS web i desktop według instrukcji znajdującej się na stronie https://pomoc.comarch.pl/dms/pl/20212/ po wejściu do kategorii wybranej współpracy, w rozdziale Instalacja i konfiguracja.
Następnie należy z pakietu instalacyjnego z lokalizacji Comarch DMS {wersja} \ Comarch DMS {wersja}\ DMS Repository\ pobrać do folderu C:\inetpub\wwwroot\ dwa katalogi:
- DocumentManager.WebApi
- DocumentManager.WebClient


Dodawanie nowej puli aplikacji dla Comarch DMS Repozytorium
Comarch DMS Repozytorium jest modułem Comarch DMS, jednak musi zostać zainstalowany jako osobna aplikacja na serwerze IIS i wymaga osobnej puli aplikacji.

Dla puli aplikacji dedykowanej modułowi Comarch DMS Repozytorium konieczne jest określenie wersji środowiska .NET CLR jako 'Bez kodu zarządzanego'.


Dla puli aplikacji dedykowanej modułowi Comarch DMS Workflow (Obieg Dokumentów) konieczne jest określenie wersji środowiska .NET CLR jako .NET CLR v4.0. Następnie należy nacisnąć opcję "Ustawienia zaawansowane", dostępną do wyboru po kliknięciu na "Pule aplikacji", a następnie naciśnięciu nazwy odpowiedniej puli prawym przyciskiem myszy. Można też, alternatywnie, kliknąć nazwę puli i wybrać opcję z paska "Akcje" po prawej stronie ekranu. W ramach "Ustawień zaawansowanych" konieczne jest ustawienie parametru 'Włącz aplikacje 32-bitowe' na False.


Konwertowanie katalogów DocumentManager.WebApi i DocumentManager.WebClient na aplikacje
W kolejnym kroku należy w ramach Menedżera IIS nacisnąć prawym przyciskiem myszy folder DocumentManager.WebApi i wybrać opcję "Konwertuj na aplikację".

Następnie otworzy się okno "Dodawanie aplikacji", w którym należy nacisnąć opcję "Wybierz", wybrać pulę aplikacji dedykowaną Comarch DMS Repozytorium - w poniższym przykładzie jest to pula "DMS_repository" - i nacisnąć "Ok". Analogicznie należy postąpić z folderem DocumentManager.WebClient.

Konfiguracja pliku web.config aplikacji Comarch DMS
W ramach Comarch DMS można korzystać z Managera dokumentów lub z modułu Repozytorium, nie jest jednak możliwe jednoczesne korzystanie z obydwóch opcji. Domyślnie włączony jest Manager dokumentów, dlatego aby włączyć obsługę modułu Comarch DMS Repozytorium, w kluczu web.config, dostępnym domyślnie w lokalizacji C:\inetpub\wwwroot\DMS, należy uzupełnić 3 następujące klucze:
- <add key=”UseRepository” value=”true” /> – umożliwiający włączenie Repozytorium poprzez wpisanie wartości „true” (jeżeli pozostanie „false”, włączony będzie Manager dokumentów)
- <add key=”RepositoryUrl” value=”http://<ip serwera>/DocumentManager.WebApi” /> – w tym kluczu konieczne jest wprowadzenie adresu URL aplikacji DocumentManager.WebApi, przykładowo:
http://localhost/DocumentManager.WebApi
- <add key=”RepositoryClientUrl” value=”http://<ip serwera>/DocumentManager.WebClient” /> – w tym kluczu konieczne jest wprowadzenie adresu URL aplikacji DocumentManager.WebClient, przykładowo:
. http://localhost/DocumentManager.WebClient
Wprowadzone zmiany należy zapisać.

Wprowadzanie zmian w appsettings.json, pliku konfiguracyjnym serwera
Następnie konieczne jest wejście do katalogu DocumentManager.WebApi, dostępnym domyślnie w lokalizacji C:\inetpub\wwwroot\DMS , a następnie edycja znajdującego się tam pliku konfiguracyjnego appsettings.json , w którym należy uzupełnić poniższe informacje:
- „IdentityMongoDatabaseSettings” – connection string do bazy Comarch DMS Repozytorium, która zawiera konta użytkowników.
„mongodb://<mongodb user>:<mongodb password>@<server ip>:<server port>/<database name>?authSource=<database name>”
gdzie:
<mongodb user>:<mongodb password> – nazwa i hasło użytkownika MongoDB, który został dodany do bazy Comarch DMS Repozytorium
@<server ip>:<server port> – ip i port serwera, na którym znajduje się baza Mongo DB
/<database name> – nazwa utworzonej bazy repozytorium
?authSource=<database name> – ponownie nazwa utworzonej bazy repozytorium
Przykład:
„mongodb://MongoUser:Passwd1234@localhost:27017/Repository?authSource=Repository”
- „ApplicationMongoDatabaseSettings” – connection string do bazy Comarch DMS Repozytorium, która zawiera dane aplikacji. Przykładowo:
„mongodb://MongoUser:Passwd1234@localhost:27017/Repository?authSource=Repository”
- „DocumentWorkflowSettings” – adres serwera DMS. Przykładowo:
„http://localhost/Standalone”

- ”StorageSettings” – ustawienia bazy, która przechowuje pliki
„Type” – właściwość, która określa domyślne miejsce przechowywania plików dodawanych do Comarch DMS Repozytorium. Może przyjmować wartości:
„IBard” – wtedy pliki dodawane do Repozytorium będą przechowywane w usłudze Comarch IBARD
„Mongo” – wtedy pliki dodawane do Repozytorium będą przechowywane w bazie MongoDB


- ”IBARDStorageSettings” – parametr uzupełniany, jeśli wybrano bazę IBARD, baza danych, która przechowuje dane wymagane dla IBARD
„ConnectionString” – connection string do bazy z konfiguracją współpracy z IBARD – znajduje się tu ta sama informacja, która w wersji poprzedniej była w IBARDMongoDatabase Settings


Przykład uzupełnienia pliku appsettings.json, jeśli wszystkie pliki mają być przechowywane w usłudze Comarch IBARD:
- ”MongoStorageSettings” – parametr uzupełniany, jeśli wybrano bazę MongoDB, baza danych, która przechowuje pliki binarne. W tym parametrze należy uzupełnić „ConnectionString” do bazy, która będzie służyć do przechowywania plików dodawanych do Comarch DMS Repozytorium. Drugi klucz, ”ChunkSizeBytes”, dotyczy tylko plików przechowywanych w bazie MongoDB, definiuje maksymalny rozmiar pojedynczej części pliku (w bajtach), który jest dodawany do bazy.
Przykład uzupełnienia pliku appsettings.json, jeśli wszystkie pliki mają być przechowywane w bazie MongoDB:
Możliwa jest również sytuacja, w której podczas pracy z Comarch DMS Repozytorium zostało zmienione miejsce przechowywania plików z usługi IBARD na bazę MongoDB – wtedy możliwe jest korzystanie z plików przechowywanych zarówno w IBARD, jak i w MongoDB. Warunkiem jest uzupełnienie „Connection String” w kluczu „IBARDStorageSettings” (tak, żeby następowało połączenie z bazą, która przechowuje konfigurację współpracy z IBARD) oraz „Connection String” w kluczu „MongoStorageSettings” (tak, żeby następowało połączenie z bazą, która przechowuje pliki). Przy takim uzupełnieniu connection stringów domyślnie pliki, które zostaną dodane do Comarch DMS Repozytorium, będą zapisane zgodnie z lokalizacją, którą określono w parametrze Type w sekcji Storage Settings.
Przykład uzupełnienia pliku appsettings.json, jeśli pliki mają być zapisywane w bazie MongoDB, ale możliwa również będzie praca z plikami, które są przechowywane w usłudze IBARD:
- „AllowedOrigins” – adres witryny Comarch DMS Repozytorium, przykładowo http://<IP serwera>

Powyższe ustawienia są niezbędne do właściwej konfiguracji pliku. Poniższe ustawienia natomiast można zmienić opcjonalnie:
- „JWTSettings” – ustawienia JSON Web Tokens, autoryzacja użytkowników wewnątrz Comarch DMS Repozytorium. Zawiera następujące parametry:
„Key” – klucz szyfrujący,
„Issuer”:”CorelIdentity”,
„Audience”: „CorelIdentityUser”,
„DurationInMinutes”: 60 – czas, po jakim token autoryzujący wygaśnie; podany w minutach
- „Serilog” – framework logujący działanie aplikacji. Zawiera następujące parametry:
„MinimumLevel” – określa poziom szczegółowości loga
„Default”: „Information” – definiuje domyślny poziom
„Override” – określa szczegółowe ustawienia logów dla paczek Microsoft oraz System, zapisywanie informacji na poziomie warning i wyżej, czyli error, fatal error.
- „Enrich”: [ „FromLogContext”, „WithMachineName”, „WithProcessId”, „WithThreadId” ] – określa schemat wpisów do dziennika logów. Zawiera następujące parametry:
„WriteTo” – definicja logów „Name”: „Console” – logi do konsoli „Name”: „File” – logi do pliku w formacie txt
„path”: „C:\\temp\\repository.txt” – lokalizacja w której będzie zapisywany log
„outputTemplate”: „{Timestamp:G} {Message}{NewLine:1}{Exception:1}” – format logów „Name”: „File” – logi do pliku w formacie json
„path”: „C:\\temp\\repository.json” – lokalizacja w której będzie zapisywany log
„formatter”: „Serilog.Formatting.Json.JsonFormatter, Serilog”
Włączenie protokołu WebSocket
Od wersji 2022.0.1 konieczne jest włączenie protokołu WebSocket. W tym celu należy wykonać następujące kroki:
- w ramach pola wyszukiwania przy przycisku „Start” wpisać frazę „Włącz lub wyłącz funkcje systemu Windows” i kliknąć „Otwórz”

Następnie w oknie, które zostało otwarte, należy rozwinąć zawartość folderu folder „Internetowe usługi informacyjne”, później „Usługi WWW”, potem „Funkcje tworzenia aplikacji”, zaznaczyć checkbox przy folderze „Protokół WebSocket” i kliknąć przycisk .

Zostanie wówczas otwarte okno Funkcje systemu Windows, w ramach którego system dokona zapisu wprowadzonych zmian.

Gdy zmiany zostaną zapisane, informacja o tym zostanie wyświetlona w ramach okna. Należy wówczas zamknąć okno, klikając na przycisk .

Następnie należy otworzyć Menadżer Internetowych Usług Internetowych (IIS) i w środkowej części okna, w sekcji Zarządzanie kliknąć na ikonę Edytor konfiguracji, a następnie wybrać opcję Otwórz funkcję, znajdującą się po prawej stronie, w górnej części panelu Akcje.

Po wyborze opcji Otwórz funkcję w środkowej części Menedżera zostanie wyświetlony Edytor konfiguracji. W polu Sekcja należy wyszukać na rozwijalnej liście sekcję system.webServer/webSocket, a następnie wybrać dla pola enabled wartość True. Następnie aby zapisać zmiany, wybierz opcję Zastosuj dostępną w ramach panelu Akcje po prawej stronie Menedżera.


Później należy ponownie uruchomić IIS, wybierając opcję Uruchom ponownie na panelu Akcje w ramach Menedżera IIS.