SuiteTalk: найти внутренний идентификатор элемента неизвестного типа

Заданные элементы, найденные по этому запросу

var items = netSuiteService.search(new ItemSearch()
{
    basic = new ItemSearchBasic()
    {
        feedName = new SearchStringField()
        {
            searchValue = "Item Name",
            @operator = SearchStringFieldOperator.@is,
            operatorSpecified = true
        }
    }
});

Как я могу получить internalId каждого из предметов без знания типа каждого предмета?

Конечно, существует обходной путь: сделать большой переход со всеми возможными типами элементов или использовать отражение. Ищете более элегантное решение.
Возможно, другой, более общий запрос?

Я намерен использовать эти internalIds для создания счетов, как это:

var invoice = new Invoice()
{
    entity = new RecordRef()
    {
        type = RecordType.customer,
        internalId = customerInternalId
    },
    account = new RecordRef()
    {
        type = RecordType.account,
        internalId = "1100"
    },
    amountRemaining = 123.5,

    tranDate = DateTime.Parse("2002-10-01"),
    tranDateSpecified = true,

    itemList = new InvoiceItemList
    {
        item = new[]
        {
            new InvoiceItem()
            {
                rate = "123.3",
                description = "First invoice item",
                quantity = 5,
                quantitySpecified = true,
                @class = new RecordRef()
                {
                    name = "Building"
                },
                item = new RecordRef()
                {                                
                    internalId = "298",                               
                    typeSpecified = false
                }
            }
        }
    },

    externalId = "45678",
    tranId = "45678"
};

var result = netSuiteService.add(invoice);

0 ответов

Другие вопросы по тегам