Introducción a entidades en Microsoft Dynamics CRM 2015
Publicado: noviembre de 2016
Se aplica a: Dynamics CRM 2015
Las entidades se utilizan para modelar y administrar datos profesionales en Microsoft Dynamics 365. Por ejemplo, las entidades como cuenta, campaña, e incidente (caso) se pueden usar para realizar el seguimiento y el soporte de actividades de ventas, marketing y servicio. Una entidad tiene un conjunto de atributos, cada uno de los cuales representa un elemento de datos de un tipo determinado. Por ejemplo, la entidad cuenta tiene los atributos Name, Address y OwnerId. Conceptualmente, una entidad es como una tabla de base de datos, y los atributos de entidad se corresponden con las columnas de la tabla. Crear un registro de entidad (o registro) en Microsoft Dynamics 365 es como agregar una fila a una tabla de base de datos. Las entidades se dividen en tres categorías: sistema, negocios y personalizadas. Como desarrollador que trabaja con datos profesionales, usará entidades de negocios y personalizadas.Microsoft Dynamics 365 usa las entidades del sistema para administrar todos los procesos internos, como los flujos de trabajo y los trabajos asincrónicos. No puede eliminar ni personalizar las entidades del sistema.
Las entidades de negocios forman parte de la instalación predeterminada de Microsoft Dynamics 365 y aparecen en la interfaz de usuario de personalización. Cuenta, contacto y carta son ejemplos de entidades de negocios. Después de la instalación, puede agregar entidades personalizadas a Microsoft Dynamics 365 para satisfacer necesidades de negocio específicas de la organización. En una solución de Microsoft Dynamics 365, puede establecer entidades y atributos de negocios y personalizados para que sean personalizables o no personalizables. Puede modificar una entidad personalizable cambiando su nombre, agregando nuevos atributos o modificando distintos valores, como la detección de duplicados o la configuración del soporte de la cola. No puede modificar una entidad no personalizable. Para obtener más información acerca de la personalización, las soluciones no administradas y administradas, así como las propiedades administradas, vea Empaquetar y distribuir las extensiones con soluciones.
Si está usando el modelo de programación enlazada en tiempo de compilación, una entidad se representa mediante una clase, como la clase Account, que representa la entidad cuenta. Los atributos de entidad se representan mediante las propiedades de clase. Esta clase se genera mediante la herramienta CrmSvcUtil. Para obtener más información, vea Usar las clases de entidad con enlace en tiempo de compilación en código. También puede escribir programas que trabajen con los datos de entidad mediante un enfoque dinámico. Para obtener más información, vea Usar la clase de entidad con enlace en tiempo de ejecución en código.
Nota
En la documentación de Microsoft Dynamics CRM SDK, el término “atributo de entidad” se usa indistintamente con el término “atributo” y el término “propiedad” (propiedad de clase).
En este tema
Metadatos de la entidad
Acciones en los registros de la entidad
Propiedad de la entidad
Estado y razón para el estado de los registros
Imágenes de entidad
Metadatos de la entidad
Los metadatos de una organización de Microsoft Dynamics 365 contienen las definiciones de las entidades y atributos, y las relaciones entre las entidades. Para obtener más información, vea Modelos de datos y metadatos en Microsoft Dynamics CRM 2015. Para un desarrollador, existen muchas situaciones en las que es útil poder encontrar todos los metadatos de una organización. Existen varias formas de encontrar y hacer referencia a los metadatos:
Use el Explorador de metadatos de la entidad para ver las entidades y sus propiedades en Microsoft Dynamics 365. Para obtener más detalles, vea Examinar los metadatos de la organización.
El paquete del SDK contiene la misma información en una hoja de cálculo de Microsoft Office Excel. Puede encontrarla en el archivo SDK\Tools\EntityMetadata.xlsx.
Puede generar los metadatos para su organización mediante estos ejemplos:
Puede crear los siguientes tipos de relaciones entre entidades: de uno a varios, de varios a uno y de varios a varios. Los registros de una relación de varios a varios se almacenan en una entidad de intersección. Tras definir una relación, use el mensaje AssociateRequest o el método Associate para crear un vínculo entre los registros especificados, y use el mensaje DisassociateRequest o el método Disassociate para quitar un vínculo entre los registros especificados.
En las relaciones de uno a varios o de varios a uno, algunas acciones del registro de la entidad primaria afectan a los registros de la entidad secundaria. Las acciones que tienen un comportamiento en cascada son: Asignar, Eliminar, Combinar, Compartir, Dejar de compartir y Cambiar primario. Para obtener más información, vea Comportamiento de relación de entidades.
Nombres usados en los metadatos de la entidad
Las entidades, los atributos y sus relaciones tienen varios nombres distintos. La siguiente tabla muestra los distintos nombres que se usan en los metadatos.
Nombre |
Descripción |
---|---|
Nombre para mostrar |
El nombre que se muestra al usuario. |
Nombre de recopilación para mostrar |
Versión plural del nombre para mostrar. Solo se aplica a las entidades. |
Nombre lógico |
El nombre único de la entidad o el atributo. Este nombre está totalmente en minúsculas. |
Nombre de esquema |
El nombre de esquema se especifica durante la creación. Debe ser único. Se usa para crear el nombre lógico. Este nombre debe usar el estilo de mayúsculas y minúsculas Pascal. El nombre de esquema se usa para crear la clase de la entidad cuando se usa la programación enlazada en tiempo de compilación. |
Nota
Para una relación, atributo y entidad personalizados creados en el contexto de una solución, el prefijo de personalización en los nombres lógico y de esquema se define en el atributo Publisher.CustomizationPrefix. Para una entidad personalizada creada mediante programación, establezca el prefijo de personalización en una cadena que tenga entre dos y ocho caracteres de longitud, todos caracteres alfanuméricos y que empiece por una letra. No puede comenzar por “mscrm”. Para obtener más información acerca de la personalización y las convenciones de nomenclatura de los metadatos de la entidad, vea Personalizar metadatos de entidad.
Acciones en los registros de la entidad
Cada entidad admite varias acciones, como crear o eliminar un registro, o asignar un registro a otro usuario o equipo. No se permiten todas las acciones en todos los tipos o atributos de entidad. Para cada atributo, los metadatos definen si se admite una acción determinada. Por ejemplo, las propiedades de un atributo, como IsValidForCreate, IsValidForRead e IsValidForUpdate le indican si puede crear, recuperar o actualizar el atributo.Más información:Operaciones válida en atributos.
Para realizar una acción, llame uno de los métodos de IOrganizationService. Por ejemplo, para crear un registro en Microsoft Dynamics 365, puede usar el método IOrganizationService.Create o el método IOrganizationService.Execute con el mensaje CreateRequest correspondiente. Debe tener los privilegios y los derechos de acceso necesarios para realizar estas acciones. Para obtener más información, vea El modelo de seguridad de Microsoft Dynamics CRM 2015.
En la siguiente tabla se enumeran las acciones que se permiten en los registros de las entidades de negocio y personalizadas, y los métodos y mensajes que puede usar para realizar estas acciones.
Acción |
Descripción |
Método y/o mensaje |
---|---|---|
Crear |
Crea un registro de un tipo de entidad específico, incluidas las entidades personalizadas. |
|
Actualización |
Modifica el contenido de un registro. |
|
Eliminar |
Elimina un registro. |
|
Recuperar |
Recupera un registro. |
|
Recuperar varios |
Recupera una recopilación de registros. |
|
Asignar |
Cambios propiedad de un registro. Es válido para las entidades que pertenecen a un usuario o que pertenecen a un equipo. |
|
Compartir |
Concede, modifica o revoca el acceso a un registro a otro usuario o equipo. Es válido para las entidades que pertenecen a un usuario o que pertenecen a un equipo. |
|
Asociar |
Crea vínculos entre un registro y una recopilación de registros donde existe una relación entre las entidades. |
|
Desasociar |
Elimina vínculos entre un registro y una recopilación de registros donde existe una relación entre las entidades. |
|
Establecer estado |
Establece el estado de un registro. |
Crear
Para llevar a cabo esta acción, el autor de la llamada debe tener Create message privileges. Los derechos de acceso no se aplican a la acción Crear, pero sí se aplican al registro vez que se ha creado.
Para ser el propietario de un registro o recuperar un registro recién creado, un usuario o equipo también debe tener derechos de acceso y privilegios de lectura en el nuevo registro. Por ejemplo, si tiene privilegios de creación para las cuentas, puede crear un registro de cuenta y asignárselo a otro usuario o equipo. Sin embargo, a menos que también tenga el privilegio de lectura para las cuentas y derechos de acceso al nuevo registro, no puede crear una cuenta y ser el propietario de esa nueva cuenta.
Actualización
Para llevar a cabo esta acción, el autor de la llamada debe tener Update message privileges y derechos de acceso a los registros de entidad que se van a actualizar.
Cuando se actualiza un registro, solo se actualizan los atributos para los que se especifican datos o para los que se especifica null. Los demás valores permanecen como estaban. Además, si especifica datos para los atributos que no son válidos para la actualización, se omiten.
Eliminar
Para llevar a cabo esta acción, el autor de la llamada debe tener Delete message privileges y derechos de acceso a los registros de entidad que se van a eliminar.
Las reglas en cascada determinan si los registros relacionados se eliminan al mismo tiempo. Para obtener más información, vea Comportamiento de relación de entidades.
Normalmente solo es necesario eliminar los registros que se han creado por error. Para algunos tipos de registros, es posible desactivar o cerrar el registro en lugar de eliminarlo. No todos los tipos de registro se pueden eliminar.
Recuperar
Para llevar a cabo esta acción, el autor de la llamada debe tener Retrieve message privileges y derechos de acceso a los registros de entidad recuperados.
Recuperar varios
Para llevar a cabo esta acción, el autor de la llamada debe tener Retrieve message privileges y derechos de acceso a los registros de entidad recuperados.
Para recuperar una recopilación de registros en función de los parámetros de consulta, puede usar una expresión de consulta o el lenguaje de consultas FetchXML. Las expresiones de consulta permiten crear un árbol de consultas usando una jerarquía de clases. Los métodos que usan una expresión de consulta devuelven una recopilación de registros con establecimiento inflexible de tipos. FetchXML permite crear consultas mediante un idioma XML. FetchXML devuelve una cadena XML. Por lo tanto, para usar los resultados de la consulta se necesita una mayor manipulación de datos. Para obtener más información, vea Recupere datos con consultas.
Asignar
Para las entidades que pertenecen a un usuario o equipo, se asigna un registro a un nuevo propietario. Para obtener más información, vea Propiedad de la entidad. Para llevar a cabo esta acción, el autor de la llamada debe tener Assign message privileges y derechos de acceso a los registros de entidad.
Las reglas en cascada determinan si los registros relacionados se asignan a otro usuario al mismo tiempo. Para obtener más información, vea Comportamiento de relación de entidades.
Cuando un registro se asigna a otro usuario o equipo, el propietario anterior sigue teniendo acceso a este registro si el atributo ShareToPreviousOwnerOnAssign está establecido en true. Sin embargo, el propietario anterior ya tendrá la propiedad del registro.
Compartir
Para las entidades que pertenecen a un usuario o a un equipo, puede compartir un registro con otros usuarios o equipos. Para llevar a cabo esta acción, el autor de la llamada debe tener GrantAccess message privileges, ModifyAccess message privileges y RevokeAccess message privileges y derechos de acceso a los registros de entidad.
Las reglas en cascada determinan si los registros relacionados se comparten al mismo tiempo. Para obtener más información, consulte Comportamiento de relación de entidades
El uso compartido es la forma en que los usuarios de Microsoft Dynamics 365 pueden conceder acceso a los demás usuarios a la información del cliente cuando sea necesario. Por ejemplo, un comercial puede decidir compartir una oportunidad con otro comercial de forma que ambos puedan realizar un seguimiento del progreso de una venta importante.
Para compartir un registro, use la clase GrantAccessRequest. Use la clase ModifyAccessRequest para cambiar la forma en que se comparte un registro. Para eliminar el uso compartido de un registro, use la clase RevokeAccessRequest.
Un usuario debe tener derechos de uso compartido para poder compartir registros relacionados con los clientes, como contactos, cuentas, oportunidades, casos y pedidos, con cualquier otro usuario de Microsoft Dynamics 365. Cuando se comparte un registro, se pueden especificar los derechos que se van a conceder para el registro compartido.
En la siguiente lista se describen las reglas para compartir registros:
Cualquier usuario con privilegios para compartir un registro puede compartirlo con otros usuarios o equipos.
Cualquier usuario con privilegios para compartir un registro puede establecer los derechos de acceso del registro. Estos derechos de acceso controlan el acceso que un usuario que comparte un registro puede tener a ese registro.
El acceso de un registro compartido se puede establecer en cualquier derecho de acceso, como por ejemplo, lectura o escritura.
Los derechos de acceso de un registro compartido pueden ser distintos para cada usuario con el que se comparte el registro.
Un registro solo se puede compartir una vez con la misma entidad de seguridad. Un usuario puede compartir un registro si tiene privilegios de compartir ese registro.
Cualquier usuario con privilegios para compartir un registro empresarial puede modificar los derechos de acceso de los usuarios que han compartido el registro.
Cualquier usuario con privilegios para compartir un registro empresarial puede quitar el uso compartido para un usuario determinado con el que ha compartido el registro.
Cualquier usuario con privilegios para compartir un registro empresarial puede quitar el uso compartido para todos los usuarios con los que ha compartido el registro previamente.
Asociar
Para llevar a cabo esta acción, el autor de la llamada debe tener Associate message privileges y derechos de acceso a los registros que se van a actualizar.
La asociación crea varias asociaciones en una transacción entre el registro especificado y cada registro de la recopilación especificada para la relación especificada.
Para una relación de uno a varios, este método establece la propiedad ReferencingAttribute del registro relacionado en el identificador del registro especificado.
Para una relación de varios a varios, este método crea un registro en la tabla de intersección de la relación, que contiene los identificadores de los registros a los que se hace referencia y que hacen referencia. El nombre de la tabla de intersección se define en la propiedad IntersectEntityName de la relación.
Desasociar
Para llevar a cabo esta acción, el autor de la llamada debe tener Disassociate message privileges y derechos de acceso a los registros que se van a actualizar.
La desasociación anula la operación de asociación actualizando los registros a los que se hace referencia y que hacen referencia y eliminando el registro de intersección cuando sea necesario. Para obtener más información, vea Asociar.
Establecer estado
Para llevar a cabo esta acción, el autor de la llamada debe tener SetState message privileges y derechos de acceso a los registros que se van a actualizar. El mensaje SetStateRequest actualiza los atributos StateCode y StatusCode del registro de entidad.
Propiedad de la entidad
Existen varios tipos de propiedad de la entidad. La mayoría de las entidades, incluidas las entidades personalizadas, pertenecen a la organización, a un usuario o a un equipo. Hay algunas entidades de negocios que no tienen un propietario, como el tipo de descuento (lista de descuentos), donde la propiedad se define mediante la entidad de descuento primaria. El tipo de propiedad define algunas de las operaciones que se pueden realizar en un registro. La propiedad de una entidad se define en la propiedad de metadatos OwnershipType. La tabla siguiente enumera las propiedades relacionadas con la propiedad.
Tipo de propiedad |
Descripción |
---|---|
Propiedad de la organización |
Contiene datos relacionados con algo que pertenece o que puede ver toda la organización. Las entidades que pertenecen a la organización no se pueden asignar ni compartir. Por ejemplo, los productos pertenecen a la organización. Estas entidades tienen un atributo denominado organizationid. |
Propiedad del negocio |
Son las entidades que pertenecen a una unidad de negocio. Estas entidades tienen un atributo denominado owningbusinessunit. |
Propiedad del usuario o el equipo |
Asignadas a un usuario o un equipo. Estas entidades contienen datos relacionados con los clientes, como las cuentas o los contactos. La seguridad se puede definir según la unidad de negocio del usuario o el equipo. Estas entidades tienen atributos denominados owningteam y owninguser. |
Ninguna |
Estas entidades no son propiedad de otra entidad. |
Información adicional sobre la propiedad del usuario o del equipo
Puede usar el mensaje AssignRequest para cambiar la propiedad de un registro. Para obtener más información, vea Asignar. Puede usar el mensaje ReassignObjectsOwnerRequest o ReassignObjectsSystemUserRequest para realizar la reasignación masiva de todos los registros de un propietario.
Nota
Al limitar la propiedad a los usuarios o equipos, se limita el acceso a los datos a los usuarios autorizados de la organización. Sin embargo, puede ampliar el acceso a los datos a usuarios y equipos adicionales compartiendo un registro de entidad con ellos. También puede asignar un registro a otro usuario o equipo. La configuración de la seguridad de las entidades que pertenecen a un usuario o equipo proporciona más niveles de acceso a los roles de seguridad que a las entidades que pertenecen a la organización. Los roles de seguridad de las entidades que pertenecen a la organización tienen dos niveles de acceso: Ninguno y Global. Las entidades que pertenecen a un usuario o a un equipo tienen cinco niveles de acceso: Global, Profundo, Local, Básico y Ninguno.
Estado y razón para el estado de los registros
La mayoría de las entidades de negocios tienen dos propiedades para realizar un seguimiento del estado de un registro. Son StateCode, que se denomina Estado en la aplicación web y StatusCode, que se denomina Razón para el estado en la aplicación web. Los valores de los atributos StateCode y StatusCode están vinculados. El atributo StateCode se usa internamente para representar el estado de la entidad. El atributo StatusCode se usa para mostrar este valor al usuario final. El conjunto de los códigos de estado válidos para una entidad no se puede personalizar, pero los códigos de la razón para el estado sí se pueden personalizar. Para la entidad de caso y las entidades personalizadas, puede definir criterios adicionales para transiciones válidas entre estados. Para obtener más información, vea Personalizar metadatos de atributos de entidad y Definir transiciones de modelo de estado personalizadas.
Imágenes de entidad
Determinadas entidades del sistema tienen atributos de imagen. Puede agregar atributos de imagen a las entidades personalizadas. Cuando una entidad tiene un atributo de imagen, puede establecer la propiedad PrimaryImageAttribute para controlar si la imagen se mostrará en la aplicación. Cuando la imagen se muestra en la aplicación, los usuarios de la aplicación web pueden cargar imágenes para el registro de entidad. Las siguientes entidades del sistema tienen atributos de imagen. Las que están marcadas con un asterisco están activadas de forma predeterminada para mostrarlas en la aplicación.
Cuenta * |
KbArticle |
Campaña |
Incidente |
Competidor * |
Conexión |
Contacto * |
Contrato |
TransactionCurrency |
EmailServerProfile |
Objetivo |
Factura |
Cliente potencial * |
Buzón |
Producto de oportunidad |
SalesOrder |
Organización |
Producto * |
Editor * |
Cola |
Recurso * |
SalesLiterature |
Zona de ventas |
SystemUser * |
Más información:Atributos de datos de imagen.
Ver también
Entidades de administración y seguridad
Usar metadatos para generar diagramas de entidad
Definir transiciones de modelo de estado personalizadas
Clave para diagramas de entidad
Modelar los datos profesionales
Personalizar metadatos de relación de entidad
Comportamiento de relación de entidades
Modelos de datos y metadatos en Microsoft Dynamics CRM 2015
Ampliar el modelo de metadatos
Empaquetar y distribuir las extensiones con soluciones
Entidades IOrganizationService
El modelo de seguridad de Microsoft Dynamics CRM 2015
Ejemplo: establecer y recuperar imágenes de entidad
Ejemplo: asignar un registro a un equipo
Ejemplo: compartir registros utilizando los mensajes GrantAccess, ModifyAccess y RevokeAccess
Ejemplo: combinar dos registros
Ejemplo: validar el estado del registro y establecer el estado del registro
Ejemplo: registros consolidados relacionados con un registro específico
© 2017 Microsoft. Todos los derechos reservados. Copyright