Opis akcji: Wywołaj webservice

Facebooktwitterpinterestlinkedinmail

Dotyczy 8.2.x 8.1.x, Autor: Piotra Bagazja

Bardzo częstym scenariuszem w systemach ERP jest migracja lub integracja danych pomiędzy dwoma różnymi systemami. Problemem jest często różnica w technologiach, które to powodują komplikację w architekturze przesyłania danych i ich formacie. Sprawę tę rozwiązują webserwisy, które są ustandaryzowane co do formatu i przesyłania danych.

Obsługa Webserwisów w BPS

Staramy się wspierać obsługę web serwisów w każdej formie. Niestety stopień skomplikowania niektórych wymaga pisania akcji dedykowanych, resztę można obsłużyć  z poziomu standardowej akcji.

1.    Konfiguracja Akcji

Akcję możemy znaleźć w grupie „Integracja”

1

Po podniesieniu okna konfiguracji należy wprowadzić interesujące dane. Począwszy od Adresu URL Serwisu, w miejsce które można wpisać bezpośredni adres na webserwis lub na dokument go opisujący (WSDL). W przykładzie poniższym jest to http://dev38:9001/ItsOver9000Service.svc ale dozwolone także http://dev38:9001/ItsOver9000Service.svc?wsdl .

Naciśnięcie guzika Połącz zaskutkuje próbą wywołania podanego Adresu w celu pobrania danych na temat Metod oraz Typów obsługiwanych przez nie. W przypadku braku usługi pod wskazanych adresem dostaniemy komunikat informujący o braku połączenia z podanym URL. W przypadku gdy web service odpowie poniższa lista o nazwie Metoda do uruchomienia zostaje wypełniona metodami udostępnianymi przez wołaną usługę.

Wybór jednej z nich spowoduje uzupełnienie poniższej tabeli danymi. Odpowiednio jest to nazwa parametru ( w moim przypadku „value”) jego Typ (liczba całkowita) oraz Wartość która jest pusta. Ostatnią kolumnę należy uzupełnić o dane które chcemy przekazać w wybranym parametrze. Pole to obsługuję wartości stałe np. 123, wartości kontekstowe w formacie {I:CURRENTUSER} co przekłada się  oraz zmienne procesu ( w przykładzie rok).

Ostatnim funkcjonalnością jest Wpisz wynik do atrybutu. Zaznaczenie checkbox zezwoli na wybór atrybutu do którego będziemy chcieli zapisać rezultat wywołania metody webserwisu. Istnieje tu jednak ograniczenie ze względu na zwracany typ. Musi to być jeden z podstawowych typów, takich jak: Liczba Całkowita, Liczba zmiennoprzecinkowa, Tekst, Pojedynczy znak, Data. Inne wartości złożone (Complex Types) będą skutkować wpisaniem do wybranego atrybutu nie wartości a nazwy typu.

2

 

2.    Użycie Akcji

Użyty w poniższym przykładzie webserwis i jego metoda IsOver9000 zwraca, Czy przekazana wartość jest większa od 9000 i jeśli tak o ile. Wynik wywołania akcji z belki „CZY WIEKSZE NIŻ 9000?” poniżej:

 

3

4

 

 

Więcej informacji programistycznych znajdziecie Państwo na portalu: http://developer.webcon.com