Gegevensvalidatie met behulp van IsMatch en variabelen

Gegevensvalidatie met behulp van IsMatch en variabelen

In deze zelfstudie gaan we het hebben over gegevensvalidatie en waarom we deze nodig hebben in onze apps.

We hebben het in eerdere tutorials gehad over het vanaf nul creëren van formulieren en het is verbazingwekkend hoe we eindgebruikers in staat kunnen stellen nieuwe gegevens in te voeren of een bestaand stuk informatie naadloos te wijzigen via onze app. Er zullen echter gevallen zijn waarin een eindgebruiker informatie typt die niet overeenkomt met wat het formulier vereist. Dit is waar gegevensvalidatie om de hoek komt kijken.

Inhoudsopgave

Wat is gegevensvalidatie?

Gegevensvalidatie voorkomt dat eindgebruikers foutieve gegevens in uw formulieren invoeren.

Het heeft bijvoorbeeld geen zin om nummers aan een naam te koppelen.

Gegevensvalidatie met behulp van IsMatch en variabelen

Sommigen typen misschien ook 1 in plaats van I als een fout.

Gegevensvalidatie met behulp van IsMatch en variabelen

Zonder gegevensvalidatie wordt de backend-gegevensbron automatisch bijgewerkt door op de knop Verzenden te drukken. Dit kan problemen veroorzaken als u weet dat er fouten in de verstrekte informatie zijn. Gegevensvalidatie helpt dat probleem te voorkomen.

Gegevensvalidatiecontroles voor bepaalde regels en parameters die helpen bepalen of de formuliergegevens al dan niet kunnen worden ingediend.

Er zijn verschillende manieren om gegevensvalidatie in Power Apps in te stellen. Laten we enkele van de beste manieren bekijken om dit te doen.

Gegevensvalidatie met behulp van IsMatch

Eerder vermeldden we dat gegevensvalidatie een reeks regels volgt. In het geval van de voorbeelden die we lieten zien, was het belangrijkste probleem dat getallen werden getypt in velden waar getallen niet logisch zijn. In dergelijke gevallen kan de IsMatch-functie ons helpen dat te voorkomen.

Laten we eens kijken naar het Microsoft Power Apps-document om te begrijpen hoe IsMatch werkt .

Gegevensvalidatie met behulp van IsMatch en variabelen

IsMatch neemt een tekst, een patroon en enkele opties. Dit laat in feite zien dat deze functie de tekst evalueert op basis van het patroon.

De tekst omvat alles wat de eindgebruiker in het tekstvak typt. Wat het patroon betreft, er zijn een aantal verschillende vooraf bepaalde patronen, zoals komma's, cijfers of e-mailadressen.

Gegevensvalidatie met behulp van IsMatch en variabelen

Als u bijvoorbeeld het e-mailpatroon kiest, gaat IsMatch ervoor zorgen dat de ingevoerde tekst overeenkomt met dat patroon. Vanaf daar zou het een True of een False retourneren.

In ons geval gaan we het patroon voor Digit gebruiken. Dit omvat alle enkele cijfers van 0 tot 9.

Gegevensvalidatie met behulp van IsMatch en variabelen

Zodra we dit patroon hebben toegepast, gaat de IsMatch-functie op zoek naar elk cijfer in de tekst en retourneert een waar of een onwaar, afhankelijk van wat het vindt.

Er zijn ook specifieke parameters die helpen om onze formule nauwkeuriger te maken bij het gebruik van de IsMatch-functie. In dit geval gaan we de parameter Bevat gebruiken. Deze parameter controleert of het patroon in de tekst voorkomt, maar hoeft er niet noodzakelijkerwijs mee te beginnen of te eindigen.

Gegevensvalidatie met behulp van IsMatch en variabelen

Laten we teruggaan naar onze app en kijken hoe we dat kunnen toepassen op ons formulier.

We beginnen met het toevoegen van een label.

Gegevensvalidatie met behulp van IsMatch en variabelen

Laten we het in de buurt van de knop Verzenden plaatsen.

Gegevensvalidatie met behulp van IsMatch en variabelen

We willen dat de tekst op het label dynamisch geproduceerd wordt. Maar laten we ons nu concentreren op het gebruik van het FirstName-veld, dat is DataCardValue16.

Gegevensvalidatie met behulp van IsMatch en variabelen

We maken er een IF-statement van. Kortom, als deze formule waar retourneert, willen we dat het label "Gegevensvalidatiefout" weergeeft. Anders blijft het leeg.

Gegevensvalidatie met behulp van IsMatch en variabelen

Aangezien een IF-statement begint met een logische tekst, voegen we hier onze IsMatch-functie in, die verwijst naar de tekst in het FirstName-veld. Dit wordt weergegeven door DataCardValue16.Text.

Gegevensvalidatie met behulp van IsMatch en variabelen

We zullen dat ook opvolgen met het feitelijke patroon waarnaar we willen dat deze logica zoekt. Laten we Match.Digit toevoegen.

Gegevensvalidatie met behulp van IsMatch en variabelen

Ten slotte willen we enkele matchopties toevoegen. We zijn hier niet echt op zoek naar de exacte tekst. In plaats daarvan willen we gewoon overeenkomen met elk cijfer dat de tekst bevat. Dus we zullen onze parameter Bevat toevoegen.

Gegevensvalidatie met behulp van IsMatch en variabelen

Simpel gezegd, deze formule vraagt, komt er ergens in de tekst een cijfer voor? Als het waar retourneert, zal het label Data Validation Error aangeven. Zo niet, dan blijft het leeg.

Laten we dat eens proberen. Dus als we Lewis in het tekstvak typen maar 1 gebruiken in plaats van I, geeft het label Data Validation Error weer.

Gegevensvalidatie met behulp van IsMatch en variabelen

Merk op dat we niet eens de volledige naam hoefden te typen. Op het moment dat we er 1 intypten, liet het label meteen de fout zien.

We kunnen dit label aanpassen om de fout beter te laten opvallen. Laten we de tekst niet alleen groter maken, maar ook rood maken om aan te geven dat er een fout is opgetreden.

Gegevensvalidatie met behulp van IsMatch en variabelen

Dus als de eindgebruiker deze fout ziet, vertelt het hen dat ze verkeerde gegevens hebben ingevoerd en deze moeten repareren.

Gegevensvalidatie met behulp van variabelen

Hoewel we een label hebben ingesteld dat de eindgebruiker op de hoogte stelt van de fout in de gegevens die ze proberen in te voeren, zult u merken dat we nog steeds een knop Verzenden hebben waarop ze kunnen klikken, zelfs als er een fout is. Wat we willen, is dat de knop niet verschijnt als er een fout wordt gedetecteerd.

Er zijn twee manieren om dit te doen. De eerste is een logische en gemakkelijkere route om te nemen, terwijl de tweede benadering ingewikkelder zal zijn, maar het ook gemakkelijker voor u zal maken zodra u begint met het toevoegen van meer gegevensvalidatie in het scherm.

Laten we beginnen met de eerste benadering.

Kopieer eerst de volledige formule die op ons label wordt gebruikt.

Gegevensvalidatie met behulp van IsMatch en variabelen

Markeer vervolgens de knop, kies de zichtbaarheidseigenschap onder de vervolgkeuzelijst en plak de formule in de formulebalk. Dit stelt de zichtbaarheid van de knop dynamisch in op deze logica.

Gegevensvalidatie met behulp van IsMatch en variabelen

Dus als het tekstvak een cijfer bevat, is de knop niet zichtbaar.

Gegevensvalidatie met behulp van IsMatch en variabelen

Laten we kijken of dat werkt. Als ik de letter O in Coy verander in een nul, zie je dat de fout verschijnt en de knop Verzenden verdwijnt.

Gegevensvalidatie met behulp van IsMatch en variabelen

Als we dit terug veranderen in een O, komt de knop terug.

Gegevensvalidatie met behulp van IsMatch en variabelen

Het probleem met deze benadering is dat we dezelfde logica op twee verschillende plaatsen gebruiken: het label en de knop. Dit betekent dat als er iets gewijzigd moet worden, je dat ook op twee verschillende plaatsen moet doen. Dit kan vermoeiend worden, vooral als je later meer validatielogica hebt toegevoegd.

Om dat probleem op te lossen, gaan we nog een knop toevoegen. Laten we de nieuwe knop naast de knop Verzenden plaatsen.

Gegevensvalidatie met behulp van IsMatch en variabelen

Laten we dit de knop Valideren noemen.

Gegevensvalidatie met behulp van IsMatch en variabelen

Laten we dan dezelfde logica in deze knop stoppen.

Gegevensvalidatie met behulp van IsMatch en variabelen

Wat we willen dat deze knop doet, is een variabele voor ons bijwerken, die de context bijwerkt.

Dus laten we het deel van de formule verwijderen dat de logica vraagt ​​om Data Validation Error weer te geven en laten we dat veranderen in UpdateContext.

Gegevensvalidatie met behulp van IsMatch en variabelen

We hebben dat nodig om naar een variabele te verwijzen, dus laten we een variabele maken met de naam Verzenden . We stellen dit in op false voor het geval de validatiefout zich daadwerkelijk voordoet.

Gegevensvalidatie met behulp van IsMatch en variabelen

Dan volgen we dat onmiddellijk op met hetzelfde formaat, maar deze keer stellen we het in op waar voor het geval het tekstvak geen cijfer bevat.

Gegevensvalidatie met behulp van IsMatch en variabelen

Wat we hebben gedaan, is de zichtbaarheid van de knoppen afhankelijk maken van de variabele die we hebben gemaakt in plaats van van de logica. We zullen dus ook de logica op de knop Verzenden moeten wijzigen en de zichtbaarheid ervan gelijk moeten maken aan Verzenden, wat de variabele is waar we het over hebben.

Gegevensvalidatie met behulp van IsMatch en variabelen

Dus laten we Coy in het tekstvak typen en dan op valideren klikken.

Gegevensvalidatie met behulp van IsMatch en variabelen

Zoals u kunt zien, verschijnt de knop Verzenden nadat we dat hebben gedaan.

Gegevensvalidatie met behulp van IsMatch en variabelen

Laten we nu de O in een nul veranderen en op valideren klikken. Deze keer verdwijnt de verzendknop.

Gegevensvalidatie met behulp van IsMatch en variabelen

Nu we de knoppen hebben gerepareerd, gaan we ook de logica in het label veranderen. Op dit moment bevat het nog steeds de originele logica met behulp van de IsMatch-functie.

Gegevensvalidatie met behulp van IsMatch en variabelen

Aangezien we onze logica nu baseren op de variabele Submit, willen we de blanco en de fout verwisselen. Dus als Verzenden waar is, willen we dat het label leeg is. Maar als Verzenden onwaar is, willen we dat onze fouttekst wordt weergegeven.

Gegevensvalidatie met behulp van IsMatch en variabelen

Om de foutmelding voor eindgebruikers begrijpelijker te maken, wijzigen we deze in "Mogelijke gegevensvalidatiefout - Klik op Valideren om te controleren".

Gegevensvalidatie met behulp van IsMatch en variabelen

Om die nieuwe logica die we hebben gebruikt te testen, gaan we naar een ander record voor Anitra en klikken op het pictogram Bewerken.

Gegevensvalidatie met behulp van IsMatch en variabelen

Zoals u kunt zien, is er nog geen validatiefout op deze pagina.

Gegevensvalidatie met behulp van IsMatch en variabelen

Als ik Anitra verander in Anitr0 en op Valideren klik, verschijnt de foutmelding.

Gegevensvalidatie met behulp van IsMatch en variabelen

Zorgen voor een volledig validatieproces

Vanwege de manier waarop we het gegevensvalidatieproces in dit scherm hebben ingesteld, zijn er twee mogelijke problemen die er nog steeds toe kunnen leiden dat er onjuiste gegevens worden ingediend.

Het eerste probleem is dat het mogelijk is om het klikken op de knop Valideren over te slaan, omdat de knop Verzenden nog steeds zichtbaar is, tenzij er een fout optreedt tijdens het validatieproces. We kunnen dus bijvoorbeeld Alons5 typen, de knop Valideren negeren en meteen op de knop Verzenden klikken.

Gegevensvalidatie met behulp van IsMatch en variabelen

Het tweede probleem is dat als we een correcte invoer valideren, we nog steeds terug kunnen gaan naar het tekstvak en alles kunnen typen wat we willen. Dus als de knop Verzenden verschijnt, kan iedereen eenvoudig teruggaan naar het tekstvak, een cijfer invoeren en op de knop Verzenden klikken.

Gegevensvalidatie met behulp van IsMatch en variabelen

We moeten de variabele Indienen standaard onwaar maken. We moeten er ook voor zorgen dat wanneer iemand op het tekstvak klikt, alles terugkeert naar de standaardmodus.

Laten we dus naar het veld FirstName gaan en OnSelect kiezen in de vervolgkeuzelijst Eigenschappen. Laten we dan UpdateContext gebruiken en verwijzen naar de variabele Indienen. Vervolgens stellen we dat in op false.

Gegevensvalidatie met behulp van IsMatch en variabelen

Elke keer dat iemand op het tekstvak klikt, wordt de gebruiker automatisch gevraagd om eerst op Valideren te klikken.

Gegevensvalidatie met behulp van IsMatch en variabelen

Dus als ik de voornaam probeer te veranderen in Frank en op Valideren klik, is dat de enige keer dat de knop Verzenden verschijnt.

Gegevensvalidatie met behulp van IsMatch en variabelen

Maar als ik terugga naar hetzelfde tekstvak en probeer 1 toe te voegen aan het einde van Frank, gaat het regelrecht terug naar de standaardstatus waar de fout verschijnt en de knop Verzenden verdwijnt.

Gegevensvalidatie met behulp van IsMatch en variabelen


Inleiding Power Apps: definitie, kenmerken, functies en belang
PowerApps-functies en formules | Een introductie
Power Apps-formulieren en gegevenskaarten in het detailscherm

Conclusie

Gegevensvalidatie helpt onze gegevens te beschermen en zorgt ervoor dat eindgebruikers niet per ongeluk de verkeerde records indienen. Wat we in deze zelfstudie hebben besproken, zijn eigenlijk slechts enkele basisprincipes. U kunt zoveel typen validatie toevoegen als u wilt.

Bovendien stellen we alleen gegevensvalidatie in voor de voornaam. U kunt doorgaan en hetzelfde doen voor de achternaam. U kunt zelfs het VIP-niveau of het paspoortnummer instellen om alleen cijfers weer te geven. Het hangt allemaal af van op welke velden u verschillende validatieprocessen wilt toepassen.

Al het beste,

Henry


Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Een RDS-bestand opslaan en laden in R

Een RDS-bestand opslaan en laden in R

Je leert hoe je objecten uit een .rds-bestand in R opslaat en laadt. In deze blog wordt ook besproken hoe je objecten uit R naar LuckyTemplates importeert.

First N Business Days Revisited – Een DAX-coderingstaaloplossing

First N Business Days Revisited – Een DAX-coderingstaaloplossing

In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Deze zelfstudie behandelt hoe u de Multi Threaded Dynamic Visuals-techniek kunt gebruiken om inzichten te creëren op basis van dynamische gegevensvisualisaties in uw rapporten.

Inleiding tot het filteren van context in LuckyTemplates

Inleiding tot het filteren van context in LuckyTemplates

In dit artikel zal ik de filtercontext doornemen. Filtercontext is een van de belangrijkste onderwerpen waarover elke LuckyTemplates-gebruiker in eerste instantie zou moeten leren.

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Ik wil laten zien hoe de online service LuckyTemplates Apps kan helpen bij het beheren van verschillende rapporten en inzichten die uit verschillende bronnen zijn gegenereerd.

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Leer hoe u wijzigingen in uw winstmarge kunt berekenen met behulp van technieken zoals vertakking van metingen en het combineren van DAX-formules in LuckyTemplates.

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.

Zakelijke rapportage met behulp van LuckyTemplates

Zakelijke rapportage met behulp van LuckyTemplates

Als u tot nu toe nog steeds Excel gebruikt, is dit het beste moment om LuckyTemplates te gaan gebruiken voor uw zakelijke rapportagebehoeften.

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten