<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.appian.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>HTML Template in expression rule</title><link>https://community.appian.com/discussions/f/rules/39628/html-template-in-expression-rule</link><description>Hi Community, 
 i have a requirement to create a html template using expression rule to create a table. 
 i am able to create a table but i am unable to generate borders for each row and headers. please prefer below code snippet. 
 
 TIA</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: HTML Template in expression rule</title><link>https://community.appian.com/thread/151058?ContentTypeID=1</link><pubDate>Thu, 21 Aug 2025 11:42:58 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:0b89fd58-e671-45be-bf71-317bc0b33aae</guid><dc:creator>Shubham Aware</dc:creator><description>&lt;p&gt;Try this&lt;br /&gt;Update values as per your need.&lt;br /&gt;&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;a!localVariables(
  /* Sample data - replace with your actual data source */
  local!dataDict: {
    {id: 1, name: &amp;quot;John Doe&amp;quot;, department: &amp;quot;Engineering&amp;quot;, salary: 75000},
    {id: 2, name: &amp;quot;Jane Smith&amp;quot;, department: &amp;quot;Marketing&amp;quot;, salary: 65000},
    {id: 3, name: &amp;quot;Bob Johnson&amp;quot;, department: &amp;quot;Sales&amp;quot;, salary: 70000},
    {id: 4, name: &amp;quot;Alice Brown&amp;quot;, department: &amp;quot;HR&amp;quot;, salary: 60000}
  },

  /* Column definitions */
  local!columns: {
    {column: &amp;quot;ID&amp;quot;, width: 10, field: &amp;quot;id&amp;quot;},
    {column: &amp;quot;Employee Name&amp;quot;, width: 30, field: &amp;quot;name&amp;quot;},
    {column: &amp;quot;Department&amp;quot;, width: 30, field: &amp;quot;department&amp;quot;},
    {column: &amp;quot;Salary&amp;quot;, width: 30, field: &amp;quot;salary&amp;quot;}
  },

  /* Generate HTML Table - Choose one of the options below */

  /* Option 1: Fixed width (800px) */
  &amp;quot;&amp;lt;table style=&amp;#39;width:800px; border-collapse:collapse; border:2px solid #333; margin: 0 auto;&amp;#39;&amp;gt;&amp;quot; &amp;amp;

  /* Option 2: Maximum width with auto sizing */
  /* &amp;quot;&amp;lt;table style=&amp;#39;max-width:1000px; width:auto; border-collapse:collapse; border:2px solid #333; margin: 0 auto;&amp;#39;&amp;gt;&amp;quot; &amp;amp; */

  /* Option 3: Percentage width (80% of container) */
  /* &amp;quot;&amp;lt;table style=&amp;#39;width:80%; border-collapse:collapse; border:2px solid #333; margin: 0 auto;&amp;#39;&amp;gt;&amp;quot; &amp;amp; */

  /* Option 4: Full width (current behavior) */
  /* &amp;quot;&amp;lt;table style=&amp;#39;width:100%; border-collapse:collapse; border:2px solid #333;&amp;#39;&amp;gt;&amp;quot; &amp;amp; */

  /* Table Header */
  &amp;quot;&amp;lt;tr&amp;gt;&amp;quot; &amp;amp; 
  joinarray(
    a!forEach(
      local!columns,
      &amp;quot;&amp;lt;th style=&amp;#39;width:&amp;quot; &amp;amp; fv!item.width &amp;amp; &amp;quot;%; border: 1px solid #333; padding: 10px; background-color: #e6e6e6; text-align: left; font-weight: bold;&amp;#39;&amp;gt;&amp;quot; &amp;amp; 
      fv!item.column &amp;amp; 
      &amp;quot;&amp;lt;/th&amp;gt;&amp;quot;
    ),
    &amp;quot;&amp;quot;
  ) &amp;amp;
  &amp;quot;&amp;lt;/tr&amp;gt;&amp;quot; &amp;amp;

  /* Table Body */
  joinarray(
    a!forEach(
      items: local!dataDict,
      expression: 
      &amp;quot;&amp;lt;tr&amp;gt;&amp;quot; &amp;amp;
      &amp;quot;&amp;lt;td style=&amp;#39;border: 1px solid #333; padding: 10px;&amp;#39;&amp;gt;&amp;quot; &amp;amp; fv!item.id &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;&amp;quot; &amp;amp;
      &amp;quot;&amp;lt;td style=&amp;#39;border: 1px solid #333; padding: 10px;&amp;#39;&amp;gt;&amp;quot; &amp;amp; fv!item.name &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;&amp;quot; &amp;amp;
      &amp;quot;&amp;lt;td style=&amp;#39;border: 1px solid #333; padding: 10px;&amp;#39;&amp;gt;&amp;quot; &amp;amp; fv!item.department &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;&amp;quot; &amp;amp;
      &amp;quot;&amp;lt;td style=&amp;#39;border: 1px solid #333; padding: 10px;&amp;#39;&amp;gt;&amp;quot; &amp;amp; 
      &amp;quot;$&amp;quot; &amp;amp; text(fv!item.salary, &amp;quot;#,##0&amp;quot;) &amp;amp; 
      &amp;quot;&amp;lt;/td&amp;gt;&amp;quot; &amp;amp;
      &amp;quot;&amp;lt;/tr&amp;gt;&amp;quot;
    ),
    &amp;quot;&amp;quot;
  ) &amp;amp;

  &amp;quot;&amp;lt;/table&amp;gt;&amp;quot;
)&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: HTML Template in expression rule</title><link>https://community.appian.com/thread/151056?ContentTypeID=1</link><pubDate>Thu, 21 Aug 2025 11:27:53 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:0158bb7f-72d3-4f5f-9117-70e8797de357</guid><dc:creator>Harsha Sharma</dc:creator><description>&lt;p&gt;You can try the below&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;a!localVariables(

  local!dataDict:{
    {
      name:&amp;quot;ABCD&amp;quot;,
      age:25,
      company:&amp;quot;AS&amp;quot;
    },
    {
      name:&amp;quot;QWER&amp;quot;,
      age:27,
      company:&amp;quot;AT&amp;quot;
    },
    {
      name:&amp;quot;SDFG&amp;quot;,
      age:28,
      company:&amp;quot;Ay&amp;quot;
    }
  },  
  local!columns:{
    { column: &amp;quot;name&amp;quot;, width: 10},
    { column: &amp;quot;age&amp;quot;, width: 20},
    { column: &amp;quot;company&amp;quot;, width: 40}
  },
  &amp;quot;&amp;lt;table style=&amp;quot;&amp;quot;width:100%; border:1px solid black;border-collapse:collapse&amp;quot;&amp;quot;&amp;gt;
&amp;lt;tr&amp;gt;&amp;quot; &amp;amp; joinarray(
  a!forEach(
    local!columns,
    &amp;quot;&amp;lt;th style=&amp;quot;&amp;quot;width:&amp;quot; &amp;amp; fv!item.width &amp;amp; &amp;quot;%;border-bottom:1pt solid black&amp;quot;&amp;quot;&amp;gt;&amp;quot; &amp;amp; fv!item.column &amp;amp; &amp;quot;&amp;lt;/th&amp;gt;&amp;quot;
  ),
  &amp;quot;&amp;quot;
) &amp;amp; &amp;quot;&amp;lt;/tr&amp;gt;&amp;quot; &amp;amp; joinarray(
  a!forEach(
    items: local!dataDict,
    expression: 
    &amp;quot;&amp;lt;tr style=&amp;quot;&amp;quot;border-bottom:1pt solid black&amp;quot;&amp;quot;&amp;gt;
&amp;lt;td&amp;gt;&amp;quot; &amp;amp; fv!item.name &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;
&amp;lt;td&amp;gt;&amp;quot; &amp;amp; fv!item.age &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;
&amp;lt;td&amp;gt;&amp;quot; &amp;amp; fv!item.company &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;

&amp;lt;/tr&amp;gt;&amp;quot;
  ),
  &amp;quot;&amp;quot;
)&amp;amp;&amp;quot;&amp;lt;/table&amp;gt;&amp;quot;
)&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: HTML Template in expression rule</title><link>https://community.appian.com/thread/151055?ContentTypeID=1</link><pubDate>Thu, 21 Aug 2025 10:57:30 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:1e74c2ff-f9fd-47a1-9e55-9856b1f56629</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;What kind of error do you get?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: HTML Template in expression rule</title><link>https://community.appian.com/thread/151053?ContentTypeID=1</link><pubDate>Thu, 21 Aug 2025 10:27:41 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:1def524b-3271-4ad4-b23b-ff670f2597ed</guid><dc:creator>kirang100133</dc:creator><description>&lt;p&gt;Hi Harsha,&lt;/p&gt;
&lt;p&gt;Thanks for your response can you please do it in below code snippet i am getting error while doing the same.&lt;/p&gt;
&lt;p&gt;It will be very helpful for me.&lt;pre class="ui-code" data-mode="text"&gt;a!localVariables(

  local!dataDict:{
    {
      name:&amp;quot;ABCD&amp;quot;,
      age:25,
      company:&amp;quot;AS&amp;quot;
    },
    {
      name:&amp;quot;QWER&amp;quot;,
      age:27,
      company:&amp;quot;AT&amp;quot;
    },
    {
      name:&amp;quot;SDFG&amp;quot;,
      age:28,
      company:&amp;quot;Ay&amp;quot;
    }
  },  
  local!columns:{
    { column: &amp;quot;name&amp;quot;, width: 10},
    { column: &amp;quot;age&amp;quot;, width: 20},
    { column: &amp;quot;company&amp;quot;, width: 40}
  },
  &amp;quot;&amp;lt;table style=&amp;quot;&amp;quot;width:100%; border:1px solid black;border-collapse:collapse&amp;quot;&amp;quot;&amp;gt;
&amp;lt;tr&amp;gt;&amp;quot; &amp;amp; joinarray(
  a!forEach(
    local!columns,
    &amp;quot;&amp;lt;th style=&amp;quot;&amp;quot;width:&amp;quot; &amp;amp; fv!item.width &amp;amp; &amp;quot;%&amp;quot;&amp;quot;&amp;gt;&amp;quot; &amp;amp; fv!item.column &amp;amp; &amp;quot;&amp;lt;/th&amp;gt;&amp;quot;
  ),
  &amp;quot;&amp;quot;
) &amp;amp; &amp;quot;&amp;lt;/tr&amp;gt;&amp;quot; &amp;amp; joinarray(
  a!forEach(
    items: local!dataDict,
    expression: 
    &amp;quot;&amp;lt;tr&amp;gt;
&amp;lt;td&amp;gt;&amp;quot; &amp;amp; fv!item.name &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;
&amp;lt;td&amp;gt;&amp;quot; &amp;amp; fv!item.age &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;
&amp;lt;td&amp;gt;&amp;quot; &amp;amp; fv!item.company &amp;amp; &amp;quot;&amp;lt;/td&amp;gt;

&amp;lt;/tr&amp;gt;&amp;quot;
  ),
  &amp;quot;&amp;quot;
)&amp;amp;&amp;quot;&amp;lt;/table&amp;gt;&amp;quot;
)&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: HTML Template in expression rule</title><link>https://community.appian.com/thread/151051?ContentTypeID=1</link><pubDate>Thu, 21 Aug 2025 10:10:39 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:fe150c9e-45b0-4689-9e30-2efcaad908f4</guid><dc:creator>Harsha Sharma</dc:creator><description>&lt;p&gt;Just like you added style in table you can use border-bottom in the style tags of header (th) and row (tr). Below is an example&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;table style=&amp;quot;border:1px solid black;border-collapse: collapse;&amp;quot;&amp;gt;
&amp;lt;th style=&amp;quot;border-bottom:1pt solid black;&amp;quot;&amp;gt;Fruit&amp;lt;/th&amp;gt;
&amp;lt;tr style=&amp;quot;border-bottom:1pt solid black;&amp;quot;&amp;gt;&amp;lt;td&amp;gt;Apple&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;
&amp;lt;tr style=&amp;quot;border-bottom:1pt solid black;&amp;quot;&amp;gt;&amp;lt;td&amp;gt;Mango&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>