query_builder Módulo

Construtor de consultas fluente para construir consultas OData.

Fornece uma interface detectável e segura para criar consultas complexas em tabelas do Dataverse com encadeamento de métodos.

Exemplo::

# Via client (recommended) -- flat iteration over records
from PowerPlatform.Dataverse.models import col


for record in (client.query.builder("account")
               .select("name", "revenue")
               .where(col("statecode") == 0)
               .where(col("revenue") > 1_000_000)
               .order_by("revenue", descending=True)
               .top(100)
               .execute()):
    print(record["name"])


# With composable expression tree
from PowerPlatform.Dataverse.models import col, raw


for record in (client.query.builder("account")
               .select("name", "revenue")
               .where((col("statecode") == 0) | (col("statecode") == 1))
               .where(col("revenue") > 100000)
               .top(100)
               .execute()):
    print(record["name"])


# Lazy paged iteration (one QueryResult per HTTP page)
for page in (client.query.builder("account")
             .select("name")
             .execute_pages()):
    process_batch(page)


# Get results as a pandas DataFrame
df = (client.query.builder("account")
      .select("name", "telephone1")
      .where(col("statecode") == 0)
      .top(100)
      .execute()
      .to_dataframe())

Classes

ExpandOption

Opções estruturadas para uma $expand propriedade de navegação.

Permite especificar , e $orderby$filteropções aninhadas$select, e $top opções para uma única expansão de propriedade de navegação, seguindo a sintaxe OData$expand.

Exemplo:


   # Expand Account_Tasks with nested options
   opt = (ExpandOption("Account_Tasks")
          .select("subject", "createdon")
          .filter("contains(subject,'Task')")
          .order_by("createdon", descending=True)
          .top(5))

   query = (client.query.builder("account")
            .select("name")
            .expand(opt)
            .execute())
QueryBuilder

Interface fluente para compilar e executar consultas OData em um cliente de sincronização.

Fornece encadeamento de métodos para construir consultas complexas com expressões de filtro composáveis. Pode ser usado autônomo (via build()) ou associado a um cliente (via execute).

QueryParams

Dicionário digitado retornado por QueryBuilder.build().

Fornece o preenchimento automático do IDE ao passar os resultados do client.records.list() build manualmente.