

# Leitura de entidades do WooCommerce
<a name="woocommerce-reading-from-entities"></a>

**Pré-requisito**

Um objeto do WooCommerce do qual você deseja ler. Você precisará do nome do objeto, como cupom, pedido, produto, etc.

**Entidades compatíveis quanto à origem**:


| Entidade | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a Selecionar \$1 | Oferece suporte a particionamento | 
| --- | --- | --- | --- | --- | --- | 
| Cupom | Sim | Sim | Sim | Sim | Sim | 
| Total do cupom | Não | Não | Não | Sim | Não | 
| Total de clientes | Não | Não | Não | Sim | Não | 
| Ordem | Sim | Sim | Sim | Sim | Sim | 
| Total de pedidos | Não | Não | Não | Sim | Não | 
| Gateway de pagamento | Não | Não | Não | Sim | Não | 
| Produto | Sim | Sim | Sim | Sim | Sim | 
| Atributo do produto | Sim | Sim | Sim | Sim | Sim | 
| Categoria do produto | Sim | Sim | Sim | Sim | Sim | 
| Análise do produto | Sim | Sim | Sim | Sim | Sim | 
| Classe de envio do produto | Sim | Sim | Sim | Sim | Sim | 
| Tag do produto | Sim | Sim | Sim | Sim | Sim | 
| Variação do produto | Sim | Sim | Sim | Sim | Sim | 
| Total de produtos | Não | Não | Não | Sim | Não | 
| Relatório (lista) | Não | Não | Não | Sim | Não | 
| Total de análises | Não | Não | Não | Sim | Não | 
| Relatório de vendas | Sim | Não | Não | Sim | Não | 
| Método de envio | Não | Não | Não | Sim | Não | 
| Zona de envio | Não | Não | Não | Sim | Não | 
| Localização da zona de envio | Não | Não | Não | Sim | Não | 
| Método da zona de envio | Não | Não | Não | Sim | Não | 
| Alíquota | Sim | Sim | Sim | Sim | Sim | 
| Classe fiscal | Não | Não | Não | Sim | Não | 
| Relatório dos mais vendidos | Sim | Não | Não | Sim | Não | 

**Exemplo:**

```
woocommerce_read = glueContext.create_dynamic_frame.from_options(
    connection_type="glue.spark.woocommerce",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "coupon",
        "API_VERSION": "v3",
        "INSTANCE_URL": "instanceUrl"
    }
```

**Detalhes de entidade e campo do WooCommerce**:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/glue/latest/dg/woocommerce-reading-from-entities.html)

**nota**  
Os tipos de dados Struct e List são convertidos no tipo de dados String, e o tipo de dados DateTime é convertido em Timestamp na resposta dos conectores.

## Particionamento de consultas
<a name="woocommerce-reading-partitioning-queries"></a>

**Particionamento com base em registros**:

É possível fornecer a opção adicional `NUM_PARTITIONS` do Spark se quiser utilizar a simultaneidade no Spark. Com esses parâmetros, a consulta original seria dividida em `NUM_PARTITIONS` subconsultas, que poderiam ser executadas pelas tarefas do Spark simultaneamente.

No particionamento com base em registros, o número total de registros presentes é consultado na API do WooCommerce e dividido por um número `NUM_PARTITIONS` fornecido. O número resultante de registros é então buscado simultaneamente por cada subconsulta.
+ `NUM_PARTITIONS`: o número de partições.

As entidades a seguir oferecem suporte ao particionamento baseado em registros:
+ cupon
+ ordem
+ product
+ product-attribute
+ product-attribute-term
+ product-category
+ product-review
+ product-shipping-class
+ product-tag
+ product-variation
+ tax-rate

Exemplo:

```
woocommerce_read = glueContext.create_dynamic_frame.from_options(
    connection_type="glue.spark.woocommerce",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "coupon",
        "API_VERSION": "v3",
        "INSTANCE_URL": "instanceUrl"
        "NUM_PARTITIONS": "10"
    }
```

**Particionamento com base em registros**:

A consulta original é dividida em `NUM_PARTITIONS` subconsultas que podem ser executadas pelas tarefas do Spark simultaneamente:
+ `NUM_PARTITIONS`: o número de partições.

Exemplo:

```
WooCommerce_read = glueContext.create_dynamic_frame.from_options(
    connection_type="WooCommerce",
    connection_options={
        "connectionName": "connectionName",
        "REALMID": "1234567890123456789",
        "ENTITY_NAME": "Bill",
        "API_VERSION": "v3",
        "NUM_PARTITIONS": "10"
    }
```