如何从NetSuite 2.0 restlet创建vendorpayment记录?

如何从NetSuite 2.0 restlet创建vendorpayment记录?,netsuite,suitescript,Netsuite,Suitescript,我正在尝试2.0版本的restlet。这或多或少是我第一次体验SuiteScript2.0。我正在尝试创建一个自动售货机付款记录。我已经能够创建一个没有问题的供应商记录,但是当我尝试使用vendorpayment时,我得到一个错误,上面写着“您必须为此事务输入至少一个行项目”,这似乎是有道理的。这就是我被困的地方。我似乎无法在2.0中创建该子列表项 我尝试了一些方法,但基本上我正在创建这样的记录(type、isDynamic和defaultvalue是此函数中的参数。isDynamic为fals

我正在尝试2.0版本的restlet。这或多或少是我第一次体验SuiteScript2.0。我正在尝试创建一个自动售货机付款记录。我已经能够创建一个没有问题的供应商记录,但是当我尝试使用vendorpayment时,我得到一个错误,上面写着“您必须为此事务输入至少一个行项目”,这似乎是有道理的。这就是我被困的地方。我似乎无法在2.0中创建该子列表项

我尝试了一些方法,但基本上我正在创建这样的记录(type、isDynamic和defaultvalue是此函数中的参数。isDynamic为false):

然后如何使用“rec”添加事务?我假设它会进入“apply”子列表,所以我尝试了一些类似的方法

  rec.selectLine('apply', 0);
  rec.setSublistValue({'sublistId': 'apply', 'fieldId': 'doc', 'value': 'blah', 'line': 0});

但我得到一个错误,上面写着“在对象记录中找不到函数selectLine”。我也试过很多其他的片段,但是没有爱。我不确定我是否走对了路。提前谢谢

仅根据您提供的代码,有几点需要指出。首先,对于这种类型的记录,您需要在defaultValue属性中设置“实体”值,以便有一个“应用”列表可用于获取或设置值。您的另一个选项是将“isDynamic”设置为true。在访问“应用”列表之前,再次需要设置“实体”值

下一个问题是rec.selectLine()调用。当记录不处于动态模式时,不需要执行selectLine(),因此,如果执行selectLine(),则必须使用setCurrentSublistValue/Text()调用

最后,您不能在应用列表中设置值“doc”。这不是可以动态添加到的子列表,例如销售订单上的物料子列表。它更像是项目实现上的列表,限制了关于设置值的选项。您只能影响“账单支付”屏幕上“应用”列表中的以下字段:

“应用”-这是最左边的复选框。 “disc”-获取的光盘字段。 “金额”-付款字段

我建议在UI中运行创建账单支付的过程,以便在尝试修复脚本之前,从时间角度理解该过程需要如何运行。祝你好运,我希望这会有所帮助

  rec.selectLine('apply', 0);
  rec.setSublistValue({'sublistId': 'apply', 'fieldId': 'doc', 'value': 'blah', 'line': 0});