Udostępnij za pośrednictwem


Funkcja DataSourceInfo

Dotyczy: Aplikacje kanwy Aplikacje oparte na modelu

Udostępnia informacje o źródle danych.

Omówienie

Źródła danych mogą udostępniać wiele różnych informacji, które optymalizują środowisko użytkownika.

Dzięki informacjom na poziomie kolumn można sprawdzić poprawność danych wejściowych użytkownika i natychmiast przekazać użytkownikowi informacje zwrotne jeszcze zanim użyje on funkcji Patch. Funkcja Validate korzysta z tych samych informacji.

Informacje z poziomu źródła danych umożliwiają na przykład wyłączenie lub ukrycie przycisków Edytuj i Nowe dla użytkowników, którzy nie mają uprawnień do edytowania ani tworzenia rekordów.

Źródła danych różnią się w zakresie ilości udostępnianych informacji. Czasami nie udostępniają ich w ogóle. Kolekcje nie zawierają żadnych informacji. Jeśli element informacji nie jest udostępniany, używana jest wartość domyślna albo zwracany jest pusty rekord.

Uwaga

Obecnie funkcja DataSourceInfo nie jest obsługiwana na Microsoft listach.

Podpis

Informacje o kolumnie

Za pomocą funkcji DataSourceInfo można uzyskiwać informacje dotyczące konkretnej kolumny źródła danych:

Argument informacji Typ wyniku Opis
DataSourceInfo.DisplayName Ciąg Nazwa wyświetlana kolumny. Jeśli żadna nazwa wyświetlana nie jest zdefiniowana, zwracana jest nazwa kolumny.
DataSourceInfo.MaxLength Numer Maksymalna liczba znaków, jaką może zawierać kolumna. Ma zastosowanie tylko do kolumn zawierających ciągi. Jeśli maksimum nie jest ustawione, zwraca pustą wartość.
DataSourceInfo.MaxValue Numer Maksymalna wartość liczbowa, jaką może zawierać kolumna. Ma zastosowanie tylko do kolumn zawierających liczby. Jeśli maksimum nie jest ustawione, zwraca pustą wartość.
DataSourceInfo.MinValue Numer Minimalna wartość liczbowa, jaką może zawierać kolumna. Ma zastosowanie tylko do kolumn zawierających liczby. Jeśli minimum nie jest ustawione, zwraca pustą wartość.
DataSourceInfo.Required Logiczny Czy wartość jest wymagana dla tej kolumny? Jeśli nie określa tego źródło danych, zwraca wartość false.

Trzeci argument jest nazwą kolumny w postaci ciągu. Na przykład kolumna Telefon w kolekcji Ludzie zostałaby przekazana jako "Telefon", wraz z podwójnymi cudzysłowami.

Informacje o źródle danych

Za pomocą funkcji DataSourceInfo można również uzyskiwać informacje dotyczące całego źródła danych:

Argument informacji Typ wyniku Opis
DataSourceInfo.AllowedValues Logiczny Jakie uprawnienia mogą otrzymać użytkownicy względem tego źródła danych? Jeśli nie określa tego źródło danych, zwraca pustą wartość.
DataSourceInfo.CreatePermission Logiczny Czy bieżący użytkownik ma uprawnienia do tworzenia rekordów w tym źródle danych? Jeśli nie określa tego źródło danych, zwraca wartość true.
DataSourceInfo.DeletePermission Logiczny Czy bieżący użytkownik ma uprawnienia do usuwania rekordów w tym źródle danych? Jeśli nie określa tego źródło danych, zwraca wartość true.
DataSourceInfo.EditPermission Logiczny Czy bieżący użytkownik ma uprawnienia do edytowania rekordów w tym źródle danych? Jeśli nie określa tego źródło danych, zwraca wartość true.
DataSourceInfo.ReadPermission Logiczny Czy bieżący użytkownik ma uprawnienia do odczytu rekordów w tym źródle danych? Jeśli nie określa tego źródło danych, zwraca wartość true.

Uwaga

DataSourceInfo zwraca wartość true , jeśli nie może określić, czy bieżący użytkownik ma żądane uprawnienie. Uprawnienia będą sprawdzane ponownie przez serwer po uruchomieniu rzeczywistej operacji i wyświetlaniu błędu w przypadku, gdy nie jest to dozwolone. Obecnie sprawdzanie uprawnień przy użyciu funkcji DataSourceInfo jest możliwe tylko podczas korzystania z funkcji Microsoft Dataverse.

Składnia

DataSourceInfo(DataSource,Information [; NazwaKolumny ] )

  • Źródło danych– wymagane. Źródło danych, które będzie używane.
  • Informacje – Wymagane. Typ informacji, który chcesz uzyskać.
  • ColumnName – Opcjonalne. Nazwa kolumny, dla której mają zostać pobrane informacje na poziomie kolumny. Jeśli wymagane jest uzyskanie informacji na poziomie źródła danych, argument NazwaKolumny nie może być używany.

Uwaga

W Power Apps przed wersją 3.24042 nazwy kolumn były określane za pomocą ciągu tekstowego z podwójnymi cudzysłowami, a jeśli były połączone ze źródłem danych, musiały być również nazwami logicznymi. Na przykład nazwa logiczna "cr43e_name" z podwójnymi cudzysłowami została użyta zamiast nazwy wyświetlanej Nazwa bez cudzysłowów. W przypadku źródeł danych SharePoint i Excel, które zawierają nazwy kolumn ze spacjami, każda spacja została określona za pomocą "_x0020_", na przykład "Column Name" jako "Column_x0020_Name". Po tej wersji wszystkie aplikacje zostały automatycznie zaktualizowane do nowej składni opisanej w tym artykule.

Przykłady

W przykładach w tej sekcji wykorzystano poniższe źródło danych o nazwie IceCream:

Przykład Icecream.

To źródło danych udostępnia również następujące informacje:

  • Nazwa wyświetlana kolumny Ilość ma wartość „Dostępna ilość”.
  • Maksymalna długość ciągu Flavor wynosi 30 znaków.
  • Kolumna Flavor musi zawierać wartość. Kolumna Ilość nie jest wymagana.
  • Minimalna wartość Ilość wynosi 0.
  • Maksymalna wartość Ilość wynosi 100.
  • Bieżący użytkownik może odczytywać i edytować rekordy źródła danych IceCream, ale nie może tworzyć ani usuwać rekordów.
Wzór Opis Wynik
DataSourceInfo( Lody, DataSourceInfo.DisplayName, Ilość ) Zwraca nazwę wyświetlaną kolumny Ilość źródła danych IceCream. „Ilość rzeczywista”
DataSourceInfo( Lody, DataSourceInfo.MaxLength, Smak ) Zwraca maksymalną długość ciągu dla kolumny Flavor źródła danych IceCream. 30
DataSourceInfo( Lody, DataSourceInfo.Wymagane, Smak ) Czy kolumna Flavor źródła danych IceCream jest wymagana? prawdziwy
DataSourceInfo( Lody, DataSourceInfo.Wymagane, Ilość ) Czy kolumna Ilość źródła danych IceCream jest wymagana? fałszywy
DataSourceInfo( Lody, DataSourceInfo.MaxValue, Ilość ) Zwraca maksymalną wartość liczbową kolumny Ilość źródła danych IceCream. 100
DataSourceInfo( Lody, DataSourceInfo.MinValue, Ilość ) Zwraca minimalną wartość liczbową kolumny Ilość źródła danych IceCream. 0
DataSourceInfo( Lody, DataSourceInfo.ReadPermission) Czy bieżący użytkownik może odczytywać rekordy w źródle danych IceCream? prawdziwy
DataSourceInfo( Lody, DataSourceInfo.EditPermission) Czy bieżący użytkownik może edytować rekordy w źródle danych IceCream? prawdziwy
DataSourceInfo( Lody, DataSourceInfo.CreatePermission) Czy bieżący użytkownik może tworzyć rekordy w źródle danych IceCream? fałszywy
DataSourceInfo( Lody, DataSourceInfo.DeletePermission) Czy bieżący użytkownik może usuwać rekordy w źródle danych IceCream? fałszywy