使用套件脚本从Net Suite获取多个子列表

时间:2018-12-06 10:41:17

标签: netsuite suitescript

我正在尝试从客户数据网套件(例如

)中获取子列表
 var lineCount = customer.getLineItemCount("subRec");

为此,我得到了行数,并且有了

这样的多子列表
"subRec": [{
"days": "60",
"multisub1": {
    "internalid": "1",
    "name": "shell"
}

},{     “天”:“ 60”,     “ multisub2”:{         “ internalid”:“ 400”,         “名称”:“ shell2”     } }]

这是子记录中的子列表,就像上面的我如何使用套件脚本访问 multisub1 记录。

我如何使用API​​从套件脚本访问此类类型数据...

对于getSubrecord()我变得像TypeError:在对象nlobjRecord中找不到函数getSubrecord。我是网络套件1.0版本。

预先感谢!

2 个答案:

答案 0 :(得分:1)

要从子记录中获取子列表,首先需要获取子记录,然后更新其中的子列表。

subrecord = customerRecord.getSubrecord({ fieldId: SUBRECORD_FIELD_ID });
    // now read/set values from subrecord in the same way as you would from a record
sublistLineCount = subrecord.getLineCount({ sublistId: SUBRECORD_SUBLIST_ID });
var value = subrecord.getSublistValue({ sublistId: SUBRECORD_SUBLIST_ID, fieldId: SUBRECORD_SUBLIST_FIELD_ID, line: SUBRECORD_SUBLIST_LINE_NO });

注意,您无需保存子记录。保存父记录后,它将自动保存。

答案 1 :(得分:0)

您可以这样使用:

var customer = nlapiLoadRecord('customer','recordId');
    var count = customer.getLineItemCount("subRecId");
    
    customer.selectLine('subRecId',lineNumber);
   var multiSubRec =  customer.getCurrentLineItemSubrecord('subRecId','multisubIdLineFiedld');
var mutiSubRecCount = multiSubRec.getLineItemCount('multisubId');
multiSubRec.getLineItemValue('mutiSubRecFieldId',LineNumber);