Functie DataSourceInfo
Van toepassing op: Canvas-apps Modelgestuurde apps
Biedt informatie over een gegevensbron.
Samenzicht
Gegevensbronnen kunnen een schat aan informatie bieden om de gebruikerservaring te optimaliseren.
U kunt informatie op het niveau van de kolom gebruiken om gebruikersinvoer te valideren en direct feedback te geven aan de gebruiker voordat u de functie Patch gebruikt. De functie Validate maakt gebruik van dezelfde informatie.
U kunt informatie op het niveau van de gegevensbron gebruiken om bijvoorbeeld knoppen Edit en Nieuw uit te schakelen of te verbergen voor gebruikers die geen machtigingen hebben om records te bewerken en te maken.
Gegevensbronnen variëren in de hoeveelheid informatie die ze leveren en soms leveren ze deze informatie helemaal niet. Collecties bieden geen informatie. Als een stukje informatie niet is opgegeven, wordt er een standaardwaarde gebruikt of wordt leeg geretourneerd.
Notitie
Momenteel wordt de functie DataSourceInfo niet ondersteund in Microsoft lijsten.
Omschrijving
Kolomgegevens
U kunt DataSourceInfo gebruiken om informatie op te halen over een bepaalde kolom van een gegevensbron:
Informatieargument | Resultaattype | Beschrijving |
---|---|---|
DataSourceInfo.Weergavenaam | Tekenreeks | Weergavenaam voor de kolom. Als er geen weergavenaam is gedefinieerd, wordt de naam van de kolom geretourneerd. |
DataSourceInfo.MaxLength | Getal | Maximumaantal tekens dat de kolom kan bevatten. Alleen van toepassing op kolommen met tekenreeksen. Als er geen maximum is ingesteld, wordt leeg geretourneerd. |
DataSourceInfo.MaxWaarde | Getal | Maximale numerieke waarde die een kolom kan bevatten. Alleen van toepassing op kolommen die getallen bevatten. Als er geen maximum is ingesteld, wordt leeg geretourneerd. |
DataSourceInfo.MinWaarde | Getal | Minimale numerieke waarde die een kolom kan bevatten. Alleen van toepassing op kolommen die getallen bevatten. Als er geen minimum is ingesteld, wordt leeg geretourneerd. |
DataSourceInfo.Vereist | Booleaanse waarde | Is er een waarde vereist voor deze kolom? Als het niet is ingesteld door de gegevensbron, wordt false geretourneerd. |
Het derde argument is de naam van een kolom als een tekenreeks. Bijvoorbeeld: de kolom Telefoonnummer in de verzameling Mensen wordt doorgegeven als "Telefoonnummer", inclusief de dubbele aanhalingstekens.
Informatie over de gegevensbron
U kunt ook DataSourceInfo gebruiken om informatie over een gegevensbron als geheel op te halen:
Informatieargument | Resultaattype | Beschrijving |
---|---|---|
DataSourceInfo.ToegestaneWaarden | Booleaanse waarde | Welke typen machtigingen kunnen aan gebruikers worden verleend voor deze gegevensbron? Als de typen niet zijn ingesteld door de gegevensbron, wordt blank geretourneerd. |
DataSourceInfo.CreatePermission | Booleaanse waarde | Heeft de huidige gebruiker rechten om records te maken in deze gegevensbron? Als het niet is ingesteld door de gegevensbron, wordt true geretourneerd. |
DataSourceInfo.DeletePermission | Booleaanse waarde | Heeft de huidige gebruiker rechten om records te verwijderen in deze gegevensbron? Als het niet is ingesteld door de gegevensbron, wordt true geretourneerd. |
DataSourceInfo.Bewerkingsmachtiging | Booleaanse waarde | Heeft de huidige gebruiker rechten om records te bewerken in deze gegevensbron? Als het niet is ingesteld door de gegevensbron, wordt true geretourneerd. |
DataSourceInfo.LeesPermissie | Booleaanse waarde | Heeft de huidige gebruiker rechten om records te lezen in deze gegevensbron? Als het niet is ingesteld door de gegevensbron, wordt true geretourneerd. |
Notitie
DataSourceInfo retourneert true als niet kan worden vastgesteld of de huidige gebruiker de gevraagde machtiging heeft. Toestemmingen worden opnieuw gecontroleerd door de server wanneer de daadwerkelijke bewerking wordt uitgevoerd en er wordt een fout weergegeven als dit niet was toegestaan. Op dit moment is het controleren van machtigingen met DataSourceInfo alleen mogelijk bij gebruik van Microsoft Dataverse.
Syntaxis
DataSourceInfo( DataSource, Information [, ColumnName] )
- DataSource – Verplicht. De gegevensbron die moet worden gebruikt.
- Informatie – Verplicht. Het type informatie dat u wilt ophalen.
- ColumnName – Optioneel. De kolomnaam waarvoor informatie op kolomniveau moet worden opgehaald. Het argument ColumnName kan niet worden gebruikt voor informatie op het niveau van de gegevensbron.
Notitie
In Power Apps vóór versie 3.24042 werden kolomnamen voor de zoekfunctie Search gespecificeerd met een tekenreeks met dubbele aanhalingstekens, en indien verbonden met een gegevensbron het moesten ook logische namen zijn. Zo werd bijvoorbeeld de logische naam "cr43e_name" met dubbele aanhalingstekens gebruikt in plaats van de weergavenaam Naam zonder aanhalingstekens. Voor SharePoint- en Excel-gegevensbronnen die kolomnamen met spaties bevatten, werd elke spatie gespecificeerd met "_x0020_", bijvoorbeeld "Column Name" als "Column_x0020_Name". Na deze versie werden alle apps automatisch bijgewerkt naar de nieuwe syntaxis die in dit artikel wordt beschreven.
Voorbeelden
Voor de voorbeelden in dit gedeelte wordt de gegevensbron IceCream gebruikt:
De gegevensbron levert ook deze informatie:
- De weergavenaam voor Quantity is "Hoeveelheid in voorraad".
- De maximale lengte van Flavor is 30 tekens.
- De kolom Flavor moet een waarde bevatten. De kolom Quantity is niet vereist.
- De minimale Quantity is 0.
- De maximale Quantity is 100.
- De huidige gebruiker kan de records van de gegevensbron IceCream lezen en bewerken maar kan geen records maken of verwijderen.
Formule | Beschrijving | Resultaat |
---|---|---|
DataSourceInfo(IJs, DataSourceInfo.DisplayName, hoeveelheid) | Retourneert de weergavenaam voor de kolom Quantity van de gegevensbron IceCream. | 'Hoeveelheid in voorraad' |
DataSourceInfo(IJs, DataSourceInfo.MaxLength, Smaak) | Retourneert de maximale lengte van de tekenreeks voor de kolom Flavor van de gegevensbron IceCream. | 30 |
DataSourceInfo(IJs, DataSourceInfo.Vereist, Smaak) | Is de kolom Flavor van de gegevensbron IceCream vereist? | WAAR |
DataSourceInfo( IceCream, DataSourceInfo.Required, hoeveelheid ) | Is de kolom Quantity van de gegevensbron IceCream vereist? | vals |
DataSourceInfo(IJs, DataSourceInfo.MaxValue, hoeveelheid) | Retourneert de maximale numerieke waarde voor de kolom Quantity van de gegevensbron IceCream. | 100 |
DataSourceInfo(IJs, DataSourceInfo.MinValue, hoeveelheid) | Retourneert de minimale numerieke waarde voor de kolom Quantity van de gegevensbron IceCream. | 0 |
DataSourceInfo(IJsCream, DataSourceInfo.ReadPermission) | Kan de huidige gebruiker records lezen in de gegevensbron IceCream? | WAAR |
DataSourceInfo(IJs, DataSourceInfo.EditPermission) | Kan de huidige gebruiker records bewerken in de gegevensbron IceCream? | WAAR |
DataSourceInfo(IJsCream, DataSourceInfo.CreatePermission) | Kan de huidige gebruiker records maken in de gegevensbron IceCream? | vals |
DataSourceInfo(IJs, DataSourceInfo.DeletePermission) | Kan de huidige gebruiker records verwijderen van de gegevensbron IceCream? | vals |