Javascript 如何使用HTML创建netsuite电子邮件模板并在其中使用freemaker访问用户数据

Javascript 如何使用HTML创建netsuite电子邮件模板并在其中使用freemaker访问用户数据,javascript,html,freemarker,netsuite,Javascript,Html,Freemarker,Netsuite,您好,我正在尝试用HTML在netsuite中创建一个电子邮件模板,我想在其中显示**Hi customer**name****。为了实现这一点,我认为我们必须使用freemarker。谁能帮助我如何用html编写freemarker代码 <p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; margin-top:0;">Dear <h1>${cont

您好,我正在尝试用HTML在netsuite中创建一个电子邮件模板,我想在其中显示**Hi customer**name****。为了实现这一点,我认为我们必须使用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>
亲爱的${contact.firstName},

在这段代码中,我想打印客户的名字,而不是代码本身

那就行了。 您有许多用于生成html的选项

如果您通过NLAPICreateEmailMerge使用NLOBJMailMerge,您将生成一个标准电子邮件模板;使用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会验证代码,以便您只能使用标准记录。我在自定义记录或添加搜索结果时遇到问题

使用free marker生成电子邮件的另一种方法是使用nlobjTemplateRenderer

这允许您提供任意文本作为模板,并在唯一键下包含记录和搜索结果

e、 g

var renderer=nlapiCreateTemplateRenderer();
renderer.setTemplate(“

亲爱的${contact.firstName},

”)//也许是从档案里 renderer.addRecord('contact',nlapiLoadRecord('contact',contactId)); nlapiSendEmail(fromId,contactId,“电子邮件主题”,renderer.renderToString());
这样就可以了。 您有许多用于生成html的选项

如果您通过NLAPICreateEmailMerge使用NLOBJMailMerge,您将生成一个标准电子邮件模板;使用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会验证代码,以便您只能使用标准记录。我在自定义记录或添加搜索结果时遇到问题

使用free marker生成电子邮件的另一种方法是使用nlobjTemplateRenderer

这允许您提供任意文本作为模板,并在唯一键下包含记录和搜索结果

e、 g

var renderer=nlapiCreateTemplateRenderer();
renderer.setTemplate(“

亲爱的${contact.firstName},

”)//也许是从档案里 renderer.addRecord('contact',nlapiLoadRecord('contact',contactId)); nlapiSendEmail(fromId,contactId,“电子邮件主题”,renderer.renderToString());