cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
ALP1
Post Patron
Post Patron

Prevent a patch if record already exists

Hi,

 

I've read this thread before i post https://powerusers.microsoft.com/t5/Building-Power-Apps/Prevent-a-patch-if-record-already-exists/m-p...

 

I have a Sharepoint list with a colum Name "Nom et prénom"

 
 
 

Annotation 2020-07-08 160813.png

 
 

Annotation 2020-07-08 161022.png

 

On my apps i add this

 

And finally on the sumit icon, i add this syntax

 

Annotation 2020-07-08 161615.png

 

I don't why i have this warning. 

Is because my column "Nom et prénom" is a person column ?

Thanks for your help

 

 

1 ACCEPTED SOLUTION

Accepted Solutions

@ALP1

I think DataCardValue10.Selected.Value

But check the Update property of the card containing the control.

View solution in original post

15 REPLIES 15
Pstork1
Dual Super User III
Dual Super User III

The warning is there because CountRows is not a delegable function.  But if you are sure that the filter will return less than 500 rows, which in this case you are, then you can ignore the warning.



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.
eka24
Super User III
Super User III

Revise the portion:

'Nom et prénom'.Value=nonPernom.Text

------------

If you like this post, give a Thumbs up. Where it solved your request, Mark it as a Solution to enable other users find it.

@Pstork1 Thank you but since i add the if condition, i can't submit my forms.

 

@eka24  

I modify to this ..but nothings change 😞

 

If(CountRows(Filter('Test QCM';'Nom et Prénom'.DisplayName=NomPrenom.text))>0;
Notify("Enregistrement existant";NotificationType.Error);;

Patch(
'Test QCM'; 
Defaults('Test QCM');
EditForm1.Updates;
EditForm2.Updates
);;
Navigate(Success;ScreenTransition.Fade)

 

v-siky-msft
Community Support
Community Support

Hi @ALP1 ,

 

If the NomPrenom is a Textinputbox to input Name, the Text property should begin with a capital letter.

Please modify NomPrenom.text to NomPrenom.Text.

Hope this helps.

Sik

Hi,

 

No it's not a inputtext box it's a person or group. 

 

ALP1_0-1594299464366.png

But i' ve found a tricky way, i check this on my sharepoint list 

 

ALP1_1-1594299570745.png

But this is not a sustainable solution because if the user wants to change his answer late then he can not do so.

 

 

 

hi @v-siky-msft , @eka24 , @Pstork1 

 

Let me come back to you and make my need a little more clear.

When a user edits and changes their saved data, it will create a new record in the SharePoint list.

How can I avoid this?

 

In this example, the test user has just changed their information to update it.

Instead of changing its initial record, this created a second record

 

ALP1_0-1594334163686.png

 

If you are using a form in Power Apps why are you using Patch() instead of SubmitForm()? 



--------------------------------------------------------------------------------
If this post helps answer your question, please click on “Accept as Solution” to help other members find it more quickly. If you thought this post was helpful, please give it a Thumbs Up.

In fact, I have a form that is on 2 pages in the app and I need to use patch in order to be able to record the information contained in screen 1 and screen 2. The syntax works very well 

 

 

 

 

Pstork1
Dual Super User III
Dual Super User III

I didn't test the exact syntax, but you want something similar to this.

if(isBlank(Lookup(datasource,Title=TitleDatacard.Text)),Patch(datasource,defaults(datasource),Form.updates,Patch(datasource,Lookup(datasource,Title=TitleDatacard.Text,Form.updates)

The IF checks to see if a Record with the same Title already exists.  The title field is normally an index, but use any field that will be unique for a give record. If the Title doesn't exist (IsBlank) then patch the datasource using the defaults.  That will create a new record.  Otherwise Patch the datasource using a Lookup to update the existing record.



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

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

Power Query PA Forum 768x460.png

Check it out!

Did you know that you can visit the Power Query Forum in Power BI and now Power Apps

V3_PVA CAmpaign Carousel.png

Community Challenge - Giveaways!

Participate in the Power Virtual Agents Community Challenge

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Top Solution Authors
Top Kudoed Authors
Users online (3,299)