I need help. I’m trying to build a table in html to display some fields of related items. I would like your help to understand if I’m on the right path? I’ve already made this table via Automation, but I want to do it directly in the calculated field so as not to consume an Automation just for that.
Hey @bruno.freitas ,
that looks pretty good! As you can see in the guide posted by @shir , the output of a calculation field is the last statement of the code. So instead of using console.log, you can simply put the variable containing the table HTML at the end:
var listaProdutos = @All of Descrição Produto;
var listaQuantidade = @All of Quantidade;
var html = "<table>";
html += "<thead><tr><th>Produto</th><th>Quantidade</th></tr></thead>";
html += "<tbody>";
for (var i = 0; i < listaProdutos.length; i++) {
html += "<tr>";
html += "<td>" + listaProdutos[i] + "</td>";
html += "<td>" + listaQuantidade[i] + "</td>";
html += "</tr>";
}
html += "</tbody>";
html += "</table>";
html;
Does putting html at the end instead of console.log(html) solve your problem?
Hey Luis,
you should be able to apply any formatting you like within the for loop:
var listaProdutos = @All of Descrição Produto;
var listaQuantidade = @All of Quantidade;
var html = "<table>";
html += "<thead><tr><th>Produto</th><th>Quantidade</th></tr></thead>";
html += "<tbody>";
for (var i = 0; i < listaProdutos.length; i++) {
var quantidade = listaQuantidade[i];
// Example: format with two decimal places and "$" currency at the end
var quantidadeFormatted = quantidade.toFixed(2) + " $";
html += "<tr>";
html += "<td>" + listaProdutos[i] + "</td>";
html += "<td>" + quantidadeFormatted + "</td>";
html += "</tr>";
}
html += "</tbody>";
html += "</table>";
html;