cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
fermoreno
Frequent Visitor

Custom Columns in create HTML table after array

Hi, I have created a flow that builds an HTML table based on an array (following one the examples form the forum. WOrks perfectly except that I don't need to send all columns, only a few and even includes the ones used by PowerApps.

 

I tried the advanced options for custom columns but enable to make it fly. Adding screencapture for reference, in escence need to pick which columns to show so then I can send the "custom" table via emails.

 

Thanks in advance.


Fer

 

flowexample.PNG

14 REPLIES 14
v-yamao-msft
Community Support
Community Support

Hi fermoreno,

 

According to the screenshot you provided, it seems that you are getting rows from an Excel. I create a simple flow to test this issue on my side.


When creating the flow, I don’t get the message asking me to add a foreach.


The flow is configured likes below. And it works fine on my side.

3.PNG

 

Please take this for a reference and try again with it.

 

Best regards,
Mabel Mao

Community Support Team _ Mabel Mao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Hi Mabel, thanks for the reply. It kind of worked but did not achieve my goal. Perhaps I should explain...

 

I have an excel table with details in each row, example:

sample1.PNG

 

Normally would send an email per row but is way to many for the same customer, so what I would like to do is an array based on a list which is dynamic (it is a list from a different table in the same file that I created via power query), not always the same customers with an output of a table but not including all columns (the one created by powerapps for example) like this:

sample2.PNG

 

Tried your example, it did work but is not grouping them... is sending an email per row. (Flow keeps adding apply to each all the time)

 

The goal is to send a table with the selected columns to each customers via email.

 

Perhaps I'm using the wrong apporach:sample3.PNG

sample4.PNGsample3.PNG

 

Thanks is advance

Fer

 

Hi fermoreno,

 

There are two Get rows actions in your flow. Are they getting rows from different tables? As you said that “it is a list from a different table in the same file that I created via power query”.


There is a Consignee column in both the two lists, and you want to get columns when there is a common consignee in the two list, right?


Best regards,
Mabel Mao

Community Support Team _ Mabel Mao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Exactly, 2 get rows, different tables and consignee matches I used the second table to identify or to set the array parameters.

 

The second table has the list of customers and it is generated via power query everytime is refreshed.

 

Appreciate the help.

 

Regards

 

Fer

Hi, Just wanted to share that I managed to solve it (thanks to http://johnliu.net/ magnificent post) by manipulating the data via JSON  in with SELECT.

 

Basically, was able to select the right properties I needed following this structure:

 

{

"Column_Name":"@item()?['Object_of_Array'];

}

 

The output is easily transformed to a HTML or CSV Table.

 

Fer

@fermoreno could you post your solution please? I am working on a similar flow where I need to go through a list, group the items that satisfy the condition (such as listing vans due for MOT in the next 30 days) and send a table of the van details.

Will use fake data as you know... sensitive stuff. It's reading from a XLS with 2 tables but you could use other arrays like JSON. 

 

I started with a file with 2 tables (one per sheet) with the info I need, the result will be a table for each customer in the second table. (4 Tables in total in this example).

 

I developed this because I needed only some columns and not all from a larger data set (and not include the columns added by powerapps)

XLS SamplesXLS Samples

 

In this case, a manually triggered flow that Get Rows from each table.

Import the 2 tablesImport the 2 tables

Then starts the tricky part. Create a FILTER operation (do not add the apply to each, will be done automatically). in From you select the COLUMN (Customer in this case) from Data table to be equal to  COLUMN (Customer also) in Customer_list table), in advanced mode looks like this: (Flow will add the apply to each automatically since is an array of elements)

 

@equals(item()?['Customer'], items('Apply_to_each')?['Customer'])

 

Then you add a SELECT step where you will need to use from the Body of Filter Array Output, in Map suggest to add the column names that will be displayed in your CSV or HTML table and then click the advanced mode (highlight in yellow).

 

 

 

Add filter to tablesAdd filter to tables

 

Very important, you will have a JSON structure that you need to complete, for sake of the example (and being organized) the Property label (let's call them Columns) is the same as the want to fetch from the filtered data. This is not mandatory, you can put the label or Display name differently but the info to fetch needs to be the same as from the output of Filter (careful with spaces and special characters, makes it more tedious). So, for SKU label I want to fetch the data that was on the SKU column in my excel, (all of them, one by one) to be more clear with this example will be: "SKU":@item()?['SKU'], you continue until you are done with all, if you break the JSON structure it won't let you continue. I always do it in text/advanced mode.

 

Select to Output - JSon StructureSelect to Output - JSon Structure

Almost done, the output of SELECT needs to be added to step Create CSV table or HTML, as you wish to then easily incorporate to an email or whatever.

 

Create CSVCreate CSV

If we examinate the output of the Flow you will see with more details how the XLS table input is managed in Flow as JSON object and then manipulated.

 

OutputOutput

This a simple example, I have managed (after trying and trying over weeks) using this approach with more complex info (like JSON arrays and outputs from Web APIs) but it  is very similar.

 

Let me know how it works, if you have trouble post your screenshoots to guide you directly.

 

Cheers!

 

Fernando M

 

Thanks for the reply. The issue I have is I can't select the filtered array items for my Select Map. I don't know if this is because I used Get Items SharePoint (and not from a spreadhseet).

 

Image1.JPG

 

Image2.JPG

Hi, never been able to be pulled from the Dynamic Content tab. Although you can retrieve them in with "text mode" in Select with the very same technique that I describe you:

 

{

@item()['column']

}

 

Please be aware that sharepoints uses a "code" instead of column name... suggest to run your flow to the point of Filter Array and check the output so you can see the JSON structure, below a screenshoot (sorry to mask stuff, but cannot share it fully).  

 

You should be able to retreive what you need with Select and then to HTML.

 

Hope it helps, if not share the JSON output of your sharepoint and will help you to create the text that you  need for Select.


Fer

 

sharepointjson.PNG

Anonymous
Not applicable

I have two arrays that I want to display in side by side rows of table but its coming into one big block of values in the html table. any suggestion ?

Hi Fernando. @fermoreno 

This is the closest solution to the problem I'm having.

My flow executes a an SQL query and I need to send and email with HTML table for each sales order. So in this case a need an email with a table with Sales Order 1 and another email with the rows with Sales Order 5.

Query pic.PNG

 

How can you filter this?


Thank you!

Hi, I'm making a lot of assumptions since I'm not familiar with your table in SQL but I tried on one database that I have an managed to do it like the image below.

 

sector1.png

I'm assuming that the email address is included in the same table therefore, I have 2 queries. One retrieving all the data and another one with SELECT DISTINCT just for 2 columns: email and sales order (sorry in the image put it as Order ID).

 

Anyway, with this process it will filter unique sales order with the respective email for the first table and with select you arrange the data a bit and ready create HTML table.

 

After the send email should be enough and you can fetch the email needed from the the 2nd table result with email item.

 

Hope this helps, if not please let me know.

 

Fer

 

 
 

@fermoreno This worked perfectly!! I just had to do some little changes in my queries. 

 

Thanks so much for the help!

Hi!

 

This is working great, but I have a question about the final outcome. I tried this approach and had an HTML table at the end instead of CSV. As you mentioned, the results produce 4 tables (one for each customer that is listed on the customer table). In my case, I had 95 customers, so the output for 'Apply to each' action was 96 html tables, one for each customer. My question is, how can I pull out the html table of a specific customer from that pool of results? For example, I want to get one result out of the 96 (let's say customer A only), and combine it with another html table (also for customer A) that is generated with another flow. The ultimate goal is to send each customer a detailed report on the items they purchased from different categories. However, I can't manage to get individual outputs from the 96 results. I can either send the individual report via email or through a PDF. Any help is much appreciated!

Helpful resources

Announcements

Check out the Copilot Studio Cookbook today!

We are excited to announce our new Copilot Cookbook Gallery in the Copilot Studio Community. We can't wait for you to share your expertise and your experience!    Join us for an amazing opportunity where you'll be one of the first to contribute to the Copilot Cookbook—your ultimate guide to mastering Microsoft Copilot. Whether you're seeking inspiration or grappling with a challenge while crafting apps, you probably already know that Copilot Cookbook is your reliable assistant, offering a wealth of tips and tricks at your fingertips--and we want you to add your expertise. What can you "cook" up?   Click this link to get started: https://aka.ms/CS_Copilot_Cookbook_Gallery   Don't miss out on this exclusive opportunity to be one of the first in the Community to share your app creation journey with Copilot. We'll be announcing a Cookbook Challenge very soon and want to make sure you one of the first "cooks" in the kitchen.   Don't miss your moment--start submitting in the Copilot Cookbook Gallery today!     Thank you,  Engagement Team

Announcing Power Apps Copilot Cookbook Gallery

We are excited to share that the all-new Copilot Cookbook Gallery for Power Apps is now available in the Power Apps Community, full of tips and tricks on how to best use Microsoft Copilot as you develop and create in Power Apps. The new Copilot Cookbook is your go-to resource when you need inspiration--or when you're stuck--and aren't sure how to best partner with Copilot while creating apps.   Whether you're looking for the best prompts or just want to know about responsible AI use, visit Copilot Cookbook for regular updates you can rely on--while also serving up some of your greatest tips and tricks for the Community. Check Out the new Copilot Cookbook for Power Apps today: Copilot Cookbook - Power Platform Community.  We can't wait to see what you "cook" up!    

Welcome to the Power Automate Community

You are now a part of a fast-growing vibrant group of peers and industry experts who are here to network, share knowledge, and even have a little fun.   Now that you are a member, you can enjoy the following resources:   Welcome to the Community   News & Announcements: The is your place to get all the latest news around community events and announcements. This is where we share with the community what is going on and how to participate.  Be sure to subscribe to this board and not miss an announcement.   Get Help with Power Automate Forums: If you're looking for support with any part of Power Automate, our forums are the place to go. From General Power Automate forums to Using Connectors, Building Flows and Using Flows.  You will find thousands of technical professionals, and Super Users with years of experience who are ready and eager to answer your questions. You now have the ability to post, reply and give "kudos" on the Power Automate community forums. Make sure you conduct a quick search before creating a new post because your question may have already been asked and answered. Galleries: The galleries are full of content and can assist you with information on creating a flow in our Webinars and Video Gallery, and the ability to share the flows you have created in the Power Automate Cookbook.  Stay connected with the Community Connections & How-To Videos from the Microsoft Community Team. Check out the awesome content being shared there today.   Power Automate Community Blog: Over the years, more than 700 Power Automate Community Blog articles have been written and published by our thriving community. Our community members have learned some excellent tips and have keen insights on the future of process automation. In the Power Automate Community Blog, you can read the latest Power Automate-related posts from our community blog authors around the world. Let us know if you'd like to become an author and contribute your own writing — everything Power Automate-related is welcome.   Community Support: Check out and learn more about Using the Community for tips & tricks. Let us know in the Community Feedback  board if you have any questions or comments about your community experience. Again, we are so excited to welcome you to the Microsoft Power Automate community family. Whether you are brand new to the world of process automation or you are a seasoned Power Automate veteran - our goal is to shape the community to be your 'go to' for support, networking, education, inspiration and encouragement as we enjoy this adventure together.     Power Automate Community Team

Hear what's next for the Power Up Program

Hear from Principal Program Manager, Dimpi Gandhi, to discover the latest enhancements to the Microsoft #PowerUpProgram, including a new accelerated video-based curriculum crafted with the expertise of Microsoft MVPs, Rory Neary and Charlie Phipps-Bennett. If you’d like to hear what’s coming next, click the link below to sign up today! https://aka.ms/PowerUp  

Tuesday Tip | How to Report Spam in Our Community

It's time for another TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   Today's Tip: How to Report Spam in Our Community We strive to maintain a professional and helpful community, and part of that effort involves keeping our platform free of spam. If you encounter a post that you believe is spam, please follow these steps to report it: Locate the Post: Find the post in question within the community.Kebab Menu: Click on the "Kebab" menu | 3 Dots, on the top right of the post.Report Inappropriate Content: Select "Report Inappropriate Content" from the menu.Submit Report: Fill out any necessary details on the form and submit your report.   Our community team will review the report and take appropriate action to ensure our community remains a valuable resource for everyone.   Thank you for helping us keep the community clean and useful!

Users online (4,422)