

# Leitura de entidades do Zoho CRM
<a name="zoho-crm-reading-from-entities"></a>

**Pré-requisito**

Objetos do Zoho CRM dos quais você deseja ler. Você precisará do nome do objeto.

**Entidades compatíveis com a fonte de Sync**:


| Entidade | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a Selecionar \$1 | Oferece suporte a particionamento | 
| --- | --- | --- | --- | --- | --- | 
| Produto | Sim | Sim | Sim | Sim | Sim | 
| Cotação | Sim | Sim | Sim | Sim | Sim | 
| Ordem de compra | Sim | Sim | Sim | Sim | Sim | 
| Solução | Sim | Sim | Sim | Sim | Sim | 
| Chame | Sim | Sim | Sim | Sim | Sim | 
| Tarefa | Sim | Sim | Sim | Sim | Sim | 
| Event | Sim | Sim | Sim | Sim | Sim | 
| Fatura | Sim | Sim | Sim | Sim | Sim | 
| Conta | Sim | Sim | Sim | Sim | Sim | 
| Contato | Sim | Sim | Sim | Sim | Sim | 
| Fornecedor | Sim | Sim | Sim | Sim | Sim | 
| Campaign | Sim | Sim | Sim | Sim | Sim | 
| Oferta | Sim | Sim | Sim | Sim | Sim | 
| Lead | Sim | Sim | Sim | Sim | Sim | 
| Módulo personalizado | Sim | Sim | Sim | Sim | Sim | 
| Ordem de venda | Sim | Sim | Sim | Sim | Sim | 
| Catálogos de preços | Sim | Sim | Sim | Sim | Sim | 
| Caso | Sim | Sim | Sim | Sim | Sim | 

**Exemplo:**

```
zoho_read = glueContext.create_dynamic_frame.from_options(
    connection_type="ZOHO",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "entityName",
        "API_VERSION": "v7",
        "INSTANCE_URL": "https://www.zohoapis.in/"
    }
```

**Entidades compatíveis com a fonte de ASYNC**:


| Entidade | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a Selecionar \$1 | Oferece suporte a particionamento | 
| --- | --- | --- | --- | --- | --- | 
| Produto | Sim | Não | Não | Sim | Não | 
| Cotação | Sim | Não | Não | Sim | Não | 
| Ordem de compra | Sim | Não | Não | Sim | Não | 
| Solução | Sim | Não | Não | Sim | Não | 
| Chame | Sim | Não | Não | Sim | Não | 
| Tarefa | Sim | Não | Não | Sim | Não | 
| Event | Sim | Não | Não | Sim | Não | 
| Fatura | Sim | Não | Não | Sim | Não | 
| Conta | Sim | Não | Não | Sim | Não | 
| Contato | Sim | Não | Não | Sim | Não | 
| Fornecedor | Sim | Não | Não | Sim | Não | 
| Campaign | Sim | Não | Não | Sim | Não | 
| Oferta | Sim | Não | Não | Sim | Não | 
| Lead | Sim | Não | Não | Sim | Não | 
| Módulo personalizado | Sim | Não | Não | Sim | Não | 
| Ordem de venda | Sim | Não | Não | Sim | Não | 
| Catálogos de preços | Sim | Não | Não | Sim | Não | 
| Caso | Sim | Não | Não | Sim | Não | 

**Exemplo:**

```
zoho_read = glueContext.create_dynamic_frame.from_options(
    connection_type="ZOHO",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "entityName",
        "API_VERSION": "v7",
        "INSTANCE_URL": "https://www.zohoapis.in/",
        "TRANSFER_MODE": "ASYNC"
    }
```

**Detalhes dos campos do Zoho CRM**:

O Zoho CRM fornece endpoints para a busca de metadados de forma dinâmica para entidades compatíveis. Portanto, o suporte do operador é capturado no nível do tipo de dados.

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

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

O particionamento não é compatível no modo ASYNC.

**Particionamento baseado em filtro (modo SYNC)**:

É possível fornecer as opções adicionais do Spark `PARTITION_FIELD`, `LOWER_BOUND`, `UPPER_BOUND` e `NUM_PARTITIONS` 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.
+ `PARTITION_FIELD`: o nome do campo a ser usado para particionar a consulta.
+ `LOWER_BOUND`: um valor limite inferior **inclusivo** do campo de partição escolhido.

  No campo Datetime, aceitamos o formato de carimbo de data/hora do Spark usado em consultas SQL do Spark.

  Exemplos de valores válidos:

  ```
  "2024-09-30T01:01:01.000Z"
  ```
+ `UPPER_BOUND`: um valor limite superior **exclusivo** do campo de partição escolhido.
+ `NUM_PARTITIONS`: o número de partições.

Exemplo:

```
zoho_read = glueContext.create_dynamic_frame.from_options(
    connection_type="zohocrm",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "entityName",
        "API_VERSION": "v7",
        "PARTITION_FIELD": "Created_Time"
        "LOWER_BOUND": "2022-01-01T01:01:01.000Z"
        "UPPER_BOUND": "2024-01-01T01:01:01.000Z"
        "NUM_PARTITIONS": "10"
    }
```