Dataverse Grid Control & Delegation in Power Apps

Sdílet
Vložit
  • čas přidán 9. 07. 2024
  • After demonstrating how you can create apps that look native to model-driven apps at the Power Platform Conference, I was asked by so many to 'show me the code!' - here is Part 2 of a series where I'm demonstrating how to build a custom page that has a responsive grid with filtering, and command bar actions.
    👉aka.ms/creatorkit
    ✅ Responsive Containers • Responsive containers ...
    ✅ Responsive Grid with adaptive columns • Dataverse Grid Control...
    ✅ Dataverse Delegable Paging in Power Apps
    • Dataverse Delegable Pa...
    ✅ Multi-value filtering using a Tag Picker • How to create multi-va...
    ✅ Command Bar and model-driven navigation in custom pages
    • Command Bar and model-...
    00:00 Introduction
    00:56 Responsive grid concepts
    01:54 Creator Kit Reference App
    04:33 Adding the Details List
    09:03 Configuring the grid layout
    15:48 Delegation of sorting
    17:54 Using the App Monitor to look at delegation
    18:27 What is delegation?
    24:59 Adding the other columns using ShowAsSubTextOf
    27:08 Adding the tag indicator column
    30:54 Summary
  • Jak na to + styl

Komentáře • 46

  • @gilbertpradier
    @gilbertpradier Před 7 měsíci

    Thank you so much Scott, great content.

  • @moyura2
    @moyura2 Před rokem +1

    Thanks for sharing, it's very helpful.

  • @disturbedcarrot
    @disturbedcarrot Před rokem

    New video from Scott, another opportunity to be amazed! 👏

    • @ScottDurow
      @ScottDurow  Před rokem

      Thank you Jimbo! Which part are you most interested in?

  • @hychoudhury
    @hychoudhury Před rokem +1

    Oh how I look forward to your videos! So much to learn and so much awesomeness. Keep them coming :)

    • @ScottDurow
      @ScottDurow  Před rokem

      Thank you Hameed! More to come! 😊
      🗓️Uploading Wednesdays and Saturdays!

  • @shahidkapoorist1
    @shahidkapoorist1 Před rokem

    In detail as always. Thanks for the video👍

  • @davidemognaschi
    @davidemognaschi Před rokem

    Thank you Scott! Leaving the safe haven of typescript development, where you are in control of everything, and embracing FX is something that as a dev causes me some pain. But it is clear that a good mix of the 2 approaches is the way to go. The Creator Kit also gives a big push to the develop-it-all diehards like me.

    • @ScottDurow
      @ScottDurow  Před rokem +1

      Hi Davide -Thank you so much for watching and leaving a comment.
      I know that feeling of leaving that 'safe haven' very well!! I have found the mix allows my teams to be more productive and also promoting component re-use inside 'Fusion teams'. Thanks again!

  • @iyurisevic
    @iyurisevic Před rokem

    Hidden gem in this video is the Formula Type field to set the color column! Awesome trick that saves me from creating a business rule to do the same thing.
    Did notice that ColTextColor is used, but didn't actually color the text in your video, and isn't documented either. Playing around with it didn't display any colors either, am I missing something?

    • @ScottDurow
      @ScottDurow  Před rokem +1

      Thank you and thank you for watching! I am glad it helped and saved you time
      ☺️ that property is actually one that I used in a form of the creator kit control - I need to find time to submit a pull request to get it in the public version!! Thank you again.

  • @kokonaung3081
    @kokonaung3081 Před 10 měsíci

    In my app, TotalRecords return -1 instead of actual total record.

  • @sarahbennett7571
    @sarahbennett7571 Před rokem

    This is such a great introduction to the fluent details list in the Creator Kit. Is it possible to sort the data by multiple columns, eg sort by Code then by Description.

    • @ScottDurow
      @ScottDurow  Před rokem

      Thank you and thank you for watching! 🙌 The grid can only show a single sort column, but you could certainly handle multiple sort columns using an alternative UI and use this to configure the input collection sort.

  • @danikahil
    @danikahil Před rokem

    This is really cool... great video Scott. Looking forward to the next one :-). Wondering if you could do a "Group By" column using the "Fluent Details List". Or do you need to use the gallery for that? Do you know?

    • @ScottDurow
      @ScottDurow  Před rokem

      H Dani - Thank you and thanks for watching! 😊Although the DetailsList doesn't natively support grouping (since there are so many scenarios like server-side vs client-side etc.) you can create a grouping layout with expand/collapse - I'll be sure to include this in a future video! Thanks

    • @danikahil
      @danikahil Před rokem

      @@ScottDurow Oh that would be awesome Scott, thanks for your support and for sharing so much good stuff with our community 🙂

  • @luislopezacevedo1652
    @luislopezacevedo1652 Před rokem

    Thank you Scott! This is just amaizing :). Is it possible to include LookUp columns in the FluentDetailList control? I've tried to include but the column won't show up in the control.

    • @ScottDurow
      @ScottDurow  Před rokem

      Thank you Luis and thanks for watching ☺️ yes you can include lookup columns - you just need to ensure you have added the related table to your app - once you’ve done this and refresh, the details list will show the name of the related lookup record 🚀

  • @SpaceCadetMachi
    @SpaceCadetMachi Před rokem

    Great video! I am currently working on a project using this method so the videos are priceless! I have a question. How can I get the ‘Entity name’ inside my custom page when adding it to a form? I am using the canvas app component,in the form creator, to display the custom page.

    • @ScottDurow
      @ScottDurow  Před rokem +1

      Hi Michael - thanks for watching and thanks for the great feedback! As far as I know, the canvas app form component is bound to a specific table and it cannot be dynamic. The component only supports canvas apps at the moment - although custom pages do work they are not yet supported. Please go and vote up this idea bit.ly/3EJSZOP (and get as many people to vote it up too!)

  • @oliverchadwick8817
    @oliverchadwick8817 Před rokem

    Thanks very much Scott, this is a really useful overview. Have you had any success with rendering contacts in the DetailsList and getting the company name displayed. With it being a customer type lookup, the DetailsList seems to struggle with being able to add this as a field even using the appropriate type casting for the polymorphic lookup?

    • @ScottDurow
      @ScottDurow  Před rokem

      Hi Oliver! thanks for watching! 😊 The internal binding/sorting struggles with polymorphic fields since you can't add them to PCF dataset fields. Until this is fixed, a work around is to use the second approach I show with galPaging.AllItems as a datasource, and on the DetailsList using AddColumns:
      AddColumns(
      FirstN(LastN.....)
      ,
      "ColCompany",
      If(IsType('Company Name',[@Accounts]),AsType('Company Name',[@Accounts]).'Account Name')
      )
      Add the ColCompany to the DetailsList fields, and then reference it in the column layout definition. This still is delegable because it's the gallery doing the actual retrieval of the records. Of course, because sorting is not yet supported on lookups, you'll have to use the dummy field approach for sorting by company.

  • @yeraldo05
    @yeraldo05 Před rokem +1

    Really fantastic video Scott!! Thanks for all the golden nuggets! Quick question, how were you able to use the Custome Pages inside the Forms Tabs or you were using a Canvas App?

    • @ScottDurow
      @ScottDurow  Před rokem +1

      Hi Yeriel - Thanks for watching! Yes, it is using the Embedded Canvas App control. You can actually add a custom page using this control, but it is not currently supported. Please vote up this idea here - bit.ly/3EJSZOP
      Tell your friends, co-workers and family to vote too! 😉

    • @yeraldo05
      @yeraldo05 Před rokem +1

      @@ScottDurow Idea Voted! Currently the way I'm utilizing Custom Pages inside forms is creating buttons, Dropdowns or business rules that would open Side Panes with the information the End user needs to add into the forms in a more complex way, once they closed the Side Pane it would refresh the Form with JavaScript functions.

    • @yeraldo05
      @yeraldo05 Před rokem

      Hello Scott, I have a question related to Side Panes, do you know how we can pass parameters (GUID) to the Side Panes JavaScript Function?
      I´ve used the NavigateTo function but I haven´t found a way for the Side Panes function.
      Thanks for the Help!

    • @ScottDurow
      @ScottDurow  Před rokem

      Hi Yeriel - great question. It will be the topic of a future video, but the process is to first create a side panel and then use the navigate method of the panel object it's self - learn.microsoft.com/en-us/power-apps/developer/model-driven-apps/clientapi/reference/xrm-app-appsidepane#methods

    • @stuaz2644
      @stuaz2644 Před rokem

      @@ScottDurow how did you manage to do it using the embedded canvas app control? The way I have done it doesn’t look as seem less as yours. Lots of scrolling and empty space.

  • @julijazas
    @julijazas Před rokem

    Looking forward for next part of this series videos. Navigation, filters etc. is it going to come out?

    • @ScottDurow
      @ScottDurow  Před rokem +1

      Thank you Julius! I’ll be uploading on Wednesdays and Saturdays!

  • @OleBergtun
    @OleBergtun Před rokem

    Great content for us developers that need to start taking power apps and dataverse seriously. I was playing around with a dataset and your list sample - though my dataset is similar, but I would like to add/pick more than one status - or tags that I have called them. How would you go about that in powerapps and dataverse? Maybe you already created some content about this?

    • @ScottDurow
      @ScottDurow  Před rokem +1

      Thank you Ole! ☺️ Here is a video on just that - How to create multi-value filtering using a Tag Picker in Power Apps
      czcams.com/video/l8v4W-A9-ao/video.html

  • @donquixote4055
    @donquixote4055 Před rokem

    Hello Scott, great video! Have you had any experiences with logging / observing cloud flows so far? As it seems, more and more interfaces can be completely build inside power automate (which is awesome and fascinating). However the option to properly log the errors is potentionally the biggest drawback or reason why most people still build their own plugins. After some research I have not come across any best practises regarding this topic.

    • @ScottDurow
      @ScottDurow  Před rokem

      Great question - the Power Automate reports are pretty good at seeing an overview of the flow runs and then you can dig into specific failures - but you can also query flow runs using the m365 powershell CLI. github.com/pnp/cli-microsoft365
      Another option is to use Azure App Insights/Log Analytics with Try/Catch - community.dynamics.com/crm/b/crminthefield/posts/monitoring-the-power-platform-power-automate---run-time-part-3-implementing-a-monitoring-strategy

  • @jenefermonroe5999
    @jenefermonroe5999 Před rokem

    Thanks for this video Scott! At the You mention at the 30 minute mark how you will use add columns and maintain delegation. I cant find that video, can you please point me?

    • @ScottDurow
      @ScottDurow  Před rokem

      Hi Jenefer! Thank you for watching ☺️ The video I was referring to is czcams.com/video/zfyoBLbPvoQ/video.html at [18:37] I talk about manual paging and how you can make that technique delegable. Hope it helps!

    • @jenefermonroe5999
      @jenefermonroe5999 Před rokem

      @@ScottDurow thank you! I did get that to work, REALLY appreciaite it! But I cant get the add columns to work without making the underlying filter on the gallery non-delegatable.

    • @jenefermonroe5999
      @jenefermonroe5999 Před rokem

      I think the problem is that I am trying to get the infinite scrolling AND the add columns, and I don't think you can have both. Please let me know if you disagree with this assessment. Appreciate all you do!

  • @edreimpanduki1352
    @edreimpanduki1352 Před rokem

    Great video Scott. Could this grid be made editable?

    • @ScottDurow
      @ScottDurow  Před rokem +1

      The DetailsList control does not support in-line editing - instead I use a panel that shows the data for the currently selected row and alow editing from there.

  • @edreimpanduki1352
    @edreimpanduki1352 Před rokem

    Hi Scott, it seems like the Details list is not responsive on embedded canvas apps, I just tried to implement a version of what you're showing here but instead of a custom page I did it on an embedded canvas app and it is not responsive, properties like ColShowSubTextOf don't work when used in a IF statement like If screen size=small , seems to only work only when a column is specified. Is there anything I can check or adjust when using this control on an embedded app?

    • @edreimpanduki1352
      @edreimpanduki1352 Před rokem

      I think I figured I figured out the issue, had my screens in Portrait instead of Landscape, it's responsive now

    • @ScottDurow
      @ScottDurow  Před rokem

      Hi Edrei - thanks for watching and the info - would love to look into this - what is the column definition you have so I can try it out?