Usar una clave alternativa para hacer referencia a un registro
Utilizará claves alternativas con escenarios de integración de datos para realizar operaciones de datos donde no conoce el valor de la clave principal de un registro Dataverse. Solo puede usar claves alternativas para las tablas donde están definidas. La mayoría de las tablas de Dataverse no tendrán claves alternativas a menos que se hayan personalizado para incluirlas.
Para comprender cómo definir e identificar las claves alternativas para una tabla, consulte los artículos siguientes:
- Uso de Power Apps: Definir claves alternativas para hacer referencia a filas
- Uso de código: Trabajar con claves alternativas
Puede usar claves alternativas mediante la Dataverse API web o el SDK para .NET.
Cuando usa la API web, hace referencia a un registro específico mediante una URL y luego usa los métodos POST
, PATCH
o DELETE
Http para realizar la operación de datos. También usa URL para establecer valores para propiedades de navegación de un solo valor usando la sintaxis @odata.bind
, o como parámetros para funciones y acciones.
La siguiente tabla proporciona ejemplos que muestran cómo hacer referencia a registros usando URL relativas:
Situación | Ejemplo |
---|---|
Con una clave principal | /accounts(00000000-0000-0000-0000-000000000001) Oaccounts(accountid=00000000-0000-0000-0000-000000000001) Consulte la siguiente nota sobre los tipos de entidad systemuser y team |
Con clave alternativa única | /accounts(accountnumber='ABC123') |
Con claves alternativas de varias partes | /contacts(firstname='Joe',emailaddress1='abc@example.com') |
Con una clave alternativa que usa una columna de búsqueda | /accounts(_primarycontactid_value=00000000-0000-0000-0000-000000000002) Cuando se define un clave alternativa para una columna de búsqueda, debe usar el nombre de la Propiedad de búsqueda correspondiente. Una propiedad de búsqueda sigue la siguiente convención de nomenclatura: _<name of single-valued navigation property>_value . |
Nota
Debido a lo que ocurre cuando los tipos de entidad systemuser y team heredan del tipo de entidad principal, no puede usar una clave principal con nombre para hacer referencia a estas entidades. Las claves principales para ambas entidades son ownerid
, más bien que systemuserid
o teamid
. El tipo de entidad principal
no es compatible con las operaciones GET
. Más información: Herencia EntityType
Excepciones al utilizar claves alternativas con la API web
Es necesario conocer las siguientes condiciones y excepciones posibles para utilizar claves alternativas:
- Si especifica una columna establecida que no está definido como única clave, se lanza un error que indica que el uso de columnas de clave únicas es obligatorio. El mensaje de error es:
The key in the request URI is not valid for resource 'Microsoft.Dynamics.CRM.<table logical name>'. Ensure that the names and number of key properties match the declared or alternate key properties for the resource 'Microsoft.Dynamics.CRM.<table logical name>'.
- Actualmente no se admiten los valores de clave alternativos con los siguientes caracteres:
/
,<
,>
,*
,%
,&
,:
,\\
,?
,+
.
Más información: Recuperar registro mediante una clave alternativa
Consultar también
Definir claves alternativas para una tabla
Uso del seguimiento de cambios para sincronizar los datos con sistemas externos
Use Upsert para insertar o actualizar un registro
Nota
¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)
La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).