Informacje o wersji 1.5 z dn. 21-12-2021
Nowe funkcje
Sekcja typu Kalendarz
Dodano nowy typ sekcji: Kalendarz
. Korzystając z tej sekcji, można wyświetlać na formularzu dane w jednym z kilku widoków kalendarza: miesięcznym, tygodniowym, dziennym i osi czasu. Dane wyświetlane w kalendarzu mogą pochodzić z dowolnej tabeli, a zapytanie SQL do tej tabeli musi zwrócić pięć kolumn: [id], [start] (data i godzina rozpoczęcia), [end] (data i godzina zakończenia), [title] (opis zdarzenia wyświetlany w kalendarzu) oraz [isAllDay] (flaga bitowa dla zdarzeń trwających cały dzień).
Dla kalendarza konieczne jest także wskazanie formularza do edycji zdarzeń oraz akcji aktualizacji i usuwania zdarzeń do obsługi zdarzeń kalendarza przy użyciu myszy. (T:0514)

Opis konfiguracji sekcji typu kalendarz załączono do niniejszych informacji o wersji jako dodatek. W kolejnej wersji będzie on dostępny w nAxiom jako pomoc kontekstowa do panelu właściwości sekcji.
Słowniki hierarchiczne
Dodano nowy rodzaj słownika — słownik hierarchiczny — który umożliwia tworzenie słowników o strukturze wielopoziomowego drzewa. W celu umożliwienia korzystania z tej funkcjonalności dodano nową kontrolkę formularza Lista wyboru (Słownik hierarchiczny)
.
Definicja słowników hierarchicznych wymaga określenia opcji dotyczących unikalności wpisów do słownika. Warunki unikalności są walidowane według wartości z kolumny systemowej Kod
słownika. (T:0054)

Ze względu na kontynuowane prace programistyczne ta funkcjonalność ma charakter eksperymentalny, jednak nie jest ona objęta działaniem przełącznika
Pokaż funkcje eksperymentalne
w ustawieniach nAxiom.
Automatyczne wyświetlanie dokumentu podprocesu
Dodano możliwość zautomatyzowania wyświetlania formularza dokumentu tworzonego w podprocesie z formularza procesu głównego. W ustawieniach bloku Podproces synchroniczny
dodano przełącznik Przekieruj do formularza podprocesu po zainicjowaniu podprocesu
. Jego włączenie powoduje wyświetlenie listy rozwijanej Akcja otwarcia formularza
, z której należy wybrać odpowiednią akcję. W konfiguracji akcji należy użyć opcji wskazany dokument
i wpisać {@Id} w pole obok tej opcji. Jeśli w tej akcji będą przekazywane jakieś wartości do formularza, zostaną one zignorowane. (T:0728)
Dostęp do pól sekcji niewidocznej
W oknie Ustawienia dostępności...
dla sekcji formularza dodano przełącznik Pole dostępne w przeglądarce, nawet gdy niewidoczne
, którego włączenie umożliwia wykonywanie operacji na wartościach pól w sekcji niewidocznej na formularzu. W przypadku aktualizacji aplikacji do bieżącej wersji, przełącznik jest wyłączony, dla nowo tworzonych sekcji przełącznik jest domyślnie włączony
Ponadto dodano funkcję setSectionAsHidden(kod-sekcji), której można używać w akcjach JavaScript do ukrywania sekcji z zachowaniem możliwości dostępu do kontrolek w tej sekcji. (T:0684)
Przyciski w nagłówku sekcji
Dodano możliwość umieszczania przycisków w nagłówku sekcji formularza. Dodano również powiązane ustawienia we właściwościach sekcji: Wyrównanie przycisków w nagłówku sekcji
(do lewej, wyśrodkuj i do prawej) oraz Kolejność elementów w nagłówku sekcji
(Najpierw etykieta
albo Najpierw przyciski
). (T:0157)

Edycja inline — wartości domyślne
Dodano funkcję ustawiania wartości domyślnej dla pól w widoku listy po włączeniu edycji inline. Podobnie jak w przypadku pól formularzy, wartość domyślna pól widoku listy może być określona przez podanie stałej wartości lub zwrócona zapytaniem SQL. (T:0626)
Styl przycisku
Dodano właściwości określające wygląd przycisków na formularzach, zarówno przycisków akcji, jak i przycisków workflow oraz w widokach listy. Obecnie można zdefiniować:
- kolor czcionki i ikony na przycisku (taki sam)
- kolor wypełnienia przycisku
- kolor obramowania przycisku
- grubość obramowania przycisku (od 0 do 5 px)
Ponadto dodano efekt wyróżnienia przycisku po wskazaniu kursorem myszy przez zamianę kolorów czcionki i wypełnienia.
Eksport do szablonu Excel
W akcji eksportu do formatu Excel dodano możliwość dopisywania eksportowanych danych do istniejącego pliku — szablonu Excel. W takim wypadku należy określić, oprócz nazwy pliku szablonu i arkusza, adres lewej, górnej komórki zakresu danych. Akcja dopisze wyeksportowane dane we wskazanym pliku i zapisze go pod podaną nazwą w folderze pobierania lub wyświetli w programie Excel, zależnie od ustawień przeglądarki.
Jeśli szablon zawiera kolumny ukryte, akcje wpisze dane również w tych kolumnach.

Aby dopisywanie eksportowanych danych do istniejącego pliku działało, po wyzwoleniu akcji w aplikacji FrontSPA użytkownik musi wybrać format xlsx, w przeciwnym razie dane zostaną wyeksportowane do nowego pliku w formacie CSV.
W związku z tą modyfikacją dodano menu Szablony Excel
do sekcji APLIKACJA
. Służy ono do załączania plików Excel, które będą dostępne w akcji eksportu Excel. Dodawanie szablonów wymaga wskazania folderu ich przechowywania. Służy do tego nowe ustawienie Miejsce zapisu na dysku szablonów Excel
(SYSTEM
> Ustawienia
> Szablony plików
). Nowa sekcja Szablony plików
w ustawieniach zawiera także dotychczasowe ustawienie Miejsce zapisu na dysku szablonów Word
. (T:0709)
Transakcyjne przetwarzanie akcji
Dodano transakcyjne przetwarzanie sekwencji akcji. Takie sekwencje mogą obejmować:
- Akcję systemową
Zapisz rekord
- Akcje SQL
- Procedury
Jeśli w sekwencji wystąpi akcja innego rodzaju, sekwencja zostanie podzielona na kilka transakcji.
W przypadku wystąpienia błędu w akcji wykonywanej w ramach transakcji, zmiany dokonane przez wszystkie wcześniejsze akcje, w tym przez akcję Zapisz rekord
, zostaną wycofane.
Przetwarzanie transakcyjne nie obsługuje akcji zapisu (
APLIKACJA
>Akcje
>Akcje zapisu
); obsługa tych akcji jest planowana w kolejnych wersjach.
(T:0692)
Wysyłka e-mail — pole DW i UDW
Zmodyfikowano działanie akcji wysyłki e-mail w taki sposób, że obecnie można wybrać, czy wiadomość ma zostać wysłana osobno do każdego adresata określonego w polu Wyślij do
. Ponadto dodano możliwość określenia adresatów w polach Do wiadomości
i Ukryte do wiadomości
. (T:0752)
W przypadku włączenia opcji osobnego wysyłania wiadomości i określenia adresatów w polach
Do wiadomości
iUkryte do wiadomości
, każdy adresat określony w tych polach otrzyma tyle kopii wiadomości, ilu jest adresatów w poluWyślij do
.
Modyfikacja API — pobieranie i zapisywanie danych użytkownika
Zdefiniowano osobne punkty końcowe API dla żądań pobierania i zapisywania danych użytkownika:
-
UserProfiles/GetById
: pobieranie danych użytkownika z listy użytkowników; dostępny tylko dla administratora. -
UserProfiles/SaveUser
: zapis danych użytkownika na liście użytkowników; dostępny tylko dla administratora. -
UserProfiles/Get
: pobieranie danych zalogowanego użytkownika; dostępny dla każdego zalogowanego użytkownika. -
UserProfiles/Save
: zapis danych zalogowanego użytkownika; dostępny dla każdego zalogowanego użytkownika.
Modyfikacja API — weryfikacja użytkownika
W punktach końcowych API dodano weryfikację roli systemowej użytkownika wysyłającego żądanie.
Akcje systemowe na workflow
W edytorze workflow dodano możliwość użycia akcji systemowych w ustawieniach Akcje uruchamiane przed
i Akcje uruchamiane po
. (T:0606)
Poprawki i usunięte błędy
PublicAPI — kategorie załączników
Zmodyfikowano obsługę załączników w interfejsie Public API. Obecnie parametr attachmentCategoryId może mieć wartość NULL. W takiej sytuacji załącznikowi zostanie przypisana kategoria domyślna według definicji dokumentu biznesowego. (T:0781)
Widok listy — zachowywanie ustawień
Ustawienia grupowania, filtrowania i sortowania określone przez użytkownika są obecnie zapamiętywane przez nAxiom na czas trwania sesji użytkownika. Do tej pory były one resetowane zawsze po wyjściu z widoku listy do innego widoku lub formularza. (T:0703)
Pola zależne od listy wyboru
Zmieniono działanie zależności pól formularza od kolumn listy rozwijanej definiowanych w oknie dialogowym Konfiguracja listy wyboru
w taki sposób, że obecnie można wybierać zależne pola z całego formularza. Do tej pory dostępne były tylko pola z bieżącego wiersza formularza. (T:0772)
Poprawiono działanie zależności pól formularza od kolumn listy rozwijanej typu uniqueidentifier. (T:0532)
Lista asynchroniczna
W oknie dialogowym Konfiguracja listy wyboru
dla kontrolki Lista wyboru (SQL - Async) dodano informację, że wartość kolumny [key] zwracana przez zapytanie źródłowe dla listy musi być typu tekstowego. (T:0674)
Pole numeryczne
Zablokowano możliwość zmiany przy użyciu kółka myszy wartości w polu numerycznym, kiedy strzałki do zmiany wartości (spinner) są wyłączone. (T:0715)
Przekierowywanie użytkownika w aplikacji FrontSPA
Wprowadzono zmianę w aplikacji FrontSPA, która powoduje, że obecnie po zamknięciu formularza użytkownik jest przekierowywany do obiektu, z poziomu którego ten formularz został otwarty. W szczególności, po otwarciu formularza z widoku listy, a następnie zamknięciu tego formularza, wyświetlany jest ponownie widok listy.
Nieaktualne wpisy w OpenedForms
Usunięto błąd, który powodował że pomimo zamknięcia formularza wyświetlonego w trybie okna dialogowego, w tabeli OpenedForms pozostawały wpisy dotyczące tego formularza.
Zapytania do Linked Servers
Usunięto problem z zapisem formularza w przypadku użycia w definicji kontrolek zapytań SQL kierowanych do serwerów połączonych (Linked Servers). (T:0782)
Załączniki w formacie docx
Usunięto błąd, który uniemożliwiał pobieranie załączników w formacie docx. (T:0762)
Przycisk eksportu do Excel
Usunięto błąd, który powodował, że nie można było wyłączyć wyświetlania przycisku eksportu w formacie Excel w widoku listy. (T:0761)
Ustawienia dostępności przycisków
Usunięto błąd powodujący problemy z wyświetlaniem przycisku, dla którego skonfigurowano ustawienia dostępności za pomocą zapytania SQL. (T:0750)
Przenoszenie przycisku między sekcjami
Usunięto błąd, który powodował, że po przeniesieniu przycisku z jednej sekcji do innej, podczas zapisu formularza był wyświetlany komunikat „The instance of entity type ‘FormFieldParameter’ cannot be tracked because another instance with the same key value for {‘Id’} is already being tracked…”.
Mapowanie NULL do podprocesów
Usunięto błędy w mapowaniu wartości NULL do podprocesów dla wszystkich obsługiwanych typów danych. Obecnie taka wartość jest mapowana do podprocesu jako NULL. (T:0748)
Odświeżanie formularza
Poprawiono błąd, który powodował, że odświeżenie formularza z danymi zapisanego dokumentu biznesowego wyświetlanego w trybie okna dialogowego, powodowało wyczyszczenie wartości z pól tego formularza. (T:0745)
Usunięto błąd akcji Odśwież formularz
, który mógł powodować, że mimo włączenia atrybutu widoczności po wykonaniu akcji przycisk w nagłówku formularza nie wyświetlał się. (T:0738)
Błąd trybu tylko do odczytu dla listy rozwijanej
Usunięto błąd w działaniu kontrolki typu lista rozwijana, który mógł powodować, że była ona wyświetlana w trybie tylko do odczytu, chociaż jej atrybut isReadOnly nie był nigdzie modyfikowany. (T:0746)
Nieaktualne wpisy w kontekście formularza
Poprawiono błąd, który powodował, że pomimo wyłączenia zaznaczenia pozycji w sekcji typu lista, wartości dla tych pozycji nadal były przechowywane w kontekście formularza. (T:0735)
Dublowanie filtrów na liście
Poprawiono błąd, który powodował dublowanie zapisanych filtrów na liście Filtry
w widoku listy.
Edycja inline — datepicker
Poprawiono błąd w działaniu kontrolki datepicker w trybie edycji inline.
Akcja Otwórz formularz
na workflow
Poprawiono błędne działanie przekazywania do formularza wartości określonych w akcji Otwórz formularz
. Problem dotyczył sytuacji, kiedy ta akcja była używana we właściwościach bloku workflow Akcje uruchamiane przed
i Akcje uruchamiane po
. (T:0717)
Konfiguracja edycji inline
Usunięto błąd, który mógł w określonych okolicznościach powodować usuwanie akcji zapisu z konfiguracji edycji inline dla widoku listy.
PublicAPI — załączniki
Usunięto błędy w metodach API dotyczących załączników.
Informacje uzupełniające i sprostowania
Warunki obsługi ACL dla widoków listy
W celu zapewnienie prawidłowego działania uprawnień ACL dla widoków list, konfiguracja listy musi spełniać następujące warunki:
- Na karcie
Ogólne
musi zostać zaznaczone co najmniej jedno pole wyboru w grupieWeryfikacja uprawnień
(Według szablonu instancji
i/lubWedług szablonu statusu
) - Zapytanie źródłowe dla widoku listy musi zwracać kolumny [ACLId] i [Status]
- Na karcie
Ustawienia listy
muszą być włączone przełącznikiStronicowanie
iFunkcja server-side
W przypadku widoków list generowanych poleceniem Utwórz flow
dwa ostatnie warunki są spełnione domyślnie, Dla widoków tworzonych samodzielnie, konsultant musi dopilnować, aby zostały one spełnione. (T:0666)
SQL RAISERROR
W Informacjach do patcha 1.4.2.4 podano błędny zakres poziomu istotności dla ostrzeżeń wyświetlanych przy użyciu metody SQL RAISERROR. Poprawny zakres wynosi od 6 do 10.
W Informacjach do wersji 1.4.2.1 podano błędny przykład użycia przedrostka [MSG] w celu wyłączenia komunikatów systemowych (Wykonano poprawnie
/Wystąpił błąd
). W celu prawidłowego działania ten przedrostek musi zostać umieszczony na początku treści komunikatu, np:
RAISERROR(
'[MSG]Wartość jest nieprawidłowa.', -- tekst komunikatu
10, -- poziom istotności
1 -- stan
)
Kontrolka Pole czasu
Kontrolka Pole czasu
obsługuje tylko typ danych datetime i zapisuje w bazie danych wartości w formacie:
1900-01-01 *godz*:*min*:02.000
gdzie godz i min to wartość godziny i minuty ustawiona przy użyciu kontrolki. sekundy i milisekundy nie są obsługiwane. Aby prawidłowo wyświetlać czas w tej kontrolce należy użyć formatu HH:mm
. (T:0724)