Ler de entidades do Microsoft Dynamics 365 CRM
Pré-requisitos
-
Um objeto do Microsoft Dynamics 365 CRM do qual você deseja ler. Você precisará do nome do objeto, como contatos ou contas. A tabela a seguir mostra as entidades compatíveis.
Entidades compatíveis
Entidade | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a Selecionar * | Oferece suporte a particionamento |
---|---|---|---|---|---|
Entidade dinâmica | Sim | Sim | Sim | Sim | Sim |
Exemplo
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" }
Detalhes das entidades e dos campos do Microsoft Dynamics 365 CRM
Entidades com metadados dinâmicos:
O Microsoft Dynamics 365 CRM fornece endpoints para buscar metadados dinamicamente. Portanto, para entidades dinâmicas, o suporte do operador é capturado no nível do tipo de dados.
Entidade | Tipo de dado | Operadores com suporte |
---|---|---|
Entidade dinâmica | DateTime | =, >, >=, <, <=, BETWEEN |
Data | =, <, <=, >, >= | |
String | =, != | |
Duplo | =, <, <=, >, >= | |
Inteiro | =, <, <=, >, >= | |
Decimal | =, <, <=, >, >= | |
Longo | =, <, <=, >, >= | |
BigInteger | =, <, <=, >, >= | |
Lista | NA | |
Struct | NA | |
Mapa | NA |
Particionamento de consultas
O Microsoft Dynamics 365 CRM oferece suporte somente ao particionamento baseado em campo.
Podem ser fornecidas as opções adicionais do Spark PARTITION_FIELD
, LOWER_BOUND
, UPPER_BOUND
e NUM_PARTITIONS
se você 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.Em Datetime, aceitamos o formato de carimbo de data/hora do Spark usado em consultas SQL do Spark. Exemplo de valores válidos:
"2024-01-30T06:47:51.000Z"
. -
UPPER_BOUND
: um valor limite superior exclusivo do campo de partição escolhido. -
NUM_PARTITIONS
: número de partições.
Os detalhes do suporte do campo de particionamento relativo às entidades são capturados na tabela abaixo:
Entity Name | Campos de particionamento | DataType |
---|---|---|
Entidade dinâmica (entidade padrão) | Campos DateTime dinâmicos que podem ser consultados | createdon, modifiedon |
Entidade dinâmica (entidade personalizada) | createdon, modifiedon | createdon, modifiedon |
Exemplo
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" }