Generowanie skryptu OData na arkuszy EI_Script_OD

 

Aby utworzyć skrypt OData na arkuszu EI_Script_OD, z menu wstążki należy wybrać opcję „Dodaj serwis OData”. Pojawi się okno definiowania wywołania serwisu:

W tym oknie definiuje się opcje wywołania serwisu takie jak metoda http (GET, POST, PUT,PATCH,…), uri serwisu OData i parametry jego wywołania. W przypadku metod innych niż GET, po prawej stronie okna, definiowane są dodatkowo parametry przekazywane wraz z wywołaniem serwisu (nagłówek i dane).

 

Znaczenie poszczególnych elementów okna opisuje poniższa tabela:

Nazwa elementu

Opis znaczenia elementu

Rodzaj serwisu OData

Definiuje czy serwis jest serwisem SAP, czy innym serwisem OData nie implementowanym w systemie SAP.

Wersja serwisu OData

Dla serwisu SAP do wyboru albo V2 albo V4 (odpowiadająca drugiej, lub czwartej wersji OData)

Metoda HTTP

Metoda http. Większość serwisów OData implementuje metodę GET (raportowanie). Część implementuje dodatkowo zmianę, tworzenie danych i kasowanie za pomocą metod POST/PATCH/DELETE. Implementowane metody znajdują się w opisach serwisów OData, np. na stronach https://api.sap.com

Protokół

Do wyboru http/ https lub automatyczny wg konfiguracji systemu.

Nazwa hosta

Adres serwera, na którym zaimplementowano serwis OData. Można wybrać automatycznie klawiszem „Wyszukaj host i port”.

Port

Port serwera, na którym zaimplementowano serwis OData. Można wybrać automatycznie klawiszem „Wyszukaj host i port”.

Ścieżka do usługi

Ścieżka uri bezpośrednio przed usługą OData. Domyślna ścieżka ustalana na podstawie wersji usługi OData.

Serwis OData

Usługa OData z przedrostkami np. przestrzenią nazw. Można wybrać automatycznie klawiszem „Wyszukaj usługę OData”.

Zasób OData

Zazwyczaj tzw. entity set. Można wybrać automatycznie klawiszem „Wyszukaj EntitySet”.

Parametry 1/2

Dalsze parametry wywołania OData. Można wybrać z listy klawiszem „Wyszukaj”.

Format

Format rezultatu. Powinien być wybrany JSon, chyba że serwis nie obsługuje tego formatu. W przypadku wybrania formatu XML (niezalecene), należy ustawić parametr konfiguracyjny EI_C_OD_MATCHING_LEVEL Poziom dopasowania rezultatu (0 = dokładny) na wartość 1.

Klawisz „Testuj zapytanie GET”  lub „Użyj zapytania GET jako danych wywołania”

Umożliwia przetestowanie zapytania GET lub jeśli wybrano opcję inną niż GET, pobranie danych zapytania GET, jako danych do wywołania innej metody http np. PUT.

Rekordy (0 = wszystkie)

Jeśli > 0, wtedy zapytanie GET jest filtrowane frazą $top=N, gdzie N to liczba wpisana w pole. Jeśli N = 0, to brak filtrowania.

Uwaga! Filtrowanie to dotyczy tylko przygotowania zapytania - czyli trzech przypadków:

- testów zapytania GET

- pobrania zapytania GET, jako danych wejściowych zapytania innego niż GET

- do pobrania danych definicji rezultatu zapytania (wykonywane po naciśnięciu klawisza OK).

Uwaga! Czasem pożyteczne przy definiowaniu zapytania POST lub PATCH, może być ustawienie małej wartości (np. 2-3) do pobrania danych wywołania, i przestawienie na 0 lub dużą wartość na moment pobierania definicji zapytania (przed naciśnięciem klawisza OK).

Pole zaznaczenia „Użyj zapytania GET, by pobrać CSRF-Token oraz ETag

Wybranie sprawia, że przed wywołaniem innych metod niż GET, EasyInput najpierw wywołuje metodę GET i z nagłówka odczytuje parametry CSRF-Token, oraz jeśli istnieje ETag i przekazuje je do kolejnego wywołania jako parametry nagłówka CSRF-Token oraz If-Match.

Nagłówek zapytania

Określa format danych zapytania dla zapytań innych niż GET.

Dane zapytania

Dla zapytania GET w oknie tym można zobaczyć wynik testu zapytania. Dla zapytań innych niż GET określa ciąg znaków przekazywany jako dane zapytania. Najczęściej jest to wyrażenie JSon, pobrane z wywołania GET (klawisz Użyj zapytania GET jako danych wywołania).

 

Po zdefiniowaniu wszystkich potrzebnych parametrów wywołania serwisu OData należy wybrać OK, by EasyInput automatycznie utworzył skrypt OData w arkuszu EI_Script_OD.

Uwaga! Definicja pól wyjściowych zapytania (EData) pobierana jest poprzez wywołanie zapytania GET, a nie za pomocą odczytu matadanych. Stąd jeśli brak danych w systemie, lub ustawiono małą liczbę rekordów zapytania, informacje o polach wyjściowych mogą być niepełne!

Skrypt po wygenerowaniu należy uzupełnić przypisując parametry wejściowe (WriteData) i wyjściowe (ReadData). Zobacz ogólny opis definiowania skryptu w EasyInput.