C # NetSuite WebServices: получить значение из настраиваемого поля в сохраненном поиске (ItemSearchAdvanced)

Я использую C # MVC для подключения к NetSuite, используя их API WebServices. У меня есть текущий код, который вызывает сохраненный поиск предметов инвентаря. Вот текущий код, который работает отлично:

ItemSearchAdvanced searchItems = new ItemSearchAdvanced();
searchItems.savedSearchId = "128";
SearchResult result = netSuiteSvc.search(searchItems);
int totalRecords = 0;
int processedRecords = 0;

UpdateNetsuitePriceListModel returnObj = new UpdateNetsuitePriceListModel();
returnObj.NewPriceList = new List<NetSuitePriceListRecord>();
if (result.status.isSuccess)
{
    SearchRow[] searchRows = result.searchRowList;
    if (searchRows != null && searchRows.Length >= 1)
    {
        for (int i = 0; i < searchRows.Length - 1; i++)
        {
            ItemSearchRow itemRow = (ItemSearchRow)searchRows[i];
            if (itemRow.basic.itemId != null && itemRow.basic.mpn != null && itemRow.basic.basePrice != null && itemRow.basic.salesDescription != null)
            {
                returnObj.NewPriceList.Add(new NetSuitePriceListRecord()
                {
                    ItemId = itemRow.basic.itemId[0].searchValue,
                    ManufacturerPartNumber = itemRow.basic.mpn[0].searchValue,
                    ContractPrice = Convert.ToDecimal(itemRow.basic.basePrice[0].searchValue),
                    Cost = CalculateProductCostForIngram(Convert.ToDecimal(itemRow.basic.basePrice[0].searchValue)),
                    Description = itemRow.basic.salesDescription[0].searchValue
                });
                processedRecords++;
            }
            totalRecords++;
        }
    }
    else
    {
        throw new Exception("NetSuite Part List Blank");
    }
}
else
{
    throw new Exception("NetSuite Part List Search Failure");
}

Теперь мне нужно извлечь itemId из пользовательского добавленного поля, а не из поля itemId по умолчанию.

Очевидно, что поскольку это настраиваемое поле, оно не является свойством ItemSearchRowBasic. Похоже, вместо свойства я могу выбрать «customFieldList», который является массивом «SearchColumnCustomField». Если я выберу индекс для массива, я вижу, что SearchColumnCustomField содержит:

customLabelinternalIdscriptId

Я предполагаю, что смогу получить internalId SearchColumnCustomField и каким-то образом использовать его, чтобы получить значение поиска для этого настраиваемого столбца, но у меня возникли некоторые проблемы с поиском любых подходящих примеров.

Это настраиваемое поле является текстовым полем свободной формы, добавляемым ко всем предметам инвентаря.

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

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