Thanks to Meneghino i'm using this code:
If( DropDown1.Selected.Value = "Prive", Value(Eind_Kilometers) - Value(Start_Kilometers))
The only thing is missing, it does not write to my sharepoint list.
So for you guys it might be simple but for me it does not.
Solved! Go to Solution.
Hi the first version of the app is released, im currently working on another app so the topic may closed
Hello Meneghino,
I was digging through the Power Users Community to try to find an alternative practice for updating a SharePoint list using Power Apps without using the "out of the box" form controls in Power Apps. As you stated in this thread, the forms can be difficult to customize and not very clean looking.
Your suggestion to the other thread stated that you would suggest possibly building a form from scratch, with controls. How exactly would you go about doing something like this, for writing to a SharePoint list? In other words, if you are using controls from scratch, how would you make it display what is already in that field in SharePoint and how would you tell it to update the field for that record back to SharePoint when it is changed? I have a pretty large app that I have been tasked with building and I would like to set it up the best way possible for end user performance and reliability. This app will have between 75 and 100 fields to update for one line item, which I plan on splitting among many screens. Any suggestions/recocomendation that you can provide would be extermly helpful.
Thanks,
Amy Jo
Hi @AJZoerner, basically I use the Patch function. Let's start with a simple example:
1) Let's say you have a SharePoint list (BasicList) with the ID column (of type integer) and the Title column (of type text) only.
2) Connect BasicList to your new blank PowerApp
3) Create a text input (TextInputTitle)
3) Create a button and set its OnSelect property to:
Patch(BasicList, Defaults(BasicList), {Title: TextInputTitle.Text})
This will create a new record in the SP list every time you press button. The ID field does not (and cannot) be specified since it is generated by SharePoint.
Once you have created a few items successfully, then add another text input (TextInputID) and another button with the following OnSelect:
Patch(BasicList, {ID: Value(TextInputID.Text)}, {Title: TextInputTitle.Text})
This second button will allow you to edit any existing records.
The above are just simple examples to show you how it works, please let me know how you get on.
By the way, if you plan to have a table with 75-100 fields, I would think if there is no better way to organise your data. Are you sure you really need all those fields? What sort of business process is it?
Thank you so much for you reply! This is very similar to what I am doing already, so it is reassuring that I am headed in the right direction. The biggest difference is that I was putting the patch function in the OnChange action of each field, which I think was slowing performance. I will take this approach and create a button that then updates all of the fields on that particular screen.
This app will be used for a final inspection in a manufacturing environment. There are many, many "double-checks" before the product goes out the door and we would like to streamline this process and go paperless.
Thank you again for you quick response!
Amy Jo
You are welcome @AJZoerner
In regards to PowerApps and performance, there are indeed many things that you can do to improve response times, for example caching of lookup tables.
Not for performance reasons, but for controlling execution, you can use the following syntax for the Patch call in the OnSelect property:
ClearCollect(PatchedRecords, Patch(BasicList, Defaults(BasicList), {Title: TextInputTitle.Text}))
This way the PatchedRecords collection will contain the patched record(s) including the new ID assigned by SharePoint, which you have no other certain way of obtaining.
In regards to your data structure, I understand that you are going to have a column for every inspection test. If I may, I would suggest that this is not the ideal approach, particularly if the number of tests are "many, many". This I imagine is also because the number and type of test may vary from product to product and also vary over time. You do not want to change the structure of your database every time your testing process adds a new test. The way to deal with that is to have for example five tables:
A) Products.
B) Orders (specific instances of A with production date, customer etc.)
C) Tests (e.g. Ultrasound, Non-destructive tension test, Surface polish etc. so you can add any new ones if/when they get introduced)
D) Test_by_product, i.e. which test are required for which product (a lookup to both A and C so that you are sure all tests are done that need to be)
E) Test_results, your basic production log (results for single tests for a single production order of a specific product, a lookup to B and C)
Apologies for the unsolicited advice, but I believe this may be a little more work at the start but will make for a much more robust solution.
Thank you for your detailed reply.
Can you explain how you would cache the lookup tables within the app? I have quite a few lookup tables, so I think this may help speed. However, I cannot find any documentation on how to do so online.
I understand your data structure suggestions. However, these fields really need to be sourced from the same list. Once the inspectors on the factory floor complete the entire inspection, our office personnel needs to upload this information into our larger ordering program as a PDF. Since PowerApps does not currently support printing at this time, I've created a read-only InfoPath form that is connected to the inspection data list. This allows for the office personnel to have a printer-friendly version of the data quickly and easily (I have created a button within the app that will take them right to the InfoPath form based on the ID of the item that is currently selected in a gallery). Should additions need to be made to the inspection requirements, I don't foresee it being an issue to simply add these additional fields to the list and incorporate them into the app.
If your lookup table has 500 rows or less, then you can simply use the following as the OnVisible property of your landing screen or as the OnSelect of a cache button:
ClearCollect(CachedLookupTable, LookupTable)
Then you just substitute CachedLookupTable instead of LookupTable wherever you use it.
If your lookup table has more than 500 rows, please see my post here, as well as other posts:
Hello, I am looking for a similar solution... I currently have an app that provides the managers and anyone who reports to her.
The idea of this app is pretty much to make a roll call for the managers.. so she would go on the app and toggle wether the certain employee is in that specific day.
I want to learn how to connect all of these pieces together and send it back to a sharepoint list.
I hope that was decently clear.
Hi @Anonymous
Yes, this could easily be done.
For example:
1) Display the list of employees to be roll-called in a gallery (filtered by the manager using the app)
2) Place a checkbox in the gallery so that the manager can tick/un-tick the person's presence
3) Place a Patch/RemoveIf piece code in the OnCheck/OnUncheck property of the checkbox
Please let me know if you need more specific guidance.
@v-micsh-msft, I am tryint to write records into SharePoint list but failed to do so using Collect, Patch and combination of Collect and Clearcollect. I am able to write to the first column, ie. Title, but the next column shows an error with message "Column name does not exist". I am unable to debug the issue as I see everything fine in my SharePoint list and its columns names.
Expecting suggestions, advice or any help !
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!
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
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.
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