Detalles de Conexión de Microsoft Dataverse
Introducción
Versión del conector
Esta documentación se basa en la versión 21.0.8257 del conector.
Empezando
Compatibilidad con la versión de Dataverse
El conector admite el acceso de lectura/escritura a Dataverse a través de Dataverse.
Establecer una Conexión
Conexión a Microsoft Dataverse
Autenticación Mediante Microsoft Entra service principal
Azure Service Principal es un tipo de conexión que pasa por OAuth. Establecer su AuthScheme
a AzureServicePrincipal
y consulte Uso de la autenticación principal de servicio de Azure para obtener una guía de autenticación.
Uso de la Autenticación OAuth
OAuth requiere que el usuario que se autentica interactúe con Dataverse usando el navegador. El conector facilita esto de varias maneras, como se describe a continuación.
Credenciales Integradas
Consulte Credenciales integradas para conectarse con las credenciales incrustadas del conector y omitir la creación de una aplicación OAuth personalizada.
Credenciales Personalizadas
En lugar de conectarse con las credenciales integradas del conector, puede registrar una aplicación con Credenciales personalizadas para obtener el OAuthClientId
y OAuthClientSecret
.
Cuándo Crear una Aplicación OAuth Personalizada
La creación de una aplicación OAuth personalizada es opcional, ya que el conector ya está registrado con Dataverse y puede conectarse con sus credenciales integradas. Es posible que desee crear una aplicación de OAuth personalizada para cambiar la información que se muestra cuando los usuarios inician sesión en el extremo de Dataverse OAuth para otorgar permisos al conector.
Creación de una Aplicación OAuth Personalizada
Consulte Crear una aplicación OAuth personalizada para un procedimiento.
Credenciales Integradas
Autenticarse con las Credenciales de OAuth Integradas
Autenticación de Escritorio con la Aplicación OAuth Integrada
Puede conectarse sin configurar ninguna propiedad de conexión para sus credenciales de usuario.
Cuando se conecta, el conector abre el extremo de OAuth en su navegador predeterminado. Inicie sesión y otorgue permisos a la aplicación. Luego, el conector completa el proceso de OAuth.
- Extrae el token de acceso de la URL de devolución de llamada y autentica las solicitudes.
- Obtiene un nuevo token de acceso cuando caduca el anterior.
- Guarda los valores de OAuth en
OAuthSettingsLocation
para persistir a través de las conexiones.
Credenciales Personalizadas
Hay dos tipos de autenticación de aplicaciones disponibles: usar un secreto de cliente y usar un certificado. Puede usar cualquiera de ellos dependiendo de la autenticación de la aplicación configurada.
Autenticación de Escritorio con Su Aplicación OAuth
Siga los pasos a continuación para autenticarse con las credenciales de una aplicación OAuth personalizada. Consulte Crear una aplicación OAuth personalizada.
Obtenga un Token de Acceso OAuth
Está listo para conectarse después de configurar uno de los siguientes grupos de propiedades de conexión según el tipo de autenticación.
Authenticating using a Client Secret
OAuthClientId
: establezca esto en la ID del cliente en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del cliente en la configuración de su aplicación.CallbackURL
: establezca esto en la URL de redireccionamiento en la configuración de su aplicación.AuthScheme
: establezca esto en "AzureAD" en la configuración de su aplicación.InitiateOAuth
: Establézcalo en GETANDREFRESH. Puede usar InitiateOAuth para evitar repetir el intercambio de OAuth y configurar manualmenteOAuthAccessToken
..
Authenticating using a Certificate
OAuthClientId
: establezca esto en la ID del cliente en la configuración de su aplicación.OAuthJWTCert
: establezca esto en el almacén de certificados JWT.OAuthJWTCertType
: establezca esto en el tipo de almacén de certificados especificado porOAuthJWTCert
.CallbackURL
: establezca esto en la URL de redireccionamiento en la configuración de su aplicación.AuthScheme
: establezca esto en "AzureAD" en la configuración de su aplicación.InitiateOAuth
: Establézcalo en GETANDREFRESH. Puede usar InitiateOAuth para evitar repetir el intercambio de OAuth y configurar manualmenteOAuthAccessToken
..
Cuando se conecta, el conector abre el extremo de OAuth en su navegador predeterminado. Inicie sesión y otorgue permisos a la aplicación. Luego, el conector completa el proceso de OAuth:
- Extrae el token de acceso de la URL de devolución de llamada y autentica las solicitudes.
- Obtiene un nuevo token de acceso cuando caduca el anterior.
- Guarda los valores de OAuth en
OAuthSettingsLocation
para persistir a través de las conexiones.
Máquinas Sin Cabeza
Uso de OAuth en una Máquina Sin Cabeza
Para crear fuentes de datos de Dataverse en servidores sin periféricos u otras máquinas en las que el conector no puede abrir un navegador, debe autenticarse desde otra máquina. La autenticación es un proceso de dos pasos.
- En lugar de instalar el conector en otra máquina, puede seguir los pasos a continuación para obtener el
OAuthVerifier
valor. O bien, puede instalar el conector en otra máquina y transferir los valores de autenticación de OAuth, después de autenticarse a través del flujo habitual basado en el navegador. - A continuación, puede configurar el conector para actualizar automáticamente el token de acceso desde la máquina sin periféricos.
Puede seguir el flujo de autenticación de OAuth sin cabeza usando las credenciales de OAuth integradas del conector o usando las credenciales de OAuth para su aplicación de OAuth personalizada.
Uso de las Credenciales para una Aplicación OAuth Personalizada
Cree una aplicación OAuth personalizada
Consulte Crear una aplicación OAuth personalizada para un procedimiento. Luego puede seguir los procedimientos a continuación para autenticarse y conectarse a los datos.
Obtenga un código verificador
En la máquina sin periféricos, configure uno de los siguientes grupos de propiedades según el tipo de autenticación:
Authenticating using a Client Secret
InitiateOAuth
: Ajústelo a APAGADO.OAuthClientId
: establezca esto en la ID de la aplicación en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto de la aplicación en la configuración de su aplicación.
Authenticating using a Certificate
InitiateOAuth
: Ajústelo a APAGADO.OAuthClientId
: establezca esto en la ID de la aplicación en la configuración de su aplicación.OAuthJWTCert
: establezca esto en el almacén de certificados JWT.OAuthJWTCertType
: establezca esto en el tipo de almacén de certificados especificado porOAuthJWTCert
.
Luego puede seguir los pasos a continuación para autenticarse desde otra máquina y obtener el OAuthVerifier
propiedad de conexión.
- Llame a GetOAuthAuthorizationUrl procedimiento almacenado* con el parámetro de entrada CallbackURL establecido en el URI de redirección exacto que especificó en la configuración de su aplicación.
- Abra la URL devuelta en un navegador. Inicie sesión y otorgue permisos al conector. A continuación, se le redirigirá a la URL de devolución de llamada. La página web indicará que no se pudo acceder al sitio.
- Inspeccione la URL de la página de este sitio y busque
code
valor. Estará presente en la URL en la forma code=XXXXXX (terminado con &, que denota el siguiente parámetro de URL) El valor después de "code=" es el código verificador. - Guarde el valor del código verificador. Establecerá esto en el
OAuthVerifier
propiedad de conexión.
En la máquina sin periféricos, configure uno de los siguientes grupos de propiedades de conexión según el tipo de autenticación para obtener los valores de autenticación de OAuth:
OAuthClientId
: establezca esto en la clave de consumidor en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del consumidor en la configuración de su aplicación.OAuthVerifier
: Establézcalo en el código del verificador.OAuthSettingsLocation
: configure esto para conservar los valores de autenticación OAuth cifrados en el archivo especificado.InitiateOAuth
: Establézcalo en ACTUALIZAR.
Conectarse a datos
Después de generar el archivo de configuración de OAuth, configure las siguientes propiedades para conectarse a los datos:
OAuthSettingsLocation
: Establézcalo en el archivo que contiene los valores de autenticación de OAuth cifrados. Asegúrese de que este archivo otorgue permisos de lectura y escritura al proveedor para habilitar la actualización automática del token de acceso.InitiateOAuth
: Establézcalo en ACTUALIZAR.
Transferir configuración de OAuth
Siga los pasos a continuación para instalar el conector en otra máquina, autenticar y luego transferir los valores de OAuth resultantes.
En una segunda máquina, instale el conector y conéctese con uno de los siguientes grupos de propiedades según el tipo de autenticación:
Authenticating using a Client Secret
OAuthSettingsLocation
: establezca esto en un archivo de texto grabable.InitiateOAuth
: Establézcalo en GETANDREFRESH.OAuthClientId
: establezca esto en la ID del cliente en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del cliente en la configuración de su aplicación.CallbackURL
: establezca esto en la URL de devolución de llamada en la configuración de su aplicación.
Authenticating using a Certificate
OAuthSettingsLocation
: establezca esto en un archivo de texto grabable.InitiateOAuth
: Establézcalo en GETANDREFRESH.OAuthClientId
: establezca esto en la ID del cliente en la configuración de su aplicación.OAuthJWTCert
: establezca esto en el almacén de certificados JWT.OAuthJWTCertType
: establezca esto en el tipo de almacén de certificados especificado porOAuthJWTCert
.CallbackURL
: establezca esto en la URL de devolución de llamada en la configuración de su aplicación.
Pruebe la conexión para autenticarse. Los valores de autenticación resultantes se escriben, se cifran, en la ruta especificada por OAuthSettingsLocation
. Una vez que haya probado con éxito la conexión, copie el archivo de configuración de OAuth en su máquina sin periféricos. En la máquina sin periféricos, configure las siguientes propiedades de conexión para conectarse a los datos:
InitiateOAuth
: Establézcalo en ACTUALIZAR.OAuthSettingsLocation
: establezca esto en la ruta a su archivo de configuración de OAuth. Asegúrese de que este archivo otorgue permisos de lectura y escritura al conector para habilitar la actualización automática del token de acceso.
Creación de una Aplicación OAuth Personalizada
Cuándo Crear una Aplicación OAuth Personalizada
La creación de una aplicación OAuth personalizada es opcional, ya que el conector ya está registrado con Dataverse y puede conectarse con sus credenciales integradas.
Es posible que desee crear una aplicación de OAuth personalizada para cambiar la información que se muestra cuando los usuarios inician sesión en el extremo de Dataverse OAuth para otorgar permisos al conector.
Siga los pasos a continuación para crear una aplicación OAuth personalizada y obtener las propiedades de conexión en un flujo de autenticación OAuth específico.
Pasos para Crear una Aplicación OAuth Personalizada
Siga los pasos a continuación para obtener los valores de OAuth para su aplicación, el OAuthClientId
y OAuthClientSecret
.
- Inicie sesión en
https://portal.azure.com
. - En el panel de navegación de la izquierda, seleccione Azure Active Directory, luego Registros de aplicaciones y haga clic en el botón Nuevo registro.
- Ingrese un nombre de aplicación y configure el botón de opción para la configuración de inquilino deseada. Al crear una aplicación OAuth personalizada en Azure Active Directory, puede definir si la aplicación es de un solo inquilino o de varios inquilinos. Si selecciona la opción predeterminada de "Cuentas solo en este directorio organizacional", deberá configurar
AzureTenant
propiedad de conexión al ID del arrendatario de Azure AD al establecer una conexión con Jitterbit Connector for Dataverse. De lo contrario, el intento de autenticación fallará con un error. Si su aplicación es solo para uso privado, "Solo cuentas en el directorio de esta organización" debería ser suficiente. De lo contrario, si desea distribuir su aplicación, elija una de las opciones de múltiples inquilinos. - Luego configure la URL de redireccionamiento a algo como
http://localhost:33333
, el valor predeterminado del conector. O configure un puerto diferente de su elección y configureCallbackURL
a la URL de respuesta exacta que definiste. - Defina el tipo de autenticación de la aplicación en la sección Certificados y secretos. Hay dos tipos de autenticación disponibles: usando un secreto de cliente y usando un certificado. El método de autenticación recomendado es a través de un certificado, pero también puede crear un secreto de aplicación.
Option 1 - Upload a certificate
: En la sección Certificados y secretos, seleccione Cargar certificado y seleccione el certificado para cargar desde su máquina local.Option 2 - Create a new application secret
: En la sección Certificados y secretos, seleccione Nuevo secreto de cliente para la aplicación y seleccione su duración. Después de guardar el secreto del cliente, se muestra el valor de la clave. Copie este valor ya que se muestra solo una vez y se usa comoOAuthClientSecret
.
- Seleccione Permisos de API y luego haga clic en Agregar. Si planea que su aplicación se conecte sin un contexto de usuario, seleccione los Permisos de la aplicación (
OAuthGrantType
= CLIENTE). De lo contrario, al seleccionar permisos, utilice los permisos Delegados. - En Seleccione una API, seleccione los permisos de Dynamics CRM Online si se autentica desde una aplicación de escritorio, o seleccione los permisos de Dynamics CRM Online si se autentica desde aplicaciones web o máquinas sin periféricos.
- Guarde sus cambios.
- Si ha seleccionado usar permisos que requieren el consentimiento del administrador (como los Permisos de la aplicación), puede otorgarlos desde el arrendatario actual en la página Permisos de la API.
Credenciales del Cliente
Las credenciales del cliente hacen referencia a un flujo en OAuth en el que no se lleva a cabo una autenticación directa del usuario. En cambio, las credenciales se crean solo para la aplicación en sí. Todas las tareas realizadas por la aplicación se realizan sin un contexto de usuario predeterminado. Esto hace que el flujo de autenticación sea un poco diferente al estándar.
Flujo de OAuth del Cliente
Todos los permisos relacionados con el flujo de autenticación del cliente requieren el consentimiento del administrador. Esto significa que la aplicación integrada con Jitterbit Connector for Dataverse no se puede usar en el flujo de autenticación del cliente. Debe crear su propia aplicación OAuth para usar las credenciales del cliente. Consulte Crear una aplicación OAuth personalizada para más detalles.
En su Registro de aplicaciones en portal.azure.com, vaya a Permisos de API y seleccione los permisos de Microsoft Graph. Hay dos conjuntos distintos de permisos: permisos delegados y de aplicación. Los permisos utilizados durante la autenticación de credenciales del cliente se encuentran en Permisos de la aplicación. Seleccione los permisos aplicables que necesita para su integración.
Está listo para conectarse después de configurar uno de los siguientes grupos de propiedades de conexión según el tipo de autenticación.
Authenticating using a Client Secret
InitiateOAuth
: Establézcalo en GETANDREFRESH. Puede usar InitiateOAuth para evitar repetir el intercambio de OAuth y configurar manualmenteOAuthAccessToken
.AzureTenant
: Configure esto para el arrendatario al que desea conectarse.OAuthGrantType
: Establézcalo en CLIENTE.OAuthClientId
: establezca esto en la ID del cliente en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del cliente en la configuración de su aplicación.
Authenticating using a Certificate
InitiateOAuth
: Establézcalo en GETANDREFRESH. Puede usar InitiateOAuth para evitar repetir el intercambio de OAuth y configurar manualmenteOAuthAccessToken
.AzureTenant
: Configure esto para el arrendatario al que desea conectarse.OAuthGrantType
: Establézcalo en CLIENTE.OAuthClientId
: establezca esto en la ID del cliente en la configuración de su aplicación.OAuthJWTCert
: establezca esto en el almacén de certificados JWT.OAuthJWTCertType
: establezca esto en el tipo de almacén de certificados especificado porOAuthJWTCert
.
La autenticación con las credenciales del cliente se realizará automáticamente como cualquier otra conexión, excepto que no se abrirá ninguna ventana que pregunte al usuario. Debido a que no hay un contexto de usuario, no hay necesidad de una ventana emergente en el navegador. Las conexiones se llevarán a cabo y se manejarán internamente.
Uso de la Autenticación Principal de Servicio de Azure
La autenticación como entidad principal de servicio de Azure se gestiona a través del flujo de credenciales de cliente de OAuth y no implica la autenticación directa del usuario. En cambio, las credenciales se crean solo para la aplicación en sí. Todas las tareas realizadas por la aplicación se realizan sin un contexto de usuario predeterminado, pero en función de los roles asignados. El acceso de la aplicación a los recursos se controla a través de los permisos de los roles asignados.
Credenciales Personalizadas
Deberá registrar una aplicación de OAuth para obtener los valores de propiedad de OAuth antes de conectarse a la fuente de datos de Dataverse. Puede comprobar las Credenciales personalizadas guía sobre cómo configurar las propiedades de OAuth.
Creación de una Aplicación OAuth Personalizada
Consulte Crear una aplicación OAuth personalizada para un procedimiento.
Creación de una Aplicación OAuth Personalizada
Es necesario crear una aplicación de OAuth personalizada y una entidad de servicio que pueda acceder a los recursos necesarios cuando se autentica mediante una entidad de servicio de Azure.
Siga los pasos a continuación para crear una aplicación OAuth personalizada y obtener las propiedades de conexión para la autenticación de la entidad de servicio de Azure.
Pasos para Crear una Aplicación OAuth Personalizada
Siga los pasos a continuación para obtener los valores de OAuth para su aplicación.
- Inicie sesión en
<https://portal.azure.com>
. - En el panel de navegación de la izquierda, seleccione Azure Active Directory, luego Registros de aplicaciones y haga clic en el botón Nuevo registro.
- Ingrese un nombre de aplicación y configure el botón de opción para "Cualquier directorio de Azure AD - Multiusuario". Luego configure la URL de redireccionamiento a algo como
http://localhost:33333
, el valor predeterminado del conector. - Copie el valor de ID de la aplicación (cliente) que se muestra en la sección Descripción general después de crear la aplicación, ya que este valor se usa como
OAuthClientId
- Defina el tipo de autenticación de la aplicación en la sección Certificados y secretos. Hay dos tipos de autenticación disponibles: usando un secreto de cliente y usando un certificado. El método de autenticación recomendado es a través de un certificado, pero también puede crear un secreto de aplicación.
Option 1 - Upload a certificate
: En la sección Certificados y secretos, seleccione Cargar certificado y seleccione el certificado para cargar desde su máquina local.Option 2 - Create a new application secret
: En la sección Certificados y secretos, seleccione Nuevo secreto de cliente para la aplicación y seleccione su duración. Después de guardar el secreto del cliente, se muestra el valor de la clave. Copie este valor ya que se muestra solo una vez y se usa comoOAuthClientSecret
.
- En la pestaña Autenticación, asegúrese de marcar la opción: Tokens de acceso (utilizados para flujos implícitos).
- Abra la página Suscripciones buscando y seleccionando el servicio Suscripciones en la barra de búsqueda.
- Seleccione la suscripción particular para asignar la aplicación, luego abra la sección Control de acceso (IAM) y haga clic en el botón Agregar asignación de rol.
- Seleccione Propietario como el rol para asignar a su aplicación OAuth creada.
Credenciales Personalizadas
Siga los pasos a continuación para autenticarse con las credenciales de una aplicación OAuth personalizada. Consulte Crear una aplicación OAuth personalizada.
Autenticación con Su Aplicación OAuth
Actualmente, solo se admite el uso de un secreto de cliente para la autenticación.
Obtenga un Token de Acceso OAuth
Está listo para conectarse después de configurar las siguientes propiedades de conexión:
Authenticating using a Client Secret
AuthScheme
: establezca esto en "AzureServicePrincipal" en la configuración de su aplicación.InitiateOAuth
: Establézcalo en GETANDREFRESH. Puede usar InitiateOAuth para evitar repetir el intercambio de OAuth y configurar manualmenteOAuthAccessToken
.AzureTenant
: Configure esto para el arrendatario al que desea conectarse.OAuthClientId
: establezca esto en la ID del cliente en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del cliente en la configuración de su aplicación.
Notas Importantes
Procedimientos Almacenados
- Las funciones de procedimientos almacenados descritas en esta documentación no se admiten actualmente.
- Debido a que los procedimientos almacenados no se admiten actualmente, cualquier característica que dependa de los procedimientos almacenados tampoco se admite actualmente.
Archivos de Configuración y Sus Rutas
- Todas las referencias a la adición de archivos de configuración y sus rutas se refieren a archivos y ubicaciones en Harmony Agente donde está instalado el conector. Estas rutas deben ajustarse según corresponda según el agente y el sistema operativo. Si se utilizan varios agentes en un grupo de agentes, se requerirán archivos idénticos en cada agente.
Características Avanzadas
Esta sección detalla una selección de funciones avanzadas del conector Dataverse.
Vistas definidas por el usuario
El conector le permite definir tablas virtuales, llamadas vistas definidas por el usuario, cuyo contenido se decide mediante una consultar preconfigurada. Estas vistas son útiles cuando no puede controlar directamente las consultas que se envían a los controladores. Consulte Vistas definidas por el usuario para obtener una descripción general de la creación y configuración de vistas personalizadas.
Configuración SSL
Usar Configuración SSL para ajustar cómo el conector maneja las negociaciones de certificados TLS/SSL. Puede elegir entre varios formatos de certificado; ver el SSLServerCert
propiedad en "Opciones de cadena de conexión" para obtener más información.
Apoderado
Para configurar el conector mediante Configuración de proxy de Agente Privado, Selecciona el Use Proxy Settings
casilla de verificación en la pantalla de configuración de la conexión.
Vistas Definidas por el Usuario
El conector Jitterbit para Dataverse le permite definir una tabla virtual cuyos contenidos se deciden mediante una consultar preconfigurada. Estas se denominan Vistas definidas por el usuario, que son útiles en situaciones en las que no puede controlar directamente la consultar que se envía al controlador, por ejemplo, cuando se utiliza el controlador de Jitterbit. Las vistas definidas por el usuario se pueden utilizar para definir predicados que siempre se aplican. Si especifica predicados adicionales en la consultar a la vista, se combinan con la consultar ya definida como parte de la vista.
Hay dos formas de crear vistas definidas por el usuario:
- Cree un archivo de configuración con formato JSON que defina las vistas que desea.
- Declaraciones DDL.
Definición de Vistas Utilizando un Archivo de Configuración
Las vistas definidas por el usuario se definen en un archivo de configuración con formato JSON llamado UserDefinedViews.json
. El conector detecta automáticamente las vistas especificadas en este archivo.
También puede tener múltiples definiciones de vista y controlarlas usando UserDefinedViews
propiedad de conexión. Cuando utiliza esta propiedad, el conector solo ve las vistas especificadas.
Este archivo de configuración de vista definida por el usuario tiene el siguiente formato:
- Cada elemento raíz define el nombre de una vista.
- Cada elemento raíz contiene un elemento hijo, llamado
query
, que contiene la consultar SQL personalizada para la vista.
Por ejemplo:
{
"MyView": {
"query": "SELECT * FROM Accounts WHERE MyColumn = 'value'"
},
"MyView2": {
"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
}
}
Utilizar el UserDefinedViews
propiedad de conexión para especificar la ubicación de su archivo de configuración JSON. Por ejemplo:
"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"
Esquema para Vistas Definidas por el Usuario
Las vistas definidas por el usuario se exponen en UserViews
esquema por defecto. Esto se hace para evitar que el nombre de la vista entre en conflicto con una entidad real en el modelo de datos. Puede cambiar el nombre del esquema utilizado para UserViews configurando UserViewsSchemaName
propiedad.
Trabajar con Vistas Definidas por el Usuario
Por ejemplo, una instrucción SQL con una vista definida por el usuario llamada UserViews.RCustomers
solo enumera clientes en Raleigh:
SELECT * FROM Customers WHERE City = 'Raleigh';
Un ejemplo de una consultar al controlador:
SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';
Dando como resultado la consultar efectiva a la fuente:
SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';
Ese es un ejemplo muy simple de una consultar a una vista definida por el usuario que es efectivamente una combinación de la consultar de vista y la definición de vista. Es posible componer estas consultas en patrones mucho más complejos. Todas las operaciones de SQL están permitidas en ambas consultas y se combinan cuando corresponde.
Configuración SSL
Personalización de la Configuración SSL
De forma predeterminada, el conector intenta negociar SSL/TLS comparando el certificado del servidor con el almacén de certificados de confianza del sistema.
Para especificar otro certificado, consulte SSLServerCert
propiedad de los formatos disponibles para hacerlo.
Modelo de Datos
Descripción general
Esta sección muestra los objetos de la API disponibles y proporciona más información sobre la ejecución de SQL en las APIs de Dataverse.
El conector Jitterbit para Dataverse modela entidades de Dataverse en tablas relacionales, vistas y procedimientos almacenados. Las definiciones de la tabla se obtienen dinámicamente del servicio OData al que se conecta. Cualquier cambio en los metadatos, como columnas agregadas o eliminadas o cambios en el tipo de datos, se puede cargar volviendo a conectarse.
Mesas
El conector modela las entidades de escritura descritas en el documento de metadatos del servicio como tablas bidireccionales.
Procedimientos almacenados
NOTE:
Los procedimientos almacenados no se admiten actualmente. Consulte la nota anterior para detalles.
Son interfaces similares a funciones para la fuente de datos. Se pueden usar para realizar operaciones adicionales que quedan fuera del modelo CRUD estándar, como recuperar un token de acceso OAuth.
Modelo de datos de entidades de Dataverse
Modelo de datos de entidades describe los esquemas disponibles para conectarse a Dataverse. Puede usar tablas para trabajar con datos de Dataverse en vivo. Puede usar procedimientos almacenados* proporcionado por Jitterbit Connector for Dataverse para automatizar el trabajo con datos de Dataverse.
Modelo de datos del sistema Dataverse
Modelo de datos del sistema describe los esquemas disponibles para conectarse a Dataverse. Puede usar tablas para trabajar con datos de Dataverse en vivo. Puede usar procedimientos almacenados* proporcionado por Jitterbit Connector for Dataverse para automatizar el trabajo con datos de Dataverse.
Procesamiento colaborativo de consultas
El conector descarga la mayor cantidad posible del procesamiento de la instrucción SELECT en Dataverse y luego procesa el resto de la consultar en la memoria. Las limitaciones y los requisitos de la API también se documentan en esta sección.
Ver SupportEnhancedSQL
para obtener más información sobre cómo el conector elude las limitaciones de la API con el procesamiento del lado del cliente en memoria.
Modelo de Datos de Entidades
Puntos de Vista
Puntos de vista describe las vistas disponibles.
Procedimientos Almacenados
NOTE:
Los procedimientos almacenados no se admiten actualmente. Consulte la nota anterior para detalles.
Procedimientos almacenados son interfaces similares a funciones para Dataverse. Procedimientos almacenados* le permiten ejecutar operaciones en Dataverse, como recuperar el token de acceso de OAuth.
Puntos de Vista
Las vistas se componen de columnas y pseudocolumnas. Las vistas son similares a las tablas en la forma en que se representan los datos; sin embargo, las vistas no admiten actualizaciones. Las entidades que se representan como vistas suelen ser entidades de solo lectura. A menudo, un procedimiento almacenado* está disponible para actualizar los datos si dicha funcionalidad es aplicable a la fuente de datos.
Las consultas se pueden ejecutar contra una vista como si fuera una tabla normal, y los datos que regresan son similares en ese sentido. Para obtener más información sobre las tablas y los procedimientos almacenados, vaya a sus entradas correspondientes en este documento de ayuda.
Conector Jitterbit para Vistas de Dataverse
Nombre | Descripción |
---|---|
MultiSelectPickListAttributeMetaData | Contiene los metadatos de la lista de selección para un tipo de atributo MultiSelect OptionSet. |
MultiSelectPickListOptions | Contiene el valor de opciones de MultiSelect PicklistMetadata. |
PickListAttributeMetaData | Contiene los metadatos para una Lista de selección de tipo de atributo. |
PickListOptions | Contiene el valor Opciones de PickListMetaData |
MultiSelectPickListAttributeMetaData
Contiene los metadatos de la lista de selección para un tipo de atributo MultiSelect OptionSet.
Columnas
Nombre | Tipo | Referencias | Descripción |
---|---|---|---|
ColumnName [KEY] | String | ||
MetadataId | String | ||
OptionSet_Description_LocalizedLabels | String | ||
OptionSet_Description_LocalizedLabels_HasChanged | String | ||
OptionSet_Description_LocalizedLabels_IsManaged | String | ||
OptionSet_Description_LocalizedLabels_Label | String | ||
OptionSet_Description_LocalizedLabels_LanguageCode | String | ||
OptionSet_Description_LocalizedLabels_MetadataId | String | ||
OptionSet_Description_UserLocalizedLabel_HasChanged | String | ||
OptionSet_Description_UserLocalizedLabel_IsManaged | Boolean | ||
OptionSet_Description_UserLocalizedLabel_Label | String | ||
OptionSet_Description_UserLocalizedLabel_LanguageCode | Integer | ||
OptionSet_Description_UserLocalizedLabel_MetadataId | String | ||
OptionSet_DisplayName_LocalizedLabels | String | ||
OptionSet_DisplayName_LocalizedLabels_HasChanged | String | ||
OptionSet_DisplayName_LocalizedLabels_IsManaged | String | ||
OptionSet_DisplayName_LocalizedLabels_Label | String | ||
OptionSet_DisplayName_LocalizedLabels_LanguageCode | String | ||
OptionSet_DisplayName_LocalizedLabels_MetadataId | String | ||
OptionSet_DisplayName_UserLocalizedLabel_HasChanged | String | ||
OptionSet_DisplayName_UserLocalizedLabel_IsManaged | Boolean | ||
OptionSet_DisplayName_UserLocalizedLabel_Label | String | ||
OptionSet_DisplayName_UserLocalizedLabel_LanguageCode | Integer | ||
OptionSet_DisplayName_UserLocalizedLabel_MetadataId | String | ||
OptionSet_ExternalTypeName | String | ||
OptionSet_HasChanged | String | ||
OptionSet_IntroducedVersion | String | ||
OptionSet_IsCustomizable_CanBeChanged | Boolean | ||
OptionSet_IsCustomizable_ManagedPropertyLogicalName | String | ||
OptionSet_IsCustomizable_Value | Boolean | ||
OptionSet_IsCustomOptionSet | Boolean | ||
OptionSet_IsGlobal | Boolean | ||
OptionSet_IsManaged | Boolean | ||
OptionSet_MetadataId | String | ||
OptionSet_Name | String | ||
OptionSet_OptionSetType | String | ||
OptionSet_ParentOptionSetName | String | ||
TableName | String |
MultiSelectPickListOptions
Contiene el valor de opciones de MultiSelect PicklistMetadata.
Columnas
Nombre | Tipo | Referencias | Descripción |
---|---|---|---|
ColumnName | String | MultiSelectPickListAttributeMetaData.NombreColumna | |
Color | String | ||
ExternalValue | String | ||
HasChanged | String | ||
IsManaged | Boolean | ||
Label_LocalizedLabels | String | ||
Label_LocalizedLabels_HasChanged | String | ||
Label_LocalizedLabels_IsManaged | Boolean | ||
Label_LocalizedLabels_Label | String | ||
Label_LocalizedLabels_LanguageCode | Integer | ||
Label_LocalizedLabels_MetadataId | String | ||
Label_UserLocalizedLabel_HasChanged | String | ||
Label_UserLocalizedLabel_IsManaged | Boolean | ||
Label_UserLocalizedLabel_Label | String | ||
Label_UserLocalizedLabel_LanguageCode | Integer | ||
Label_UserLocalizedLabel_MetadataId | String | ||
Description_LocalizedLabels | String | ||
Description_LocalizedLabels_HasChanged | String | ||
Description_LocalizedLabels_IsManaged | Boolean | ||
Description_LocalizedLabels_Label | String | ||
Description_LocalizedLabels_LanguageCode | Integer | ||
Description_LocalizedLabels_MetadataId | String | ||
Description_UserLocalizedLabel_HasChanged | String | ||
Description_UserLocalizedLabel_IsManaged | Boolean | ||
Description_UserLocalizedLabel_Label | String | ||
Description_UserLocalizedLabel_LanguageCode | Integer | ||
Description_UserLocalizedLabel_MetadataId | String | ||
MetadataId | String | ||
ParentValues | String | ||
Value | Integer | ||
TableName | String |
PickListAttributeMetaData
Contiene los metadatos para una Lista de selección de tipo de atributo.
Columnas
Nombre | Tipo | Referencias | Descripción |
---|---|---|---|
ColumnName [KEY] | String | ||
MetadataId | String | ||
OptionSet_Description_LocalizedLabels | String | ||
OptionSet_Description_LocalizedLabels_HasChanged | String | ||
OptionSet_Description_LocalizedLabels_IsManaged | String | ||
OptionSet_Description_LocalizedLabels_Label | String | ||
OptionSet_Description_LocalizedLabels_LanguageCode | String | ||
OptionSet_Description_LocalizedLabels_MetadataId | String | ||
OptionSet_Description_UserLocalizedLabel_HasChanged | String | ||
OptionSet_Description_UserLocalizedLabel_IsManaged | Boolean | ||
OptionSet_Description_UserLocalizedLabel_Label | String | ||
OptionSet_Description_UserLocalizedLabel_LanguageCode | Integer | ||
OptionSet_Description_UserLocalizedLabel_MetadataId | String | ||
OptionSet_DisplayName_LocalizedLabels | String | ||
OptionSet_DisplayName.LocalizedLabels_HasChanged | String | ||
OptionSet_DisplayName.LocalizedLabels_IsManaged | String | ||
OptionSet_DisplayName.LocalizedLabels_Label | String | ||
OptionSet_DisplayName.LocalizedLabels_LanguageCode | String | ||
OptionSet_DisplayName.LocalizedLabels_MetadataId | String | ||
OptionSet_DisplayName.UserLocalizedLabel_HasChanged | String | ||
OptionSet_DisplayName.UserLocalizedLabel_IsManaged | Boolean | ||
OptionSet_DisplayName.UserLocalizedLabel_Label | String | ||
OptionSet_DisplayName.UserLocalizedLabel_LanguageCode | Integer | ||
OptionSet_DisplayName.UserLocalizedLabel_MetadataId | String | ||
OptionSet_ExternalTypeName | String | ||
OptionSet_HasChanged | String | ||
OptionSet_IntroducedVersion | String | ||
OptionSet_IsCustomizable_CanBeChanged | Boolean | ||
OptionSet_IsCustomizable_ManagedPropertyLogicalName | String | ||
OptionSet_IsCustomizable_Value | Boolean | ||
OptionSet_IsCustomOptionSet | Boolean | ||
OptionSet_IsGlobal | Boolean | ||
OptionSet_IsManaged | Boolean | ||
OptionSet_MetadataId | String | ||
OptionSet_Name | String | ||
OptionSet_OptionSetType | String | ||
OptionSet_ParentOptionSetName | String | ||
TableName | String |
PickListOptions
Contiene el valor de Opciones de PickListMetaData
Columnas
Nombre | Tipo | Referencias | Descripción |
---|---|---|---|
ColumnName | String | PickListAttributeMetaData.NombreColumna | |
Color | String | ||
ExternalValue | String | ||
HasChanged | String | ||
IsManaged | Boolean | ||
Label_LocalizedLabels | String | ||
LabelLocalizedLabels.HasChanged | String | ||
Label_LocalizedLabels_IsManaged | Boolean | ||
Label_LocalizedLabels_Label | String | ||
Label_LocalizedLabels_LanguageCode | Integer | ||
Label_LocalizedLabels_MetadataId | String | ||
Label_UserLocalizedLabel_HasChanged | String | ||
Label_UserLocalizedLabel_IsManaged | Boolean | ||
Label_UserLocalizedLabel_Label | String | ||
Label_UserLocalizedLabel_LanguageCode | Integer | ||
Label_UserLocalizedLabel_MetadataId | String | ||
Description.LocalizedLabels | String | ||
Description.UserLocalizedLabel | String | ||
MetadataId | String | ||
ParentValues | String | ||
Value | Integer | ||
TableName | String |
Procedimientos Almacenados
Procedimientos almacenados* están disponibles para complementar los datos disponibles del Modelo de datos. Puede ser necesario actualizar los datos disponibles desde una vista usando un procedimiento almacenado* porque los datos no proporcionan actualizaciones bidireccionales directas, similares a tablas. En estas situaciones, la recuperación de los datos se realiza utilizando la vista o tabla adecuada, mientras que la actualización se realiza llamando a un procedimiento almacenado. Procedimientos almacenados* toman una lista de parámetros y devuelven un conjunto de datos que contiene la colección de tuplas que constituyen la respuesta.
Conector Jitterbit para Procedimientos Almacenados de Dataverse
Nombre | Descripción |
---|---|
GetOAuthAccessToken | Obtiene el token de autenticación utilizado para autenticarse en el servicio. |
GetOAuthAuthorizationUrl | Obtiene una URL de autorización del origen de datos. La URL de autorización se puede utilizar para generar un verificador necesario para obtener el token de OAuth. |
RefreshOAuthAccessToken | Obtiene un OAuthAccessToken actualizado si se pasa un token para actualizar. |
Obtener Token de Acceso de OAuth
Obtiene el token de autenticación utilizado para autenticarse en el servicio.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
AuthMode | String | Falso | El tipo de autenticación que está intentando. Utilice App para una aplicación de Windows o Web para aplicaciones basadas en web. El valor predeterminado es APLICACIÓN. |
Verifier | String | Falso | Un verificador devuelto por el servicio que se debe ingresar para devolver el token de acceso. Solo se necesita cuando se utiliza el modo de autenticación web. Se obtiene navegando a la URL devuelta en GetOAuthAuthorizationUrl. |
CallbackUrl | String | Falso | La URL a la que se redirigirá al usuario después de autorizar su aplicación. |
State | String | Falso | Este campo indica cualquier estado que pueda ser de utilidad para su solicitud al recibir la respuesta. Su aplicación recibe el mismo valor que envió, ya que este parámetro realiza un viaje de ida y vuelta al servidor de autorización de Microsoft y viceversa. Los usos incluyen redirigir al usuario al recurso correcto en su sitio, usar nonces y mitigar la falsificación de solicitudes entre sitios. |
Prompt | String | Falso | El valor predeterminado es 'select_account', que solicita al usuario que seleccione la cuenta durante la autenticación. Establézcalo en 'Ninguno', para no solicitar, 'iniciar sesión' para obligar al usuario a ingresar sus credenciales o 'consentimiento' para activar el cuadro de diálogo de consentimiento de OAuth después de que el usuario inicie sesión, pidiéndole que otorgue permisos a la aplicación. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
OAuthAccessToken | String | El token de acceso de OAuth. |
\* | String | Otras salidas que puede devolver la fuente de datos. |
Obtener URL de Autorización de OAuth
Obtiene una URL de autorización del origen de datos. La URL de autorización se puede utilizar para generar un verificador necesario para obtener el token de OAuth.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
CallbackURL | String | Falso | La URL a la que se redirigirá al usuario después de autorizar su aplicación. |
State | String | Falso | Este campo indica cualquier estado que pueda ser de utilidad para su solicitud al recibir la respuesta. Su aplicación recibe el mismo valor que envió, ya que este parámetro realiza un viaje de ida y vuelta al servidor de autorización de Microsoft y viceversa. Los usos incluyen redirigir al usuario al recurso correcto en su sitio, usar nonces y mitigar la falsificación de solicitudes entre sitios. |
Prompt | String | Falso | El valor predeterminado es 'select_account', que solicita al usuario que seleccione la cuenta durante la autenticación. Establézcalo en 'Ninguno', para no solicitar, 'iniciar sesión' para obligar al usuario a ingresar sus credenciales o 'consentimiento' para activar el cuadro de diálogo de consentimiento de OAuth después de que el usuario inicie sesión, pidiéndole que otorgue permisos a la aplicación. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
Url | String | La URL de autorización que deberá abrirse para que el usuario autorice su aplicación. |
RefreshOAuthAccessToken
Obtiene un OAuthAccessToken actualizado si se pasa un token para actualizar.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
OAuthRefreshToken | String | Cierto | El token de actualización devuelto del intercambio de código de autorización original. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
OAuthAccessToken | String | El nuevo OAuthAccessToken devuelto por el servicio. |
OAuthRefreshToken | String | Un token que puede usarse para obtener un nuevo token de acceso. |
ExpiresIn | String | El tiempo de vida restante en el token de acceso. |
Modelo de Datos del Sistema
Puntos de Vista
Describe las vistas disponibles.
Procedimientos Almacenados
NOTE:
Los procedimientos almacenados no se admiten actualmente. Consulte la nota anterior para detalles.
Procedimientos almacenados son interfaces similares a funciones para Dataverse. Procedimientos almacenados* le permiten ejecutar operaciones en Dataverse, como recuperar el token de acceso de OAuth.
Procedimientos Almacenados
Procedimientos almacenados* están disponibles para complementar los datos disponibles del Modelo de datos. Puede ser necesario actualizar los datos disponibles desde una vista usando un procedimiento almacenado* porque los datos no proporcionan actualizaciones bidireccionales directas, similares a tablas. En estas situaciones, la recuperación de los datos se realiza utilizando la vista o tabla adecuada, mientras que la actualización se realiza llamando a un procedimiento almacenado. Procedimientos almacenados* toman una lista de parámetros y devuelven un conjunto de datos que contiene la colección de tuplas que constituyen la respuesta.
Conector Jitterbit para Procedimientos Almacenados de Dataverse
Nombre | Descripción |
---|---|
CreateAssociation | Crea una asociación entre dos entidades en función de una propiedad de navegación. |
GetOAuthAccessToken | Obtiene el token de autenticación utilizado para autenticarse en el servicio. |
GetOAuthAuthorizationUrl | Obtiene una URL de autorización del origen de datos. La URL de autorización se puede utilizar para generar un verificador necesario para obtener el token de OAuth. |
ListAssociations | Enumera las asociaciones para una tabla y una propiedad de navegación determinadas. |
ListNavigationProperties | Enumera las propiedades de navegación de una tabla determinada y las tablas a las que están asociadas. Las propiedades de navegación son utilizadas por los procedimientos almacenados de la Asociación. |
RefreshOAuthAccessToken | Obtiene un OAuthAccessToken actualizado si se pasa un token para actualizar. |
RemoveAssociation | Elimina una asociación entre dos entidades en función de una propiedad de navegación. |
CrearAsociación
Crea una asociación entre dos entidades en función de una propiedad de navegación.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
FromId | String | Cierto | El ID de la entidad para la que está creando una asociación. |
FromTable | String | Cierto | La tabla de donde proviene la entidad para la que está creando una asociación. Por ejemplo, si el FromId era de una tabla llamada Clientes, establezca este parámetro en: Clientes. |
ToNavigationProperty | String | Cierto | La propiedad de navegación en la que está creando una asociación. Se puede obtener de ListNavigationProperties. |
ToId | String | Cierto | El ID de la entidad de navegación. Esto vendrá de la tabla asociada con la propiedad de navegación. |
Obtener Token de Acceso de OAuth
Obtiene el token de autenticación utilizado para autenticarse en el servicio.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
AuthMode | String | Falso | El tipo de autenticación que está intentando. Utilice App para una aplicación de Windows o Web para aplicaciones basadas en web. El valor predeterminado es APLICACIÓN. |
Verifier | String | Falso | Un verificador devuelto por el servicio que se debe ingresar para devolver el token de acceso. Solo se necesita cuando se utiliza el modo de autenticación web. Se obtiene navegando a la URL devuelta en GetOAuthAuthorizationUrl. |
CallbackUrl | String | Falso | La URL a la que se redirigirá al usuario después de autorizar su aplicación. |
State | String | Falso | Este campo indica cualquier estado que pueda ser de utilidad para su solicitud al recibir la respuesta. Su aplicación recibe el mismo valor que envió, ya que este parámetro realiza un viaje de ida y vuelta al servidor de autorización de Microsoft y viceversa. Los usos incluyen redirigir al usuario al recurso correcto en su sitio, usar nonces y mitigar la falsificación de solicitudes entre sitios. |
Prompt | String | Falso | El valor predeterminado es 'select_account', que solicita al usuario que seleccione la cuenta durante la autenticación. Establézcalo en 'Ninguno', para no solicitar, 'iniciar sesión' para obligar al usuario a ingresar sus credenciales o 'consentimiento' para activar el cuadro de diálogo de consentimiento de OAuth después de que el usuario inicie sesión, pidiéndole que otorgue permisos a la aplicación. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
OAuthAccessToken | String | El token de acceso de OAuth. |
\* | String | Otras salidas que puede devolver la fuente de datos. |
Obtener URL de Autorización de OAuth
Obtiene una URL de autorización del origen de datos. La URL de autorización se puede utilizar para generar un verificador necesario para obtener el token de OAuth.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
CallbackURL | String | Falso | La URL a la que se redirigirá al usuario después de autorizar su aplicación. |
State | String | Falso | Este campo indica cualquier estado que pueda ser de utilidad para su solicitud al recibir la respuesta. Su aplicación recibe el mismo valor que envió, ya que este parámetro realiza un viaje de ida y vuelta al servidor de autorización de Microsoft y viceversa. Los usos incluyen redirigir al usuario al recurso correcto en su sitio, usar nonces y mitigar la falsificación de solicitudes entre sitios. |
Prompt | String | Falso | El valor predeterminado es 'select_account', que solicita al usuario que seleccione la cuenta durante la autenticación. Establézcalo en 'Ninguno', para no solicitar, 'iniciar sesión' para obligar al usuario a ingresar sus credenciales o 'consentimiento' para activar el cuadro de diálogo de consentimiento de OAuth después de que el usuario inicie sesión, pidiéndole que otorgue permisos a la aplicación. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
Url | String | La URL de autorización que deberá abrirse para que el usuario autorice su aplicación. |
Asociaciones de Listas
Enumera las asociaciones para una tabla y una propiedad de navegación determinadas.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
FromId | String | Cierto | El ID de la entidad para la que está enumerando asociaciones. |
FromTable | String | Cierto | La tabla de donde proviene la entidad para la que está enumerando las entidades. Por ejemplo, si el FromId era de una tabla llamada Clientes, establezca este parámetro en: Clientes. |
NavigationProperty | String | Cierto | La propiedad de navegación para la que está enumerando las asignaciones. Se puede obtener de ListNavigationProperties. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
Uri | String | La URL vinculada. |
ListNavigationPropertiesListNavigationProperties
Enumera las propiedades de navegación de una tabla determinada y las tablas a las que están asociadas. Las propiedades de navegación son utilizadas por los procedimientos almacenados de la Asociación.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
TableName | String | Cierto | El nombre de la tabla para la lista de propiedades de navegación. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
Name | String | El nombre de la propiedad de navegación. |
AssociatedTable | String | La tabla a la que está asociada la propiedad de navegación. |
RefreshOAuthAccessToken
Obtiene un OAuthAccessToken actualizado si se pasa un token para actualizar.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
OAuthRefreshToken | String | Cierto | El token de actualización devuelto del intercambio de código de autorización original. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
OAuthAccessToken | String | El nuevo OAuthAccessToken devuelto por el servicio. |
OAuthRefreshToken | String | Un token que puede usarse para obtener un nuevo token de acceso. |
ExpiresIn | String | El tiempo de vida restante en el token de acceso. |
QuitarAsociación
Elimina una asociación entre dos entidades en función de una propiedad de navegación.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
FromId | String | Cierto | El ID de la entidad para la que está eliminando una asociación. |
FromTable | String | Cierto | La tabla de donde proviene la entidad para la que está eliminando una asociación. Por ejemplo, si el FromId era de una tabla llamada Clientes, establezca este parámetro en: Clientes. |
ToNavigationProperty | String | Cierto | La propiedad de navegación en la que está eliminando una asociación. Se puede obtener de ListNavigationProperties. |
ToId | String | Cierto | El ID de la entidad de navegación. Esto vendrá de la tabla asociada con la propiedad de navegación. |
Tablas del Sistema
Puede consultar las tablas del sistema que se describen en esta sección para acceder a la información del esquema, la información sobre la funcionalidad del origen de datos y las estadísticas de operación lote.
Tablas de Esquema
Las siguientes tablas devuelven metadatos de la base de datos para Dataverse:
- sys_catalogs: enumera las bases de datos disponibles.
- sys_schemas: enumera los esquemas disponibles.
- sys_tablas: enumera las tablas y vistas disponibles.
- sys_tablecolumns: Describe las columnas de las tablas y vistas disponibles.
- procedimientos_sys: describe los procedimientos almacenados disponibles.
- parámetros_procedimiento_sys: Describe procedimiento almacenado* parámetros.
- sys_keycolumns: describe las claves principal y externa.
- índices_sys: Describe los índices disponibles.
Tablas de Fuentes de Datos
Las siguientes tablas devuelven información sobre cómo conectarse y consultar la fuente de datos:
- sys_connection_props: Devuelve información sobre las propiedades de conexión disponibles.
- sys_sqlinfo: describe las consultas SELECT que el conector puede descargar al origen de datos.
Tablas de Información de Consultas
La siguiente tabla devuelve estadísticas de consultar para consultas de modificación de datos, incluidas las operaciones lote:
- identidad_sys: devuelve información sobre operaciones lote o actualizaciones individuales.
Sys_catalogs
Enumera las bases de datos disponibles.
La siguiente consultar recupera todas las bases de datos determinadas por la cadena de conexión:
SELECT * FROM sys_catalogs
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos. |
Sys_schemas
Enumera los esquemas disponibles.
La siguiente consultar recupera todos los esquemas disponibles:
SELECT * FROM sys_schemas
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos. |
SchemaName | String | El nombre del esquema. |
Sys_tables
Enumera las tablas disponibles.
La siguiente consultar recupera las tablas y vistas disponibles:
SELECT * FROM sys_tables
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | La base de datos que contiene la tabla o vista. |
SchemaName | String | El esquema que contiene la tabla o vista. |
TableName | String | El nombre de la tabla o vista. |
TableType | String | El tipo de tabla (tabla o vista). |
Description | String | Una descripción de la tabla o vista. |
IsUpdateable | Boolean | Si la tabla se puede actualizar. |
Sys_tablecolumns
Describe las columnas de las tablas y vistas disponibles.
La siguiente consultar devuelve las columnas y los tipos de datos de la tabla Cuentas:
SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Accounts'
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la tabla o vista. |
SchemaName | String | El esquema que contiene la tabla o vista. |
TableName | String | El nombre de la tabla o vista que contiene la columna. |
ColumnName | String | El nombre de la columna. |
DataTypeName | String | El nombre del tipo de datos. |
DataType | Int32 | Un número entero que indica el tipo de datos. Este valor se determina en tiempo de ejecución en función del ambiente. |
Length | Int32 | El tamaño de almacenamiento de la columna. |
DisplaySize | Int32 | El ancho máximo normal de la columna designada en caracteres. |
NumericPrecision | Int32 | El número máximo de dígitos en datos numéricos. La longitud de la columna en caracteres para datos de carácter y fecha y hora. |
NumericScale | Int32 | La escala de columna o número de dígitos a la derecha del punto decimal. |
IsNullable | Boolean | Si la columna puede contener nulo. |
Description | String | Una breve descripción de la columna. |
Ordinal | Int32 | El número de secuencia de la columna. |
IsAutoIncrement | String | Si el valor de la columna se asigna en incrementos fijos. |
IsGeneratedColumn | String | Si se genera la columna. |
IsHidden | Boolean | Si la columna está oculta. |
IsArray | Boolean | Si la columna es una matriz. |
Sys_procedimientos
Enumera los procedimientos almacenados disponibles.
La siguiente consultar recupera los procedimientos almacenados disponibles:
SELECT * FROM sys_procedures
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | La base de datos que contiene el procedimiento almacenado. |
SchemaName | String | El esquema que contiene el procedimiento almacenado. |
ProcedureName | String | El nombre del procedimiento almacenado. |
Description | String | Una descripción del procedimiento almacenado. |
ProcedureType | String | El tipo de procedimiento, como PROCEDIMIENTO o FUNCIÓN. |
Sys_procedureparameters
Describe procedimiento almacenado* parámetros.
La siguiente consultar devuelve información sobre todos los parámetros de entrada para el procedimiento almacenado GetOAuthAccessToken:
SELECT * FROM sys_procedureparameters WHERE ProcedureName='GetOAuthAccessToken' AND Direction=1 OR Direction=2
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene el procedimiento almacenado. |
SchemaName | String | El nombre del esquema que contiene el procedimiento almacenado. |
ProcedureName | String | El nombre del procedimiento almacenado* que contiene el parámetro. |
ColumnName | String | El nombre del procedimiento almacenado* parámetro. |
Direction | Int32 | Un número entero correspondiente al tipo de parámetro: entrada (1), entrada/salida (2) o salida (4). Los parámetros de tipo de entrada/salida pueden ser tanto parámetros de entrada como de salida. |
DataTypeName | String | El nombre del tipo de datos. |
DataType | Int32 | Un número entero que indica el tipo de datos. Este valor se determina en tiempo de ejecución en función del ambiente. |
Length | Int32 | El número de caracteres permitidos para los datos de caracteres. El número de dígitos permitidos para datos numéricos. |
NumericPrecision | Int32 | La máxima precisión para datos numéricos. La longitud de la columna en caracteres para datos de carácter y fecha y hora. |
NumericScale | Int32 | El número de dígitos a la derecha del punto decimal en datos numéricos. |
IsNullable | Boolean | Si el parámetro puede contener nulo. |
IsRequired | Boolean | Si el parámetro es necesario para la ejecución del procedimiento. |
IsArray | Boolean | Si el parámetro es una matriz. |
Description | String | La descripción del parámetro. |
Ordinal | Int32 | El índice del parámetro. |
Sys_keycolumns
Describe las claves primarias y foráneas. La siguiente consultar recupera la clave principal de la tabla Cuentas:
SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Accounts'
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la clave. |
SchemaName | String | El nombre del esquema que contiene la clave. |
TableName | String | El nombre de la tabla que contiene la clave. |
ColumnName | String | El nombre de la columna clave. |
IsKey | Boolean | Si la columna es una clave principal en la tabla a la que se hace referencia en el campo TableName. |
IsForeignKey | Boolean | Si la columna es una clave externa a la que se hace referencia en el campo TableName. |
PrimaryKeyName | String | El nombre de la clave principal. |
ForeignKeyName | String | El nombre de la clave foránea. |
ReferencedCatalogName | String | La base de datos que contiene la clave principal. |
ReferencedSchemaName | String | El esquema que contiene la clave principal. |
ReferencedTableName | String | La tabla que contiene la clave principal. |
ReferencedColumnName | String | El nombre de la columna de la clave principal. |
Sys_foreignkeys
Describe las claves foráneas. La siguiente consultar recupera todas las claves foráneas que hacen referencia a otras tablas:
SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la clave. |
SchemaName | String | El nombre del esquema que contiene la clave. |
TableName | String | El nombre de la tabla que contiene la clave. |
ColumnName | String | El nombre de la columna clave. |
PrimaryKeyName | String | El nombre de la clave principal. |
ForeignKeyName | String | El nombre de la clave foránea. |
ReferencedCatalogName | String | La base de datos que contiene la clave principal. |
ReferencedSchemaName | String | El esquema que contiene la clave principal. |
ReferencedTableName | String | La tabla que contiene la clave principal. |
ReferencedColumnName | String | El nombre de la columna de la clave principal. |
ForeignKeyType | String | Designa si la clave externa es una clave de importación (apunta a otras tablas) o de exportación (hace referencia desde otras tablas). |
Sys_indexes
Describe los índices disponibles. Al filtrar en los índices, puede escribir consultas más selectivas con tiempos de respuesta de consultar más rápidos.
La siguiente consultar recupera todos los índices que no son claves principales:
SELECT * FROM sys_indexes WHERE IsPrimary='false'
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene el índice. |
SchemaName | String | El nombre del esquema que contiene el índice. |
TableName | String | El nombre de la tabla que contiene el índice. |
IndexName | String | El nombre del índice. |
ColumnName | String | El nombre de la columna asociada con el índice. |
IsUnique | Boolean | True si el índice es único. Falso en caso contrario. |
IsPrimary | Boolean | True si el índice es una clave principal. Falso en caso contrario. |
Type | Int16 | Un valor entero correspondiente al tipo de índice: estadística (0), agrupado (1), hash (2) u otro (3). |
SortOrder | String | El orden de clasificación: A para ascender o D para descender. |
OrdinalPosition | Int16 | El número de secuencia de la columna en el índice. |
Sys_connection_props
Devuelve información sobre las propiedades de conexión disponibles y las establecidas en la cadena de conexión.
Al consultar esta tabla, se debe usar la cadena de conexión de configuración:
jdbc:cdata:cds:config:
Esta cadena de conexión le permite consultar esta tabla sin una conexión válida.
La siguiente consultar recupera todas las propiedades de conexión que se han establecido en la cadena de conexión o se han establecido a través de un valor predeterminado:
SELECT * FROM sys_connection_props WHERE Value <> ''
Columnas
Nombre | Tipo | Descripción |
---|---|---|
Name | String | El nombre de la propiedad de conexión. |
ShortDescription | String | Una breve descripción. |
Type | String | El tipo de datos de la propiedad de conexión. |
Default | String | El valor predeterminado si no se establece uno explícitamente. |
Values | String | Una lista separada por comas de valores posibles. Se lanza un error de validación si se especifica otro valor. |
Value | String | El valor que establezca o un valor predeterminado preconfigurado. |
Required | Boolean | Si la propiedad es necesaria para conectarse. |
Category | String | La categoría de la propiedad de conexión. |
IsSessionProperty | String | Si la propiedad es una propiedad de sesión, utilizada para guardar información sobre la conexión actual. |
Sensitivity | String | El nivel de sensibilidad de la propiedad. Esto informa si la propiedad está ofuscada en los formularios de registro y autenticación. |
PropertyName | String | Una forma truncada en mayúsculas y minúsculas del nombre de la propiedad de conexión. |
Ordinal | Int32 | El índice del parámetro. |
CatOrdinal | Int32 | El índice de la categoría de parámetro. |
Hierarchy | String | Muestra las propiedades dependientes asociadas que deben configurarse junto con esta. |
Visible | Boolean | Informa si la propiedad está visible en la interfaz de usuario de la conexión. |
ETC | String | Diversa información miscelánea sobre la propiedad. |
Sys_sqlinfo
Describe el procesamiento de consultar SELECT que el conector puede descargar al origen de datos.
Procesamiento Colaborativo de Consultas
Al trabajar con fuentes de datos que no admiten SQL-92, puede consultar la vista sys_sqlinfo para determinar las capacidades de consultar de las APIs subyacentes, expresadas en sintaxis SQL. El conector descarga la mayor cantidad posible del procesamiento de sentencias SELECT al servidor y luego procesa el resto de la consultar en la memoria.
Descubrimiento de las Capacidades SELECT de la Fuente de Datos
A continuación se muestra un conjunto de datos de ejemplo de las capacidades de SQL. El siguiente conjunto de resultados indica la funcionalidad SELECT que el conector puede descargar en el origen de datos o en el lado del cliente del proceso. Su fuente de datos puede admitir sintaxis SQL adicional. Algunos aspectos de la funcionalidad SELECT se devuelven en una lista separada por comas si es compatible; de lo contrario, la columna contiene NO.
Nombre | Descripción | Valores posibles |
---|---|---|
AGGREGATE_FUNCTIONS | Funciones de agregación admitidas. | AVG , COUNT , MAX , MIN , SUM , DISTINCT |
COUNT | Si se admite la función COUNT. | YES , NO |
IDENTIFIER_QUOTE_OPEN_CHAR | El carácter de apertura utilizado para escapar de un identificador. | [ |
IDENTIFIER_QUOTE_CLOSE_CHAR | El carácter de cierre utilizado para escapar de un identificador. | ] |
SUPPORTED_OPERATORS | Una lista de operadores de SQL admitidos. | = , > , < , >= , <= , <> , != , LIKE , NOT LIKE , IN , NOT IN , IS NULL , IS NOT NULL , AND , OR |
GROUP_BY | Si se admite GROUP BY y, de ser así, el grado de compatibilidad. | NO , NO_RELATION , EQUALS_SELECT , SQL_GB_COLLATE |
STRING_FUNCTIONS | Funciones de cadena admitidas. | LENGTH , CHAR , LOCATE , REPLACE , SUBSTRING , RTRIM , LTRIM , RIGHT , LEFT , UCASE , SPACE , SOUNDEX , LCASE , CONCAT , ASCII , REPEAT , OCTET , BIT , POSITION , INSERT , TRIM , UPPER , REGEXP , LOWER , DIFFERENCE , CHARACTER , SUBSTR , STR , REVERSE , PLAN , UUIDTOSTR , TRANSLATE , TRAILING , TO , STUFF , STRTOUUID , STRING , SPLIT , SORTKEY , SIMILAR , REPLICATE , PATINDEX , LPAD , LEN , LEADING , KEY , INSTR , INSERTSTR , HTML , GRAPHICAL , CONVERT , COLLATION , CHARINDEX , BYTE |
NUMERIC_FUNCTIONS | Funciones numéricas compatibles. | ABS , ACOS , ASIN , ATAN , ATAN2 , CEILING , COS , COT , EXP , FLOOR , LOG , MOD , SIGN , SIN , SQRT , TAN , PI , RAND , DEGREES , LOG10 , POWER , RADIANS , ROUND , TRUNCATE |
TIMEDATE_FUNCTIONS | Funciones de fecha/hora admitidas. | NOW , CURDATE , DAYOFMONTH , DAYOFWEEK , DAYOFYEAR , MONTH , QUARTER , WEEK , YEAR , CURTIME , HOUR , MINUTE , SECOND , TIMESTAMPADD , TIMESTAMPDIFF , DAYNAME , MONTHNAME , CURRENT_DATE , CURRENT_TIME , CURRENT_TIMESTAMP , EXTRACT |
REPLICATION_SKIP_TABLES | Indica tablas omitidas durante la replicación. | |
REPLICATION_TIMECHECK_COLUMNS | Una matriz de cadenas que contiene una lista de columnas que se usarán para verificar (en el orden dado) para usar como una columna modificada durante la replicación. | |
IDENTIFIER_PATTERN | Valor de cadena que indica qué cadena es válida para un identificador. | |
SUPPORT_TRANSACTION | Indica si el proveedor admite transacciones como compromiso y reversión. | YES , NO |
DIALECT | Indica el dialecto SQL a usar. | |
KEY_PROPERTIES | Indica las propiedades que identifican la base de datos uniforme. | |
SUPPORTS_MULTIPLE_SCHEMAS | Indica si pueden existir varios esquemas para el proveedor. | YES , NO |
SUPPORTS_MULTIPLE_CATALOGS | Indica si pueden existir varios catálogos para el proveedor. | YES , NO |
DATASYNCVERSION | La versión de sincronización de datos necesaria para acceder a este controlador. | Standard , Starter , Professional , Enterprise |
DATASYNCCATEGORY | La categoría Sincronización de datos de este controlador. | Source , Destination , Cloud Destination |
SUPPORTSENHANCEDSQL | Si se admite la funcionalidad de SQL mejorada más allá de lo que ofrece la API. | TRUE , FALSE |
SUPPORTS_BATCH_OPERATIONS | Si se admiten las operaciones lote. | YES , NO |
SQL_CAP | Todas las funciones de SQL admitidas para este controlador. | SELECT , INSERT , DELETE , UPDATE , TRANSACTIONS , ORDERBY , OAUTH , ASSIGNEDID , LIMIT , LIKE , BULKINSERT , COUNT , BULKDELETE , BULKUPDATE , GROUPBY , HAVING , AGGS , OFFSET , REPLICATE , COUNTDISTINCT , JOINS , DROP , CREATE , DISTINCT , INNERJOINS , SUBQUERIES , ALTER , MULTIPLESCHEMAS , GROUPBYNORELATION , OUTERJOINS , UNIONALL , UNION , UPSERT , GETDELETED , CROSSJOINS , GROUPBYCOLLATE , MULTIPLECATS , FULLOUTERJOIN , MERGE , JSONEXTRACT , BULKUPSERT , SUM , SUBQUERIESFULL , MIN , MAX , JOINSFULL , XMLEXTRACT , AVG , MULTISTATEMENTS , FOREIGNKEYS , CASE , LEFTJOINS , COMMAJOINS , WITH , LITERALS , RENAME , NESTEDTABLES , EXECUTE , BATCH , BASIC , INDEX |
PREFERRED_CACHE_OPTIONS | Un valor de cadena especifica las cacheOptions preferidas. | |
ENABLE_EF_ADVANCED_QUERY | Indica si el controlador admite directamente consultas avanzadas provenientes de Entity Framework. De lo contrario, las consultas se manejarán del lado del cliente. | YES , NO |
PSEUDO_COLUMNS | Una matriz de cadenas que indica las pseudocolumnas disponibles. | |
MERGE_ALWAYS | Si el valor es verdadero, el modo de combinación se ejecuta a la fuerza en la sincronización de datos. | TRUE , FALSE |
REPLICATION_MIN_DATE_QUERY | Una consultar de selección para devolver la fecha y hora de inicio de la réplica. | |
REPLICATION_MIN_FUNCTION | Permite que un proveedor especifique el nombre de la fórmula que se usará para ejecutar un min del lado del servidor. | |
REPLICATION_START_DATE | Permite que un proveedor especifique una fecha de inicio de réplica. | |
REPLICATION_MAX_DATE_QUERY | Una consultar de selección para devolver la fecha y hora de finalización de la réplica. | |
REPLICATION_MAX_FUNCTION | Permite que un proveedor especifique el nombre de la fórmula que se usará para ejecutar un máx. del lado del servidor. | |
IGNORE_INTERVALS_ON_INITIAL_REPLICATE | Una lista de tablas que omitirán dividir la réplica en fragmentos en la réplica inicial. | |
CHECKCACHE_USE_PARENTID | Indica si la instrucción CheckCache debe realizarse en la columna de clave principal. | TRUE , FALSE |
CREATE_SCHEMA_PROCEDURES | Indica procedimientos almacenados* que se puede utilizar para generar archivos de esquema. |
La siguiente consultar recupera los operadores que se pueden usar en la cláusula WHERE:
SELECT * FROM sys_sqlinfo WHERE Name='SUPPORTED_OPERATORS'
Tenga en cuenta que las tablas individuales pueden tener diferentes limitaciones o requisitos en la cláusula WHERE; consulte el Modelo de datos para obtener más información.
Columnas
Nombre | Tipo | Descripción |
---|---|---|
NAME | String | Un componente de la sintaxis SQL o una capacidad que se puede procesar en el servidor. |
VALUE | String | Detalles sobre el SQL o la sintaxis de SQL admitidos. |
Sys_identidad
Devuelve información sobre los intentos de modificación.
La siguiente consultar recupera los Id. de las filas modificadas en una operación lote:
SELECT * FROM sys_identity
Columnas
Nombre | Tipo | Descripción |
---|---|---|
Id | String | El ID generado por la base de datos devuelto de una operación de modificación de datos. |
Batch | String | Un identificador para el lote. 1 para una sola operación. |
Operation | String | El resultado de la operación en el lote: INSERTADO, ACTUALIZADO o ELIMINADO. |
Message | String | ÉXITO o un mensaje de error si falla la actualización en el lote. |
Asignación de Tipos de Datos
Asignaciones de Tipos de Datos
El conector asigna tipos del origen de datos al tipo de datos correspondiente disponible en el esquema. La siguiente tabla documenta estas asignaciones.
Dataverso (OData V4) | Esquema |
---|---|
Edm.Binary | binario |
Edm.Boolean | bool |
Edm.Date | fecha y hora |
Edm.DateTimeOffset | fecha y hora |
Edm.Decimal | decimal |
Edm.Double | doble |
Edm.Guid | guía |
Edm.Int32 | entero |
Edm.String | cadena |
Edm.TimeOfDay | tiempo |
Propiedades de Configuraciones Avanzadas
Las propiedades de configuraciones avanzadas son las diversas opciones que se pueden utilizar para establecer una conexión. Esta sección proporciona una lista completa de las opciones que puede configurar. Haga clic en los enlaces para obtener más detalles.
Autenticación
Propiedad | Descripción |
---|---|
AuthScheme | El tipo de autenticación que se usará al conectarse a Microsoft Dataverse. |
OrganizationURL | La URL de su organización de Dynamics 365. Por ejemplo, https://abc123.crm.dynamics.com/ . |
ApiVersion | La versión de la API que se está utilizando. Esto se puede especificar para acceder a una nueva versión de la API una vez que se lance. |
Autenticación de Azure
Propiedad | Descripción |
---|---|
AzureTenant | El inquilino de Microsoft Online que se usa para acceder a los datos. Si no se especifica, se utilizará su tentant predeterminado. |
AzureEnvironment | El ambiente de Azure que se usará al establecer una conexión. |
OAuth
Propiedad | Descripción |
---|---|
InitiateOAuth | Establezca esta propiedad para iniciar el proceso para obtener o actualizar el token de acceso de OAuth cuando se conecte. |
OAuthClientId | El ID de cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth. |
OAuthClientSecret | El secreto del cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth. |
SSL
Propiedad | Descripción |
---|---|
SSLServerCert | El certificado que se aceptará del servidor al conectarse mediante TLS/SSL. |
Inicio sesión
Propiedad | Descripción |
---|---|
Logfile | Una ruta de archivo que designa el nombre y la ubicación del archivo de registro. |
Verbosity | El nivel de detalle que determina la cantidad de detalles incluidos en el archivo de registro. |
LogModules | Módulos principales que se incluirán en el archivo de registro. |
MaxLogFileSize | Una cadena que especifica el tamaño máximo en bytes para un archivo de registro (por ejemplo, 10 MB). |
MaxLogFileCount | Una cadena que especifica el recuento máximo de archivos de registro. |
Esquema
Propiedad | Descripción |
---|---|
Location | Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados. |
BrowsableSchemas | Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA, TablaB, TablaC. |
Views | Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA, VistaB, VistaC. |
Misceláneas
Propiedad | Descripción |
---|---|
AllowDuplicateRecords | Indica si el controlador debe comprobar las reglas de detección de duplicados configuradas. |
IncludeFormattedValues | Indica si se deben exponer las columnas que contienen valores con formato. |
IncludeNavigationProperties | Un valor booleano que indica si las propiedades de navegación deben incluirse en la lista de columnas. |
MaxRows | Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño. |
Other | Estas propiedades ocultas se usan solo en casos de uso específicos. |
Pagesize | El número máximo de resultados que se devolverán por página desde Microsoft Dataverse. |
PseudoColumns | Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla. |
Timeout | El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación. |
Autenticación
Esta sección proporciona una lista completa de las propiedades de autenticación que puede configurar.
Propiedad | Descripción |
---|---|
AuthScheme | El tipo de autenticación que se usará al conectarse a Dataverse. |
OrganizationURL | La URL de sus datos de Dataverse. Por ejemplo, https://abc123.crm.dynamics.com/ . |
Tenant | El inquilino de Microsoft que se usa para acceder a los datos. Si no se especifica, se utilizará su tentant predeterminado. |
AuthScheme
El tipo de autenticación que se usará al conectarse a Microsoft Dataverse. Actualmente, solo AzureServicePrincipal
esta apoyado
Valores Posibles
AzureServicePrincipal
Tipo de Datos
string
Valor por Defecto
"AzureServicePrincipal"
Observaciones
- AzureServicePrincipal: configure esto para autenticarse como una entidad de servicio de Azure.
URL de la Organización
La URL de sus datos de Dataverse. Por ejemplo, https://abc123.crm.dynamics.com/
.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
La URL que utiliza para iniciar sesión en sus datos de Dataverse. Por ejemplo, https://abc123.crm.dynamics.com/
. Esto también puede ser conocido como el recurso.
Arrendatario
El inquilino de Microsoft que se usa para acceder a los datos. Si no se especifica, se utilizará su tentant predeterminado.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
El inquilino de Microsoft que se usa para acceder a los datos. Por ejemplo, contoso.onmicrosoft.com. Alternativamente, especifique la identificación del arrendatario. Este valor es el ID de directorio en Azure Portal > Active Directory de Azure > Propiedades.
Autenticación de Azure
Esta sección proporciona una lista completa de las propiedades de autenticación de Azure que puede configurar.
Propiedad | Descripción |
---|---|
AzureTenant | El inquilino de Microsoft Online que se usa para acceder a los datos. Si no se especifica, se utilizará su tentant predeterminado. |
AzureEnvironment | El ambiente de Azure que se usará al establecer una conexión. |
AzureInquilino
El inquilino de Microsoft Online que se usa para acceder a los datos. Si no se especifica, se utilizará su tentant predeterminado.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
El inquilino de Microsoft Online que se usa para acceder a los datos. Por ejemplo, "ejemplo.onmicrosoft.com". Como alternativa, especifique el ID de arrendatario. Este valor es el ID de directorio en Azure Portal > Active Directory de Azure > Propiedades.
Por lo general, no es necesario especificar el arrendatario. Esto puede ser determinado automáticamente por Microsoft. Sin embargo, puede fallar en el caso de que el usuario pertenezca a varios inquilinos. Por ejemplo, si un administrador del dominio A invita a un usuario del dominio B a ser un usuario invitado. El usuario ahora pertenecerá a ambos inquilinos. Es una buena práctica especificar el inquilino, aunque en general las cosas normalmente deberían funcionar sin tener que especificarlo.
AzureAmbiente
El ambiente de Azure que se usará al establecer una conexión.
Valores Posibles
GLOBAL
, CHINA
, GERMANY
, USGOVT
Tipo de Datos
string
Valor por Defecto
"GLOBAL"
Observaciones
En la mayoría de los casos, funcionará dejar el ambiente establecido en global. Sin embargo, si su cuenta de Azure se ha agregado a un ambiente diferente, el AzureEnvironment
se puede utilizar para especificar qué ambiente.
OAuth
Esta sección proporciona una lista completa de las propiedades de OAuth que puede configurar.
Propiedad | Descripción |
---|---|
InitiateOAuth | Establezca esta propiedad para iniciar el proceso para obtener o actualizar el token de acceso de OAuth cuando se conecte. |
OAuthClientId | El ID de cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth. |
OAuthClientSecret | El secreto del cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth. |
Iniciar OAuth
Establezca esta propiedad para iniciar el proceso para obtener o actualizar el token de acceso de OAuth cuando se conecte.
Valores Posibles
GETANDREFRESH
Tipo de Datos
string
Valor por Defecto
"GETANDREFRESH"
Observaciones
Se admite la siguiente opción:
GETANDREFRESH
: indica que el conector manejará todo el flujo de OAuth. Si no existe ningún token actualmente, se obtendrá. Si existe un token, se actualizará cuando corresponda.
OAuthClientId
El ID de cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Como parte del registro de una aplicación OAuth, recibirá el OAuthClientId
valor, a veces también llamado clave de consumidor, y un secreto de cliente, el OAuthClientSecret.
OAuthClientSecretOAuthClientSecret
El secreto del cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Como parte del registro de una aplicación OAuth, recibirá el secreto del cliente, también llamado secreto del consumidor. Establezca el secreto del cliente como OAuthClientSecret
propiedad.
También recibirá un OAuthClientId, también denominada clave de consumidor.
Token de Acceso de OAuth
El token de acceso para conectarse mediante OAuth.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
El OAuthAccessToken
la propiedad se usa para conectarse usando OAuth. El OAuthAccessToken
se recupera del servidor OAuth como parte del proceso de autenticación. Tiene un tiempo de espera dependiente del servidor y se puede reutilizar entre solicitudes.
El token de acceso se utiliza en lugar de su nombre de usuario y contraseña. El token de acceso protege sus credenciales manteniéndolas en el servidor.
URL de Devolución de Llamada
La URL de devolución de llamada de OAuth a la que volver cuando se autentica. Este valor debe coincidir con la URL de devolución de llamada que especifica en la configuración de su aplicación.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Durante el proceso de autenticación, el servidor de autorización de OAuth redirige al usuario a esta URL. Este valor debe coincidir con la URL de devolución de llamada que especifica en la configuración de su aplicación.
OAuthGrantType
El tipo de concesión para el flujo de OAuth.
Valores Posibles
CODE
, CLIENT
, PASSWORD
Tipo de Datos
string
Valor por Defecto
"CLIENT"
Observaciones
El tipo de concesión para el flujo de OAuth. Las siguientes opciones están disponibles: CÓDIGO, CLIENTE, CONTRASEÑA
OAuthVerifier
El código verificador devuelto desde la URL de autorización de OAuth.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
El código verificador devuelto desde la URL de autorización de OAuth. Esto se puede usar en sistemas en los que no se puede iniciar un navegador, como los sistemas sin cabeza.
Autenticación en Máquinas Sin Cabeza
Ver para obtener el OAuthVerifier
valor.
Establezca OAuthSettingsLocation junto con OAuthVerifier
. Cuando se conecta, el conector intercambia el OAuthVerifier
para los tokens de autenticación de OAuth y los guarda, encriptados, en el archivo especificado. Establecer Iniciar OAuth para GETANDREFRESH automatizar el intercambio.
Una vez que se haya generado el archivo de configuración de OAuth, puede eliminar OAuthVerifier
desde las propiedades de conexión y conéctese con OAuthSettingsLocation colocar.
Para actualizar automáticamente los valores del token de OAuth, establezca OAuthSettingsLocation y además configure InitiateOAuth refrescar.
OAuthRefreshToken
El token de actualización de OAuth para el token de acceso de OAuth correspondiente.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
El OAuthRefreshToken
la propiedad se usa para actualizar el OAuthAccessToken al usar la autenticación OAuth.
OAuthExpiresIn
La vida útil en segundos del AccessToken de OAuth.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Empareje con OAuthTokenTimestamp para determinar cuándo caducará el AccessToken.
OAuthTokenTimestamp
La marca de tiempo de la época de Unix en milisegundos cuando se creó el token de acceso actual.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Emparéjese con OAuthExpiresIn para determinar cuándo expirará AccessToken.
SSL
Esta sección proporciona una lista completa de las propiedades SSL que puede configurar.
Propiedad | Descripción |
---|---|
SSLServerCert | El certificado que se aceptará del servidor al conectarse mediante TLS/SSL. |
SSLServerCert
El certificado que se aceptará del servidor al conectarse mediante TLS/SSL.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Si usa una conexión TLS/SSL, esta propiedad se puede usar para especificar el certificado TLS/SSL que se aceptará del servidor. Se rechaza cualquier otro certificado que no sea de confianza para la máquina.
Esta propiedad puede tomar las siguientes formas:
Descripción | Ejemplo |
---|---|
Un certificado PEM completo (ejemplo abreviado por brevedad) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
Una ruta a un archivo local que contiene el certificado | C:\cert.cer |
La clave pública (ejemplo abreviado por brevedad) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
La huella digital MD5 (los valores hexadecimales también pueden estar separados por espacios o dos puntos) | ecadbdda5a1529c58a1e9e09828d70e4 |
La huella digital SHA1 (los valores hexadecimales también pueden estar separados por espacios o dos puntos) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
Si no se especifica, se acepta cualquier certificado en el que confíe la máquina.
La máquina valida los certificados como confiables según el almacén de confianza del sistema. El almacén de confianza utilizado es el valor 'javax.net.ssl.trustStore' especificado para el sistema. Si no se especifica ningún valor para esta propiedad, se utiliza el almacén de confianza predeterminado de Java (por ejemplo, JAVA_HOME\lib\security\cacerts).
Use '*' para indicar que acepta todos los certificados. Tenga en cuenta que esto no se recomienda debido a problemas de seguridad.
Esquema
Esta sección proporciona una lista completa de propiedades de esquema que puede configurar.
Propiedad | Descripción |
---|---|
Location | Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados. |
BrowsableSchemas | Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA, TablaB, TablaC. |
Views | Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA, VistaB, VistaC. |
Schema | Esquema para usar Sistema, Entidades. |
Ubicación
Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados.
Tipo de Datos
string
Valor por Defecto
"%APPDATA%\\\CDS Data Provider\\Schema"
Observaciones
La ruta a un directorio que contiene los archivos de esquema para el conector (archivos .rsd para tablas y vistas, archivos .rsb para procedimientos almacenados). La ubicación de la carpeta puede ser una ruta relativa desde la ubicación del ejecutable. El Location
La propiedad solo es necesaria si desea personalizar las definiciones (por ejemplo, cambiar el nombre de una columna, ignorar una columna, etc.) o ampliar el modelo de datos con nuevas tablas, vistas o procedimientos almacenados.
Nota: Dado que este conector admite varios esquemas, la estructura de los archivos de esquema personalizados de Dataverse es la siguiente:
- Cada esquema recibe una carpeta correspondiente a ese nombre de esquema.
- Estas carpetas de esquema están contenidas en una carpeta principal.
- El
parent folder
debe establecerse comoLocation
, no la carpeta de un esquema individual.
Si no se especifica, la ubicación predeterminada es "%APPDATA%\\CDS Data Provider\Schema" con %APPDATA%
estando configurado en el directorio de configuración del usuario:
Plataforma | %APPDATA% |
---|---|
Windows | El valor de la variable de ambiente APPDATA |
Mac | ~/Biblioteca/Soporte de aplicaciones |
Linux | ~/.config |
Esquemas Navegables
Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Enumerar los esquemas de las bases de datos puede resultar costoso. Proporcionar una lista de esquemas en la cadena de conexión mejora el rendimiento.
Mesas
Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA,TablaB,TablaC.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Listar las tablas de algunas bases de datos puede resultar costoso. Proporcionar una lista de tablas en la cadena de conexión mejora el rendimiento del conector.
Esta propiedad también se puede utilizar como una alternativa a la lista automática de vistas si ya sabe con cuáles quiere trabajar y, de lo contrario, habría demasiadas para trabajar.
Especifique las tablas que desea en una lista separada por comas. Cada tabla debe ser un identificador SQL válido con cualquier carácter especial escapado usando corchetes, comillas dobles o acentos graves. Por ejemplo, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.
Tenga en cuenta que al conectarse a una fuente de datos con varios esquemas o catálogos, deberá proporcionar el nombre completo de la tabla en esta propiedad, como en el último ejemplo aquí, para evitar la ambigüedad entre las tablas que existen en varios catálogos o esquemas.
Puntos de Vista
Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA,VistaB,VistaC.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Listar las vistas de algunas bases de datos puede ser costoso. Proporcionar una lista de vistas en la cadena de conexión mejora el rendimiento del conector.
Esta propiedad también se puede utilizar como una alternativa a la lista automática de vistas si ya sabe con cuáles quiere trabajar y, de lo contrario, habría demasiadas para trabajar.
Especifique las vistas que desee en una lista separada por comas. Cada vista debe ser un identificador SQL válido con cualquier carácter especial escapado usando corchetes, comillas dobles o acentos graves. Por ejemplo, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.
Tenga en cuenta que al conectarse a una fuente de datos con varios esquemas o catálogos, deberá proporcionar el nombre completo de la tabla en esta propiedad, como en el último ejemplo aquí, para evitar la ambigüedad entre las tablas que existen en varios catálogos o esquemas.
Esquema
Esquema para usar Sistema, Entidades.
Valores Posibles
System
, Entities
Tipo de Datos
string
Valor por Defecto
"System"
Observaciones
Esquema para usar Sistema, Entidades
Misceláneas
Esta sección proporciona una lista completa de propiedades misceláneas que puede configurar.
Propiedad | Descripción |
---|---|
ApiVersion | La versión de la API que se está utilizando. Esto se puede especificar para acceder a una nueva versión de la API una vez que se lance. |
MaxRows | Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño. |
Other | Estas propiedades ocultas se usan solo en casos de uso específicos. |
PseudoColumns | Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla. |
Timeout | El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación. |
UseDisplayNames | Si se establece en verdadero, el proveedor utilizará nombres para mostrar para algunas operaciones. |
ApiVersion
La versión de la API que se está utilizando. Esto se puede especificar para acceder a una nueva versión de la API una vez que se lance.
Tipo de Datos
string
Valor por Defecto
"9.0"
Observaciones
La versión de la API que se está utilizando. Esto se puede especificar para acceder a una nueva versión de la API una vez que se lance. De lo contrario, puede utilizar el predeterminado.
Filas Máximas
Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño.
Tipo de Datos
int
Valor por Defecto
-1
Observaciones
Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño.
Otro
Estas propiedades ocultas se usan solo en casos de uso específicos.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Las propiedades enumeradas a continuación están disponibles para casos de uso específicos. Los casos de uso y la funcionalidad normales del controlador no deberían requerir estas propiedades.
Especifique varias propiedades en una lista separada por punto y coma.
Integración y Formateo
Propiedad | Descripción |
---|---|
DefaultColumnSize | Establece la longitud predeterminada de los campos de cadena cuando la fuente de datos no proporciona la longitud de columna en los metadatos. El valor predeterminado es 2000. |
ConvertDateTimeToGMT | Determina si se convierten los valores de fecha y hora a GMT, en lugar de la hora local de la máquina. |
RecordToFile=filename | Registra la transferencia de datos del socket subyacente al archivo especificado. |
Pseudocolumnas
Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Esta configuración es particularmente útil en Entity Framework, que no le permite establecer un valor para una pseudocolumna a menos que sea una columna de tabla. El valor de esta configuración de conexión tiene el formato "Tabla1=Columna1, Tabla1=Columna2, Tabla2=Columna3". Puede usar el carácter "*" para incluir todas las tablas y todas las columnas; por ejemplo, "*=*".
Se Acabó el Tiempo
El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación.
Tipo de Datos
int
Valor por Defecto
60
Observaciones
Si Timeout
= 0, las operaciones no expiran. Las operaciones se ejecutan hasta que se completan correctamente o hasta que encuentran una condición de error.
Si Timeout
caduca y la operación aún no se ha completado, el conector genera una excepción.
UseDisplayNames
Si se establece en verdadero, el proveedor utilizará nombres para mostrar para algunas operaciones.
Tipo de Datos
bool
Valor por Defecto
false
Observaciones
Si se establece en verdadero, el conector utilizará nombres para mostrar para algunas operaciones. Esta propiedad se usa solo para el esquema de Entidades.