Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

Power Apps Cards - How to Make Planning Poker

Posted on Aug 7 In December 2022 Power Apps Cards launched, creating Canvas Apps that can be embedded in Teams channels/meetings. But since then it has gone quiet, with not much on an update front, so I thought I would take a look and see what I can make.My idea was a Planning Poker app, so that during refinement meetings the app can be posted in the meeting and everyone can add their points.Before I start on the guide, I thought I would share the key things I found out about Power App Cards:It's an Adaptive Card not an AppI had this dream that Power Apps Cards would be a little app running in teams, it's not, it's an Adaptive card. Just compare the design studios of Adaptive Cards and Power App Cards:https://adaptivecards.io/designer/https://dev.teams.microsoft.com/cardsThe only additional functionality is the use of Connectors. It looks like the Adaptive card is loaded through Teams Power App, which refreshes the data connections.Limited ComponentsAs you can see the components are just Adaptive card components, so you don't have the following:(just to name a few)On top of that there is no X/Y and Width/Height parameters for any, so no positioning, and there is no OnChange triggers.Power FX lightThe card uses Power FX like Canvas apps, but its very limited, check out a small snapshot of what is not compatible.Full list hereOnly DataverseEven though in a demo video I saw it had all the connections, at the moment it only has Dataverse.What's really annoying though is it can't read custom tables, so you are stuck with out of the box ones.Doesn't Appear in meeting chatI wanted to have the app appear in the chat sidebar of a meeting, but currently it only opens when in a main chat window.ALMFrom the Card you cant export, but you can add it to a solution and then export between environments.So the Planning App needs the following key requirements:DataFor everyone to see the data we need to store it somewhere (there is persistent variables but they are only for the user). We can only use Dataverse and we can't use custom tables 😣 so I used the Task table and added the following fields:ComponentsThe Card has the following key components (not including all display images and labels):WorkflowThe process is:Add Round Id and press refresh. Why the refresh button, well there is no OnChange trigger on the Round input and the card is not volatile (i.e. if we update a filter value it does not change the data). So the button press refresh's the data set, well no, as the Power FX Refresh() function is one of those not available, so how do we refresh. Well luckily there is a workaround, Set variables. If we store the Round id in a persistent variable and set the input to it as a default, when we Set the variable it refreshes the data 😎Key all out, tick the 'When sending this card, this value can be customized'. Its designed for Power Automate passing variables, but we need it as else we error when loading (as the Round Id input is empty it passes a null to the filter)Next the user adds their points for the round (Dropdown), then presses the Submit button with below code triggered:We cant use Patch to create new records (dam Power FX light) so it's a Collect. The Controller role is given to the user who creates the first round entry (but they have to submit points to create the first entry).The users entry should now appear in the Column with Dev name item, to see others the user will have to press that refresh button (no timer component for background refreshes 😣).If the user is the Controller, when they are happy everyone has submitted their points they press the Show button to reveal everyone's points.For this to work we need at logic for the visibility of each users points and to set what the Show button press does.First we have to add condition to the Points in the Column 2. We set the isVisible parameter on the Column to below.Then on the Show press we set the round to complete, with verb set to Power FX code below:And to only show the button for the controller we add below for the button isVisible:You can also add additional Column sets to make it look nicer, images, title and additional label showing who the Controller is.Overall I have mixed feelings, I love the idea of the Power App Card, but I'm not sure about Microsoft's implantation, in most cases either an Adaptive card or Canvas app would be the better solution. The early life limitations also make it even less useful (Only Dataverse connector and standard tables).I would have loved to have seen a fully-fledged widget approach, with the app having almost full capability and be a perfect companion for teams to collaborate during meetings (imagine custom polls etc). It will also be interesting to see how Loops evolves, as it may steal a lot of Power Apps Cards use cases.A download of the card can be found hereFurther ReadingTemplates let you quickly answer FAQs or store snippets for re-use.@wyattdave Cant wait to try this !! Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's permalink. Hide child comments as well Confirm For further actions, you may consider blocking this person and/or reporting abuse Andrew Pierno - Jan 31 '20 Jerome Raymundo - Oct 30 '19 Eugenia Evtushenko - Jun 19 '20 Eugenia Evtushenko - Jun 8 '20 Once suspended, wyattdave will not be able to comment or publish posts until their suspension is removed. Once unsuspended, wyattdave will be able to comment and publish posts again. Once unpublished, all posts by wyattdave will become hidden and only accessible to themselves. If wyattdave is not suspended, they can still re-publish their posts from their dashboard. Note: Once unpublished, this post will become invisible to the public and only accessible to david wyatt. They can still re-publish the post if they are not suspended. Thanks for keeping DEV Community safe. Here is what you can do to flag wyattdave: wyattdave consistently posts content that violates DEV Community's code of conduct because it is harassing, offensive or spammy. Unflagging wyattdave will restore default visibility to their posts. DEV Community — A constructive and inclusive social network for software developers. With you every step of your journey. Built on Forem — the open source software that powers DEV and other inclusive communities.Made with love and Ruby on Rails. DEV Community © 2016 - 2023. We're a place where coders share, stay up-to-date and grow their careers.



This post first appeared on VedVyas Articles, please read the originial post: here

Share the post

Power Apps Cards - How to Make Planning Poker

×

Subscribe to Vedvyas Articles

Get updates delivered right to your inbox!

Thank you for your subscription

×