cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Infoudev
Advocate II
Advocate II

Add condition to input match

I have a form :

formpowerapps.PNG

 

editform.PNG

 

Like required felds error message , I would oblige user to put 6 digit code in the field "numero de symbole" . if he doesn't validate this condition an error message in red is shown

 

Ho can I do that ? If I should use Ismatch() where I have to put it. thanks

3 REPLIES 3
NEPatton
Kudo Kingpin
Kudo Kingpin

It sounds to me like you could use Ismatch here just fine.

 

There are probably numerous ways that you could implement this - but here's one to try out:

 

  1. Find wherever you use implement SubmitForm().
  2. Replace "SubmitForm()" with something like....
If(IsMatch(<text>,<Pattern>),Set(AcceptCode,1);SubmitForm(<thisForm>),Set(AcceptCode,0))

 

Walking through the IF statement -- If the user inputs a code that matches your pattern -- AcceptCode is set to 1 and the form is submitted.  If a user inputs a code that does NOT match your pattern -- AcceptCode is set to 0 and the form is NOT submitted.

 

The next step -- you can use the variable "AcceptCode" to change the formatting for boxes and visibility for text.  So, for instance...to control the color of the box for a TextInput control, we set the BorderColor parameter to something like...:

 

If(AcceptCode=1,Color.Black,Color.Red)

 

Contrast this implementation with the default implementation for forms:

If(IsBlank(Parent.Error), Parent.BorderColor, Color.Red)

 

However, if the identity cannot perform your required data validation -- Parent.Error is not going to catch this issue.  Ideally, we will combine both of these for your case, so you would want to do something like this:

 

If(IsBlank(Parent.Error) || (AcceptCode = 1), Parent.BorderColor, Color.Red)

 

Similarly, you can use AcceptCode to set the visibility on a Label that informs the user when they have not entered a correct code.

 

Does this help you out?

Not yet working :

If I'm right, Power app Online Studio  dont accept comma , this is my function :

 

If(IsMatch(DataCardValue20.Text;"\d{6}");Set(AcceptCode;1);SubmitForm(EditForm1);Set(AcceptCode;0))

Form is always submitting even when I enter a digit code that doesn't match the pattern..

PowerApps Online Studio will accept comma.

 

, and ; do different things.  A quick explanation:

 

, is used to separate parameters in a function.

; is used to separate actions.

 

There are 2 ways to use an IF statement:

 

IF(<condition>, <Actions if True>)

or

IF(<condition>, <Actions if True>, <Actions if False>)

 

If you want to do more than one action for the TRUE case, then you use ; between each action for that parameter.  If you are getting errors, it would not be from using commas -- there must be another problem.  From your code below, I see multiple issues...most notably:

 

Set(AcceptCode;1); and Set(AcceptCode;0);

I'm a little surprised these aren't causing errors. Set is a fucntion:  Set(<variable>,<value) <---- it should use a comma.

 

Helpful resources

Announcements
PA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

MBAS Attendee Badge

Claim Your Badge & Digital Swag!

Check out how to claim yours today!

secondImage

Are Your Ready?

Test your skills now with the Cloud Skill Challenge.

secondImage

Demo Extravaganza is Back!

We are excited to announce that Demo Extravaganza for 2021 has started!

MBAS on Demand

Microsoft Business Applications Summit sessions

On-demand access to all the great content presented by the product teams and community members! #MSBizAppsSummit #CommunityRocks

Top Solution Authors
Top Kudoed Authors
Users online (44,926)