FetchXmlQuery Klasa
Obiekt zapytania Inert FetchXML. Żądanie HTTP nie jest wykonywane do momentu execute wywołania lub execute_pages wywołania.
Uzyskane za pośrednictwem .client.query.fetchxml(xml)
Konstruktor
FetchXmlQuery(xml: str, entity_name: str, client: DataverseClient)
Parametry
| Nazwa | Opis |
|---|---|
|
xml
Wymagane
|
Stripped, dobrze sformułowany ciąg FetchXML. |
|
entity_name
Wymagane
|
Nazwa schematu |
|
client
Wymagane
|
Element nadrzędny DataverseClient. |
Metody
| execute |
Wykonaj zapytanie FetchXML i zwróć wszystkie wyniki jako QueryResult. Blokowanie — pobiera wszystkie strony z góry i przechowuje każdy rekord w pamięci przed zwróceniem. Proste w przypadku małych i średnich zestawów wyników; użyj execute_pages polecenia , gdy zestaw wyników może być duży lub chcesz przetworzyć rekordy po ich nadejściu. Example:
|
| execute_pages |
Z opóźnieniem można uzyskać jeden QueryResult na stronę HTTP. Przesyłanie strumieniowe — każda iteracja uruchamia jedno żądanie HTTP i zwraca jedną stronę. execute Preferuj, gdy:
Jeden strzał — nie iteruj więcej niż raz. Example:
|
execute
Wykonaj zapytanie FetchXML i zwróć wszystkie wyniki jako QueryResult.
Blokowanie — pobiera wszystkie strony z góry i przechowuje każdy rekord w pamięci przed zwróceniem. Proste w przypadku małych i średnich zestawów wyników; użyj execute_pages polecenia , gdy zestaw wyników może być duży lub chcesz przetworzyć rekordy po ich nadejściu.
Example:
rows = client.query.fetchxml(xml).execute()
df = rows.to_dataframe()
execute() -> QueryResult
Zwraca
| Typ | Opis |
|---|---|
|
Wszystkie pasujące rekordy na wszystkich stronach. |
execute_pages
Z opóźnieniem można uzyskać jeden QueryResult na stronę HTTP.
Przesyłanie strumieniowe — każda iteracja uruchamia jedno żądanie HTTP i zwraca jedną stronę. execute Preferuj, gdy:
Zestaw wyników może być duży i nie chcesz jednocześnie wszystkich rekordów w pamięci.
Potrzebujesz wczesnego zakończenia: zatrzymaj iterację po znalezieniu potrzebnych elementów, a pozostałe rundy HTTP zostaną pominięte automatycznie.
Potrzebujesz raportowania postępu poszczególnych stron lub wsadowych zapisów podrzędnych.
Jeden strzał — nie iteruj więcej niż raz.
Example:
for page in client.query.fetchxml(xml).execute_pages():
process(page.to_dataframe())
execute_pages() -> Iterator[QueryResult]
Zwraca
| Typ | Opis |
|---|---|
|
Iterator obiektów na stronie QueryResult . |