Suitescript:工作流操作脚本发送的电子邮件未出现在事务选项卡中

Suitescript: Workflow Action script sent emails not appearing in transaction tab

我已经创建了一个工作流操作脚本来发送电子邮件,以便稍后可以使用电子邮件插件处理收到的消息(这可能是多余的,尽管我目前只是在试验工作流操作脚本)

这是脚本:

    /**
     *@NApiVersion 2.x
     *@NScriptType WorkflowActionScript
     */
    define(["N/email", "N/render", "N/record"], function (email, render, record) {
      function onAction(context) {
        var transaction = context.newRecord;
        var transactionId = transaction.getValue({ fieldId: "tranid" });
        log.debug("transaction Id", transactionId);
        var recipient = transaction.getValue({
          fieldId: "custbody_first_approver",
        });
        var recipientId = parseInt(recipient);
    
        var vendorId = transaction.getValue({ fieldId: "entity" });
    
    
        var mergeResult = render.mergeEmail({
          templateId: 11,
    
          
    
          entity: {
            type: "vendor",
            id: parseInt(vendorId),
          },
    
          recipient: {
            type: "employee",
            id: parseInt(recipient),
          },
          supportCaseId: null,
          transactionId: transactionId,
          customRecord: null,
        });
        var emailSubject = mergeResult.subject;
        var emailBody = mergeResult.body;
        email.send({
          author: -5,
 
          recipients: parseInt(recipient),
    
          subject: "test",
          body: emailBody,
          relatedRecords: {
            transactionId: transactionId,
          },
        });
      }
    
      return {
        onAction: onAction,
      };
    });

正在发送电子邮件,但似乎只是针对收件人(雇员)的实体记录存储了一份副本。

查看 'N/email' 模块上的 Netsuite 指南,它建议

    relatedRecords: {
                transactionId: transactionId,
              },

脚本的一部分应该控制消息的存储位置。但是,相关记录或任何其他选项卡下的交易记录中没有任何内容。

我需要更改什么才能获得根据交易记录保存的电子邮件副本?

谢谢

我找到了问题的原因。是这一行:

var transactionId = transaction.getValue({ fieldId: "tranid" });

需要

var transactionId = transaction.getValue({ fieldId: "id" });

为了获取记录的内部 ID 而不仅仅是交易号。

脚本中对它的所有引用都需要转换为整数值,否则我会不断收到“错误的参数类型:options.transactionId 应为数字”错误。

我每次引用交易ID

时都使用parseInt(transactionId)转换了这个