2014-12-23 3 views
1

Я использую C# в VS 2013.Как искать только инвентарные с использованием SuiteTalk

Я использую этот код:

var request = new ItemSearchBasic 
    { 
     type = new SearchEnumMultiSelectField 
     { 
      searchValue = new string[] 
      { 
       "_inventoryItem" 
      }, 
      @operator = SearchEnumMultiSelectFieldOperator.anyOf, 
      operatorSpecified = true 
     } 

    }; 

и я получаю не только товарно-материальные ценности, но и другие тип элементов тоже ,

Мой запрос мыло выглядит следующим образом:

<soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <soap:Header> 
     <passport xmlns="urn:messages_2014_2.platform.webservices.netsuite.com"> 
      <email xmlns="urn:core_2014_2.platform.webservices.netsuite.com">xxxxxxxxx</email> 
      <password xmlns="urn:core_2014_2.platform.webservices.netsuite.com">********************</password> 
      <account xmlns="urn:core_2014_2.platform.webservices.netsuite.com">xxxxxxxxx</account> 
      <role internalId="3" xmlns="urn:core_2014_2.platform.webservices.netsuite.com"/> 
     </passport> 
     <searchPreferences xmlns="urn:messages_2014_2.platform.webservices.netsuite.com"> 
      <bodyFieldsOnly>false</bodyFieldsOnly> 
      <pageSize>5</pageSize> 
     </searchPreferences> 
    </soap:Header> 
    <soap:Body> 
     <search xmlns="urn:messages_2014_2.platform.webservices.netsuite.com"> 
      <searchRecord xsi:type="q1:ItemSearchBasic" xmlns:q1="urn:common_2014_2.platform.webservices.netsuite.com"> 
       <q1:type operator="anyOf"> 
        <searchValue xmlns="urn:core_2014_2.platform.webservices.netsuite.com">_inventoryItem</searchValue> 
       </q1:type> 
      </searchRecord> 
     </search> 
    </soap:Body> 
</soap:Envelope> 

помощь NetSuite does't говоря уже о том, чтобы фильтровать по типу элемента, и я догадался, этот метод из различных не NetSuite веб-страниц.

Если я удалю фильтр по типу, то мой поиск возвращает inventoryItem, serializedInventoryItem, lotNumberedInventoryItem и nonInventoryPurchaseItem.

Если я использую фильтр _inventoryItem, то получаю инвентарьItem, serializedInventoryItem и lotNumberedInventoryItem. Поэтому, возможно, NetSuite рассматривает serializedInventoryItem и lotNumberedInventoryItem как для inventoryItem.

ответ

2

Если вам нужно более подробно различать предметы (Inventory), вы можете использовать фильтры поиска 'isSerialItem', 'isLotItem' и 'subType' (для покупки/перепродажи/продажи) в запросе на поиск.

Смежные вопросы