cancel
Showing results for 
Search instead for 
Did you mean: 
Reply

Canvas App value in not compatible with datasource

Hello 

Im have an issue with my varible that I have to use in Item property bud system says its not compatible with datasource. 
I have Gallery and 2 forms. I take data from gallery thru select edit them in first Form than take submitted data from first and want to use then in second with variable declared on succes in previous form it works except for the last step, last form where I try to put my variable into Item property and its not compatabile with datsource. Data source is same every where on gallery and both forms. Any idea would be  appreciated.

1 ACCEPTED SOLUTION

Accepted Solutions
poweractivate
Most Valuable Professional
Most Valuable Professional

@OndrejBriza 

 

You can get this result:

101921-clone-edit-edit2.gif

 

Here in above, 

 

1. A precursor to a clone is created (without editing anything) - the clone is not created yet here.

2. On the second screen, changes can already be made. After using button, the clone is made with any changes from here.

3. On the third screen, the same clone from #2 is edited with further changes.

4. If you want to edit again and again in more chains than this, repeat a similar approach like in #3.

 

You can try it like this:

 

1. Screen1

 

Form1_2 DefaultMode as FormMode.View

Form1_2 DataSource as List01 (your real data source)

Form1_2 Item as Gallery1.Selected

 

Also presuming a Gallery on this page, Gallery1:

Gallery1 should have Items as List01 (your real data source)

Gallery1 DisplayMode as Edit

 

Then:

 

OnVisible Screen1 as this:

 

 

Set(glbNewCopy,Defaults(List01));

 

 

 

OnSuccess of Form1_2 as this:

 

 

Set(glbNewCopy, Patch(Self.LastSubmit, {ID: Blank()}));

 

 

 

 

Screen1 Button as this:

 

EditForm(Form1_2);SubmitForm(Form1_2);ViewForm(Form1_2);Navigate(Screen2)

 

 

 

 

Replace Form1_2 in above with Form that is on this first screen. Screen2 replace with name of next screen.

 

Reason of the above is to make it very clear - here, no changes should be made yet to the stuff for this first form part - because if any are made in this first form part before SubmitForm called here for first time, this will already change the existing record which is probably not desired. So to make it very explicit, the mode is set to View. Then on button press the code quickly set it to Edit (it is needed to do this or it won't work correctly) then to use the trick mentioned by @RandyHayes  for OnSuccess to begin to clone the record (yes that same trick he gave actually does work, by the way, but must be used in specific way - this also require to set the form Edit mode, that's why it is set to Edit mode quickly and back to View again after done) in order to make a clone of it. When done this way I do not get that error of the mismatch type.

 

But keep in mind the purpose of this was just to make a clone of the Record that a Power Apps Canvas App Form Control would understand - so that it would not keep editing the actual existing ID record - but to eventually create a new Record instead on the Data Source side and auto-assign it with new ID - yet somehow for this to happen even while form is in Edit mode (since New mode cannot take pre-populated values).  This part with the trick strips the ID out to prepare it to be creating new ID when submitted even in the Edit mode - however note that the new record has not been made just yet on the Data Source side, this is what the next step will be. We need the next step, which involves another Form in Edit mode (for clarity purposes and for this example) whose Item property is pointing to the Variable we just Set in the first step - this is so we could get a prepopulated form in Edit Mode, but now when we submit this second form, we will get the actual clone created. Also here in this step, we can already make changes even before the clone is created for very first time in Data Source side.

 

Now the next part, in Screen2 do like this:

 

Form1_1 DefaultMode as FormMode.Edit

Form1_1 DataSource as List01 (your real data source)

Form1_1 Item as glbNewCopy

 

Button Onselect (the button on Screen2) as 

 

 

SubmitForm(Form1_1);Navigate(Screen2_1)

 

 

 

 

Finally the record created clone in data source for first time, and it have some changes too that were desired from original record if they were put there in that second form - otherwise it will keep same values.

 

OK now to make even more changes to same record, let's suppose - do like this:

 

Screen2_1 (third screen)

 

Same for everything as the second screen above with copy of same form and same button, except for this Form put for Item property as follows:

 

 

Form1_1.LastSubmit

 

 

 

 

And for this Button should be:

 

SubmitForm(Form1_3);Navigate(Screen3)

 

 

 

 

 

 

And now add another screen 4th screen (Screen3)

 

In this screen just a Label and it says It's Finished.

 

That's it. It works and you can check it on the top of this posting the visuals, where it is shown working and how it is creating the record in the data source the first time, with changes, then taking another set of changes on same record again.

 

Obviously this all can be placed in one screen if you really wanted to and knew what to show and hide but it is separate just for the clarity in this case as example. If it is clearer for you like that too you can keep in separate screens as well.

 

Anyway check if the above help you now @OndrejBriza 

 

 

View solution in original post

20 REPLIES 20
poweractivate
Most Valuable Professional
Most Valuable Professional

Check if this similar topic below helps you or is similar to your issue:

Invalid Formula. Expected a value compatible with 'DataSource' 

Hello,

I cant  use ogc inspector,  cant do inloggen

Why?

Outcome error is the same but I cant use solution in post you mention because my Item property field has to be filled with my variable with loaded data from Form.

@OndrejBriza On the form, what is the type of data (e.g. Text, Whole Number, Lookup, Date and Time, etc.) the underlying data source's column (or equivalent) for that field is expecting? After determining this, check what kind of data is in the Variable and being set for the field. If the types do not match, that is causing this error, and you will need to make the types match. What you need to do depends on the data type. For example to convert a date/time or a number to a Text, you can use the Text function of Power Apps - in your case, you might have to do something else though, depending on the kind of mismatch it is.

Thats is kind a funny because on my first Form Im using OnSuccess this formula Set(glbNewCopy; Patch(Self.LastSubmit; {ID: Blank()})) to copy the record from submit and I was told that if I blank the ID the system will create new copy on the next submit in second edit Form from the exact data I last submitted but from what you told me it looks like the missmatch is in the blank ID no ? 

@OndrejBriza 

 

I think so.

 

I didn't try this, so tell me if something kind of like the following works instead:

 

 

 Set(glbNewCopy; Patch(Defaults( YourDataSourceNameHere ); Self.LastSubmit))

 

 

Well the error is gone thats good but it seems the blank ID to create the new record did not. Gallery (took data done) -> Edit Form1(edit data done) -> Edit Form2(Took the data to prepopulate) but after submit instead of new copy did same thing as regular edit form. Im so lost in this it should be simple task as is implemented in onpremis CRMs and its that complicated :((( but thanks a lot if you dont have the idea how to fix the ID blank thing or how to create new record from edit Form I will accept ur solution and I will keep digging.

@OndrejBriza 

 

Interesting. Just curious, do you get an "Attachments, ID required" error?

 

I do when I try this. Do you also get this kind of error if trying something similar to below?

 

poweractivate_0-1634633167398.png

(note: for you, use semicolon where I use comma - double semicolon where I use semicolon)

 

Or did you get a different kind of error when you tried something like above?

Nono if I use your formula without the ID blank its works fine but the the Forms do just double edit not one edit and  second save new record. Blanking ID was supposed to do that by advice from my post Solved: Re: Canvas App - pre populate new form - Page 2 - Power Platform Community (microsoft.com) 
But if I add he ID blank its a miss match and value is not compatible.

Helpful resources

Announcements

Community will be READ ONLY July 16th, 5p PDT -July 22nd

Dear Community Members,   We'd like to let you know of an upcoming change to the community platform: starting July 16th, the platform will transition to a READ ONLY mode until July 22nd.   During this period, members will not be able to Kudo, Comment, or Reply to any posts.   On July 22nd, please be on the lookout for a message sent to the email address registered on your community profile. This email is crucial as it will contain your unique code and link to register for the new platform encompassing all of the communities.   What to Expect in the New Community: A more unified experience where all products, including Power Apps, Power Automate, Copilot Studio, and Power Pages, will be accessible from one community.Community Blogs that you can syndicate and link to for automatic updates. We appreciate your understanding and cooperation during this transition. Stay tuned for the exciting new features and a seamless community experience ahead!

Summer of Solutions | Week 4 Results | Winners will be posted on July 24th

We are excited to announce the Summer of Solutions Challenge!   This challenge is kicking off on Monday, June 17th and will run for (4) weeks.  The challenge is open to all Power Platform (Power Apps, Power Automate, Copilot Studio & Power Pages) community members. We invite you to participate in a quest to provide solutions in the Forums to as many questions as you can. Answers can be provided in all the communities.    Entry Period: This Challenge will consist of four weekly Entry Periods as follows (each an “Entry Period”)   - 12:00 a.m. PT on June 17, 2024 – 11:59 p.m. PT on June 23, 2024 - 12:00 a.m. PT on June 24, 2024 – 11:59 p.m. PT on June 30, 2024 - 12:00 a.m. PT on July 1, 2024 – 11:59 p.m. PT on July 7, 2024 - 12:00 a.m. PT on July 8, 2024 – 11:59 p.m. PT on July 14, 2024   Entries will be eligible for the Entry Period in which they are received and will not carryover to subsequent weekly entry periods.  You must enter into each weekly Entry Period separately.   How to Enter: We invite you to participate in a quest to provide "Accepted Solutions" to as many questions as you can. Answers can be provided in all the communities. Users must provide a solution which can be an “Accepted Solution” in the Forums in all of the communities and there are no limits to the number of “Accepted Solutions” that a member can provide for entries in this challenge, but each entry must be substantially unique and different.    Winner Selection and Prizes: At the end of each week, we will list the top ten (10) Community users which will consist of: 5 Community Members & 5 Super Users and they will advance to the final drawing. We will post each week in the News & Announcements the top 10 Solution providers.  At the end of the challenge, we will add all of the top 10 weekly names and enter them into a random drawing.  Then we will randomly select ten (10) winners (5 Community Members & 5 Super Users) from among all eligible entrants received across all weekly Entry Periods to receive the prize listed below. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once overall. If they are drawn multiple times, another user will be drawn at random.  Individuals will be contacted before the announcement with the opportunity to claim or deny the prize.  Once all of the winners have been notified, we will post in the News & Announcements of each community with the list of winners.   Each winner will receive one (1) Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value). NOTE: Prize is for conference attendance only and any other costs such as airfare, lodging, transportation, and food are the sole responsibility of the winner. Tickets are not transferable to any other party or to next year’s event.   ** PLEASE SEE THE ATTACHED RULES for this CHALLENGE**   Week 1 Results: Congratulations to the Week 1 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Community MembersNumber of SolutionsSuper UsersNumber of Solutions @anandm08  23 @WarrenBelz  31 @DBO_DV  10 @Amik  19 AmínAA 6 @mmbr1606  12 @rzuber  4 @happyume  7 @Giraldoj  3@ANB 6 (tie)   @SpongYe  6 (tie)     Week 2 Results: Congratulations to the Week 2 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Community MembersSolutionsSuper UsersSolutions @anandm08  10@WarrenBelz 25 @DBO_DV  6@mmbr1606 14 @AmínAA 4 @Amik  12 @royg  3 @ANB  10 @AllanDeCastro  2 @SunilPashikanti  5 @Michaelfp  2 @FLMike  5 @eduardo_izzo  2   Meekou 2   @rzuber  2   @Velegandla  2     @PowerPlatform-P  2   @Micaiah  2     Week 3 Results: Congratulations to the Week 3 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Week 3:Community MembersSolutionsSuper UsersSolutionsPower Apps anandm0861WarrenBelz86DBO_DV25Amik66Michaelfp13mmbr160647Giraldoj13FLMike31AmínAA13SpongYe27     Week 4 Results: Congratulations to the Week 4 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Week 4:Community MembersSolutionsSuper UsersSolutionsPower Apps DBO-DV21WarranBelz26Giraldoj7mmbr160618Muzammmil_0695067Amik14samfawzi_acml6FLMike12tzuber6ANB8   SunilPashikanti8

Check Out | 2024 Release Wave 2 Plans for Microsoft Dynamics 365 and Microsoft Power Platform

On July 16, 2024, we published the 2024 release wave 2 plans for Microsoft Dynamics 365 and Microsoft Power Platform. These plans are a compilation of the new capabilities planned to be released between October 2024 to March 2025. This release introduces a wealth of new features designed to enhance customer understanding and improve overall user experience, showcasing our dedication to driving digital transformation for our customers and partners.    The upcoming wave is centered around utilizing advanced AI and Microsoft Copilot technologies to enhance user productivity and streamline operations across diverse business applications. These enhancements include intelligent automation, AI-powered insights, and immersive user experiences that are designed to break down barriers between data, insights, and individuals. Watch a summary of the release highlights.    Discover the latest features that empower organizations to operate more efficiently and adaptively. From AI-driven sales insights and customer service enhancements to predictive analytics in supply chain management and autonomous financial processes, the new capabilities enable businesses to proactively address challenges and capitalize on opportunities.    

Updates to Transitions in the Power Platform Communities

We're embarking on a journey to enhance your experience by transitioning to a new community platform. Our team has been diligently working to create a fresh community site, leveraging the very Dynamics 365 and Power Platform tools our community advocates for.  We started this journey with transitioning Copilot Studio forums and blogs in June. The move marks the beginning of a new chapter, and we're eager for you to be a part of it. The rest of the Power Platform product sites will be moving over this summer.   Stay tuned for more updates as we get closer to the launch. We can't wait to welcome you to our new community space, designed with you in mind. Let's connect, learn, and grow together.   Here's to new beginnings and endless possibilities!   If you have any questions, observations or concerns throughout this process please go to https://aka.ms/PPCommSupport.   To stay up to date on the latest details of this migration and other important Community updates subscribe to our News and Announcements forums: Copilot Studio, Power Apps, Power Automate, Power Pages

Users online (1,706)