Dela via


DataSourceInfo-funktion

Gäller för: Arbetsyteappar Modellbaserade appar

Ger information om en datakälla.

Översikt

Datakällor kan ge mängder av information för att optimera användarupplevelsen.

Du kan använda information på kolumn-nivå för att validera användarindata och ge omedelbar feedback till användaren innan du använder Patch-funktionen. Funktionen Validate använder sig av samma information.

Du kan använda informationen på datakällenivå, för att till exempel inaktivera eller dölja knprogrammen Redigera och Ny för användare som inte har behörighet att redigera och skapa poster.

Det varierar hur mycket information datakällorna ger, ibland kan de inte ge någon alls. Samlingar ger ingen information. Om en information inte lämnas används en standard, eller blank returneras.

Kommentar

Funktionen DataSourceInfo stöds för närvarande inte i Microsoft Listor.

Description

Kolumninformation

Du kan använda DataSourceInfo att hämta information om en viss kolumn i en datakälla:

Information Argument Resultattyp Beskrivning
DataSourceInfo.DisplayName Sträng Visningsnamn för kolumnen. Returnerar kolumnnamnet om inget visningsnamn har definierats.
DataSourceInfo.MaxLength Antal Maximalt antal tecken som kolumnen kan innehålla. Gäller enbart för kolumner som innehåller strängar. Returnerar blank om maximalt värde inte anges.
DataSourceInfo.MaxValue Antal Maximalt numeriskt värde som en kolumn kan innehålla. Gäller enbart för kolumner som innehåller tal. Returnerar blank om maximalt värde inte anges.
DataSourceInfo.MinValue Antal Minsta numeriska värde som en kolumn kan innehålla. Gäller enbart för kolumner som innehåller tal. Returnerar blank om minsta värde inte anges.
DataSourceInfo.Required Boolean Krävs det ett värde för den här kolumnen? Returnerar false om detta inte anges av datakällan.

Det tredje argumentet är namnet på en kolumn som en sträng. Till exempel skulle kolumnen Phone i samlingen People skickas som "Phone" inklusive dubbla citattecken.

Information om datakälla

Du kan även använda DataSourceInfo för att hämta information om en datakälla som helhet:

Information Argument Resultattyp Beskrivning
DataSourceInfo.AllowedValues Boolean Vilka typer av behörigheter kan användare få för den här datakällan? Returnerar blank om detta inte anges av datakällan.
DataSourceInfo.CreatePermission Boolean Har den aktuella användaren behörighet att skapa poster i den här datakällan? Returnerar true om detta inte anges av datakällan.
DataSourceInfo.DeletePermission Boolean Har den aktuella användaren behörighet att ta bort poster i den här datakällan? Returnerar true om detta inte anges av datakällan.
DataSourceInfo.EditPermission Boolean Har den aktuella användaren behörighet att redigera poster i den här datakällan? Returnerar true om detta inte anges av datakällan.
DataSourceInfo.ReadPermission Boolean Har den aktuella användaren behörighet att läsa poster i den här datakällan? Returnerar true om detta inte anges av datakällan.

Kommentar

DataSourceInfo returnerar true om det inte går att avgöra om den aktuella användaren har den begärda behörigheten. Behörigheter kontrolleras igen av servern när den faktiska åtgärden utförs och ett fel visas om det inte var tillåtet. I nuläget är behörighetskontroller med DataSourceInfo endast möjligt när du använder Microsoft Dataverse.

Syntax

DataSourceInfo(DataSource,Information [, ColumnName ] )

  • DataSource – Obligatoriskt. Datakällan som ska användas.
  • Information – Obligatoriskt. Den typ av information som du vill hämta.
  • ColumnName – Valfritt. Kolumnnamnet som information på kolumnnivå ska hämtas till. För information på datakällenivå kan inte ColumnName-argumentet användas.

Kommentar

I Power Apps före version 3.24042, angav kolumnnamn specificerades med en textsträng med dubbla citattecken och om de var anslutna till en datakälla behövde de också vara logiska namn. Det logiska namnet "cr43e_name" med dubbla citattecken användes till exempel i stället för visningsnamnet Namn utan citattecken. För SharePoint och Excel-datakällor som innehåller kolumnnamn med blanksteg angavs varje blanksteg med "_x0020_", till exempel "Kolumnnamn" som "Column_x0020_Name". Efter den här versionen uppdaterades alla appar automatiskt till den nya syntax som beskrivs i den här artikeln.

Exempel

Exemplen i det här avsnittet använder en datakälla med namnet IceCream:

Exempel på IceCream.

Datakällan har också lämnat den här informationen:

  • Visningsnamnet för Quantity är "Lagersaldo".
  • Den maximala längden på Flavor är 30 tecken.
  • Kolumnen Flavor måste innehålla ett värde. Kolumnen Quantity är inte obligatorisk.
  • Minsta värde för Quantity är 0.
  • Maximalt värde för Quantity är 100.
  • Den aktuella användaren kan läsa och redigera posterna för datakällan IceCream, men kan inte skapa eller ta bort poster.
Formel Beskrivning Resultat
DataSourceInfo( IceCream, DataSourceInfo.DisplayName, Quantity ) Returnerar visningsnamnet för kolumnen Quantity i datakällan IceCream. "Lagersaldo"
DataSourceInfo( IceCream, DataSourceInfo.MaxLength, Smak ) Returnerar den maximala längden på strängen för kolumnen Flavor i datakällan IceCream. 30
DataSourceInfo( IceCream, DataSourceInfo.Required, Smak ) Är kolumnen Flavor i datakällan IceCream obligatorisk? sann
DataSourceInfo( IceCream, DataSourceInfo.Required, Quantity ) Är kolumnen Quantity i datakällan IceCream obligatorisk? falsk
DataSourceInfo( IceCream, DataSourceInfo.MaxValue, Quantity ) Returnerar det maximala numeriska värdet för kolumnen Quantity i datakällan IceCream. 100
DataSourceInfo( IceCream, DataSourceInfo.MinValue, Quantity ) Returnerar det minimala numeriska värdet för kolumnen Quantity i datakällan IceCream. 0
DataSourceInfo( IceCream, DataSourceInfo.ReadPermission) Kan den aktuella användaren läsa poster i datakällan IceCream? sann
DataSourceInfo( IceCream, DataSourceInfo.EditPermission) Kan den aktuella användaren redigera poster i datakällan IceCream? sann
DataSourceInfo( IceCream, DataSourceInfo.CreatePermission) Kan den aktuella användaren skapa poster i datakällan IceCream? falsk
DataSourceInfo( IceCream, DataSourceInfo.DeletePermission) Kan den aktuella användaren ta bort poster i datakällan IceCream? falsk