Printer icon

Informacje o wersji 1.15.6.0
z dn. 29-01-2026

W tej wersji

Wymagane działania

Nie jest wymagane wykonanie żadnych dodatkowych czynności.

Kompatybilność aplikacji

Migracja aplikacji jest możliwa tylko między wersjami nAxiom kompatybilnymi na poziomie bazy danych.

Bieżąca wersja bazy danych: 20260120090221

W tej wersji nAxiom struktura bazy danych zmieniła się. Przed migracją aplikacji do tej wersji wymagane jest zaktualizowanie środowiska źródłowego.

Ważne informacje

1. Zapowiedź zakończenia wsparcia dla modułu Crystal Reports

Niniejszym zapowiadamy zakończenie wsparcia dla SAP Crystal Reports w platformie nAxiom od wersji 1.15.7. Obsługa silnika SAP Crystal Reports zostaje trwale wycofana w związku z koniecznością dostosowania platformy do aktualnych wymogów bezpieczeństwa oraz standardów technologicznych.

Co to oznacza w praktyce?

  • Akcja generowania raportów Crystal Reports przestanie działać.
  • Instalator platformy w środowisku Windows nie będzie instalował serwisu odpowiedzialnego za komunikację ze środowiskiem uruchomieniowym SAP Crystal Reports.

Dlaczego dokonujemy tej zmiany?

Decyzja ta jest podyktowana wymogami bezpieczeństwa oraz modernizacją technologiczną platformy:

  • Zgodność ze standardem FIPS 140: W celu zapewnienia najwyższego poziomu bezpieczeństwa (wymaganego m.in. w sektorze publicznym i finansowym), platforma nAxiom musi działać w trybie zgodności z FIPS. Silnik Crystal Reports wykorzystuje starsze algorytmy kryptograficzne, które nie spełniają tych rygorystycznych norm, uniemożliwiając certyfikację całego systemu.
  • Pełna migracja do .NET Core: Platforma nAxiom jest rozwijana w nowoczesnej technologii .NET Core. Biblioteki Crystal Reports, oparte na starszej architekturze .NET Framework, stanowią blokadę technologiczną uniemożliwiającą optymalizację wydajności i wdrożenie natywnych mechanizmów bezpieczeństwa.
  • Ujednolicenie narzędzi (Web Report Designer): Pełne przejście na Telerik Reporting pozwala na wykorzystanie Web Report Designera dla wszystkich raportów w systemie, co nie było możliwe w przypadku technologii Crystal Reports.

Wymagane działania

Wersja 1.15.6 jest ostatnią, w której raporty Crystal Reports będą obsługiwane. Przed aktualizacją środowiska produkcyjnego do wersji 1.15.7, należy bezwzględnie:

  1. Przeprowadzić inwentaryzację: Zidentyfikować wszystkie raporty w systemie, które nadal korzystają z definicji Crystal Reports.
  2. Przepisać raporty: Przepisać zidentyfikowane raporty Crystal Reports na raporty Telerik Reporting. Z uwagi na różnice w architekturze obu rozwiązań, automatyczna konwersja nie jest możliwa.
  3. Przetestować raporty: Zweryfikować poprawność działania nowych definicji raportów w oparciu o silnik Telerik.

Harmonogram zmian

  • Wersja 1.15.6: ostatnia wersja wspierająca Crystal Reports. Czas na inwentaryzację i migrację raportów.
  • Wersja 1.15.7 (kolejna): całkowite usunięcie bibliotek Crystal Reports.

Nowe i zmodernizowane funkcje

1. Agregacja logów i telemetria

Dodano możliwość agregacji logów za pomocą ElasticSearch oraz generowania danych w standardzie OpenTelemetry (integracja z .NET Aspire). Aby skorzystać ze zmian, należy zainstalować oprogramowanie ElasticSearch oraz Aspire Dashboard (można uruchomić z obrazu docker).

Wybór repozytorium logów odbywa się w nowym kroku instalatora nAxiom. Dostępne są dwie opcje:

  • Centralna baza ElasticSearch: logi są zapisywane w bazie danych ES, a w Admin SPA na stronie Logi środowiska i bieżącego tenanta wyświetlane są logi ze wszystkich serwisów backendu („dotnetowych”).

  • Osobne pliki DB3: logi z każdego serwisu są zapisywane w osobnych plikach DB3, w Admin SPA są wyświetlane tylko logi serwisu api.

Poziom logowania można określić w instalatorze, a w razie potrzeby zmienić w aplikacji Tenants Admin (Global Settings > ‘Logging level’).

W instalatorze oraz w aplikacji Tenants Admin można także skonfigurować diagnostykę rozszerzoną, to jest emisję danych telemetrycznych do wskazanych punktów końcowych. Można zdefiniować osobny punkt końcowy dla każdej kategorii danych:

  • dzienniki strukturalne (logi): logi ze strukturalnymi danymi JSON
  • ślady: szczegółowe informacje o realizacji żądań przez rozproszone systemy
  • metryki: dane dotyczące wydajności aplikacji, zużycia zasobów, liczników

Przykładowa konfiguracja:

  • protokół gRPC, wspólny punkt końcowy: http://localhost:4317
  • protokół http/protobuf, wspólny punkt końcowy: http://localhost:4318

Do przeglądania danych telemetrycznych można używać programu Aspire Dashboard. Po uruchomieniu, np:

docker run --rm -it -d --name aspire-dashboard /
           -p 18888:18888  -p 4317:18889 /
           -e DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS=true /
           mcr.microsoft.com/dotnet/aspire-dashboard:latest

program jest dostępny w przeglądarce pod adresem http://localhost:18888. Aspire Dashboard jest przeznaczony do zaawansowanej diagnostyki w środowiskach deweloperskich i testowych. Nie zapewnia on persystencji danych ani nie wysyła żadnych powiadomień. Więcej informacji jest dostępnych na stronie:
https://learn.microsoft.com/en-us/dotnet/aspire/fundamentals/dashboard/standalone?tabs=powershell.

nAxiom będzie również wysyłał dane telemetryczne w przypadku, gdy podczas uruchamiania aplikacji wykryje odpowiednie zmienne środowiskowe:

  • OTEL_EXPORTER_OTLP_ENDPOINT: wspólny punkt końcowy dla wszystkich typów danych
  • OTEL_EXPORTER_OTLP_PROTOCOL: wspólny protokół dla wszystkich typów danych

lub

  • OTEL_EXPORTER_OTLP_TRACES_ENDPOINT
  • OTEL_EXPORTER_OTLP_METRICS_ENDPOINT
  • OTEL_EXPORTER_OTLP_LOGS_ENDPOINT
  • OTEL_EXPORTER_OTLP_TRACES_PROTOCOL
  • OTEL_EXPORTER_OTLP_METRICS_PROTOCOL
  • OTEL_EXPORTER_OTLP_LOGS_PROTOCOL

Wartości indywidualnych zmiennych środowiskowych mają pierwszeństwo przed wartościami zmiennych ogólnych, a te z kolei przed ustawieniami w Tenants Admin.

2. Modernizacja widoku listy

Wprowadzono szereg zmian dotyczących widoku listy we Front SPA.

  • Zmieniono nagłówek widoku listy. Obecnie są w nim dostępne pole wyszukiwania w kolumnach tekstowych (nowa funkcjonalność), przycisk filtrowania z polem nazwy wybranego filtru i przycisk odświeżania listy zmieniony w przycisk rozwijany z poleceniami dotyczącymi konfiguracji listy.
  • Dodano opcję Widoczność kolumn (menu przycisku odświeżania), która wyświetla listę aktywnych kolumn i umożliwia zarządzanie ich widocznością. Ustawienia widoczności można zapisać w ramach konfiguracji użytkownika. Opcja jest dostępna dla list, dla których w Kreatorze listy na karcie Ustawienia listy włączono przełącznik Widoczność listy.
  • W menu przycisku odświeżania dodano opcję Grupowanie kolumn, która umożliwia zarządzanie grupowaniem rekordów przy użyciu klawiatury.
  • Dodano funkcję wyszukiwania w kolumnach tekstowych listy. Dla nowych list jest ona domyślnie włączona, dla list istniejących można ją włączyć na karcie Wygląd we właściwościach listy przełącznikiem Wyświetlaj pole wyszukiwania. Funkcjonalność dotyczy wyłącznie kolumn typu tekstowego widocznych w widoku listy. Wspierane jest wyszukiwanie częściowe, tzn. szukana fraza (min. 2 znaki) jest wyszukiwana w dowolnych łańcuchach tekstu. Wyszukiwanie działa jak filtrowanie, to znaczy wyświetla tylko rekordy z wystąpieniami szukanego tekstu. Wystąpienia te są podświetlone na żółto.
  • Zmodyfikowano interfejs dostępu do filtrów zaawansowanych i predefiniowanych. Po wskazaniu kursorem pola filtrów wyświetlany jest przycisk rozwijające listę zdefiniowanych filtrów oraz polecenie Ustawienia, które wyświetla panel Filtrowanie zaawansowane. Na tym panelu można zastosować do widoku listy zdefiniowany filtr, wyświetlić jego podgląd, wyświetlić go w trybie edycji oraz usunąć, a także utworzyć nowy filtr.
  • Zmodyfikowano interfejs dostępu do konfiguracji listy. Odpowiednie polecenie znajduje się na liście przycisku odświeżania. Wybór polecenia powoduje wyświetlenie panelu Konfiguracje listy. Na tym panelu można przełączać aktywną konfigurację listy, resetować konfigurację do domyślnej oraz zapisywać bieżącą konfigurację jako konfigurację użytkownika. Zapisane konfiguracje użytkownika można usuwać lub ustawiać jako domyślne.
  • Zmodyfikowano działanie stopek w widoku listy. W Kreatorze listy na karcie Edycja inline we właściwościach listy dodano przełącznik Dynamiczne przeliczanie stopek listy. Po jego włączeniu wartość w stopce jest przeliczna na bieżąco podczas edycji inline. Wycofano wsparcie dla funkcji agregujących Pierwsza pozycja i Ostatnia pozycja, w ramach bilansu otwarcia te funkcje zostaną zastąpiono odpowiednio przez Min i Max`.
  • Dostosowano możliwość wyboru funkcji agregujących do typu danych kolumny.
  • W Kreatorze listy uporządkowano rozmieszczenie elementów sterujących na karcie Ogólne we właściwościach listy.
  • Zmieniono działanie sortowania w przypadku, gdy w definicji listy konsultant ustawił sortowanie po kolumnie nieaktywnej (konfiguracja systemowa). Obecnie użytkownik na Front SPA może nadpisać takie sortowanie, ustawiając sortowanie po dowolnej widocznej kolumnie.
  • Dodano możliwość utworzenia na liście nowego rekordu w trybie edycji inline aktywowanej kliknięciem w wierszu. W tym celu w nagłówku listy jest wyświetlany specjalny przycisk, o ile we właściwościach listy na karcie Edycja inline włączono przełącznik Dodawanie rekordu dla tego trybu.
  • W związku ze zmianami widoku listy wprowadzono także zmiany w ustawieniach sekcji typu lista na formularzu. Obecnie nowa sekcja typu lista ma domyślnie włączone następujące ustawienia:
    • Wyświetlaj pole wyszukiwania
    • Wyświetlaj zdefiniowane filtry listy
    • Wyświetlaj konfiguracje listy w nagłówku
    • Wyświetlaj przycisk odświeżania listy
    • Zapamietaj tymczasową konfiguracje listy
    • Wyświetlaj nazwę kolumn listy w tej sekcji Każda sekcja typu lista ma teraz własne ustawienia, do tej pory, jeśli ustawienia listy w sekcji nie były zmienione, były pobierane z ustawień listy.

3. Obsługa rodzin czcionek we Front SPA

Dodano możliwość korzystania w nAxiom z dowolnych rodzin czcionek. Rodziny czcionek dodaje się w aplikacji Tenantsadmin SPA przy użyciu polecenia menu Add Font Family. Jednocześnie można dodać wiele plików z jednej rodziny. Obsługiwane formaty plików czcionek to TTF, OTF, WOFF i WOFF2.

W ramach zadania w Kreatorze stylów systemu dodano ustawienia umożliwiające wybór rodziny czcionek, która będzie używana w aplikacji FrontSPA. Są to:

  • Podstawowa rodzina czcionek
  • Pomocnicza rodzina czcionek.

Informacja

Z niestandardowych czcionek nie można na razie korzystać w module raportów Telerik. Planowane jest dodanie tej obsługi w kolejnej wersji.

4. Nowy endpoint Document/GetDataByGrid/

W interfejsie Public API dodano punkt końcowy /Document/GetDataByGrid/, który zwraca dane z listy o podanym identyfikatorze RowGUID. W sekcji body żądania można skonfigurować paginację, sortowanie i filtrowanie danych. W ramach obsługi żądania są sprawdzane uprawnienia ACL użytkownika, który wysłał żądanie. Ponadto, w ramach walidacji żądania sprawdzane jest istnienie kolumny, dla której zdefiniowano sortowanie lub filtrowanie, oraz dla filtrowania zgodność operatorów z typem danych kolumny (np. czy operatory porównania nie są używane dla kolumny tekstowej).

Jeśli żądanie zostanie wykonane pomyślnie zwróci status 200 i metadane listy (rowGuid, code i name), liczbę rekordów oraz rekordy listy. Jeśli użytkownik nie ma uprawnień ACL do żadnych rekordów, zostaną zwrócone tylko metadane.

Konfiguracja parametrów żądania:

  • stronicowanie: parametry skip (liczba rekordów do pominięcia, offset) i take (liczba rekordów do pobrania); wartości domyślne: skip=0, take=50
  • filtrowanie: wymaga podania nazwy kolumny (field), operatora (operator) i wartości (value); obsługiwane operatory:
    • eq: jest równe
    • neq: nie jest równe
    • isnull: jest null
    • isnotnull: nie jest null
    • contains: zawiera (tylko tekst)
    • doesnotcontain: nie zawiera (tylko tekst)
    • startswith: zaczyna się od (tylko tekst)
    • endswith: kończy się na (tylko tekst)
    • isempty: jest puste (tylko tekst)
    • isnotempty: nie jest puste (tylko tekst)
    • gt: jest większe (tylko liczby)
    • gte: jest większe lub równe (tylko liczby)
    • lt: jest mniejsze (tylko liczby)
    • lte: jest mniejsze lub równe (tylko liczby)

Przykład użycia:

  • żądanie:
    POST https://acme.local:1510/publicapi/Document/GetDataByGrid/649B5637-79...
    
  • body:
    {
    "skip": 0, "take": 50,
    "sort": [ {"dir": "asc", "field": "Id"} ],
     "filters": [
        { "field": "UserName", "operator": "contains", "value": "Jerzy" },
        { "field": "StatusName", "operator": "neq", "value": "Utworzono" }
     ]
    }
    
  • odpowiedź:
    {
    "gridMetadata": {
      "rowGuid": "649b5637-7997-402b-9efe-a3bce20c0f3e",
      "code": "rklRjs-list",
      "name": "rklRjs-lista wygenerowana przez generator flow"
    },
    "totalRecords": 2,
    "data": [
      {
        "Transition": 5,
        "Status": 3,
        "Id": 1198,
        "Code": "0009/2025",
        "Organization": null,
        "RowVersion": 13,
        "CreateDate": "2025-01-27T09:07:19.41",
        "ACLId": "5B1D94E2-3FF8-4532-9C61-7B96781E2AB6" ...
      }
    }
    

Uwaga

W body żądania można odwoływać się tylko do nazw kolumn, które są dodane do definicji listy i są aktywne.

5. Edycja inline - metoda setValue()

Dla trybu edycji inline dodano metodę JavaScript setValue(), która pozwala dowolnie ustawiać wartość wybranej kolumny listy. W szczególności metoda ta pozwala na wyliczanie wartości w kolumnie na podstawie wartości w innych kolumnach (w tym samym rekordzie). W takim przypadku należy korzystać z obiektu rowContext, który zawiera wartości poszczególnych pól z bieżącego rekordu listy (a także wartości z dodatkowych kolumn zwracanych przez listy rozwijane), jak w przykładzie poniżej.

Metody należy użyć w akcji JavaScript przypisywanej na karcie Edycja inline we właściwościach listy.

Przykład:

const columnA = getControlByColumn('kolumna_A');
columnA.setValue(rowContext.kolumna_B * rowContext.kolumna_C);

gdzie kolumna_A, kolumna_B i kolumna_C to nazwy kolumn listy (Nazwa SQL).

6. Edycja inline - przyciski zatwierdzania i anulowania

W trybie edycji inline aktywowanej kliknięciem w wiersz dodano możliwość zatwierdzenia lub odrzucenia zmian w danym rekordzie bez ich zapisywania i bez kończenia trybu edycji. Służą do tego odpowiednio przyciski Zatwierdź i Anuluj wyświetlane w kolumnie akcji w edytowanym rekordzie. Pierwszy pozostawia wprowadzone zmiany i wyłącza wyświetlanie kontrolek bieżącego wiersza w trybie edycji. Drugi przycisk przywraca pierwotne wartości w bieżącym rekordzie i również zmienia sposób wyświetlania kontrolek w bieżącym rekordzie.

Uwaga

Niezależnie od użycia tych przycisków, użytkownik musi kliknąć przycisk zapisu w nagłówku listy, aby zapisać zmiany wprowadzone w trybie inline.

7. Workflow - warunek wyświetlania przycisku

W Worklflow SPA dla przycisków na przejściach wyłączono sprawdzenie uprawnień (ról) w przypadku, gdy wykonanie przejścia jest obsługiwane przez Taskservice (użytkownik System).

8. Zmienne tenanta

W aplikacji Tenantsadmin SPA dodano możliwość obsługi zmiennych konfiguracyjnych nAxiom przez program OpenBao. Wybrane zmienne należy zdefiniować na stronie Tenant variable definitions (Tenant variables > Definitions), a następnie przypisać im wartości per tenant na stronie Tenant variables values (Tenant variables > Values). W witrynach nAxiom zintegrowanych z OpenBao wartości takich zmiennych konfiguracyjnych będą bezpiecznie przechowywane w sejfie.

Nazwa zmiennej jest tworzona przez translację ścieżki JSON. Jeśli którykolwiek segment ścieżki wskazuje na element tablicy, należy użyć jego indeksu (np. 0).

Przykład: OpenLDAPConf__UserSettings__0__LDAPConfiguration__Password.

Uwaga

Wartości haseł i innych danych wrażliwych należy wpisywać jawnym tekstem (bez szyfrowania).

9. Cryptosalt

Dodano obsługę zmiennej środowiskowej z losowym ciągiem znaków (cryptosalt) używanym do szyfrowania komunikacji wewnętrznej w nAxiom, komunikacji z serwisem auth w przypadku zmiany hasła oraz odszyfrowywania kodu w linku do resetowania hasła. Standardowo ta wartość jest zapisywana w plikach appsettings.json poszczególnych serwisów.

Możliwość zdefiniowania cryptosalt w zmiennej środowiskowej pozwala w łatwy sposób okresowo zmieniać tę wartość. Dotychczas wymagało to edycji plików konfiguracyjnych wszystkich serwisów danej witryny, ponieważ ta wartość musi być taka sama we wszystkich serwisach. Dodatkowo obsługa zmiennych środowiskowych umożliwia wykorzystanie oprogramowania typu secret manager (np. OpenBao) do przechowywania wartości tych zmiennych w celu zwiększeniu stopnia bezpieczeństwa całego środowiska.

Zgodnie z przyjętą konwencją nazewnictwa zmiennych środowiskowych odpowiadających zmiennym konfiguracyjnym z pliku appsettings.json, zmienna dla cryptosalt musi mieć nazwę: NAX_AppConfiguration__CryptoSalt.

Wskazówka

Zmiana wartości cryptosalt spowoduje, że linki do resetowania hasła wygenerowane przed zmianą przestaną działać.

10. Uprawnienia formularza

Dodano propagację zbiorczego ustawiania właściwości w tablicy Uprawnienia formularza z pojedynczych elementów sekcji na samą sekcję.

11. Modernizacja instalatora

Kod źródłowy instalatora nAxiom (niestandardowego) zmodernizowano do platformy .NET Core 8.0.

Poprawki i usunięte błędy

1. Eliminacja podatności

Wprowadzono szereg zmian zgodnie z audytem bezpieczeństwa z października 2025 r. oraz podatnościami wykrywanymi w używanych bibliotekach:

  • Zaktualizowano wersję pakietu Bootstrap z wersji 4.5.3 do wersji 5.3.8 w serwisie autoryzacji nAxiom oraz dostosowano formularz logowania, aby zachować jego dotychczasowy wygląd.
  • Usunięto nagłówek X-Xss-Protection z odpowiedzi API.
  • Nagłówek content-security-policy, dyrektywa script-src: usunięto słowo kluczowe unsafe-inline dla plików statycznych zwracanych przez nginx, dodano losową wartość nonce.
  • Dodano dyrektywę use strict; w skryptach JavaScript clearActiveSessions.js i site.js z serwisu AUTH.
  • W odpowiedziach serwisu AUTH z nagłówkiem Set-Cookie zmodyfikowano wartość atrybut SameSite. Domyślna wartość to obecnie Lax. Ciasteczka wykorzystywane w logowaniu zewnętrznym rozpoczynające się od .AspNetCore.Correlation lub .AspNetCore.OpenIdConnect.Nonce ze względów technicznych muszą mieć wartość SameSite=None.
  • W odpowiedziach serwisu AUTH wyeliminowano przypadki, kiedy nagłówek Access-Control-Allow-Origin miał wartość ‘*’.
  • W nagłówkach Content-Type odpowiedzi serwera dodano atrybut charset dla typów zawartości, dla których ma on zastosowanie. Między innymi jest to zawartość typu:
    • JSON,
    • js (JavaScript),
    • css (Cascading Style Sheets),
    • text
  • Aby uniemożliwić ataki typu MIME-sniffing dodano nagłówek X-Content-Type-Options z wartością nosniff do odpowiedzi z punktów końcowych:
    • /.well-known/openid-configuration
    • /.well-known/openid-configuration/jwks
    • /connect/token
  • W celu eliminacji wycieków pamięci we wszystkich przypadkach użycia funkcji setTimeout oraz setInterval dodano obsługę czyszczenia zasobów.
  • Wyeliminowano użycie magazynu localStorage do przechowywania tokenów dostępu do API w aplikacji Admin SPA. Obecnie w tym celu wykorzystywany będzie tylko magazyn sessionStorage.

Ważne

W ramach tej zmiany dodano mechanizm wylogowania użytkownika z wszystkich kart w przeglądarce dla danej witryny nAxiom po wylogowaniu w jednej z nich.

  • Wyeliminowano podatność umożliwiającą uzyskanie dostępu do czatu i powiadomień przez nieautoryzowanego użytkownika.
  • Wyeliminowano szereg podatności z pakietów używanych w nAxiom.

2. Dezaktywacja tenanta

Zmodyfikowano działanie serwisu tenantsapi w taki sposób, że po dezaktywacji tenanta w Tenantsadmin SPA wszyscy zalogowani użytkownicy tego tenanta zostaną wylogowani (w momencie wysłania żądania do internal-api). Ponadto usunięto błąd w działaniu parametru „Error logging level” w globalnych ustawieniach tenanta. Zmiana tego ustawienia zaczyna obowiązywać bez konieczności restartowania serwisów.

3. Edycja inline - błędy walidacji

W trybie edycji inline zmieniono sposób informowania o błędach walidacji danych. Obecnie dla komórki z błędną wartością jest wyświetlana czerwona ramka oraz komunikat w dymku z poprawną wartością minimalną/maksymalną. Ponadto dla trybu po kliknięciu w wiersz dodano blokadę przejścia do kolejnego rekordu, dopóki dane w bieżącym rekordzie nie zostaną poprawione. Dodano również walidację minimalnej/maksymalnej długości tekstu w polu typu pole tekstowe.

4. Nazwa modelu danych

Wprowadzono ograniczenia dotyczące nazwy modelu danych (nazwa tabeli w bazie danych) oraz nazw funkcji bazodanowych. Dozwolone są tylko małe i wielkie litery, cyfry oraz znak podkreślenia. Ponadto ujednolicono komunikaty walidacji danych i poprawiono tłumaczenia.

5. Monitor poczty e-mail

W Monitorze poczty e-mail poprawiono obsługę nazwy pliku kodowanej według standardu MIME RFC 2047. Problem dotyczył skrzynek pocztowych na serwerze IMAP.

6. Kreator listy

W Kreatorze listy poprawiono błąd, który powodował, że po wartości wybrane w polu Sortowanie kolumn na karcie Ogólne we właściwościach listy nie były zapamiętywane po przełączeniu na inną kartę.

7. Konfiguracja listy w sekcji typu lista

Poprawiono zakres zastosowania konfiguracji listy w przypadku użycia tej samej listy w kilku sekcjach. Obecnie, dla każdego wystąpienia listy można będzie stosować odrębną konfigurację (filtrowanie, sortowanie, grupowanie, widoczność kolumn).

8. Formularz w trybie dialog

Poprawiono błąd, który powodował, że okno formularza z nieaktywnym nagłówkiem (toolbar) wyświetlane w trybie dialog nie miało paska tytułu z ikoną do zamknięcia okna.

9. Odświeżanie sekcji typu lista

Poprawiono działanie akcji odświeżania sekcji formularza dla sekcji typu lista. Obecnie akcja powoduje odświeżenie następujących elementów:

  • kolumna HTML na liście osadzonej w sekcji,
  • tablica Selected w modelu formularza — odświeżenie sekcji powoduje uzgodnienie rekordów tablicy z bieżącym zestawem rekordów zaznaczonych na liście w sekcji formularza.

10. Pola SQL/TXT

Poprawiono obsługę zmiennych systemowych typu @_Nazwa w polach hybrydowych SQL/TXT w trybie TXT, np. w oknie przekazywania parametrów akcji otwierania formularza. Zmienne systemowe to:

  • @_LangId: identyfikator języka zalogowanego użytkownika
  • @_UserId: identyfikator GUID zalogowanego użytkownika (w trybie pracy w zastępstwie identyfikator zastępowanego)
  • @_NativeUserId: identyfikator GUID zalogowanego użytkownika
  • @_UserAuthenticationLevel: poziom uwierzytelniania w przypadku witryny nAxiom ze skonfigurowanym logowaniem SSO
  • @_Id: identyfikator bieżącego rekordu
  • @_FormId: identyfikator bieżącego formularza
  • @_BusinessDocDefId: identyfikator bieżącej definicji dokumentu
  • @_TenantId: identyfikator bieżącego tenanta
  • @_TenantBaseUrl: bazowy URL bieżącego tenanta
  • @_MobileMode: stan trybu mobilnego

11. Podpowiedzi do wartości na listach wyboru

Poprawiono wyświetlanie podpowiedzi z wartością wybraną na liście wyboru w przypadku ustawienia dla listy stałej szerokości. Dodatkowo poprawiono wyświetlanie etykiet kontrolek formularzy z dłuższym tekstem.

12. Akcja zmiany statusu

Usunięto błąd w działaniu akcji zmiany statusu dokumentów. W przypadku zmiany statusu zbioru dokumentów w trybie transakcji uprawnienia wynikające z szablonu uprawnień dla ról w statusach nie były poprawnie aktualizowane (tylko pierwszy rekord miał poprawnie nadane uprawnienia).

13. Migracja danych typu numeric

Poprawiono sygnalizowany w wersji 1.15.2.0 błąd, który powodował, że po migracji aplikacji zakres typu danych numeric był resetowany do domyślnego.

14. Eksport do Excela

Poprawiono eksport listy hierarchicznej do pliku Excel. Funkcja eksportu uwzględnia zastosowane filtry, eksportowane są wszystkie strony.

15. Tabele pomocnicze

Poprawiono błąd, który powodował, że w nowej tabeli pomocniczej dla kolumny klucza głównego nie były generowane tłumaczenia dla pola Etykieta. W ramach zadania dodano migrację bazy danych, która generuje brakujące tłumaczenia.

16. PublicAPI (Swagger)

Poprawiono błąd, który powodował, że w środowisku kontenerów nie można było wyświetlić dokumentacji interfejsu PublicAPI generowanej przez program Swagger.

17. LDAP - mapowanie ról

Poprawiono błąd, który powodował, że podczas synchronizacji z LDAP dodawane były nowe role biznesowe, pomimo zastosowania mapowania, które miało temu przeciwdziałać.

18. LDAP - synchronizacja

Poprawiono obsługę znaków backslash w filtrach LDAP w środowiskach Linux w połączeniu z Active Directory. Problem mógł występować podczas pobierania użytkowników do synchronizacji oraz grup, do których należą, według atrybutu distinguishedName.

19. Esign - zlecenie podpisu

Poprawiono błąd w akcji zlecenia podpisu ESign. W tej wersji zaszła również zmiana formatu daty w żądaniach. Wszystkie wdrożenia, które korzystały obecnie z ESign będą musiały przejść aktualizację ESign do najnowszej wersji.


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