首页 > 解决方案 > NetSuite:将 SalesRep 和应收账款附加到客户记录中

问题描述

我正在尝试更新客户,我正在尝试将 salesrep 和应收账款帐户附加到新创建的客户。

当我使用以下代码时,遇到以下错误: ReferenceError: "RecordRef" is not defined。

/**
 *@NApiVersion 2.x
 *@NScriptType UserEventScript
 */
define(['N/currentRecord'],
    function(currentRecord) {
  function beforeSubmit(context) {
    var curRecord = context.newRecord;
    curRecord.salesrep = new RecordRef(){
      InternalId: "-5"
    };
    curRecord.receivablesAccount = new RecordRef(){
      ??? how to retrieve the id ?
    };
    try {
      log.debug('record created successfully');
    } catch (e) {
      log.error(e.name);
    }
  }
        return {
            beforeLoad: beforeLoad,
            beforeSubmit: beforeSubmit,
            afterSubmit: afterSubmit
        };
    });

标签: javascriptnetsuitesuitescript

解决方案


RecordRef()如果您尝试使用 C# 或 PHP 通过 SOAP Web 服务连接到 NetSuite,您会使用它。使用 SuiteScript,您可以.setValue()设置这些值。

/**
 *@NApiVersion 2.x
 *@NScriptType UserEventScript
 */
define([],
  function () {
    function beforeSubmit(context) {
      var curRecord = context.newRecord;
      curRecord.setValue({ fieldId: 'salesrep', value: -5 });
      curRecord.setValue({ fieldId: 'receivablesaccount', value: 7 });
    }

    return {
      beforeSubmit: beforeSubmit,
    };
  }
);

要查找会计科目表的内部 ID,请导航至Home -> Set Preferences,选中显示内部 ID框,然后单击保存。然后导航到Setup -> Accounting -> Chart of Accounts。您应该能够找到您希望使用的应收账款帐户的内部 ID。

此外,该N/currentRecord模块只能在客户端脚本和模块中使用,不应在用户事件脚本中使用。


推荐阅读