我有一个小型应用程序,它迭代“保存的搜索”的结果,从几个自定义列中检索值(简化示例):
var results = searchResults.Select(a => new
{
X = ((SearchColumnBooleanCustomField)a.basic.customFieldList
.First(b => b.scriptId == "custentityX")).searchValue
Y = ((SearchColumnDateCustomField)a.basic.customFieldList
.First(b => b.scriptId == "custentityY")).searchValue
Z = ((SearchColumnSelectCustomField)a.basic.customFieldList
.First(b => b.scriptId == "custentityZ")).searchValue.name
}
对于大多数返回的列类型,我得到一个与类型一致的值(bool/date/etc...),但是对于“SearchColumnSelectCustomField”,我在返回的“searchValue.name”中没有得到任何值,它始终为空,但是始终填充“searchValue.internalID”列。因此,由于某种原因,它获得了选择,但没有从该选择中返回值。
如何从 SuiteTalk("searchValue.name") 访问我可以从 NetSuite 界面看到的文本值?我是否必须执行另一个查询来检索与该 internalID 相关的所有值键对?对于每个自定义字段?如果是这样,那么首先名称字段的目的是什么?
我试过四处寻找这个,但并没有真正分配关于这个主题的文档(或一般的 SuiteTalk),在其他语言(PHP/Java)中人们提到“getSelectValue”(这里和简要这里),我可以在 C# 中尝试这个,但我不确定这些是否适用,或者是否可以为自定义值选择完成。然后有一些参考用于在搜索之前确定值,这对我来说似乎有点矫枉过正,真的那么难吗?我有几十个我想在我的最终应用程序中访问的自定义字段。似乎应该有一个更简单的方法......