Boost Your Power Automate Skills with Complex Arrays, Select, XML, and Join Techniques

Поділитися
Вставка
  • Опубліковано 15 вер 2024

КОМЕНТАРІ • 49

  • @63huggybear
    @63huggybear 18 днів тому +1

    Thank, very insightful.

  • @michelhegeraat5430
    @michelhegeraat5430 9 місяців тому +2

    learned a lot here Damien. You are a gifted explainer. I also didn't know how I could revert to the old editor, until I saw you do it. :-)

  • @ikas0011
    @ikas0011 9 місяців тому +1

    This is really smart and involved. you are showing the limitations of the new designer where it can be bothersome but I truly appreciate your hard work around it. Liked and subscribed!

  • @dougydoe
    @dougydoe 7 місяців тому +1

    I persevered to the end so I'm one of the super fans. 😂. I'm trying to sharpen my skills regarding Array/Data manipulations with Power Automate so trying to watch most of your flows from 2 plus years ago. Great stuff.

    • @DamoBird365
      @DamoBird365  7 місяців тому +1

      You are indeed Doug. Hope you’ve entered my 10,000 subscriber comp 👍

  • @63huggybear
    @63huggybear 6 місяців тому +1

    This was very interesting and well thought out. Thank you.

  • @AdiCristea
    @AdiCristea 8 місяців тому +1

    Again, an epic video! Thank you, Damien! Wishing you and your loved ones a Merry Christmas and a Happy New Year!

    • @DamoBird365
      @DamoBird365  8 місяців тому +1

      Thank you Adi. Merry Christmas too.

  • @bikeknife2238
    @bikeknife2238 9 місяців тому +2

    I have your channel favorited in my Power Platform/Cool Guys folder. As always, you're providing some insightful techniques in an accessible format. Sometimes I find it difficult to learn more in this space but you've given me a lot to think about with this video. I'm curious if you could have just referenced the compose outside the Do/Until as you can with one inside a loop and avoided the union step. I might be thinking about it the wrong way.
    On the topic of xpath, it's so underrated. You might consider a video on using it's relative path capability. It saved me a lot of hassle with thousands of items where the depth of nesting was unknown. I was excited to see you had some mention of it and also glad to see more examples of 'next link' using Do/Until.

    • @DamoBird365
      @DamoBird365  9 місяців тому

      Cheers for the comment and thoughts. The compose method would work for an object, but with this being an array, the result would then be a nested array. Albeit if it’s possible, do let me know, as I’m always learning too. I demo’d the nesting of xpath elements in my video about client secrets, as an app ref can have many expiring keys. Drop me a dm if you’ve got any other ideas. I really appreciate your comments 👍

  • @josephjojo756
    @josephjojo756 9 місяців тому

    Whoa, this approach is quite effective given it doesn't use any foreach loops. Thanks for sharing this! 👍👍

    • @DamoBird365
      @DamoBird365  9 місяців тому

      Cheers Joseph, hope it helps you.

  • @moyura2
    @moyura2 9 місяців тому

    Thank you for sharing another excellent video.

    • @moyura2
      @moyura2 9 місяців тому

      Was there a reason for not using the 'Copy Action' for the parallel branch in the new designer, or is it not yet available in your tenant?

    • @DamoBird365
      @DamoBird365  9 місяців тому +1

      @@moyura2 it arrived this week 🥳 it would have definitely helped albeit I am still hoping scopes get added to this copy feature.

  • @NathanMosher
    @NathanMosher 6 місяців тому +1

    You can join parallel branches from in the settings of the select.
    Just set it so it runs after successful of the two items of the parallel branches.

  • @LOchu-qn6xv
    @LOchu-qn6xv 4 місяці тому +1

    Thanks

    • @DamoBird365
      @DamoBird365  4 місяці тому

      Oh my 🤩 thank you 🙏

    • @LOchu-qn6xv
      @LOchu-qn6xv 4 місяці тому +1

      @@DamoBird365You're the best on UA-cam when it comes to walking through advanced uses of Power Automate. Your videos have helped me a lot!

  • @hokemspitter
    @hokemspitter 5 місяців тому

    Hello again. So, I have the health and services results coming back. However, the issues data "cell" is a jumble of arrays and json-esk text. I have been struggling to come up with a method to grab the data within the "cell" and flatten it in some form (perhaps some sub table within for each issue "cell"?). A part two of this GREAT video explaining how to deal with this would be a life saver and nice too. Thanks again.

  • @andrewunick8367
    @andrewunick8367 6 місяців тому +1

    Great use of xpath - this is a new one for me and will definitely get some use. Is it possible for the xpath query string to return two fields concatenated. I've tried concat and string-join but no joy. E.g. if in your example the array was books an xpath query '/root/values/author/text()' would result in a delimited string of authors and '/root/values/title/text()' a string of titles. Is there an xpath query which would result in a string of both e.g. 'author1 - title1 ; author2 - title2 ; author2 - title3'? Thanks!

    • @DamoBird365
      @DamoBird365  6 місяців тому

      You could try concat inside the xpath string or potentially join outside via PowerAutomate. Let me know what works for you. concat(//parentElement/firstName, ' ', //parentElement/lastName)

  • @Scott-lc5kh
    @Scott-lc5kh 9 місяців тому +2

    I found you can actually merge branches easier in the new designer. They just hid the function lol
    You can select the step that is merging branches, go to its Settings, and under Run After, select the actions that are feeding it.
    Under the old designer, you couldn’t easily merge branches after the fact, you sort of had to go to the bottom, add a step, and then rearrange from the branches to the joined branch as required.

    • @DamoBird365
      @DamoBird365  9 місяців тому +2

      That is a brilliant spot and share. Thank you. Just had a play, it also lets you create branching that’s not logical? I can select actions that are way above the logical order of the flow. Doesn’t seem right?

    • @Scott-lc5kh
      @Scott-lc5kh 9 місяців тому +1

      @@DamoBird365 lol yeah I spotted that too. A bug perhaps? 🤷‍♂️

    • @DamoBird365
      @DamoBird365  9 місяців тому

      @@Scott-lc5kh I’ll report it. Genuinely, thanks for sharing 👍

  • @MarcinK-wj5js
    @MarcinK-wj5js 9 місяців тому +1

    This is great :)

  • @shomari169
    @shomari169 8 місяців тому +1

    I have been a fun of your videos and have had used some of you techniques but supposed i want iterate and update each record, can i still not use apply to each and use filtered array instead?

    • @DamoBird365
      @DamoBird365  8 місяців тому +1

      Thanks 🙏 are you asking if you can batch update instead of using an apply to each? There is batching with SharePoint Rest API. I’ve not yet done a video, but you could definitely filter for items that exist and update vs items that don’t exist and create.

  • @garypotter4273
    @garypotter4273 7 місяців тому +1

    This is an amazing tutorial - thanks. I am looking to do something similar yet I can't set a variable into the invoke http as my GET is from a custom connector. I do see that I get 250 array length over 3 pages though - it is a 742 array length in total. Around the 9min mark of your video you explain how to do union action - do you have any pointers for how I may be able to do a similar union action?

    • @DamoBird365
      @DamoBird365  7 місяців тому

      Are you trying to append pages to an array? You would need your custom connector to accept a position, i.e. 1, 251, 501 and you increment by page size.

    • @garypotter4273
      @garypotter4273 7 місяців тому

      The Query Parameters for my custom connector are: search, columns, pageSize, page, orderby and limit.
      I have set the increment variable with the initialised CurrentPage variable to zero and Loop Until with CurrentPage is equal to int(outputs('List_all_Customer_Assets')?['headers/Result-Pages’]). This iterates through the three pages of arrays, yet when I set the variable (not append array as your guid you said not to) and put in the union expression it forms part of the loop and doesn’t append the whole array from all pages into one like yours. I get three separate responses. You made it look so easy 😉

    • @DamoBird365
      @DamoBird365  7 місяців тому

      @@garypotter4273 are you getting 3 nested arrays? [[] , [], []] ?

    • @garypotter4273
      @garypotter4273 7 місяців тому

      Yes, well I think they are. After the run I can click the next button three times and see each page as an array.

    • @DamoBird365
      @DamoBird365  7 місяців тому

      @@garypotter4273 is your history for the compose an nested array [[]] or an array []? You want it to be an array. Your history should give it away.

  • @piotrrusak
    @piotrrusak 9 місяців тому +2

    Damien, good to know you like Chopin music 😊

    • @DamoBird365
      @DamoBird365  9 місяців тому +2

      I visited Poland in 1998 as a teenager on an exchange trip. The girl I stayed with gave me a Chopin CD. I had never heard before but love it.

    • @piotrrusak
      @piotrrusak 9 місяців тому +1

      @@DamoBird365 Maybe you want to refresh your memories and visit Poland again? There will be a chance to come to Warsaw in 11-12 April 2024 - for CollabDays Poland 2024
      This would be an honor to have you as speaker on this event. I can let you know when C4S will be announced - for now please think about this. Poland changed a lot since 1998 ;-)

    • @DamoBird365
      @DamoBird365  9 місяців тому +1

      @@piotrrusak please do let me know. It would be great to be involved if I can.

  • @geralddahl9159
    @geralddahl9159 9 місяців тому

    @Damobird365, how do you do it? I agree with the comment about you being a gifted explainer. You look at an expression in a step and clearly ‘see’ what has been summoned and how subsequent steps will be shaped as a result. Ouch, my brain hurts, I can’t keep up. Thanks for the Chopin.

    • @DamoBird365
      @DamoBird365  9 місяців тому

      Thanks Gerald, I’m pleased to hear that I am explaining things well.

  • @mk15minut64
    @mk15minut64 9 місяців тому +1

    Please work in classic version this is really unclear

    • @DamoBird365
      @DamoBird365  9 місяців тому +1

      I need to be future proofing my content, so have to invest in the new designer. The expressions and logic are the same. If you want to see a similar example in classic, check out
      ua-cam.com/video/EOmsT9KcWxc/v-deo.html

  • @hokemspitter
    @hokemspitter 5 місяців тому +1

    Hello. Really GREAT STUFF. I have gotten to the point where I am build the semi-colon delimited list of owner emails and keep getting the message that the expression is invalid. Could I bother you to look at this and tell me what I am missing?
    setProperty(item(),'ownersemails', join(xpath(xml(item()?'[ownersemails']), '//mail/text()', ';'))
    It seems okay in the classic designer. Good grief!!!!
    I just made it through the entire video. You have skills sir!!!!
    That expression at the end to join the member array with the owner array was wild. I have never seen that before. Thank you!

    • @DamoBird365
      @DamoBird365  5 місяців тому +1

      There’s a bug in the new designer that turns expressions into strings. If you build it in classic, that will work.