从 Microsoft Dynamics 365 CRM 实体读取
先决条件
-
要从中读取内容的 Microsoft Dynamics 365 CRM 对象。您将需要联系人或账户等对象名称。下表显示支持的实体。
支持的实体
| 实体 | 可以筛选 | 支持限制 | 支持排序依据 | 支持 Select * | 支持分区 |
|---|---|---|---|---|---|
| 动态实体 | 支持 | 是 | 是 | 是 | 是 |
示例
dynamics365_read = glueContext.create_dynamic_frame.from_options( connection_type="microsoftdynamics365crm", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "dynamic_entity", "API_VERSION": "v9.2", "INSTANCE_URL": "https://{tenantID}.api.crm.dynamics.com" }
Microsoft Dynamics 365 CRM 实体和字段详细信息
具有动态元数据的实体:
Microsoft Dynamics 365 CRM 提供用于动态获取元数据的端点。因此,对于动态实体,可在数据类型级别捕获运算符支持。
| 实体 | 数据类型 | 支持的运算符 |
|---|---|---|
| 动态实体 | 日期时间 | =, >, >=, <, <=, BETWEEN |
| 日期 | =, <, <=, >, >= | |
| 字符串 | =, != | |
| 双精度 | =, <, <=, >, >= | |
| 整数 | =, <, <=, >, >= | |
| 十进制 | =, <, <=, >, >= | |
| 长整型 | =, <, <=, >, >= | |
| BigInteger | =, <, <=, >, >= | |
| 列表 | NA | |
| 结构体 | NA | |
| Map | NA |
对查询进行分区
Microsoft Dynamics 365 CRM 仅支持基于字段的分区。
如果您想在 Spark 中利用并发,可以提供附加 Spark 选项 PARTITION_FIELD、LOWER_BOUND、UPPER_BOUND 和 NUM_PARTITIONS。使用这些参数,原始查询将被拆分为 NUM_PARTITIONS 个子查询,这些子查询可以由 Spark 任务同时执行。
-
PARTITION_FIELD:用于对查询进行分区的字段的名称。 -
LOWER_BOUND:所选分区字段的包含下限值。对于日期时间,我们接受 Spark SQL 查询中使用的 Spark 时间戳格式。有效值示例:
"2024-01-30T06:47:51.000Z"。 -
UPPER_BOUND:所选分区字段的排除上限值。 -
NUM_PARTITIONS:分区的数量。
基于实体的分区字段支持详细信息如下表中所示:
| 实体名称 | 分区字段 | DataType |
|---|---|---|
| 动态实体(标准实体) | 可查询的动态日期时间字段 | createdon、modifiedon |
| 动态实体(自定义实体) | createdon、modifiedon | createdon、modifiedon |
示例
dynamics365_read = glueContext.create_dynamic_frame.from_options( connection_type="microsoftdynamics365crm", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "dynamic_entity", "API_VERSION": "v9.2", "instanceUrl": "https://{tenantID}.api.crm.dynamics.com" "PARTITION_FIELD": "createdon" "LOWER_BOUND": "2024-01-30T06:47:51.000Z" "UPPER_BOUND": "2024-06-30T06:47:51.000Z" "NUM_PARTITIONS": "10" }