cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Raynok1
Helper V
Helper V

Complex HTML table

Hi There,

 

I would like to know if it would be possible to build a complex html table like so,

Html Table.png

 

The rows are grouped by Site then by Product.
Looking at https://powerusers.microsoft.com/t5/Creating-Apps/Send-email-HTML-format-problem/td-p/121228
@timl  & @jhn1 methods seems promising. In their example, the rows are in one column but thats where I'm stuck. I'm not sure how to take their method to produce the above desired layout. 

The goal is to push the html table to a word and PDF document.

 

Kind Regards,

3 REPLIES 3
Raynok1
Helper V
Helper V

So far I've been able to produce this, 

 

html1.png

 

Code: 

 

"<!DOCTYPE html>
<html>
<head>
<style>
thead {background: #195870;}

table, th, td {
border: 1px solid black;
}
</style>
</head>

<body>
<table class=,table,>

<thead>
<tr>
<th class=,sr-only,>Site</th>
<th class=,sr-only,>Products</th>
<th scope=,col,>Details</th>
<th scope=,col,>Unit Cost</th>
<th scope=,col,>Total</th>
</tr>
</thead>
<tbody>
<tr>"
& Concat(Sort(Gallery1.AllItems,Site & Supplier),"

<td colspan=,1,><br>""Site: "&Site&"</td>

<tr>
<td> <th scope=,row, class=,sr-only,>"&Service&"</th>

<tr>
<td><td align=center>"&Supplier&"</td><td align=center>"&BillingAmount&"</td><td align=center>"&BillingMarkup&"</td>
</tr>"
)&"

<tr>

<th scope=,row, class=,sr-only,>Total</th>
<td><td>Test</td>

</tr>

</tbody>
</table>"

 

 

Still figuring out how to group them by Site and Product.

More Progress, 

Following another example :  https://powerusers.microsoft.com/t5/Creating-Apps/Send-email-HTML-format-problem/td-p/121228

Current result and the example of the end goal. Just need to figure out how to group "Products" now. Getting close.



html2.png

 

Managed to get the items aligned but its pulling blank products,
It shouldnt show Product 3 under Site 1, there is no Products3 under Site 1, likewise for Site2. 


html3.png

 

Clear(TableRows);
Clear(galleryGrouped);
Clear(galleryGrouped2);

ClearCollect(galleryGrouped,
GroupBy(Gallery, "Site", "Service")
);
///Supplier is items/////
ClearCollect(galleryGrouped2,
GroupBy(Gallery, "Service", "Supplier")
);
ForAll(galleryGrouped,
Collect(TableRows,
{SortCol: Site & "0",Value:"<tr><td colspan=""2"" style=""Background-color:gray;"">" &
Site & "</td></tr>"}
);
ForAll(galleryGrouped2,
Collect(TableRows,
{SortCol: Site& Service & "0",
Value:" <tr>
<td> <th scope=,row, class=,sr-only,>"&Service&"</th>"
}
));

ForAll(Service,
Collect(TableRows,
{SortCol: Site& Service & "1",
Value:" <tr>
<td> <th scope=,row, class=,sr-only,>"&Supplier&"</th>" & "
<td> <th scope=,row, class=,sr-only,>"&BillingAmount&"</th>" }

))
)

 

Helpful resources

Announcements
User Groups Public Preview

Join us for our User Group Public Preview!

Power Apps User Groups are coming! Make sure you’re among the first to know when user groups go live for public preview.

Power Apps Community Call

Monthly Power Apps Community Call

Did you miss the call?? Check out the Power Apps Community Call here!

Power Platform ISV STudio

Power Platform ISV Studio

ISV Studio is the go-to Power Platform destination for ISV’s to monitor & manage applications post-AppSource publish.

Top Solution Authors
Top Kudoed Authors
Users online (53,245)