从 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" }