Informacje o wersji 1.9.1 z dn. 07-11-2022
Ważne informacje
Błąd długości parametru podczas migracji
Wykryto, że przyczyną błędu Invalid length parameter passed to the LEFT or SUBSTRING function. występującego niekiedy podczas próby przygotowania pliku eksportu (Migrator aplikacji
> Zapisz aplikacje
) są błędne dane w tabeli AuditColumns. Podobna sytuacja może również wystąpić w przypadku błędów danych w bazie danych witryny docelowej. Problem dotyczy prawdopodobnie baz danych tworzonych w dawnych wersjach nAxiom.
W związku z tym opracowano skrypt, który usuwa ewentualne błędy. Skrypt należy uruchomić w programie MS SQL Server Management Studio.
UPDATE c
SET c.TableName =
CONCAT ('[', sch.name, '].[', c.TableName, ']')
FROM
[database_name].[sys_schema_name].[AuditColumns] c
JOIN sys.tables tab ON tab.name = c.TableName
JOIN sys.schemas sch ON sch.schema_id = tab.schema_id
gdzie database_name to nazwa bazy danych, a sys_schema_name to schemat używany przez tabele systemowe (domyślnie core).
Poprawa migratora aplikacji
Rozwiązano szereg problemów występujących podczas korzystania z migratora aplikacji, w tym:
- problemy z migracją następujących elementów:
- akcja Zmiana statusu dokumentu przypisana do przejścia na diagramie procesów,
- zmienne środowiskowe,
- tabela audytu,
- eskalatory;
- problemy w zakresie eksportu następujących elementów:
- pliki dołączane do szablonów Excel,
- akcje zdefiniowane na karcie
Uprawnienia — brak odczytu
w definicji dokumentu biznesowego, - akcje przypisane do bloków podprocesu asynchronicznego i decyzyjnego,
- ustawienia określone na karcie
Audyt
w definicji dokumentu biznesowego, - kolumny o typach danych innych niż dostępne w Kreatorze modeli danych (z wyjątkiem typów HierarchyId i RowVersion, których obsługa wymaga zmian kreatora modeli danych),
- status bloku oczekiwania,
- zaktualizowana definicja Mail monitora,
- definicje callbacks (błędnie przypisane aplikacje);
- bardzo długi czas trwania migracji,
- błąd występujący podczas nadpisywania migracji,
- nieprzenoszenie atrybutu Identity dla kolumn tabeli pomocniczej; dotyczy tylko sytuacji, w której tabela jest tworzona w docelowej witrynie; nie ma możliwości aktualizacji tego atrybutu w ramach migracji,
- aktualizacja uprawnień do menu (odbieranie uprawnień),
- usuwanie widoków systemowych w docelowej bazie danych,
- wyświetlanie przycisków akcji na liście konfiguracji eksportu/importu,
- błędne przypisywanie definicji Mail monitora do aplikacji po migracji.
Domyślny poziom logowania błędów
Zmieniono domyślny poziom komunikatów zapisywanych w logach systemowych nAxiom na Error. Ma to na celu ograniczenie objętości logów. Dodano także migrację, która przestawia ten parametr w przypadku aktualizacji bazy danych z wcześniejszego poziom domyślnego Info na Error. Jeśli poziom Info był ustawiony świadomie, konieczne będzie przywrócenie tej wartości w ustawieniach systemowych.
Repozytoria załączników na zasobach sieciowych
Plikowe repozytoria załączników mogą znajdować się na zasobach sieciowych. Do określenia lokalizacji repozytorium należy użyć ścieżki sieciowej w formacie \\host\folder (UNC). Nie należy używać litery zmapowanego dysku sieciowego.
Aby można było zapisywać załączniki w sieciowym folderze repozytorium, konieczne jest przypisanie uprawnienia
Modyfikacja
dla grup użytkowników IUSR i IIS_USRS (folder repozytorium >Właściwości
>Zabezpieczenia
).
Endpoint GetFormByRowGuid
Wprowadzono poprawkę bezpieczeństwa likwidującą podatność endpointu GetFormByRowGuid na przechwycenie danych przez nieautoryzowanego użytkownika.
Ta poprawka może wpływać na zdefiniowane sekwencje akcji wykonywanych w ramach obsługi braku uprawnień użytkownika (Edycja definicji dokumentu
> Uprawnienia — brak odczytu
> wyłączony przełącznik Przekieruj na dashboard
), o ile te akcje odwoływały się do modelu danych. Z tego powodu na tej karcie dodano ostrzeżenie: UWAGA: Akcje wywoływane w tej sekwencji nie mają dostępu do modelu danych dokumentu biznesowego.
Nowe i zmodernizowane funkcje
Uprawnienie PBA do projektowania raportów
Dodano uprawnienie PBA umożliwiające dostęp do modułu projektowania raportów. (AdminSPA > ZARZĄDZANIE UPRAWNIENIAMI
> Uprawnienia
> Budowanie aplikacji
> Dostęp do Kreatora raportów Telerik
).
Nowe parametry Mail monitora
W Mail monitorze dodano trzy nowe parametry, które pozwalają odwoływać się do atrybutów odebranej wiadomości email. Są to: {@Email_ReceivedDate} (typu datetime), {@Email_ToRecipients} i {@Email_CcRecipients}.
Poniższe zapytanie pokazuje przykład użycia atrybutów e-mail w zapytaniu SQL wykonywanym w ramach akcji Mail monitora:
INSERT INTO [dbo].[MailMonitorEmailDetails] (
[Content], [Sender], [Title], [ReceivedDate],
[ToRecipients], [CcRecipients])
VALUES ({@Email_Content}, {@Email_Sender},
{@Email_Subject}, {@Email_ReceivedDate},
{@Email_ToRecipients}, {@Email_CcRecipients})
Sortowanie wartości na liście asynchronicznej
Zmodyfikowano sposób konfiguracji asynchronicznej listy wyboru, dodając możliwość wskazania kolumn, po których mają być sortowane wyniki. Dodatkowo użytkownik może wyświetlić podgląd zapytania wynikowego i uruchomić je dla ciągu znaków podanego jako parametr search_param w klauzuli WHERE.
Zależności sekcji typu lista
W zależnościach sekcji na formularzu dodano jako kryterium zależności stan zaznaczenia rekordów na liście nadrzędnej. Dzięki tej zmianie, na liście zależnej można wyświetlić tylko te rekordy, które zostały zaznaczone na liście nadrzędnej. Przykładowa instrukcja w polu Warunek zależności
wygląda następująco:
[Id] IN
(SELECT [value]
FROM
OPENJSON({@_Section_NazwaSekcji_Selected}))
NazwaSekcji to nazwa sekcji nadrzędnej (podanej w polu Zależność od sekcji
).
W odwołaniu @_Section_NazwaSekcji_Selected należy wpisać nazwę sekcji nadrzędnej z wielkiej litery.
Kontekst formularza i JavaScript
Do danych z kontekstu formularza dostępnych w akcjach/skryptach JavaScript dodano informacje o zaznaczonych rekordach w sekcji typu lista. Odwołanie ma postać: formContext.kodSekcji_Selected
(skrypt zmiany kontekstu) lub FormDataContext.kodSekcji_Selected
(akcje JavaScript) i zwraca tablicę z identyfikatorami rekordów zaznaczonych na liście.
Kod sekcji nie może zawierać myślnika (-).
Import grup z AD
Zmodernizowano mechanizm synchronizacji ról biznesowych (grup) z usługami Active Directory w celu obsługi przypadku, kiedy grupy pochodzą z innej domeny niż użytkownicy. Sposób konfiguracji tego mechanizmu zostanie opisany w odrębnym artykule.
Akcja zmiany statusu archiwizacji
Zmieniono zasady działania akcji zmiany statusu archiwizacji (akcja systemowa). Obecnie akcja sprawdza, czy użytkownik, który uruchomił akcję, ma uprawnienia ACL do dokumentu. Do zmian statusu archiwizacji wymagane są następujące uprawnienia:
Zmiana statusu archiwizacji | Uprawnienia ACL |
---|---|
Aktywny (1) > Archiwalny (3) | RU |
Aktywny (1) > Usunięty (2) | RD |
Archiwalny (3) > Usunięty (2) | RDA |
Archiwalny (3) > Aktywny (1) | RA |
Usunięty (2) > Aktywny (1) | RA |
Usunięty (2) > Archiwalny (3) | RA |
Liczba w nawiasach obok nazwy statusu to wartość zapisywana w kolumnie ArchiveStatus w tabeli dokumentu biznesowego.
Do tej pory akcja mogła być wykonywana tylko przez twórcę danego dokumentu.
Poprawki i usunięte błędy
Uzupełnienie tłumaczeń w aplikacji FrontSPA
Wprowadzono poprawki w celu objęcia tłumaczeniami niektórych elementów interfejsu użytkownika w aplikacji FrontSPA, np. sekcji i poleceń menu, opcji w polu filtrowania itp.
Zmiana wartości domyślnych w kreatorze stylów
W celu poprawienia czytelności, w Kreatorze stylów zmieniono wartości domyślne koloru ramki kontrolki w trybie edycji i tylko do odczytu na ciemniejsze.
Powiązanie widżetu z formularzem
Zmieniono sposób powiązania widżetu typu formularz z formularzem. Obecnie kolumna FormDefinitionId w tabeli core.Widgets jest typu int i jest powiązana z kolumną Id w tabeli core.Forms.
Wyłączenie z migracji uprawnień PBA
Z zakresu działania migratora aplikacji wyłączono uprawnienia PBA definiowane dla ról biznesowych.
Funkcje tabelaryczne
W Kreatorze modeli danych zmieniono nazwę grupy Widoki bazodanowe na Funkcje tabelaryczne.
Kopiowanie GUID przejścia
Dodano możliwość zaznaczenia i skopiowania identyfikatora przejścia (GUID) wyświetlanego na w kreatorze diagramów procesów we właściwościach przejścia.
Skrypt dla zmiany kontekstu
Dla funkcji Skrypt dla zmiany kontekstu formularza
(Kreator formularzy
> Akcje formularza
) usunięto flagę funkcjonalności eksperymentalnej.
Wczytywanie rekordów listy
Poprawiono zachowanie platformy podczas wczytywania rekordów w widoku listy w aplikacji FrontSPA. Obecnie w czasie oczekiwania na wczytanie rekordów wyświetlany jest animowany wskaźnik zamiast mylącego komunikatu Brak wyników do wyświetlenia.
Uprawnienia PBA i akcje zdarzeń systemowych
Wprowadzono poprawkę, dzięki której przypisywanie akcji do zdarzeń systemowych w aplikacji FrontSPA nie wymaga posiadania uprawnienia PBA Przeglądanie listy użytkowników.
Powiązanie połączeń callback z aplikacją
W tabeli Callbacks ustawiono atrybut FK dla kolumny ModuleDefinitionId. Brak tego atrybutu powodował błędne powiązanie definicji callback z aplikacją podczas migracji.
Skróty klawiszowe
Przywrócono działanie skrótów klawiszowych dla przycisków na formularzu.
Przekierowanie do formularza w podprocesie
Poprawiono zachowanie przełącznika Przekieruj do formularza podprocesu po zainicjowaniu podprocesu
we właściwościach bloku procesu synchronicznego.
Jeśli pomimo włączenia przełącznika, akcja otworzenia formularza nie zostanie wybrana, po ponownym wyświetleniu właściwości tego bloku przełącznik będzie wyłączony.
Asynchroniczna lista SQL
Poprawiono występujące w niektórych przypadkach błędy w działaniu asynchronicznej listy wyboru po wklejeniu ciągu znaków w pole listy.
Aktualizacja definicji Mail monitora
Poprawiono błąd, w wyniku którego aktualizacja definicji Mail monitora powodowała nadanie nowej wartości w kolumnie RowGuid. To z kolei było przyczyną problemów z migracją zaktualizowanego Mail monitora.
Nieprawidłowe wyświetlanie formularzy
Poprawiono błąd odświeżania sekcji komentarzy w przypadku przełączania się między formularzami.
Modyfikowanie ACL-i we FrontSPA
Poprawiono wyświetlanie okna dialogowego dodawania/edycji uprawnień ACL w aplikacji FrontSPA. W niektórych przypadkach po kliknięciu przycisku Dodaj uprawnienie
okno dialogowe było wyświetlane w tle okna Aktualne uprawnienia dokumentu...
(„pod spodem”).
Atrybut lang dla stron witryny nAxiom
Poprawiono wartość atrybutu lang dla stron witryny nAxiom na zgodną z ustawieniami języka zalogowanego użytkownika.
Dokument biznesowy oparty na tabeli pomocniczej
Dla definicji dokumentu biznesowego opartych na tabelach pomocniczych w oknie dialogowym definicji dokumentu biznesowego usunięto przełącznik Obsługa uprawnień
. W przypadku tabel pomocniczych uprawnienia ACL nie są obsługiwane.
Dodano migrację w bazie danych, która wyłącza to ustawienie w istniejących definicjach takich dokumentów biznesowych.