Udostępnij za pośrednictwem


Tworzenie aplikacji do cyklicznego eksportowania danych

Dotyczy tych aplikacji Dynamics 365:
Human Resources

W tym artykule opisano sposób tworzenia aplikacji logicznej Microsoft Azure, która eksportuje dane z programu Microsoft Dynamics 365 Human Resources w harmonogramie cyklicznym. Samouczek korzysta z pakietu usługi DMF zasobów ludzkich REST application programming interface (API), aby wyeksportować dane. Po wyeksportowaniu danych aplikacja logiczna zapisuje wyeksportowany pakiet danych w folderze rozwiązania Microsoft OneDrive for Business.

Scenariusz biznesowy

W jednym z typowych scenariuszy biznesowych dla integracji Microsoft Dynamics 365 dane muszą zostać wyeksportowane do systemu podrzędnego w harmonogramie cyklicznym. Ten samouczek przedstawia sposób eksportowania wszystkich rekordów pracowników z rozwiązania Microsoft Dynamics 365 Human Resources i zapisywania listy pracowników w folderze biznesowym OneDrive for Business.

Wskazówka

Określone dane eksportowane w tym samouczku oraz miejsce docelowe eksportowanych danych są tylko przykładami. Można je łatwo zmienić, aby spełniały wymagania użytkownika.

Używane technologie

W tym samouczku są używane następujące technologie:

Wymagania wstępne

Przed rozpoczęciem wykonywania czynności w tym samouczku należy dysponować następującymi pozycjami:

  • Środowisko zasobów ludzkich, które ma uprawnienia na poziomie administratora w środowisku
  • Subskrypcja systemu Azure do obsługi aplikacji logicznej

Ćwiczenie

Na zakończenie tego ćwiczenia będzie dostępna aplikacja logiczna, która jest połączona ze środowiskiem zasobów ludzkich i kontem użytkownika OneDrive for Business. Aplikacja logiczna wyeksportuje pakiet danych z zasobów ludzkich, poczekaj na zakończenie eksportu, Następnie pobierz wyeksportowany pakiet danych i Zapisz pakiet danych w określonym folderze biznesowym OneDrive.

Zakończona aplikacja logiki będzie podobna do poniższej ilustracji.

Omówienie aplikacji logiki.

Krok 1: Tworzenie projektu eksportu danych w module Human Resources

Stwórz projekt eksportu danych w module Human Resources, który zaekksportuje pracowników. Nadaj projektowi Eksport pracownikównazwę i upewnij się, że opcja Generuj pakiet danych ma wartość Tak. Dodaj jedną jednostkę (Pracownik) do projektu i wybierz format, który ma zostać wyeksportowany. (w tym samouczku jest używany format Microsoft Excel.)

Projekt danych eksportowanie pracowników.

Ważne

Pamiętaj nazwę projektu eksportu tabeli danych. Będzie on potrzebny podczas tworzenia aplikacji logicznej w następnym kroku.

Krok 2: Tworzenie aplikacji logicznej

Większość tego ćwiczenia pociąga za sobą utworzenie aplikacji logicznej.

  1. W portalu Azure utwórz aplikację logiczną.

    Strona tworzenia aplikacji logicznej.

  2. W programie Logic Apps Designer należy rozpocząć od pustej aplikacji logicznej.

  3. Dodaj Wyzwalacz harmonogramu cyklu w celu uruchomienia aplikacji logicznej co 24 godziny (lub zgodnie z wybranym harmonogramem).

    Okno dialogowe harmonogramu.

  4. Skontaktuj się z interfejsem API REST ExportToPackage DMF, aby zaplanować eksport pakietu danych.

    1. Należy skorzystać z akcji Wywołania żądania HTTP z poziomu protokołu HTTP z łącznikiem Microsoft Entra.

      • Adres URL zasobu podstawowego: adres URL środowiska Human Resources (nie zawierają informacji o ścieżce/przestrzeni nazw.)
      • Adres URL zasobu Microsoft Entra:http://hr.talent.dynamics.com

      Banknot

      Usługa Human Resoources nie udostępnia jeszcze łącznika, który udostępniałby wszystkie interfejsy API tworzące interfejs API REST pakietu DMF, takie jak ExportToPackage. Zamiast tego trzeba wywołać interfejsy API, używając nieprzetworzonych żądań HTTPS za pośrednictwem protokołu HTTP z łącznikiem Microsoft Entra. Ten łącznik używa Microsoft Entra ID do uwierzytelniania i autoryzacji dla Human Resources.

      HTTP z łącznikiem Microsoft Entra.

    2. Zaloguj się do swojego środowiska zasobów ludzkich za pośrednictwem protokołu HTTP z łącznikiem Microsoft Entra.

    3. Skonfiguruj żądanie HTTP POST w celu wywołania interfejsu API ExportToPackage DMF REST.

      • Metoda: POST

      • Adres URL żądania: https://<hostname>/namespaces/<namespace_guid>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.ExportToPackage

      • Zawartość żądania:

        {
            "definitionGroupId":"Export Workers",
            "packageName":"talent_package.zip",
            "executionId":"",
            "reExecute":false,
            "legalEntityId":"USMF"
        }
        

      Wywołaj akcję żądania HTTP.

    Wskazówka

    Można zmienić nazwę każdego kroku, tak aby była bardziej czytelna niż domyślna nazwa, Wywołaj żądanie HTTP. Można na przykład zmienić nazwę tego kroku ExportToPackage.

  5. Umożliwia zainicjowanie zmiennej w celu zapisania stanu wykonania żądania ExportToPackage.

    Akcja inicjowania zmiennej.

  6. Poczekaj, aż stan wykonania eksportu danych zakończy się Sukcesem.

    1. Dodaj Pętlę until, która powtarza się, dopóki wartość zmiennej ExecutionStatus nie zakończy się Sukcesem.

    2. Dodaj akcję Opóźnienia, która czeka pięć sekund przed sondowaniem w poszukiwaniu bieżącego stanu wykonania eksportu.

      Kontener Pętli until.

      Banknot

      Należy określić limit na wartość równą 15, aby czas realizacji eksportu był wykonywany maksymalnie 75 sekund (15 iteracji × 5 sekund). Jeśli eksport trwa dłużej, dostosuj odpowiedni limit.

    3. Dodaj akcję Wywołaj żądanie HTTP w celu wywołania interfejsu API REST DMF GetExecutionSummaryStatus i ustaw zmienną ExecutionStatus na wynik odpowiedzi GetExecutionSummaryStatus.

      Ta próbka nie sprawdza pod kątem błędów. Interfejs API GetExecutionSummaryStatus może zwracać niepomyślne stany terminalowe (to znaczy Stany inne niż Zakończone pomyślnie). Aby uzyskać więcej informacji, zapoznaj się z dokumentacją usług API.

      • Metoda: POST

      • Adres URL żądania: https://<hostname>/namespaces/<namespace_guid>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetExecutionSummaryStatus

      • Treść żądania: body('Invoke_an_HTTP_request')?['value']

        Banknot

        Konieczne może być wprowadzenie Treści żądania w widoku kod lub w edytorze funkcji projektanta.

      Wywołaj akcję żądania HTTP 2.

      Akcja ustawiania zmiennej.

      Ważne

      Wartość dla akcji Set variable (body('Invoke_an_HTTP_request_2')?['value']) różni się od wartości treści Wywołania żądania HTTP o wartości 2, nawet jeśli projektant wyświetli te wartości w ten sam sposób.

  7. Zdobądź link do pobrania wyeksportowanego pakietu.

    • Dodaj akcję Wywołaj żądanie HTTP w celu wywołania interfejsu API REST DMF GetExportedPackageUrl.

      • Metoda: POST
      • Adres URL żądania: https://<hostname>/namespaces/<namespace_guid>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetExportedPackageUrl
      • Treść żądania: {"executionId": body('GetExportedPackageURL')?['value']}

      Akcja GetExportedPackageURL.

  8. Pobierz wyeksportowany pakiet.

    • Dodaj żądanie HTTP GET (wbudowaną akcję łącznika HTTP), aby pobrać pakiet z adresu URL zwróconego w poprzednim kroku.

      • Metoda: GET

      • URI: body('Invoke_an_HTTP_request_3').value

        Banknot

        Konieczne może być wprowadzenie wartości URL w widoku kodu lub w edytorze funkcji projektanta.

      Akcja HTTP GET.

      Banknot

      To żądanie nie wymaga dodatkowego uwierzytelniania, ponieważ adres URL zwracany przez interfejs API GetExportedPackageUrl zawiera token sygnatur dostępu współdzielonego, który przyznaje dostęp do pobierania pliku.

  9. Zapisz pobrany pakiet za pomocą łącznika OneDrive for Business.

    • Dodaj akcję OneDrive for Business: Tworzenie pliku.

    • W razie potrzeby, połącz się z kontem OneDrive for Business.

      • Ścieżka folderu: Wybrany folder
      • Nazwa pliku: worker_package.zip
      • Zawartość pliku: treść z poprzedniego kroku (zawartość dynamiczna)

      Akcja utwórz plik.

Krok 3: Testowanie aplikacji logicznej

Aby przetestować aplikację logiczną, wybierz przycisk Uruchom w projektancie. Zostaną wyświetlone kolejne kroki aplikacji logicznej. Po 30 do 40 sekundach aplikacja logiczna powinna zakończyć działanie, a OneDrive for Business powinien zawierać nowy plik pakietu zawierający wyeksportowanych pracowników.

Jeśli zgłoszono błąd dla dowolnego kroku, wybierz krok niepowodzenia w Projektancie i sprawdź dla niego pola Wejściowe i Wyjściowe. Aby poprawić błędy, należy wykonać debugowanie i dostosować krok do wymagań.

Na poniższej ilustracji przedstawiono działanie programu Logic Apps Designer, gdy wszystkie kroki aplikacji logicznej są wykonywane pomyślnie.

Pomyślne uruchomienie aplikacji logicznej.

Sumaryczny

W tym samouczku przedstawiono sposób użycia aplikacji logicznej do eksportowania danych z modułu zasoby ludzkie i zapisywania eksportowanych danych do folderu OneDrive for Business. Kroki tego samouczka można modyfikować zgodnie z wymaganiami firmy.