NetSuite SuiteTalk - получение строки значения из «SearchColumnSelectCustomField»

У меня есть небольшое приложение, которое перебирает результаты «Сохраненного поиска», получая значения из нескольких пользовательских столбцов (упрощенный пример):

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 заполнен всегда. По какой-то причине он получает выбор, но не возвращает значение из этого выбора.

Как получить доступ к текстовому значению, которое я вижу из интерфейса NetSuite из SuiteTalk ("searchValue.name")? Должен ли я выполнить другой запрос, чтобы получить все пары ключей значения, связанные с этим internalID? Для каждого настраиваемого поля? И если так, то какова цель поля имени в первую очередь?

Я попытался найти это, но на самом деле не так много документации по этому вопросу (или вообще по SuiteTalk), в других языках (PHP / Java) люди упоминают «getSelectValue» (Воти вкратцеВот), Я мог бы попробовать это в C #, но я не уверен, применимы ли они, или это можно сделать для выбора пользовательских значений. Тогда есть некоторые ссылки для определения значений ДО поиска,этот кажется мне излишним, это действительно так сложно? У меня есть десятки пользовательских полей, к которым я хотел бы получить доступ в своем окончательном приложении. Кажется, должен быть более легкий путь ...

Ответы на вопрос(2)

Ваш ответ на вопрос