Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Repozytoria załączników

Podsumowanie:

W nAxiom dostępne są funkcjonalności umożliwiające zarządzanie plikami statycznymi i ich przetwarzanie. Takie pliki to między innymi załączniki, odebrane wiadomości e-mail, rozpoznane pliki OCR i dodatkowe biblioteki. Do przechowywania plików służą w nAxiom repozytoria. Repozytoria mogą być dyskowe (foldery) lub bazodanowe (tabele w bazie danych).

AdminSPA > DANE > Repozytoria załączników

W tym temacie

Instalacja

Rodzaj repozytoriów (dyskowe/bazodanowe) dla pierwszego tenanta wybiera się podczas instalacji witryny nAxiom w kroku Pierwszy tenant - zasoby systemu. W przypadku aktualizacji witryny ten krok jest niedostępny.

W instalatorze dostępne są cztery typy zasobów, dla których można zdecydować, czy ich repozytorium ma się znajdować w folderze instalacyjnym, czy w bazie danych. Tym typom zasobów odpowiadają tworzone domyślnie repozytoria. W przypadku rozpoznanych plików OCR repozytorium bazodanowe jest nieobsługiwane, ale można wskazać inny folder repozytorium. To repozytorium jest używane wyłącznie na potrzeby przetwarzania OCR, a jego konfiguracja nie jest dostępna w aplikacji AdminSPA. Można ją zmienić w pliku appsettings.json serwisu ocrapi.

Pozostałe rodzaje zasobów i odpowiadające im repozytoria to:

  • Załączniki dokumentów: dla załączników tworzone jest Domyślne repozytorium, które standardowo znajduje się w folderze folder-instalacyjny-naxiom/SystemRepositories/tenant-GUID/default; to repozytorium jest standardowo wybrane w domyślnej kategorii załączników.
  • Wiadomości email: dla załączników z wiadomości e-mail tworzone jest Domyślne repozytorium e-mail, które standardowo znajduje się w folderze folder-instalacyjny-naxiom/SystemRepositories/tenant-GUID/email; w tym repozytorium domyślnie są zapisywane również załączniki dodawane do szablonów wiadomości e-mail.
  • Dodatkowe biblioteki: dla tej kategorii tworzone jest Domyślne repozytorium systemowe, które standardowo znajduje się w folderze folder-instalacyjny-naxiom/SystemRepositories/tenant-GUID/system; w tym repozytorium domyślnie zapisywane są własne pliki logo wybierane w kreatorze stylów.

Foldery repozytoriów są faktycznie tworzone na dysku dopiero w momencie zapisu pliku w repozytorium. W przypadku repozytoriów bazodanowych można określić bazę danych (może to być inna baza niż podstawowa baza nAxiom) i tabelę w bazie, w której będą przechowywane pliki statyczne. Na podstawie podanych parametrów połączenia z bazą danych instalator utworzy źródło danych. Jeśli taka tabela nie istnieje, zostanie utworzona.

W aplikacji AdminSPA jest dostępne jeszcze jedno repozytorium systemowe Default attachment repository in the tenant database. Jest to repozytorium bazodanowe, które znajduje się w tabeli NaxiomDefaultRepoForAttachmentFiles w bazie danych tenanta. Schemat tabeli odpowiada schematowi tabel użytkownika wybranemu podczas instalacji (domyślnie dbo), ale można to zmienić w aplikacji TenantsAdminSPA. Zmiana nazwy lub schematu tabeli spowoduje utworzenie nowej, pustej tabeli (wymagane kliknięcie przycisku Sprawdź dostęp). Wcześniej używana tabela nie zostanie usunięta.

Konfiguracja dla tenantów

W trybie obsługi wielu tenantów domyślna lokalizacja repozytoriów dyskowych każdego tenanta to folder o nazwie będącej identyfikatorem GUID tego tenenta. W ogólności ścieżka do folderu repozytoriów tenanta ma postać: folder-instalacyjny-naxiom/SystemRepositories/GUID-tenenta.

Administrator tenantów może wskazać lokalizację inną niż folder-instalacyjny-naxiom/SystemRepositories poprzez ustawienie Directory location for relative paths of file repositories (TenantAdminSPA > Global settings).

Ponadto dla każdego tenanta można indywidualnie określić nazwę jego podkatalogu, podając inną niż domyślna (GUID) wartość klucza SubDirName w sekcji FileStorageConfiguration w ustawieniach konfiguracyjnych tenanta (TenantAdminSPA > Edit tenant > Configuration > Settings).

Administrator tenantów może także zezwolić poszczególnym tenantom na swobodne określanie lokalizacji repozytoriów za pomocą drugiego parametru w sekcji FileStorageConfiguration, AllowUseRepoFullDir. Określa on, czy konsultanci danego tenanta mogą definiować repozytoria, używając ścieżek względnych, czy bezwzględnych.

Dla pierwszego tenanta wartość tego klucza to true ze względu na konieczność zapewnienia zgodności z konfiguracjami sprzed wprowadzenia obsługi wielu tenantów. Dla kolejnych tenantów parametr ten ma domyślnie wartość false, co oznacza, że podawane przez nich nazwy repozytoriów będą traktowane jako ścieżki względne w lokalizacji określonej ustawieniem Directory location for relative paths of file repositories.

Aby zmienić domyślny schemat tabeli z systemowym repozytorium bazodanowym, należy wpisać ją w konfiguracji tenanta jako wartość parametru DefaultRepoForAttachmentFilesSchema. Jeśli ten parametr nie jest widoczny, należy zapisać bieżącą konfigurację i ponownie uruchomić witrynę.

Zarządzenie repozytoriami

Po wybraniu pozycji menu Repozytoria załączników (AdminSPA > DANE) wyświetlana jest lista repozytoriów zdefiniowanych w witrynie. Standardowo dostępne są repozytoria wymienione na początku. Konsultant może tworzyć nowe repozytoria oraz edytować i usuwać repozytoria istniejące.

Lista repozytoriów systemowych
Lista repozytoriów systemowych

Usunięcie repozytorium powoduje usunięcie definicji repozytorium z tabeli core.AttachmentRepositories. Samo repozytorium (folder lub tabela w bazie danych) i jego zawartość pozostają nienaruszone.

W przypadku tworzenia nowego lub edycji istniejącego repozytorium należy określić następujące właściwości:

Tworzenie repozytorium załączników
Tworzenie repozytorium załączników
  • Kod: dowolny ciąg znaków.
  • Nazwa: nazwa repozytorium; jest wyświetlana na listach wyboru w miejscach, w których nalezy wybrać repozytorium, na przykład w definicji kategorii załączników.
  • Typ repozytorium: dostępne wartości:
    • Folder lokalny: należy wskazać folder — nazwę lub ścieżkę, odpowiednio do konfiguracji w TenantsAdminSPA — w którym będą przechowywane pliki statyczne.
    • Baza danych MS SQL Server: w tym przypadku należy podać dwa dodatkowe parametry:
      • Źródło danych: zdefiniowane osobno źródło danych odwołujące się do bazy MS SQL Server; może to być baza używana przez bieżącą witrynę.
      • Zapisuj do tabeli: nazwa tabeli, w której będą zapisywane pliki statyczne; z reguły będzie to nazwa nowej tabeli, która zostanie utworzono po kliknięciu przycisku Sprawdź połączenie. Tabela repozytorium ma dwie kolumny Id (uniqueidentifier) i Content (varbinary(MAX)).

    Typ Baza danych tenanta jest zastrzeżony tylko dla repozytorium systemowego i nie jest dostępny dla innych repozytoriów.

    Jeśli nie zostanie podany schemat tabeli, tabela zostanie utworzona w schemacie domyślnym dbo. Aby utworzyć tabelę w schemacie core, należy poprzedzić nazwę schematem, na przykład core.MojeRepozytorium.

  • Aktywne: określa, czy repozytorium jest aktywne; dezaktywowanie repozytorium, które jest używane w danej witrynie, uniemożliwi zapis i odczyt plików w tym repozytorium.

Wykorzystanie repozytoriów w nAxiom

Repozytoria plików statycznych mają w nAxiom następujące przeznaczenie:

  • przechowywanie załączników dodawanych do dokumentów, w tym generowanych przez różne akcje,
  • przechowywanie załączników przesyłanych w przychodzących wiadomościach e-mail,
  • przechowywanie załączników dodawanych w definicji szablonu e-mail,
  • przechowywanie indywidualnych plików logo konfigurowanych w kreatorze stylów.

W przypadku załączników do dokumentów repozytorium nie określa się indywidualnie dla załącznika tylko poprzez kategorię załączników. W momencie generowania elementów aplikacji system powołuje kategorię domyślną, która jest powiązana z repozytorium domyślnym. Jest to repozytorium o nazwie Domyślne repozytorium, standardowo lokalizowane w folderze default z flagą IsDefault o wartosci 1. Konsultant może zmienić repozytorium dla kategorii domyślnej w istniejących definicjach dokumentów, ale dla nowej definicji w procesie generowania elementów aplikacji zawsze kategoria domyślna będzie powiązana z repozytorium domyślnym.

Ponadto w ustawieniach systemu wskazuje się trzy repozytoria:

  • Ustawienia systemu > Ogólne > System - Repozytorium systemowe: miejsce zapisu własnych plików logo konfigurowanych w kreatorze stylów (standardowo Domyślne repozytorium systemowe).
  • Ustawienia systemu > Email > Repozytorium zapisu plików dla szablonów e-mail: miejsce zapisu załączników dodawanych w definicji szablonu e-mail (standardowo Domyślne repozytorium e-mail).
  • Ustawienia systemu > Email > Exchange - Repozytorium zapisu plików dla załączników pobieranych z wiadomości: miejsce zapisu załączników do wiadomości e-mail odbieranych przez tzw. mail monitory (standardowo Domyślne repozytorium e-mail).

Tabela core.AttachmentRepositories

Definicje repozytoriów są przechowywane w tabeli core.AttachmentRepositories, która składa się z następujących kolumn:

Nazwa kolumny Typ danych Zezwól NULL Opis
Id int Kolumna klucza głównego, identyfikator rekordu w tabeli
Code nvarchar(32) Kod repozytorium
Name nvarchar(128) Nazwa repozytorium
IsActive bit Flaga aktywności repozytorium
IsDefault bit Flaga repozytorium domyślnej kategorii załączników
RepositoryType int Typ repozytorium: 0 - folder, 1 - baza danych
DataSourceId int Identyfikator źródła danych dla repozytorium bazodanowego
RelativeDirectory nvarchar(MAX) Ścieżka względna do folderu repozytorium
AdvancedSaveOptions nvarchar(MAX) Dane w formacie JSON z dodatkowymi parametrami: SubDirectorySaveType, NumberOfFiles i LastFolderName
RowGuid uniqueidentifier Unikatowy identyfikator szablonu
AbsoluteDirectory nvarchar(MAX) Ścieżka bezwzględna do folderu repozytorium
TableName nvarchar(128) Nazwa tabeli repozytorium bazodanowego
|← Definicja źródła danych |↑ Do góry |→ Kategorie załączników |

Copyright © 2025 OPTEAM SA. Theme Copyright © 2017-2020 Patrick Marsceill. Distributed by an MIT license.