您好我正在尝试使用HTML在netsuite中创建一个电子邮件模板,并且我希望显示**嗨客户**名称****。为实现这一点,我认为我们必须使用freemarker。任何人都可以帮我如何在HTML中编写freemarker代码。
<p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; margin-top:0;">Dear <h1>${contact.firstName}</h1>,</p>
在此代码中,我想打印客户名,而不是代码本身。
答案 0 :(得分:1)
将会这样做。 你有很多选择来生成HTML。
如果您通过nlapiCreateEmailMerger使用nlobjEmailMerger,您将生成标准的电子邮件模板;用freemarker和静态标记填充它,然后合并并发送它。
供您使用,您可以执行以下操作:
var merger = nlapiCreateEmailMerger(templateId); // templateId from a script parameter
merger.setEntity('contact', contactId);
var result = merger.merge();
nlapiSendEmail(fromId, contactId, result.getSubject(), result.getBody());
请注意,在创建模板时,Netsuite会验证代码,以便您只能使用标准记录。我遇到了自定义记录问题或者我想添加搜索结果
使用免费标记生成电子邮件的另一种方法是使用nlobjTemplateRenderer。
这允许您提供任意文本作为模板,并在唯一键下包含记录和搜索结果。
e.g。
var renderer = nlapiCreateTemplateRenderer();
renderer.setTemplate("<p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; margin-top:0;">Dear <h1>${contact.firstName}</h1>,</p>"); // from a file maybe
renderer.addRecord('contact', nlapiLoadRecord('contact', contactId));
nlapiSendEmail(fromId, contactId, "Email Subject", renderer.renderToString());