

# Cómo leer de las entidades de Freshsales
<a name="freshsales-reading-from-entities"></a>

**Requisito previo**

Un objeto de Freshsales del que le gustaría leer. Necesitará el nombre del objeto.

**Entidades compatibles como origen:**


| Entidad | Se puede filtrar | Admite límite | Admite Ordenar por | Admite Seleccionar \$1 | Admite partición | 
| --- | --- | --- | --- | --- | --- | 
| Cuentas | Sí | Sí | Sí | Sí | Sí | 
| Contactos | Sí | Sí | Sí | Sí | Sí | 

**Ejemplo:**

```
freshSales_read = glueContext.create_dynamic_frame.from_options(
     connection_type="freshsales",
     connection_options={
         "connectionName": "connectionName",
         "ENTITY_NAME": "entityName",
         "API_VERSION": "v1.0"
     }
```

**Detalles de las entidades y campos de Freshsales**:

Freshsales proporciona puntos de conexión para obtener metadatos de forma dinámica para las entidades compatibles. Por lo tanto, la compatibilidad del operador se captura según el tipo de datos.

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

## Consultas de partición
<a name="freshsales-reading-partitioning-queries"></a>

**Partición basada en filtros**:

Puede proporcionar las opciones adicionales de Spark `PARTITION_FIELD`, `LOWER_BOUND`, `UPPER_BOUND` y `NUM_PARTITIONS` si quiere utilizar la simultaneidad en Spark. Con estos parámetros, la consulta original se dividiría en un número `NUM_PARTITIONS` de subconsultas que las tareas de Spark pueden ejecutar simultáneamente.
+ `PARTITION_FIELD`: el nombre del campo que se utilizará para particionar la consulta.
+ `LOWER_BOUND`: un valor de límite inferior **inclusivo** del campo de partición elegido.

  En el campo Datetime, aceptamos el valor en formato ISO.

  Ejemplos de valor válido:

  ```
  "2024-09-30T01:01:01.000Z"
  ```
+ `UPPER_BOUND`: un valor límite superior **exclusivo** del campo de partición elegido.
+ `NUM_PARTITIONS`: el número de particiones.

Ejemplo:

```
freshSales_read = glueContext.create_dynamic_frame.from_options(
     connection_type="freshsales",
     connection_options={
         "connectionName": "connectionName",
         "ENTITY_NAME": "entityName",
         "API_VERSION": "v1",
         "PARTITION_FIELD": "Created_Time"
         "LOWER_BOUND": " 2024-10-15T21:16:25Z"
         "UPPER_BOUND": " 2024-10-20T21:25:50Z"
         "NUM_PARTITIONS": "10"
     }
```