Hi-
We have been able to successfully email a table from the HTMLText control but I noticed it only submits the first selection of the table. How can I modify the selection to submit the complete table?
<tr> <th>Work Order</th> <th>Task Selection </th> <th>Hazards</th> <th>Permits/Documents</th> <th>Consequence</th> <th>Mitigations</th> </tr> <tr> <td>"&DataTable1.Selected.WorkOrder&"</td> <td>"&DataTable1.Selected.Title&"</td> <td>"&DataTable1.Selected.Hazards&"</td> </tr> <tr> <td>"&DataTable1.Selected.WorkOrder&"</td> <td>"&DataTable1.Selected.Title&"</td> <td>"&DataTable1.Selected.Hazards&"</td> </tr> <tr> <td>"&DataTable1.Selected.WorkOrder&"</td> <td>"&DataTable1.Selected.Title&"</td> <td>"&DataTable1.Selected.Hazards&"</td> </tr> </table> </body> </html>
Solved! Go to Solution.
Hi @mattthew,
Do you want to send your whole Data Table values as a HTML table within an email?
The DataTable1.Selected formula used to get the selected record within your Data table. Currently, there is no formula supported within PowerApps to get all records within the Data Table control.
As an alternative solution, you could use the formula within the Items property of the Data Table control as the data source, then send HTML table email based on this data source.
I have made a test on my side, please take a try with the following workaround:
Set the Items property of the Data Table control to following:
'20181122_case14' /* <-- '20181122_case14' represents my SP List data source */
Set the HtmlText proeprty of the Html Text control (HtmlText1) to following:
"<h3>Data Table HTML Email</h3>" & "<strong> Items: </strong>" & "<table width='100%' border='1' cellpadding='5' style='border:1px solid black; border-collapse:collapse'>" & "<tr style='background-color:#efefef'> <th>ProductName</th> <th> Amount </th> <th> Price </th><th> ProductionDate </th> </tr> <tr>" & Concat('20181122_case14', "<td>" & ProductName & " </td> <td>" & Amount & " </td> <td>" & Price & " </td> <td>" & ProductionDate & " </td>","</tr><tr>") & "</table>"
On your side, you should type:
"<h3>Data Table HTML Email</h3>" & "<strong> Items: </strong>" & "<table width='100%' border='1' cellpadding='5' style='border:1px solid black; border-collapse:collapse'>" & "<tr style='background-color:#efefef'> <th>ProductName</th> <th> Amount </th> <th> Price </th><th> ProductionDate </th> </tr> <tr>" & Concat('The data source/formula that you provided within the Items property of your Data Table control', "<td>" & WorkOrder & " </td> <td>" & Title & " </td> <td>" & Hazards & " </td>","</tr><tr>") & "</table>"
Set the OnSelect property of the "Send Email" button to following:
Office365.SendEmail("Test1@xxxxxx.onmicrosoft.com","Data Table HTML Email", HtmlText1.HtmlText, {IsHtml:true})
On your side, you should type:
Office365.SendEmail("The email address you want to send to","Data Table HTML Email", HtmlText1.HtmlText, {IsHtml:true})
The Html Table email sent successfully as below:
In addition, you could also consider take a try to set the OnSelect proeprty of the "Send Email" button to following:
Office365.SendEmail(
"The email address you want to send email to",
"Data Table HTML Email",
"<h3>Data Table HTML Email</h3>" &
"<strong> Items: </strong>" &
"<table width='100%' border='1' cellpadding='5' style='border:1px solid black; border-collapse:collapse'>" &
"<tr style='background-color:#efefef'>
<th>ProductName</th> <th> Amount </th> <th> Price </th><th> ProductionDate </th>
</tr>
<tr>" &
Concat('The data source/formula that you provided within the Items property of your Data Table control',
"<td>" & WorkOrder & " </td>
<td>" & Title & " </td>
<td>" & Hazards & " </td>","</tr><tr>") &
"</table>",
{
IsHtml:true
}
)
Please also check and see if the following blog would help in your scenario:
https://powerapps.microsoft.com/en-us/blog/html-email-reporting-with-tabular-data/
Best regards,
Kris
Hi @mattthew,
Do you want to send your whole Data Table values as a HTML table within an email?
The DataTable1.Selected formula used to get the selected record within your Data table. Currently, there is no formula supported within PowerApps to get all records within the Data Table control.
As an alternative solution, you could use the formula within the Items property of the Data Table control as the data source, then send HTML table email based on this data source.
I have made a test on my side, please take a try with the following workaround:
Set the Items property of the Data Table control to following:
'20181122_case14' /* <-- '20181122_case14' represents my SP List data source */
Set the HtmlText proeprty of the Html Text control (HtmlText1) to following:
"<h3>Data Table HTML Email</h3>" & "<strong> Items: </strong>" & "<table width='100%' border='1' cellpadding='5' style='border:1px solid black; border-collapse:collapse'>" & "<tr style='background-color:#efefef'> <th>ProductName</th> <th> Amount </th> <th> Price </th><th> ProductionDate </th> </tr> <tr>" & Concat('20181122_case14', "<td>" & ProductName & " </td> <td>" & Amount & " </td> <td>" & Price & " </td> <td>" & ProductionDate & " </td>","</tr><tr>") & "</table>"
On your side, you should type:
"<h3>Data Table HTML Email</h3>" & "<strong> Items: </strong>" & "<table width='100%' border='1' cellpadding='5' style='border:1px solid black; border-collapse:collapse'>" & "<tr style='background-color:#efefef'> <th>ProductName</th> <th> Amount </th> <th> Price </th><th> ProductionDate </th> </tr> <tr>" & Concat('The data source/formula that you provided within the Items property of your Data Table control', "<td>" & WorkOrder & " </td> <td>" & Title & " </td> <td>" & Hazards & " </td>","</tr><tr>") & "</table>"
Set the OnSelect property of the "Send Email" button to following:
Office365.SendEmail("Test1@xxxxxx.onmicrosoft.com","Data Table HTML Email", HtmlText1.HtmlText, {IsHtml:true})
On your side, you should type:
Office365.SendEmail("The email address you want to send to","Data Table HTML Email", HtmlText1.HtmlText, {IsHtml:true})
The Html Table email sent successfully as below:
In addition, you could also consider take a try to set the OnSelect proeprty of the "Send Email" button to following:
Office365.SendEmail(
"The email address you want to send email to",
"Data Table HTML Email",
"<h3>Data Table HTML Email</h3>" &
"<strong> Items: </strong>" &
"<table width='100%' border='1' cellpadding='5' style='border:1px solid black; border-collapse:collapse'>" &
"<tr style='background-color:#efefef'>
<th>ProductName</th> <th> Amount </th> <th> Price </th><th> ProductionDate </th>
</tr>
<tr>" &
Concat('The data source/formula that you provided within the Items property of your Data Table control',
"<td>" & WorkOrder & " </td>
<td>" & Title & " </td>
<td>" & Hazards & " </td>","</tr><tr>") &
"</table>",
{
IsHtml:true
}
)
Please also check and see if the following blog would help in your scenario:
https://powerapps.microsoft.com/en-us/blog/html-email-reporting-with-tabular-data/
Best regards,
Kris
Works like a charm! Thanks a million!
I'm having issues populating the HTML Table from the a DataTable created from a Collection as DataSource. Will this method still work?
Thanks
Yes it works with a collection. Make sure you have the proper number of headers to columns!! That got me for a few minutes.
Works great thanks!!!
However, My collection in the datatable is sorted. The HTML blows away the sort orders. Is itpossible to maintain that order in HTML?
Hi Cindy.
I would definitely love to help you but am cancelling the subscription, partially due to what you said "4 days" to try and figure something out.
I found EVERYTHING I did in anything in their apps made me spend countless hours and days and much stress and consternation doing research to do something that for may accounts should already exist and do so in other company's apps only to find if you do get something right, it breaks something else or you can do it but only if it's on a Tuesday with a full moon. So it's adios time for Microsoft.
Best of luck!!
I have an other question, If I want to add all the values of any column of the HTML collection and show it on the body of this HMTL, How I can do it?
User | Count |
---|---|
122 | |
87 | |
86 | |
75 | |
67 |
User | Count |
---|---|
214 | |
180 | |
137 | |
96 | |
83 |