Leitura de entidades do Zoho CRM
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 * | 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 * | 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.
| Entidade | Tipo de dados | Operadores compatíveis |
|---|---|---|
| Entidades do Zoho (todas as entidades) | Inteiro | !=, =, <, <=, >, >=, BETWEEN |
| String | Like, =, != | |
| BigInteger | !=, =, <, <=, >, >=, BETWEEN | |
| Booleano | = | |
| Duplo | !=, =, <, <=, >, >=, BETWEEN | |
| BigDecimal | !=, =, <, <=, >, >=, BETWEEN | |
| Data | !=, =, <, <=, >, >=, BETWEEN | |
| DateTime | !=, =, <, <=, >, >=, BETWEEN | |
| Struct | N/D | |
| Lista | N/D |
Particionamento de consultas
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" }