Microsoft Dynamics NAV 2018 to także nowe możliwości oraz usprawnienia dla programistów. Od wersji NAV 2017 wprowadzono nowe funkcjonalności takie jak zmiany w funkcjach C/AL, ustawień serwera, personalizację Klienta sieci WWW i wiele innych.
Zmiany w funkcjach C/AL, typach i właściwościach danych
Pełną listę zmian, jakie wprowadzono w funkcjach C/AL oraz typach i właściwościach danych można znaleźć w części Changes in C/AL Behavior and Support in Microsoft Dynamics NAV 2018.
Nowe ustawienia instancji serwera Dynamics NAV i konfiguracji aplikacji dla domyślnego języka i obsługiwanych języków
Wprowadzono dwa nowe ustawienia dla instancji serwera Microsoft Dynamics NAV 2018 odpowiadające za kontrolę języka w kliencie systemu:
- Domyślny język
Określa, który z zainstalowanych języków na serwerze będzie używany jako domyślny w kliencie aplikacji. Dla przykładu, ustawienia języka domyślnego w kliencie sieci Web determinują język w sytuacji, gdy ustawienia języka przeglądarki internetowej różnią się od ustawień obsługiwanych języków. Należy ustawić wartość odpowiadającą obowiązującej skróconej nazwie języka, np. en- USA, da-Dania.
- Obsługiwane języki
Określa, które z zainstalowanych języków na serwerze będą używane w kliencie Microsoft Dynamics NAV 2018. W sytuacji, gdy użytkownik nie określi żadnego języka, wszystkie zainstalowane języki staną się dostępne. Użytkownicy mają możliwość przełączania między obsługiwanymi językami z poziomu klienta.
Właściwe wartości wybiera się z rozdzielonej średnikami listy zawierającej kody języków z lokalnymi odmianami. Aby ułatwić użytkownikom konfigurację i zawęzić możliwości wyboru, należy wprowadzić odpowiednie kody języków, np. da-DK, en-US, en-CA.
Ustawienia domyślnego języka oraz obsługiwanych języków można zastosować globalnie dla instancji serwera Dynamics NAV lub dla aplikacji. W przypadku użycia ich dla całej aplikacji, ustawienia instancji serwera mają wartość podrzędną i zostaną zastąpione ustawieniami globalnymi dla całej aplikacji.
Istnieje możliwość zmiany tych ustawień dla instancji serwera Microsoft Dynamics NAV za pomocą narzędzia Dynamics NAV 2018 Administration Tool, polecenia cmdlet Set-NAVServerConfiguration z poziomu Dynamics NAV Administration Shell lub poprzez modyfikację pliku konfiguracyjnego instancji serwera (CustomSettings.config).
Dla ustawień właściwych dla aplikacji, można użyć polecenia cmdlet Set-NAVServerApplicationConfiguration w Microsoft Dynamics NAV Administration Shell lub wprowadzić modyfikacje w pliku konfiguracyjnym.
Zmiany ustawień serwera bez konieczności ponownego uruchamiania
Część zmian konfiguracyjnych może być wprowadzona bez konieczności restartu serwera. Wykorzystywane jest do tego polecenie skryptu PowerShell cmdlet Set-NAVServerConfiguration. Zakres operacji SET może obejmować:
- Pamięć
- Plik konfiguracyjny
- Wszystko
Domyślnie, zakres operacji obejmuje plik konfiguracyjny, jeśli ustawienie to nie zostało zmienione.
Możliwość opóźnienia usunięcia danych firmy
Dzięki nowej opcji konfiguracyjnej instancji serwera Dynamics NAV 2018 o nazwie Enable Incremental Company Deletion („Włącz stopniowe usuwanie firmy”) możliwe jest opóźnienie usunięcia danych firmy do czasu, aż serwer będzie posiadał zasoby do wykonania tego zadania. Dla użytkownika, usunięcie danych firmy odbywa się natychmiastowo a usunięte dane przestają być widoczne w kodzie C/AL.
Serwer wykorzystuje harmonogram zadań do rzeczywistego usunięcia danych. Możliwe jest także skonfigurowanie okresu czasu, w jakim serwer ma wykonać zadania systemowe. W tym celu, należy zdefiniować wartości w polach „Godzina początkowa zadania systemowego” i ”Godzina zakończenia zadania systemowego”.
Wyświetlana nazwa profilu widoczna w widoku głównym użytkownika bazuje na etykiecieML obiektu strony widoku głównego
Wyświetlana nazwa profilu widoczna w widoku głównym użytkownika bazuje na etykiecieML obiektu strony widoku głównego. Podobnie, wyświetlana nazwa profilu widoczna w widoku głównym użytkownika widoku głównego bazuje na właściwości etykietyML obiektu strony widoku głównego, zamiast pola „Opis” w tabeli „Profile”. Powoduje to zmniejszenie zależności pomiędzy danymi a poprawkami błędów co, w rezultacie, wpływa na poprawność językową wyświetlanej nazwy widoku głównego użytkownika.
Zmiana wyświetlanej nazwy firmy
Tabela systemowa 200000006 Firma zawiera pole z typem danych tekstowych o nazwie „Wyświetlana nazwa”. W polu wprowadza się tekst, który jako informacja o firmie będzie wyświetlany w interfejsie użytkownika, na przykład w górnej części widoku głównego oraz na stronach list. Jeśli nie zdefiniowano wyświetlanej nazwy, funkcję tę przejmuje wartość tekstowa z pola „Nazwa”. Pole to jednak nie ma zastosowania w kliencie Windows Dynamics NAV.
Zmiana wyświetlanej nazwy firmy ma bezpośredni wpływ na wygląd raportu, a także wyświetlanie nazwy firmy w interfejsie użytkownika w kliencie aplikacji. Dodano nową funkcję C/AL – COMPANYPROPERTY.DISPLAYNAME – umożliwiającą zwrot wartości tekstowej dla wyświetlanej nazwy firmy. Dla zestawów danych raportów uruchomiono funkcję kompatybilności wstecznej – układów danych nie trzeba tworzyć od nowa (zestawy danych są teraz powiązane z polem „Nazwa firmy” i nową funkcją, zamiast wcześniej używaną funkcją „Nazwa firmy”). Wszystkie raporty zaktualizowano w taki sposób, aby zamiast nazwy firmy zawierały tekst wprowadzony w polu „Wyświetlana nazwa”.
Nowe funkcje dla typu danych MediaSet
Dla typu danych MediaSet dodano następujące funkcje C/AL wspierające zarządzanie nośnikami danych dla rekordów:
- Funkcja INSERT
Pozwala na dodawanie istniejącego w bazie obiektu MediaSet do rekordu.
- Funkcja REMOVE
Pozwala na usunięcie obiektu ze wskazanego rekordu.
- Funkcja ITEM
Pozwala na pobranie unikalnego identyfikatora obiektu nośnika danych na podstawie numeru indeksu obiektu.
Typ danych SessionSettings
Nowy typ danych SessionSettings umożliwia dodawanie, edycję i pobieranie ustawień personalizacji użytkownika dla bieżącej sesji klienta. Typ danych obsługuje następujące nowe funkcje:
- COMPANY
Umożliwia pobranie lub ustawienie firmy w obiekcie SessionSettings.
- INIT
Umożliwia tworzenie instancji obiektu SessionSettings, gdzie wprowadza się właściwości personalizacji użytkownika dla bieżącego klienta (takie jak Identyfikator profilu i Firma) zapisywane w bazie danych.
- LANGUAGEID
Umożliwia pobranie lub ustawienie identyfikatora języka.
- LOCALEID
Umożliwia pobranie lub ustawienie identyfikatora ustawień regionalnych.
- PROFILEAPPID
Umożliwia pobranie lub ustawienie identyfikatora rozszerzenia dostarczającego profil.
- PROFILEID
Umożliwia pobranie lub ustawienie identyfikatora profilu.
- PROFILESYSTEMSCOPE
Umożliwia pobranie lub ustawienie zakresu profilu określającego czy profil jest profilem systemowym czy profilem Tenant.
- REQUESTSESSIONUPDATE
Umożliwia przekazanie obiektu SessionSettings do klienta w celu wygenerowania żądania nowej sesji korzystającej z właściwości personalizacji użytkownika, które ustawiono dla obiektu.
- TIMEZONE
Umożliwia pobranie lub ustawienie strefy czasowej.
Właściwości ObsoleteState i ObsoleteReason dla tabel, pól i kluczy
Obiekty, pola i klucze tabeli obejmują właściwości ObsoleteState i ObsoleteReason, za pomocą których system komunikuje się z programistą w przypadku, gdy tabela, pole lub klucz stają się nieaktualne, umożliwiając mu odpowiednie dostosowanie kodu aplikacji.
Dla właściwości ObsoleteState można zdefiniować trzy wartości stanu: Brak, Oczekujący i Nieaktualny. Brak to wartość ustawiana domyślnie. Stan Oczekujący oznacza, że element może stać się nieaktualny w przyszłości. Ustawienie to nie ma wpływu na bieżące użycie tabeli, pola lub kluczu w kodzie. Stan Usunięty oznacza, że element oznaczono w bazie danych jako nieaktualny. Nie został on jednak usunięty z bazy danych. Odniesienia do elementów kodu są dozwolone tylko dla jednostek kodu aktualizacji.
Właściwość ObsoleteReason ma charakter wyłącznie informacyjny i jest polem, w którym można wprowadzić dowolny tekst określający przyczynę zmiany stanu na Oczekujący lub Nieaktualny. Zaleca się również podanie wskazówek dotyczących użycia pól i tabel, które je zastąpiły.
Jednostka kodu zarządzania Tenantami
Jednostka kodu 417 Zarządzanie Tenantami udostępnia kilka ustawień Tenantów poprzez użycie następujących globalnych funkcji:
- GetTenantId
Umożliwia pobranie identyfikatora przypisanego do Tenanta.
- GetAadTenantId
Umożliwia pobranie identyfikatora GUID Tenanta z usługi Azure Active Directory do aplikacji Microsoft Dynamics NAV.
- GetTenantDisplayName
Umożliwia pobranie wyświetlanej nazwy Tenanta.
- IsSandbox
Zwraca wartość „Prawda” w sytuacji, gdy Tenanta oznaczono dla środowiska Sandbox.
Konsolidacja funkcjonalności specyficznych dla danego kraju i regionu
Wiele z funkcji specyficznych dla danego kraju lub regionu zastąpiono funkcjonalnością W1 lub przeniesiono do W1:
- Funkcje zastąpione w Wielkiej Brytanii:
- Kalendarze systemowe
- Okresy obrachunkowe
- Tworzenie i eksportowanie plików BACS
- Określanie typu dostawy w dokumentach
- Lokalne raporty zastąpione w Wielkiej Brytanii:
- Wydane i niezafakturowane zapasy
- Przyjęte i niezafakturowane
- Niezaksięgowana sprzedaż
- Niezaksięgowane zakupy
- Raport Drukuj niezaksięgowane zapasy (ta sama funkcja dostarczana za pomocą widoku Wydane i niezafakturowane zamówienia sprzedaży, Niezafakturowane zamówienie zakupu w W1)
- Lokalne raporty przeniesione do W1:
- Dzienny zapis VAT
- Dzienny zapis księgi nabywcy
- Dzienny zapis księgi dostawcy
Personalizacja w kliencie sieci Web
Możliwość personalizacji swojego środowiska pracy bezpośrednio z poziomu przeglądarki internetowej włączono domyślnie dla wszystkich użytkowników. Dostosowanie widoku głównego można rozpocząć po wybraniu menu „Personalizacja” znajdujące się pod awatarem w panelu logowania w prawym górnym rogu strony. Wprowadzone zmiany zapisuje się błyskawicznie i są widoczne tylko dla użytkownika, nawet po zalogowaniu się do aplikacji z innego urządzenia.
W nowej wersji dodano kilka najbardziej oczekiwanych przez użytkowników funkcji, takich jak:
- możliwość przenoszenia, ukrywania lub wyświetlenia pól na stronie;
- przenoszenie, ukrywanie lub wyświetlenie kolumn na stronie;
- blokowanie kolumn podczas przewijania strony, tak aby wybrany obszar arkusza pozostał nadal widoczny, podobnie jak w programie Microsoft Excel;
- przenoszenie lub ukrywanie wskaźników;
- możliwość przenoszenia lub ukrywania części stron, takich jak pola informacji lub części widoku głównego użytkownika;
- anulowanie personalizacji i przeprowadzenie jej od nowa.
- Na potrzeby administratorów IT, dodano także opcję blokowania możliwości personalizacji dla grupy użytkowników z poziomu strony „Profil” lub anulowania personalizacji z poziomu wszystkich stron lub strony poszczególnych użytkowników.
Podgląd raportów w kliencie sieci Web
Internet Explorer był do tej pory jedyną przeglądarką internetową obsługującą funkcję podglądu raportów w kliencie sieci Web Dynamics NAV.
W nowej wersji wystarczy kliknięcie przycisku „Podgląd” na stronie żądania raportu, aby podejrzeć wybrany przez użytkownika dokument. Raport zostanie wyświetlony za pomocą kontrolki przeglądarki PDF, dzięki czemu możliwe będzie nawigowanie między stronami raportu oraz pobranie go na komputer użytkownika.
Podgląd raportów w kliencie sieci Web wzbogacono o kilka dodatkowych funkcji obsługiwanych przez wszystkie przeglądarki. Aby przejść do trybu podglądu, należy kliknąć przycisk „Podgląd” na stronie opcji raportu. Na pasku narzędzi znajduje się szereg funkcji umożliwiających dalszą pracę z raportem, takich jak m.in. powiększanie, zmniejszanie oraz pobieranie raportu do pliku.
Kolejne, dwie nowe funkcje dotyczą zaznaczania tekstu i przesuwania jego fragmentów.
- Zaznaczanie tekstu
Funkcja umożliwia zaznaczenie pojedynczych słów, zdań, paragrafów lub wierszy raportu, a następnie kopiowanie ich i wklejanie w innych obszarach aplikacji, na przykład module zarządzania finansami czy dokumencie Microsoft Word.
- Tryb przesuwania
Funkcja umożliwia przesuwanie zaznaczonego obszaru raportu w dowolnym kierunku przy jednoczesnym zachowaniu podglądu pozostałych obszarów. Jest przydatna zwłaszcza podczas powiększania obrazu i przybliżaniu szczegółów.
Platforma ASP.NET Core
Komponenty serwera sieci Web Dynamics NAV 2018 działają obecnie na platformie ASP.NET Core obejmującej najnowsze rozwiązania technologiczne Microsoft w zakresie tworzenia i uruchamiania aplikacji. Dzięki zaawansowanym możliwościom platformy, Dynamics NAV oferuje jeszcze większą elastyczność i skalowalność rozwiązań dostępnych w chmurze. Nowe komponenty serwera usprawniają działanie Microsoft Dynamics NAV 2018 w kliencie sieci Web, wersji na telefon komórkowy i tablet, a także dodatków Microsoft Outlook oraz aplikacji SharePoint. Z punktu widzenia użytkownika nowa wersja nie różni się znacząco od poprzednich pod względem funkcjonalności aplikacji i jej działania. Jedynie administratorzy systemu mogą zauważyć różnice w działaniu poleceń cmdlet Dynamics NAV Administration Shell.
Zamiast pliku konfiguracyjnego web.config, podczas wprowadzania ustawień dla instancji serwera sieci web, używa się pliku navsettings.json.
OData Version 4
Microsoft Dynamics NAV 2018 wspiera usługi sieci Web bazujące na protokole OData V4. W jednostkach korzystających z OData V4 istnieje możliwość tworzenia akcji powiązanych, np. proces tworzenia Faktury począwszy od Oferty, a następnie jej zaksięgowanie. Tworzenie powiązanych akcji wiąże się z utworzeniem nowej funkcji i jej właściwości umożliwiających udostępnianie akcji usługi OData V4 i zwrot wyników. Narzędzie OData Relational Query Support pozwala na uwzględnienie powiązanych jednostek w odpowiedziach OData V4. Na przykład, informacje wiersza faktury sprzedaży zostają włączone w odpowiedzi rekordu nagłówka faktury sprzedaży.
Zmiany w poleceniach cmdlet Windows PowerShell
Nowa wersja Microsoft Dynamics NAV 2018 przynosi kilka zmian w poleceniach cmdlet w Dynamics NAV Administration and Development Shells.
Biblioteka API
W Microsoft Dynamics NAV 2018 utworzono bibliotekę API, pozwalającą na tworzenie aplikacji zewnętrznym developerom bez znajomości wewnętrznej struktury NAV. REST API jest warstwą obejmującą zestaw standardowych usług sieci Web, a także interfejs umożliwiający tworzenie integracji z wielokrotnym użyciem. API bazuje na 44 encjach systemu i zapewnia dostęp do kluczowych elementów funkcjonalności zarządzania finansami takich jak dane firmy, zapisy dzienników, dokumenty sprzedaży i zakupów, raporty finansowe, zapisy nabywcy i dostawcy.
Dzięki bibliotece API programista ma wgląd w uproszczoną strukturę danych tych elementów, dzięki czemu może tworzyć nowe zintegrowane aplikacje bez znajomości modelu danych i logiki biznesowej Dynamics NAV. Programista ma możliwość kodowania w oparciu o statyczny i zaawansowany interfejs API oraz wprowadzanie zmian według własnych potrzeb i harmonogramu. W przypadku potrzeby dokonania zmiany API, zaleca się skopiowanie stron API, a następnie dostosowanie kopii. Aby uniknąć ryzyka konfliktu z interfejsem API Microsoft, programiści mogą publikować na różnych punktach końcowych API. Microsoft kontynuuje prace nad API, gwarantując ciągłość rozwiązań.
W nowej wersji Microsoft Dynamics NAV 2018, narzędzie Microsoft Dynamics NAV Administration Console wzbogacono o funkcję włączania i wyłączania punktu końcowego API. Domyślnie, punkt końcowy API jest wyłączony. Dzięki temu, nowe punkty końcowe nie muszą być udostępniane automatycznie. Ich włączenie jest zależne od decyzji administratora systemu.
Wprowadzono również ustandaryzowaną obsługę wyjątków zwracanych przez platformę API, ułatwiając programistom dalszą pracę z kodem.
Typ strony API
Dodano nowy typ strony umożliwiający projektowanie punktów końcowych API dla usług sieci Web.
Uniwersalna aplikacja działająca na wielu urządzeniach
Microsoft Dynamics NAV 2018 działa na wielu urządzeniach! Dzięki najnowszym aktualizacjom aplikacji dla Windows, rozwiązanie współpracuje z urządzeniami holograficznymi, takimi jak Microsoft HoloLens czy narzędziem wspierającym pracę zespołową – Microsoft Surface Hub.
Funkcja Windows 10 Continuum
Telefon z możliwościami komputera! Nowa wersja systemu Microsoft Dynamics NAV wspiera obsługę funkcji Continuum dla Windows 10 pozwalającej na podłączenie telefonu do monitora poprzez bluetooth i nawigowanie za pomocą klawiatury i myszy Bluetooth.
Po podłączeniu urządzenia mobilnego z systemem Windows 10 do ekranu komputera, Microsoft Dynamics NAV przełącza się automatycznie w tryb pulpitu. Funkcja Continuum może być alternatywą dla klienta sieci Web, ponieważ umożliwia nawigację na dużym ekranie za pomocą klawiatury i myszy.