使用freemarker模板引擎从netsuite发送电子邮件

时间:2015-05-06 06:05:34

标签: netsuite

有人可以帮助我在netsuite发送电子邮件上完成任务。应使用nlapiCreateTemplateRenderer使用freemarker模板引擎生成电子邮件正文。我尝试在netsuite的帮助页面上使用该示例,但它不起作用。有人可以解释或给我一个关于这个API的例子。

顺便说一句,我可以使用suitelet发送电子邮件,我的问题是电子邮件正文。 谢谢。

2 个答案:

答案 0 :(得分:1)

前提是您拥有可编写脚本的模板。这应该运行正常。

var emailTempId = 1; // internal id of the email template
var emailTemp = nlapiLoadRecord('emailtemplate',emailTempId); 
var emailSubj = emailTemp.getFieldValue('subject');
var emailBody = emailTemp.getFieldValue('content');
var records = new Object();
records['transaction'] = '1'; //internal id of Transaction
var salesOrder = nlapiLoadRecord('salesorder', 1);
var renderer = nlapiCreateTemplateRenderer();
renderer.addRecord('transaction', salesOrder );
renderer.setTemplate(emailSubj);
renderSubj = renderer.renderToString();
renderer.setTemplate(emailBody);
renderBody = renderer.renderToString();
nlapiSendEmail(-5, 'email@domain.com', renderSubj, renderBody , null, null, records);

答案 1 :(得分:0)

使用FreeMarker的新Scriptable模板仅支持实体,交易,自定义记录,案例和&项目记录。其他记录可能有效,但根据SuiteAnswers的答案ID:32621,这些记录是支持的记录。