Podczas rozmowy o platformie ServiceNow, Tomek zapytał mnie: „Edek, a dlaczego Ty właściwie nosisz garnitur? Czy ja Wam opowiadałem historię skąd wziął się ten mój nieszczęsny dress code? Bez którego, tak naprawdę, dzisiaj nie wyobrażam sobie „bycia sobą”. Cała przygoda rozpoczęła się od mojego Curriculum Vitae (o tym skąd wziął się na nie pomysł opowiem Wam innym razem). No bo skoro, postanowiłem mieć swoje CV, to musiało ono wyglądać bardzo profesjonalnie. W końcu CV to wizytówka świadcząca jakim człowiekiem, przepraszam, robotem jest przyszły kandydat na pracownika. A oprócz samego doświadczenia ważnym elementem CV, jeżeli nie najważniejszym, jest właśnie zdjęcie. Stąd też wyniknęła konieczność zakupu garnituru.
Okiem Eksperta:
Popularną platformą, stosowaną w coraz większej ilości firm, jest niewątpliwie ServiceNow. ServiceNow przeznaczone jest do zarządzania różnymi projektami, procesami, obsługi działów kadr, procesów HR, a także działów finansowych. Dzięki wdrożeniu tej platformy firmy zyskują możliwość ujednolicenia procesów oraz przyspieszenia ich realizacji. Dzięki ujednoliceniu procesów pojawia się miejsce na automatyzację zadań pojawiających się na platformie.
Automatyzacja platform takich jak ServiceNow, może oczywiście odbywać się w standardowy sposób poprzez interfejs użytkownika. Jest to dość skuteczne, jednak nie jest to jedyny sposób w jaki możemy tworzyć boty. UiPath daje nam dwa rozwiązania do automatyzacji ServiceNow. Jednym z nich jest połączenie się z Service Now za pomocą konektora UiPath Orchestrator, czyli UiPath Spoke. Dzięki tej opcji możemy kontrolować robota dzięki wykorzystaniu zadań w ServiceNow.
Drugą opcją jest wykorzystanie paczki aktywności, która oferuje kilka aktywności pozwalających na pracę z ServcieNow z poziomu robota. Głównym jej elementem jest ServiceNow Scope w obrębie którego łączymy się z ServiceNow z wykorzystaniem API. Aby zrealizować połączenie niezbędne jest podanie parametrów takich jak: clientID, clientSecret, hasło oraz link do platformy. W obrębie aktywności Service Now Scope możemy wykonywać operacje na zadaniach, pobierać załączniki, aktualizować statusy. Czasami zbiór tych aktywności może być jednak niewystarczający, dlatego polecam również sprawdzenie paczki aktywności stworznej przez Cristi Negulescu. Paczka zawiera aż 90 aktywności związanych z ServiceNow.
Pomimo możliwości pracy z interfejsem, jestem gorącym zwolennikiem wykorzystywania wszystkich dostępnych środków pozwalających na pracę poza interfejsem użytkownika. Przyspiesza to w ogromnym stopniu pracę robotów, jak również gwarantuje wysoką stabilność rozwiązania. Dodatkowo nie narażamy się na możliwość błędów związanych z niepoprawnym odkliknięciem. Zastosowanie tej metody jest również dużym uproszczeniem pracy z załącznikami, gdzie w klasycznym podejściu musielibyśmy skorzystać z kilku kliknięć każdego obarczonego ryzykiem błędu. Korzystając z API pobierzemy je przy użyciu jednej aktywności. W ramach ciekawostki, Edwardowi udało się ustawić status realizacji zadania na wymyślony przez siebie. Użytkownik może wybrać tylko z dostępnych opcji, robot pozbawiony jest takich ograniczeń.
Jednym problemem jaki można napotkać jest znajomość relacji pomiędzy tabelami. Przykładowo, załączniki mogą być rozrzucone pomiędzy dwiema tabelami, gdzie w jednej tabeli kluczem jest numer zadania, a w drugiej numer zadania nadrzędnego. Aby nie tracić dużej ilości czasu na szukanie relacji, warto podejrzeć strukturę obiektów w tabeli, którą chcemy odpytać. Taką możliwość oferują aktywności z paczki UiPathTeam.ServiceNow.Activities, pozwalają również na wykorzystanie zapytań SQL.
Podsumowując ServiceNow dzięki współpracy z UiPath może pełnić rolę narzędzia do kontroli robotów, jak również pozwala na automatyzację wewnętrznych procesów istniejących na platformie. W przypadku, gdy ServiceNow jest pośrednim portalem, w którym rozpoczynamy lub kończymy dany proces, tym bardziej zaleca się wykorzystanie narzędzi działających w tle, aby skrócić maksymalnie działanie robota. Może się to bardzo opłacać zwłaszcza, gdy reszta procesu pracuje w systemie, który ma pewne ograniczenia przetwarzania lub jest zwyczajnie długi. Uważam, że warto zapoznać się z każdą z opcji i wybrać odpowiednią tą, którą najkorzystniej wpłynie na daną automatyzację.