我正在尝试使用SuiteScript获取“促销”子列表中的值数组(已启用SuitePromotions)。 nlapiGetLineItemField返回一个奇怪的输出“com.netledger.app.common.scripting.version1.nlobjFieldImplV1@1e874f2e”而不是促销的内部ID或名称。如何访问此对象中的子列表数据?这是我的代码:
//get the promotions used on the transaction
var transPromos = [];
var promoCount = nlapiGetLineItemCount('promotions');
for (var promoNum = 1; promoNum <= promoCount; promoNum++){
var promoName = nlapiGetLineItemField('promotions', 'promocode', promoNum);
transPromos.push(promoName);
}
nlapiLogExecution('DEBUG', 'transPromos', transPromos);
然后......
for (var k = 0; k < transPromos.length; k++){
nlapiLogExecution('DEBUG', 'transpromo' + k.toString(), transPromos[k]);
}
日志显示:
transPromos:com.netledger.app.common.scripting.version1.nlobjFieldImplV1@592bd210 transpromo0:com.netledger.app.common.scripting.version1.nlobjFieldImplV1@592bd210
我希望它能够打印内部ID或促销名称。我在这里错过了什么?为什么它显示这个奇怪的代码而不是内部ID?
答案 0 :(得分:0)
我想出了办法。我使用nlapiGetLineItemText()而不是nlapiGetLineItemField()来获取促销的名称。