Co nowego (i fajnego) w Dynamics 365 9.0?

Dynamics 365, top5

W dniach 20.07.2017 – 22.07.2017 miał miejsce „Dynamics 365 Preview Executive Briefing”. Było to wydarzenie, w czasie którego managerowie z Microsoft opowiadali o funkcjonalnościach, które pojawią się w wersji systemu Dynamics 365 oznaczonej numerem 9.0. Osobom, które przegapiły wspomnianą mini-konferencję zachęcam do zapoznania się z dostępnymi w internecie nagraniami. Można znaleźć je na platformie eventbuilder.com pod następującymi adresami:

Dzień 1: https://infopedia.eventbuilder.com/event?eventid=r9h2n6

Dzień 2: https://infopedia.eventbuilder.com/event?eventid=t2n8h3

Dzień 3: https://infopedia.eventbuilder.com/event?eventid=u0d3a5

Poniżej znajdziecie listę nowych rzeczy, które pojawią się w nowej wersji systemu i które z różnych względów przypadły do gustu niżej podpisanemu. Większość materiałów związanych z Dynamics 365 9.0 i dostępnych w internecie koncentruje się na funkcjonalnych nowościach w systemie. W przypadku poniższej listy chciałem natomiast skupić się na tematach związanych z samą platformą,  możliwościami jej rozszerzania oraz budową niestandardowych aplikacji XRM w oparciu o nią.

Uwaga: Używając nazwy Dynamics 365 w poniższym tekście mam na myśli przede wszystkim obszary funkcjonalne oraz techniczne obejmujące Dynamics Customer Engagement, czyli „dawny” Dynamics CRM (czyli Sales, Marketing oraz Customer Service). Wszystkie screeny wykorzystane w artykule pochodzą natomiast z materiałów udostępnionych w ramach „Dynamics 365 Preview Executive Briefing”.

Zmiany w interfejsie użytkownika

W Dynamics 365 9.0 Microsoft zdecydował się na wprowadzenie nowego interfejsu użytkownika, tzw. Unified Inteface. Będzie to ujednolicony UI dostępny z poziomu niemalże wszystkich aplikacji, które umożliwiają dostęp do Dynamics 365. Nowy interfejs będą wykorzystywać m.in.: Dynamics 365 Business Edition w wersji przeglądarkowej, aplikacje przeznaczone dla tabletów oraz telefonów z systemami Android/iOS/Windows 10, Dynamics 365 App for Outlook oraz Customer Service Hub (dawny Interactive Service Hub). Jest to doskonała wiadomość ponieważ w ostatnich latach Dynamics 365 posiadał kilka mocno różniących się od siebie interfejsów dostępowych. Niestety Microsoft zachował się w tym przypadku nieco zachowawczo i nie zdecydował się na wprowadzenie Unified Interface w Dynamics 365 Enterprise Edition, czyli najbardziej „wypasionej” i przeznaczonej dla największych klientów wersji swojej aplikacji. W tym przypadku będziemy mieć do czynienia z dawnym klientem webowym, który na szczęście przeszedł również solidny faceliffting.

 

 

Wirtualne encje

Chciałoby się powiedzieć: „Nareszcie!”. O wirtualnych encjach (virtual entities) usłyszeliśmy po raz pierwszy w momencie wydania wersji 2015 systemu Dynamics CRM. Wygląda na to, że kilka lat później w końcu otrzymamy oczekiwaną funkcjonalność. O  co chodzi? Wirtualne encje są bytami reprezentującymi dane znajdujące się poza bazą systemu Dynamics 365. Z punktu widzenia narzędzi umożliwiających dostosowywanie systemu nie różnią się one niczym od „zwykłych” encji w systemie (poza flagą Virtual = TRUE). Możemy tworzyć więc dla nich formatki, widoki, raporty, wykorzystywać je w wyszukiwaniu zaawansowanym oraz systemach raportowych dostarczanych w ramach platformy. Nie posiadają one natomiast odpowiadającej im tabeli w bazie danych systemu Dynamics 365. Wirtualna encja musi natomiast posiadać zdefiniowane źródło danych (może być do feed Odata, baza dokumentowa Cosmos DB oraz dowolne inne źródło). Providerem danych są w tym przypadku po prostu pluginy obsługujące zdarzenie Retrieve oraz RetrieveMultiple. Wiele providerów może korzystać z tego samego źródła danych.

Mechanizm ten otwiera przed twórcami rozwiązań opartych o omawianą platformę ogromne możliwości i IMHO jest ostatnim brakującym ogniwem umożliwiającym stuprocentowy relationship-data management z poziomu aplikacji Dynamics 365.

 

Nowa kontrolka Activity Timeline

Nowa kontrolka, która docelowo ma zastąpić wysłużony i mocno toporny Social Pane/Activity wall (niestety póki co tylko w aplikacjach korzystających z Unified Interface). Jest to kolejna doskonała wiadomość. Dzięki bogom z Redmontowa nie będę dostawał już niekontrolowanego ataku śmiechu (oczywiście w myślach ;)) słuchając wszelakich sprzedawców tudzież zaklinaczy rzeczywistości zachwalających dawny Activity Wall, który to (bądźmy szczerzy) był jednym z najbardziej dziadowskich elementów starego interfejsu użytkownika. Nowa kontrolka ma posiadać bogate możliwości konfiguracji i dostosowywania. Programistyczne API umożliwiające interakcje z nią też ponoć się znajdzie.

Listy wielokrotnego wyboru

Nowy typ danych dostępny dla atrybutów encji Dynamics 365. Możliwy do wykorzystywania również z poziomu wyszukiwania zaawansowanego oraz języka zapytań FetchXML.

Ponowinie, chciałoby się powiedzieć: „W końcu!”.

Operator „NOT IN” w wyszukiwaniu zaawansowanym

Nie mam pojęcia w jaki sposób system przetrwał tyle lat bez tej (wydawałoby się) podstawowej funkcji związanej z przeszukiwaniem danych. W końcu jednak pożądany przez wielu operator pojawi się w systemie.

Wsparcie dla lokalizacji łańcuchów znakowych wewnątrz zasobów sieciowych oraz formatu RESX

Żegnajcie własne, pisane często na kolanie biblioteki, umożliwiające lokalizację niestandardowych elementów interfejsu użytkownika. Najnowsza wersja systemu Dynamics 365 ma rozwiązywać ten problem w sposób systemowy i udostępnić stosowne narzędzia/biblioteki związane z lokalizacją developerom. Niestety w czasie konferencji zabrakło szczegółów w jaki sposób zostanie to dokładnie zaimplementowane, idea jest jednak jak najbardziej słuszna.

Dynamics Portals

Newsem dnia była dla mnie wiadomość o udostępnianie kodu źródłowego omawianego rozwiązania w wersji 8.3 na licencji MIT oraz możliwość publikowania zmodyfikowanych portali (zarówno w ramach wdrożeń on-premise oraz on-line). Microsoft zastrzega jednak, że w przypadku korzystania z systemu ze zmodyfikowanym kodem za wsparcie takiego rozwiąznia odpowiada jego dostawca (cytat z pamięci: „Changes in code are self-supported„).

Możliwość dodania niestandardowej strony powitania („Welcome page”) dla każdej aplikacji stworzonej w ramach instalacji Dynamics 365

Niby pierdoła, a jednak strasznie cieszy. Wielu klientów bywało mocno rozczarowanych w momencie, w którym dowiadywali się o niemożliwości zmiany zawartości powitalnego pop-upu w dotychczasowej wersji systemu.

Application Platform Separation

Do tej pory – system Dynamics 365 zawierał pewne, tzw. „pudełkowe” funkcjonalności (Sales & Marketing & Customer Service), których w żaden sposób nie byliśmy w stanie wyłączyć lub odinstalować. Mogliśmy jedynie ukryć je przed użytkownikiem wykorzystując do tego mechanizmy bezpieczeństwa systemu. Począwszy od wersji 9.0 systemu wszelkie moduły funkcjonalne mają być dostarczane jako instalowane solucje Dynamics 365 (tak jak jest to obecnie w przypadku modułów Project Services oraz Field Services). Dotychczasowe, standardowe funkcjonalności systemu są w tym momencie przepisywane i mają wykorzystywać do działania mechanizmy rozszerzania Dynamics 365 (zasoby sieciowe, pluginy, workflowy, itp.). Dzięki temu developerzy rozwiązań opartych o Dynamics 365 uzyskają wgląd i możliwość modyfikacji kodu omawianych rozwiązań. Grupa produktowa będzie miała natomiast możliwość lepszego poznania możliwości (plusów oraz minusów) platformy XRM, dzięki czemu być może w przyszłości otrzymamy bardziej stabilne oraz elastyczne rozwiązanie.

Niestety w tym momencie nie wiadomo jeszcze, czy będziemy mieć możliwość uruchomienia „gołego” systemu, pozbawionego zainstalowanych domyślnie jakichkolwiek modułów funkcjonalnych. Z punku widzenia twórców aplikacji XRM byłoby to jak najbardziej pożądane.

Logowanie informacji o akcjach użytkowników

Wszelkie informacje o operacjach wykonywanych przez użytkowników systemu (operacje CRUD, operacje administracyjne, wewnętrzne procesy systemu, logowanie, uruchamianie workflowów i pluginów) będą od tej pory przechowywane wewnątrz platformy  Office 365 Security & Compliance Center oraz udostępniane za pomocą narzędzi Big Data.

Rozbudowana integracja z Azure Service Bus

Mechanizm pudełkowej integracji z Azure Service Bus był do tej pory mało znany i niewykorzystywany w wielu projektach. W wersji 9.0 sytuacja ta ma ulec zmianie. Możliwości konfiguracji danych „wypychanych” na szynę zostaną znacząco rozbudowane.

Dodatkowo, dodano możliwość wykorzystywania Azure Functions oraz Web Hooks (szczegółowe informacje w jaki sposób będziemy z nich korzystać nie są niestety w tym momencie znane).

Wsparcie dla formatu SVG jako zasobu sieciowego

Może okazać się całkiem przydatne, zwłaszcza w kontekście systemów zintegrowanych z rozmaitymi dostępnymi platformami klasy *GIS.

Uruchamiania niestandardowych akcji (requestów) bezpośrednio z poziomu paska procesu biznesowego

Kolejny obszar, w którym będziemy mogli wykorzystywać niestandardowe requesty Dynamics 365, które to powoli stają się głównym mechanizmem „opakowywania” kodu .NET uruchamianego z poziomu platformy Dynamics 365.

 
To na razie wszystko w temacie nowości. Oczywiście lista zmian w systemie oraz platformie do budowy aplikacji jest znacznie większa. Zachęcam wszystkich do zapoznania się za materiałami do których linki zamieściłem na początku artykułu. Osobiście nie mogę się już doczekać kiedy ww. funkcjonalności zostaną udostępnione w naszej części świata :).

Niestety, niektóre decyzje ogłoszone w czasie Dynamics 365 Preview Executive Briefing nie przypadły mi ewidentnie do gustu. Pierwszą z nich jest „deprekacja” O_O aplikacji Dynamics 365 Outlook Client. Klient z które korzystamy od wielu lat odchodzi niestety na emeryturę, podobnie jak zaimplementowany wewnątrz niego tryb off-line. Główną aplikacją dającą możliwość dostępu do danych Dynamics 365 z poziomu  klienta poczty ma być teraz Dynamics 365 App for Outlook. Niestety funkcjonalnie nie dorównuje ona w tym momencie poprzednikowi. Czas pokaże, czy pozbycie się tego modułu oraz (przede wszystkim)  synchronizacji danych oraz trybu off-line nie okaże się niestety tzw. „deal-killerem” i strzałem w stopę. Od kilku osób zajmujących się sprzedażą dowiedziałem się swego czasu, że Outlook Client był często prezentowany jako zajefajny ficzer, którego to nie posiadał nikt z Microsoftowych konkurentów (czyli obecnie, przede wszystkim SalesForce ;)).

Do tego, że o wersji on-premise systemu prawie nikt już nie wspomina, zdążyłem się już przyzwyczaić. Wersja przeznaczona do instalacji w ramach posiadanej, własnej infrastruktury staje się niestety coraz bardziej zacofana i coraz bardziej różni się funkcjonalnie od wersji on-line. Dziwi mnie natomiast sytuacja, w której podobny „rozjazd” zaczynamy obserwować w przypadku on-line’owych wersji systemu. Mam tu na myśli Dynamics 365 Business oraz Enterprise Edition. Ta pierwsza zaczyna coraz bardziej przypominać nie platformę do budowania aplikacji XRM, tylko jeden z systemów, zbudowany w oparciu o nią. Z jednej strony mamy więc ograniczenia w ilości dostosowań (mniejsza ilość niestandardowych encji, workflowów, itp.), niedostępne narzędzia (np. Unified Service Desk)  lub rozwiązania (Field Services, Project Services) w wersji Business. Z drugiej jednak strony wiele przyjemnych nowości (Unified Interface, uproszczony setup, zarządzanie systemem z poziomu pojedynczej aplikacji bez konieczności wchodzenia do paneli administracyjnych (Office 365, Azure, CRM Administration Center) zostało udostępnionych jedynie w tej wersji. Przyznam, że póki co nie widzę w tym za grosz logiki. Być może za tak dużym zróżnicowaniem funkcjonalnym obu wersji kryje się jakiś chytry plan biznesowy lub strategia, która jest znana jedynie w kręgach decydentów z Redmond.

Pożyjemy, zobaczymy…

Póki co, przyszłość dla developerów, architektów oraz konsultantów tworzących rozwiązania w oparciu o platformę Dynamics 365 wygląda jednak co najmniej zachęcająco :).

Total Views: 181 ,

2 comments

Dodaj komentarz