【问题标题】:SuiteScript 2 Email InvoicesSuiteScript 2 电子邮件发票
【发布时间】:2017-05-01 14:27:48
【问题描述】:

您好,我并不痛苦,我在发送声明时得到了帮助,而且效果很好,但我需要用它发送发票,但我找不到像我为声明所做的那样的方法。我找到了使用模板文件的参考资料,然后您必须将文件存储在文件柜中。我必须将其附加到电子邮件中,您认为最好的方法是什么?

这是另一个链接,他给出了关于发送语句的非常有用的完整答案。我应该同时问他有关发票的问题,但我没有想到,抱歉。

SuiteScript 2 can send pdf statements

添加了附加信息 好的,我尝试了这个,但是在使用他们的模板时遇到了一个没有意义的错误。 "error.SuiteScriptError","name":"USER_ERROR","message":"解析 XML 时出错:对实体 \"c\" 的引用必须以 ';' 结尾分隔符。",

require(['N/render', 'N/file', 'N/record'],
function(render, file, record) {
function renderRecordToPdfWithTemplate() {

var renderer = render.create();
renderer.setTemplateByScriptId("STDTMPLCUSTINVC");
var xml = renderer.renderAsString();

renderer.addRecord(record.Type.INVOICE, record.create({
type: record.Type.INVOICE,
id:415619
}));
var invoicePdf = renderer.renderAsPdf();

var foo = this;

}
renderRecordToPdfWithTemplate();
});

感谢您对此的任何帮助

【问题讨论】:

    标签: netsuite suitescript


    【解决方案1】:

    好的,我找到了,谢谢,如果有人要帮我找这个。它非常简单,但就像 NetSuite 一样,您必须找到它。 :) entityid 是invoice internalid 其余的很简单,然后只需将文件对象传递给电子邮件。

    require( [ 'N/render', 'N/file', 'N/record' ],
    function( render, file, record ) {
    function renderRecordToPdfWithTemplate() {
    
    
    var transactionFile = render.transaction({
        entityId: 415619,
        printMode: render.PrintMode.PDF
    });
    
    var foo = this;
    
    }
    
    renderRecordToPdfWithTemplate();
    } );
    

    再次感谢

    【讨论】:

    • 只是好奇。您可以仅通过 require 而不是定义来使用该脚本?
    • 在调试器中你必须做的事情,它看不到定义。就像 NetSuite,LOL,总是不一致。
    • 好吧,我以为你实际上是这样运行它的... :) 我知道你可以;但是,我认为你必须有一个仍然调用它的定义(当不使用调试器时)。嘿,至少 NetSuite 让它变得有趣……哈哈。代码在一天工作,然后在下一天返回随机错误......:D
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-06
    • 2013-07-22
    • 1970-01-01
    相关资源
    最近更新 更多