Udostępnij za pośrednictwem


Nawiązywanie połączenia z usługą Microsoft Dataverse

Istnieje możliwość bezpiecznego przechowywania danych biznesowych w Dataverse i tworzenia bogatych aplikacji w Power Apps, dzięki czemu użytkownicy mogą zarządzać tymi danymi. Te dane można również zintegrować z rozwiązaniami, które zawierają Power Automate, Power BI oraz dane z Dynamics 365.

Domyślnie aplikacja łączy się z bieżącym środowiskiem w celu tabel Dataverse. Jeśli aplikacja zostanie przeniesiona do innego środowiska, łącznik łączy się z danymi w nowym środowisku. To zachowanie działa dobrze w przypadku aplikacji korzystającej z jednego środowiska lub aplikacji, która jest zgodna z procesem zarządzania cyklem życia aplikacji (ALM) w celu przejścia od programowania, przez testy, a następnie do produkcji.

Podczas dodawania danych w programie Dataverse, można zmienić środowisko, a następnie wybrać jedną lub więcej tabel. Domyślnie aplikacja łączy się z danymi w aktualnym środowisku.

Środowisko domyślne.

W przypadku wybrania opcji Zmień środowisko można określić inne środowisko, w którym będą wyciągać dane zamiast bieżącego środowiska lub poza nim.

Inne środowiska.

Nazwa wybranego środowiska zostanie wyświetlona pod listą tabel.

Nowe środowiska.

Widoczność i dostęp

Po wybraniu opcji Zmień środowisko zostanie wyświetlona lista środowisk. Na liście może być widoczne środowisko, ale to, co można w nim robić, zależy od ról zabezpieczeń w danym środowisku. Na przykład jeśli użytkownik nie ma uprawnień do odczytu, nie możesz zobaczyć tabel i rekordów w środowisku.

Uwaga

Połączenia wyświetlane w okienku szczegółów aplikacji (z wyjątkiem projektanta aplikacji) pokazują połączenia, które wymagają zgody użytkownika. Ponieważ połączenia macierzyste Dataverse używane w aplikacji nie wymagają tej dodatkowej zgody, na tej liście nie będzie dostępne połączenie macierzyste.

Mapowanie typu danych Power Apps

Łącznik Microsoft Dataverse jest bardziej niezawodny niż łącznik Dynamics 365 connector i będzie stanowić odpowiednik aktualnie funkcji. W poniższej tabeli wymieniono typy danych w Power Apps oraz sposób ich mapowania na typy danych w Dataverse.

Power Apps Microsoft Dataverse
Opcja wyboru Wybór, tak/nie
DateTime Data i godzina, data i godzina, tylko data
Obraz Obraz
Liczba Liczba zmiennoprzecinkowa, waluta, liczba dziesiętna, czas trwania, język, strefa czasowa, liczba całkowita
Tekst E-mail, tekst wielowierszowy, telefon, tekst, obszar tekstowy, symbol giełdowy, adres URL
Identyfikator GUID Unikatowy identyfikator

Delegowane funkcje i operacje Power Apps dla Dataverse

Te operacje Power Apps dla danego typu danych mogą być delegowane do Dataverse w celu przetwarzania (zamiast przetwarzania lokalnego w Power Apps).

Produkt Liczba [1] Tekst [2] Opcja wyboru Data/godzina [3] Identyfikator GUID
<, <=, >, >= Tak Tak Nie. Tak -
=, <> Tak Tak Tak Tak Tak
And/Or/Not Tak Tak Tak Tak Tak
CountRows [4] [5], CountIf [6] Tak Tak Tak Tak Tak
Filtr Tak Tak Tak Tak Tak
Pierwszy [7] Tak Tak Tak Tak Tak
W (Identyfikator członkostwa)[8] Tak Tak Tak Tak Tak
W (podciąg) - Tak - - -
IsBlank [9] Tak Tak Nie. Tak Tak
Lookup Tak Tak Tak Tak Tak
Wyszukiwanie Nie. Tak Nie. Nie. -
Sortowanie Tak Tak Tak Tak -
SortByColumns Tak Tak Tak Tak -
StartsWith - Tak - - -
Suma, minimalna, maksymalna, średnia [6] Tak - - Nie. -
  1. Wyrażenia numeryczne z wyrażeniami arytmetycznymi (na przykład Filter(table, field + 10 > 100)) nie są delegowalne. Language i TimeZone nie są delegowalne. Rzutowanie na kolumnę na numer nie jest obsługiwane. Gdy wartość pojawia się jako liczba w Power Apps, ale źródło danych zaplecza nie jest prostą liczbą, taką jak waluta, wówczas nie jest ona delegowana.
  2. Nie obsługuje opcji Przycinanie [Zakończenia] ani Len. Obsługuje inne funkcje, takie jak lewy, średni, prawy, górny, dolny, zastąpienie, zamiennik itp. Ponadto delegowanie nie jest obsługiwane w przypadku narzutu, jak Text(column).
  3. DateTime jest delegowalny z wyjątkiem funkcji DateTime Now() i Today().
  4. Wartość CountRows w Dataverse używa wartości w pamięci podręcznej. W przypadku wartości, które nie są przechowywane w pamięci podręcznej, których liczba rekordów ma się znaleźć poniżej 50 000 rekordów, użyj funkcji CountIf(table, True).
  5. W przypadku wartości CountRows upewnij się, że użytkownicy mają odpowiednie uprawnienia do sum dla tabeli.
  6. Funkcje agregujące są ograniczone do kolekcji 50 000 wierszy. W razie potrzeby użyj funkcji Filtruj, aby wybrać 50 000. Funkcje agregowania nie są obsługiwane w widokach.
  7. Funkcja FirstN nie jest obsługiwana.
  8. In podlega limitowi zapytań dla 15 tabel wynoszącemu Dataverse.
  9. Obsługuje porównanie. Na przykład Filter(TableName, MyCol = Blank()).

Wywoływanie akcji Dataverse bezpośrednio w Power Fx

W języku autorów mogą Power Fx teraz Dataverse bezpośrednio wywoływać akcję w formułie. Obsługiwane są zarówno akcje niezwiązane, jak i związane. Autorzy mogą dodać obiekt języka Power Fx Environment do aplikacji i uzyskać dostęp do akcji Dataverse.

Autorzy mogą pracować z polami obiektów bez typu zarówno dla danych wejściowych, jak i wyjściowych. Na przykład po stronie wejściowej wiele akcji Dataverse wymaga obiektu bez typu jako argumentu. Autorzy mogą teraz przekazać te argumenty przy użyciu funkcji ParseJSON do przekonwertowania rekordu Power Fx na obiekt bez typu. Po stronie wyjściowej dla akcji, które zwracają niedychające obiekty, dot można po prostu przejść do właściwości zwróconych obiektów. Konieczne jest rzutowanie określonych wartości do użycia w określonych kontekstach w Power Apps, takich jak etykieta.

Bez tej funkcji autorzy często używali Power Automate do bezpośredniego wywołania usługi Dataverse. Natomiast rozmowy telefoniczne bezpośrednio Dataverse z Power Fx usługi zapewniają znaczne korzyści związane z wydajnością (i łatwość używania) i powinny być zalecane w przypadku bezpośrednich odczytów i aktualizacji transakcji. Jeśli masz aplikację, która używa Power Automate do wywoływania akcji Dataverse, zobaczysz baner sugerujący użycie tego bezpośredniego podejścia do akcji.

Praca z polami nie jest ograniczona do Dataverse. Działa ona we wszystkich typach łączników i zapewnia podstawową dynamiczną obsługę schematu ad hoc.

Uwaga

  1. Nie wspieramy w pełni akcji DV w poleceniach Power Fx (specyficznych dla dowolnego wywołania akcji z parametrami).
  2. Nie obsługujemy bezpośrednich odniesień do encji lub kolekcji encji.
  3. W przypadku parametrów typu obiektu, które są zagnieżdżone (głębokie na 2 lub więcej poziomów), wymagane są atrybuty drugiego poziomu w PowerApps.

Włącz dostęp do akcji Microsoft Dataverse

W nowych aplikacjach ta funkcja jest domyślnie włączona. W przypadku aplikacji utworzonych wcześniej należy włączyć dostęp do akcji Dataverse.

W przypadku starszych aplikacji otwórz aplikację kanwy do edycji, przejdź do obszaru Ustawienia>Nadchodzące funkcje>Wycofane i włącz akcje Dataverse.

Dodawanie obiektu Power Fx języka środowiska do aplikacji

Aby używać Dataverse akcji w formułach Power Fx , wybierz opcję Dodaj dane i wyszukaj środowisko i dodaj je do aplikacji.

Wyszukiwanie obiektu Power Fx środowisko.

Powoduje to dodanie Power Fx Environment obiektu języka do aplikacji.

Obiekt Power Fx Środowisko jako źródło danych.

Dostępne akcje Dataverse

Po dodaniu Power Fx Environment obiektu do aplikacji można uzyskać dostęp do akcji, Dataverse dodając Environment do formuły i kropkując nad akcjami.

Używanie obiektu środowiska Power Fx.

Akcje bez Dataverse połączenia są na poziomie peer to tabel i wymagają zakresu nadrzędnego obiektu języka środowiska. Wszystkie akcje w Twoim środowisku są dostępne – zarówno na poziomie systemu, jak i niestandardowe. Dostępne są zarówno akcje związane, jak i niezwiązane. Usunięto 2-poziomowy limit połączeń.

Korzystanie z akcji Dataverse.

Aby uzyskać więcej szczegółowych informacji na temat używania akcji Dataverse w formułach, zobacz temat Praca z obiektami niedym i dynamicznymi.

Przekazywanie argumentów typu jednostki dla akcji powiązanych/niepowiązanych

Aby przekazać argumenty typu encji dla akcji Dataverse, zacznij od ustawienia wartości argumentu typu encji w zmiennej. Ponadto upewnij się, że wszystkie brakujące wartości, takie jak *activityId, zostały wypełnione. Jest to szczególnie ważne w przypadku encji, które nie mają zdefiniowanych typów w swaggerze.

Set(MyArgVar, {
  name: first(systemUser).name, 
  Id: First(systemUser).Id 
  ... })

Zmień nazwę, odśwież i wykonaj akcje w innych środowiskach

Możesz zmienić nazwę środowiska, wybierając wielokropek i wybierając „Zmień nazwę”. Jeśli dodasz nową akcję Dataverse w Dataverse i chcesz zobaczyć ją w Power Apps, możesz wybrać opcję „Odśwież”. A jeśli chcesz użyć akcji w innym środowisku, musisz najpierw zmienić środowisko, a następnie wyszukać „Środowisko”, wybrać je i dodać do swojej aplikacji.