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

Increase number value of column in gallery catalog with buttons (onSelect)

Hello Community,

I am currently tinkering with a canvas app for a storage system.
So far I'm making good progress, but I'm stuck at one point.

Let me try to illustrate this:

factory service.jpg

 

I have a BrowseScreen (for Gallery Catalog) and an EditScreen (using an EditForm1).

In the BrowseScreen I display the dataset of a sharepoint list in the Gallery Catalog. Here I have a Amount column that has a numeric value. For example 4, for example 6.

What I am trying to do now is to change this value individually in a popup window via plus or minus or to change it by a free text entry. The popup window itself appears by OnSelect of a button ("ChangeAmountButton"), and within this (PopUp) Group I have integrated an EditForm2, which shows me only the Amount column with the numerical value.

What I fail at is the following:

I do manage to display the current value in the sharepoint list with the "Default" property (and that is: DataCardValueX, where this DatacardValue is from the EditScreen EditForm1),
but how and where do I have to set the OnSelect on the "+" and "-" buttons, so that this value changes on each click/select
and can be submitted later? For OnSelect I could set something like "DatacardValueX + 1" but
what makes it difficult is that I need the Default property to get the value in the datasource but I also need it to connect it with the "OnSelect" codes of the + / - buttons...

Any ideas?

Thank you very much!

 

 

3 ACCEPTED SOLUTIONS

Accepted Solutions
SebS
Super User
Super User

@ultrAslan 

 

Is this what You are looking for?

 

SebS_0-1670878796158.gif

 


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

View solution in original post

@ultrAslan I don't really understand the need for a second edit form with only 1 field.

What I would propose is to replace the amount edit form (only 1 data card) with a regular Text input.
The main calculations within the pop-up will be done with a variable and the amount will only be updated in the data source after clicking confirm.

(1) A user clicks on Change Amount

//1 This is needed to reference Gallery.Selected later on
Select(Parent);

//2 set varPopUp to true
UpdateContext({varPopUp: true});

//3 Save the current amount in a local variable
UpdateContext({varAmount: Gallery.Selected.Amount})


(2) The Default of the text input (instead of the datacard) will be varAmount

(3) The OnChange of the text input will have the following code:

UpdateContext({varAmount: Value(Self.Text)})

 
(4) The OnSelect of your add / minus button will be:

//add button
UpdateContext({varAmount, varAmount + 1})

//minus button
UpdateContext({varAmount, varAmount - 1})

 
(5.a) Patch datasource when the confirm button is clicked

Patch(DataSource, Gallery.Selected, {Amount: varAmount})


(5.b) Reset varAmount when clicking Cancel

 

UpdateContext({varAmount: Blank()})


You might need to tweak a few things to your specific case/app.
I hope this helps!

If I answered your question, would you be so kind as to accept it as a solution.

View solution in original post

@ultrAslan 

 

There will be a lot of changes and you will need to remove whole Pop Up box.

 

We need to start from your button in the gallery You need to modify it make sure the Amount is name of Your SharePoint column if not change ThisItem.'NameOfTheAmountColumn'

 

 

UpdateContext({varAmount: ThisItem.Amount});UpdateContext({PopUp:true})

 

 

You creating a variable called varAmount and Variable PopUp <-- this will control the popup box

 

To do this we will not use any form delate whole thing and start from schrach to make it easy to explain

Create a container and place all Items in it as on Screen below

 

SebS_2-1670879659680.png

 

We start From TextInput add this control

 

and Place the code

 

 

varAmount

 

 

Done ! 😉 joking

 

Now + and - buttons

 

First Minus code below will substract and prevent to go below 0

 

 

If(varAmount = 0,Notify("Amount cant be les then Zero"),UpdateContext({varAmount:varAmount-1}))

 

 

Next Plus button that will just increment

 

 

UpdateContext({varAmount:varAmount+1})

 

 

 

And Confirm button now

 

Replace

 

TestApp = Your Sharepoint List

Gallery1.Selected.ID = Gallery1 replace with Name of Your  Gallery

TextInput2 = name of Your control

 

 

Patch(TestApp,
{ID:Gallery1.Selected.ID},

{

    Amount:Value(TextInput2.Text)
}
);
UpdateContext({PopUp:false})

 

 

Cancel button

 

 

UpdateContext({PopUp:false})

 

 

You should have something like that now

 

SebS_3-1670879992860.png

 

make it pritty like before 🙂

 

and in the Container Visible property place

 

 

PopUp

 

 

Let me know if something go wrongin case of error make a screen and write the error to allow me to help find what cause it

 

 


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

View solution in original post

8 REPLIES 8
SebS
Super User
Super User

@ultrAslan 

 

Is this what You are looking for?

 

SebS_0-1670878796158.gif

 


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

Wow, exactly - can you share how you solve this please? 🙂
Thank you in advance!!!

@ultrAslan 

 

yes sure give me  like 10 min it will be long post 😉


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

@ultrAslan I don't really understand the need for a second edit form with only 1 field.

What I would propose is to replace the amount edit form (only 1 data card) with a regular Text input.
The main calculations within the pop-up will be done with a variable and the amount will only be updated in the data source after clicking confirm.

(1) A user clicks on Change Amount

//1 This is needed to reference Gallery.Selected later on
Select(Parent);

//2 set varPopUp to true
UpdateContext({varPopUp: true});

//3 Save the current amount in a local variable
UpdateContext({varAmount: Gallery.Selected.Amount})


(2) The Default of the text input (instead of the datacard) will be varAmount

(3) The OnChange of the text input will have the following code:

UpdateContext({varAmount: Value(Self.Text)})

 
(4) The OnSelect of your add / minus button will be:

//add button
UpdateContext({varAmount, varAmount + 1})

//minus button
UpdateContext({varAmount, varAmount - 1})

 
(5.a) Patch datasource when the confirm button is clicked

Patch(DataSource, Gallery.Selected, {Amount: varAmount})


(5.b) Reset varAmount when clicking Cancel

 

UpdateContext({varAmount: Blank()})


You might need to tweak a few things to your specific case/app.
I hope this helps!

If I answered your question, would you be so kind as to accept it as a solution.

@ultrAslan 

 

There will be a lot of changes and you will need to remove whole Pop Up box.

 

We need to start from your button in the gallery You need to modify it make sure the Amount is name of Your SharePoint column if not change ThisItem.'NameOfTheAmountColumn'

 

 

UpdateContext({varAmount: ThisItem.Amount});UpdateContext({PopUp:true})

 

 

You creating a variable called varAmount and Variable PopUp <-- this will control the popup box

 

To do this we will not use any form delate whole thing and start from schrach to make it easy to explain

Create a container and place all Items in it as on Screen below

 

SebS_2-1670879659680.png

 

We start From TextInput add this control

 

and Place the code

 

 

varAmount

 

 

Done ! 😉 joking

 

Now + and - buttons

 

First Minus code below will substract and prevent to go below 0

 

 

If(varAmount = 0,Notify("Amount cant be les then Zero"),UpdateContext({varAmount:varAmount-1}))

 

 

Next Plus button that will just increment

 

 

UpdateContext({varAmount:varAmount+1})

 

 

 

And Confirm button now

 

Replace

 

TestApp = Your Sharepoint List

Gallery1.Selected.ID = Gallery1 replace with Name of Your  Gallery

TextInput2 = name of Your control

 

 

Patch(TestApp,
{ID:Gallery1.Selected.ID},

{

    Amount:Value(TextInput2.Text)
}
);
UpdateContext({PopUp:false})

 

 

Cancel button

 

 

UpdateContext({PopUp:false})

 

 

You should have something like that now

 

SebS_3-1670879992860.png

 

make it pritty like before 🙂

 

and in the Container Visible property place

 

 

PopUp

 

 

Let me know if something go wrongin case of error make a screen and write the error to allow me to help find what cause it

 

 


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

Haha I see my solution took quite some time to type out.
I did not see that you wanted to answer this @SebS 😁

Heheh 🙂 Sorry @LaurensM 

 

Your solution is also Pretty 🙂


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

Thank you too!!!

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 (2,054)