我正在尝试确定是否可以在不加载主记录的情况下提取子列表。当我需要的只是子列表而又没有保存搜索返回子列表时,这似乎很浪费。 search.lookupFields仅允许访问非常接近的正文字段。我想拉一个特定的子列表,这可能吗?在此先感谢您的帮助。
答案 0 :(得分:1)
子列表实际上是通过某些字段(例如SQL中的联接)链接的记录。话虽如此,您可以在 search.createFilter , search.createColumn , searchResult.getValue 等中使用join属性,并将公共字段传递给它而name参数将包含您要获取其值的字段的fieldId。 例如,要从salesorder获取项目数据,您可以运行以下代码
var salesOrderSearchResult = search.create({
type: 'transaction,
filters: search.createFilter({
name: 'internalid',
join: 'item',
operator: 'is',
values: ITEM_INTERNAL_ID
}),
columns: search.createColumn({ name: 'itemid', join: 'item' })
}).run().getRange({ start: 0, end: 100 });
// to fetch results
salesOrderSearchResult.forEach(function (searchResult) {
var itemId = searchResult.getValue({ name: 'itemId' ,join: 'item' });
})