Przykładowe zapytania

Zmień swój region

Wielu naszych partnerów dystrybucyjnych udostępnia różne poziomy stanów magazynowych w zależności od kraju użytkownika. Domyślnie API ustawia kraj na US, a walutę na USD, ale można to nadpisać, aby uzyskać wyniki lepiej dopasowane do Twojego regionu.

Porównaj zapytanie dla Wielkiej Brytanii:

query GBMatch {
  supMultiMatch(
    country: "GB"
    currency: "GBP"
    queries: [{ mpn: "AR 32 HZL-TT", limit: 3 }]
  ) {
    parts {
      sellers(authorizedOnly: true) {
        company {
          name
        }
        offers {
          inventoryLevel
        }
      }
    }
  }
}

... z zapytaniem w USA: 

query USMatch {
  supMultiMatch(
    queries: [{ mpn: "AR 32 HZL-TT", limit: 3 }]
  ) {
    parts {
      sellers(authorizedOnly: true) {
        company {
          name
        }
        offers {
          inventoryLevel
        }
      }
    }
  }
}

W tym przypadku, w tym konkretnym dniu, dostępnych do wysyłki do GB było 1370 części. Jednak użytkownicy w USA zobaczyliby tylko 300 dostępnych części.

Wielu dystrybutorów wysyła do wielu krajów albo nie rozdziela stanów magazynowych według kraju, dlatego podany kraj i waluta nie są używane jako twardy filtr.

Kody krajów są zgodne ze standardem ISO 3166 (alpha-2), a kody walut ze standardem ISO 4217. 

Dokładne dopasowanie mpn z określonymi dostawcami

Korzystając z zapytania SupMultiMatch :

query MultiMatch {
  supMultiMatch(
    queries: [{mpn: "FH12-5S-1SH(55)", limit: 2}]
    options: {filters: {distributor_id: ["459", "1106", "2401", "2628", "2454", "3261", "12947"]}}
  ) {
    hits
    parts {
      mpn
      name
      sellers {
        company {
          name
        }
        offers {
          prices {
            price
            currency
          }
        }
      }
    }
  }
}

Zwróć uwagę, że odfiltruje to części sprzedawane przez wskazanego dystrybutora lub wskazanych dystrybutorów. Lista dystrybutorów jest dostępna tutaj. Jeśli tę część sprzedają również inni dystrybutorzy, oni także zostaną wyświetleni. Jeśli chcesz, zawsze możesz ich odfiltrować na etapie przetwarzania.

Zamiast identyfikatora firmy, np. „459”, możesz podać nazwę firmy, np. „Digi-Key”. Oto przykład:

query MultiMatch {
  supMultiMatch(
    queries: [{mpn: "FH12-5S-1SH(55)", limit: 2}]
    options: {filters: {distributor_id: ["Digi-Key"]}}
  ) {
    hits
    parts {
      mpn
      name
      sellers {
        company {
          name
        }
        offers {
          prices {
            price
            currency
          }
        }
      }
    }
  }
}

Części od sprzedawców z informacjami o cenach

Oto przykładowe zapytanie, którego możesz użyć w swoim IDE:

query FindPrices {
  supSearch(q: "AEC-Q100", limit: 3) { 
    results {
      part {
        mpn
        manufacturer {
          name
        }
        sellers(includeBrokers: false) {
          company {
            name
          }
          offers {
            clickUrl
            inventoryLevel
            prices{
              price
              currency
              quantity
            }
          }
        }
      }
    }
  }
}

Dokładne dopasowanie części

Zapytanie supMultiMatch pozwala wprowadzić wiele numerów MPN w celu pobrania danych i szuka dokładnego dopasowania dla każdego z nich.

query MatchParts {
  supMultiMatch(queries: [{mpn: "G3VM-101PR"}]) {
    hits
    reference
    parts {
      id
      slug
      mpn
      manufacturer {
        name
      }
    }
  }
}

Filtrowanie części dostępnych w magazynie

Podczas wyszukiwania możesz określić, aby uwzględniać tylko części, które są dostępne w magazynie. Na przykład:

supSearch(q: "LM339", limit: 1, inStockOnly: true) { ... }

Ustawienie tego filtra na true oznacza, że wykluczane są części, które mają no stock at all. Jeśli część ma stan magazynowy choćby u jednego dystrybutora, jest uznawana za dostępną i zwracana jako część wyników zapytania.

To filtrowanie w ogóle nie uwzględnia stanów magazynowych dystrybutorów – jest stosowane na poziomie części.

Oto przykład, który możesz wypróbować. To zapytanie wyszukuje AEC-Q100 z paginacją start strony 5 oraz z parametrem inStockOnly ustawionym na true:

query in_stock_filter{
  supSearch(q: "AEC-Q100", start: 5, inStockOnly: true) { 
    results {
      
      part {
        mpn
        manufacturer {
          name
        }
        sellers(includeBrokers: false) {
          company {
            name
          }
        }
      }
    }
  }
}

Zwracane są nieoczekiwane numery MPN

Podczas wyszukiwania lub dopasowywania czasami znajdowane są dodatkowe części, których numery MPN różnią się jedynie znakami niealfanumerycznymi, takimi jak - lub ..

Na przykład rozważ zapytanie supMultiMatch dla następującego numeru MPN:

query MultiMatch {
  supMultiMatch(queries: {mpn: "ASV-18432MHZ-EJ-T", limit: 5}) {
    hits
    parts {
      mpn
    }
  }
}

Może ono zwrócić wiele numerów MPN, takich jak ASV-18.432MHZ-EJ-T, a także ASV-1.8432MHZ-E-J-T (i inne).

Takie działanie wynika ze sposobu, w jaki części są „tokenizowane” na potrzeby indeksowania w silniku wyszukiwania Elastic.

Numery MPN są dzielone na tokeny z pominięciem znaków specjalnych (np. CV 3-200/SPG może zostać przekształcone w `CV`, `3200`, `SPG`).

Dopasowanie jest następnie wykonywane z użyciem trigramów (kombinacji trzyliterowych). Wyszukiwanie musi w pełni dopasować stokenizowany numer MPN, ale dopasowania częściowe zależą od trigramów. Na przykład:

  • Match: "CV 3-20", "CV 320", "00 SPG" - Each part aligns with at least one full token

  • No Match: "CV 3", "CV 3-", "CV 32" - No part of these aligns with any token

Jeśli wymagane jest dokładne dopasowanie znak po znaku, aplikacja kliencka powinna porównać zwrócone numery MPN z danymi wejściowymi i odfiltrować je po otrzymaniu odpowiedzi.

Używanie symboli wieloznacznych

Czasami wyszukiwanie po częściowym numerze części zwraca zbyt wiele wyników albo masz konkretne wymagania dotyczące dopasowania numeru części. W takich przypadkach możesz użyć symboli wieloznacznych, aby zawęzić wyszukiwanie.

  • Znak * dopasowuje dowolny ciąg znaków (włącznie z ciągiem pustym).

  • Znak ? dopasowuje dowolny pojedynczy znak.

Symbole wieloznaczne mogą być używane w dowolnym miejscu numeru części. Używanie symboli wieloznacznych do wyszukiwania środka numeru części jest zbędne – początkowe i końcowe symbole wieloznaczne są dodawane automatycznie. Na przykład *74LS25* zwraca te same wyniki co 74LS25.

Jeśli dodasz do terminu jeden lub więcej symboli wieloznacznych, żadne inne symbole wieloznaczne nie są dodawane automatycznie. Można to wykorzystać do wyszukiwania prefiksowego. Na przykład lv40 znajduje części, które zawierają lv40 w dowolnym miejscu numeru części, natomiast lv40* znajduje tylko części, które zaczynają się od lv40.

Zwróć uwagę, że wyszukiwanie lv40* zwróci części takie jak lv-4000 ze względu na sposób, w jaki silnik wyszukiwania przetwarza niektóre znaki niealfanumeryczne, takie jak - lub ..

Fabryczny czas realizacji dla części

W API dostępne są dwa pola, o które możesz pytać.

  1. factoryLeadDays w SupOffer zwraca liczbę dni potrzebnych na pozyskanie części z fabryki.

  2. estimatedFactoryLeadDays w SupPart zwraca szacowany fabryczny czas realizacji w dniach, wyliczony na podstawie ofert zaufanych dystrybutorów.

Oto przykładowe zapytanie dla autoryzowanych sprzedawców:

query LeadDaysSearch {
  supSearch(q: "IRL3803STRLPBF", limit: 2) {
    results {
      part {
        mpn
        estimatedFactoryLeadDays
        sellers(authorizedOnly: true) {
          offers {
            factoryLeadDays
          }
        }
      }
    }
  }
}

Podobne części

Podczas wyszukiwania lub dopasowywania części możesz określić, aby zwracane były similarParts. Są to części zidentyfikowane przez Nexar jako podobne pod względem specyfikacji i funkcjonalności. Oto przykładowe zapytanie:

query SimilarParts {
  supSearch(q: "LM339MX", limit: 1) {
    hits
    results {
      part {
        id
        mpn
        name
        manufacturer { name }
        similarParts {
          id
          mpn
          manufacturer { name }
        }
      }
    }
  }
}

 

AI-LocalizedTłumaczenie SI
Jeśli znajdziesz błąd, zaznacz tekst/obraz i naciśnij Ctrl + Enter aby wysłać nam wiadomość.
Treść