Definiciones de tabla en Microsoft Dataverse

Cada tabla proporciona la capacidad de almacenar datos estructurados. Para los desarrolladores, las tablas corresponden a las clases que usará cuando trabaje con datos en Microsoft Dataverse.

Nombres de tabla

Cada tabla tiene un nombre único que se define cuando se crea. Este nombre aparece de diversas formas:

Nombre de propiedad Descripción
SchemaName Normalmente, una versión con estilo de mayúsculas y minúsculas Pascal del nombre lógico. Por ejemplo, Cuenta
CollectionSchemaName Versión plural del nombre del esquema. Por ejemplo, Cuentas
LogicalName Todas las versiones en minúscula del nombre de esquema. Por ejemplo, cuenta
LogicalCollectionName Todas las versiones en minúscula del nombre de esquema de la colección. Por ejemplo, cuentas
EntitySetName Se utiliza para identificar colecciones con la API web. De forma predeterminada, coincide con el nombre lógico de la recopilación.
Es posible cambiar el nombre del conjunto de tablas actualizando las definiciones mediante programación. Pero debe hacer esto solo antes de escribir código de API web para la tabla. Más información: Nombre de conjunto de entidad

Nota

EntitySetName se genera automáticamente cambiando EntityName al plural de ese nombre. Ejemplo: EntityName: Coche EntitySetName: Coches. Al crear manualmente una nueva tabla,EntitySetName puede cambiarse. Los valores de EntitySetName creados por el sistema siempre serán el plural de EntityName, y no se pueden cambiar a través de la interfaz del cliente. Esto incluye tablas del sistema, así como tablas creadas para intersecciones de relaciones varios a varios.

Al crear una tabla personalizada, el nombre que elija estará antepuesto con el valor del prefijo de personalización del editor de soluciones asociado con la solución donde se creó la tabla. Aparte del nombre del conjunto de entidades, no se pueden cambiar los nombres de una tabla después de crearla. Si quiere nombres coherentes para los elementos de definición de la solución, debe crearlos en el contexto de una solución que se crea asociada con un editor de soluciones que contiene el prefijo de personalización que se va a usar. Más información: Editor de soluciones.

Cada tabla también tiene tres propiedades que pueden mostrar valores localizados:

Nombre Descripción
DisplayName Normalmente, es igual al nombre de esquema, pero puede incluir espacios. Por ejemplo, Cuenta
DisplayCollectionName Versión plural del nombre para mostrar. Por ejemplo, Cuentas
Description Una breve frase que describa la tabla, es decir, Empresa que representa a un cliente o cliente potencial. La empresa a la que se factura en transacciones comerciales.

Estos son los valores localizables que se usan para referirse a las tablas en una aplicación. Estos valores se puede cambiar en cualquier momento. Para agregar o editar valores localizados, consulte Traducir texto de tabla, formulario y de columna personalizados a otros idiomas.

Clave principal

El valor de la propiedad PrimaryIdAttribute es el nombre lógico de la columna que es la clave principal para la tabla.

De manera predeterminada, todas las tablas de tienen una única columna llamada <table logical name>Id.

Nombre principal

El valor de la propiedad PrimaryNameAttribute es el nombre lógico de la columna en la que se almacena el valor de cadena que identifica el registro de la tabla. Este es el valor que se mostrará en un vínculo para abrir el registro en una interfaz de usuario.

Ejemplo: la tabla Contact usa la columa fullname como columna de nombre principal.

Nota

No todas las tablas tendrán un nombre principal. Algunas tablas no están diseñadas para mostrarse en una interfaz de usuario.

Imágenes de entidad

El valor de la propiedad PrimaryImageAttribute es el nombre lógico de la columna de imagen que se ha elegido para representar el registro de entidad. Esta imagen puede mostrarse en una aplicación.

Ejemplo: La columna Tabla Contact EntityImage puede almacenar una imagen del contacto.

Nota

Esto es diferente del icono que se muestra para una tabla en las aplicaciones controladas por modelos. La propiedad IconVectorName contiene el nombre del recurso web de SVG que establece esto.

Más información:

Tipos de tablas

Las funciones y el comportamiento de las tablas dependen de varias propiedades de tabla. La mayoría de estas propiedad son relativamente sencillas y tienen nombres descriptivos. Entre las cuatro propiedades que requieren una explicación adicional son: Propiedad, tablas Activity, tabla Activityparty y tablas secundarias.

Propiedad de tabla

Las tablas se pueden clasificar según la propiedad de los datos que contienen. Se trata de un concepto importante relacionado con cómo se aplica la seguridad a las tablas. Esta información está en la propiedad OwnershipType. La siguiente tabla describe los diferentes tipos de propiedad:

Tipo de propiedad Descripción
Empresa El datos pertenecen a la unidad de negocio. El acceso a los datos se puede controlar en el nivel de unidad de negocio.
Nada Los datos no son propiedad de otra tabla.
Organización Los datos pertenecen a la organización. El acceso a los datos se controla en el nivel de organización.
Usuario o equipo Los datos pertenecen a un usuario o un equipo. Las acciones que se pueden realizar en estos registros se pueden controlar en un nivel de usuario.

Al crear nuevas tablas, las únicas opciones de propiedad son: Organización o Usuario o Equipo. Una vez que realice su elección para esta opción, no puede cambiarla. Elija Usuario o equipo para un control más específico sobre quién puede ver o realizar acciones en registros. Elija Organización si este nivel de control no es necesario.

Tablas de actividades

Actividad es una tarea realizada o que va a realizar un usuario. Una actividad es cualquier acción para la que se puede crear una entrada en un calendario.

Las actividades se modelan de forma diferente a otros tipos de tablas que almacenan datos empresariales. Los datos sobre actividades con frecuencia se muestran juntos en una lista, no obstante, cada tipo de actividad requiere propiedades únicas. En lugar de tener una sola tabla Activity con todas las propiedades posibles, hay diferentes tipos de tablas de actividad y cada una de ellas hereda las propiedades de una entidad ActivityPointer base. Estas tablas tendrán la propiedad IsActivity establecida en verdadero.

Tabla Descripción
Cita Compromiso que representa un intervalo de tiempo con las fechas de inicio y fin y la duración.
Correo electrónico Actividad entregada con protocolos de correo electrónico.
Fax Actividad que mantiene un seguimiento del resultado de llamadas y el número de páginas para un fax y que, opcionalmente, almacena una copia electrónica del documento.
Carta Actividad que realiza un seguimiento de la entrega de una carta. Actividad que puede contener la copia electrónica de la carta.
PhoneCall Actividad para mantener un seguimiento de una llamada de teléfono.
Maestro recurrente de la cita Cita principal de una serie de citas periódicas.
Actividad social Solo para uso interno.
Tarea Actividad genérica que representa el trabajo que se debe realizar.

Cada vez que alguien crea uno de estos tipos de registros de tabla de actividad, se creará el registro de tabla ActivityPointer correspondiente con el mismo valor de columna de identificador único ActivityId. No se pueden crear, actualizar ni eliminar instancias de la tabla ActivityPointer, pero se pueden recuperar. Esto es lo que permite que todos los tipos de actividad aparezcan se combinados juntos en una lista.

Se pueden crear tablas de actividad personalizadas que se comporten de la misma manera.

Tabla ActivityParty

Esta tabla se usa para agregar estructura a las columnas de la tabla de actividad PartyListType, que incluyen referencias a otras tablas. Utilizará esta tabla se usará al establecer valores para columnas de tabla de actividad, como Email.to o PhoneCall.from. Dentro de la tabla ActivityParty, se establece la columna ParticipationTypeMask para definir el rol que la referencia está desempeñando. Los roles incluyen Sender, ToRecipient, Organizer y muchos otros.

Se puede consultar la tabla ActivityParty, pero no se puede crear, recuperar, actualizar o eliminar una parte de actividad fuera de la actividad con la que está relacionada. Más información:

Tablas secundarias

Las tablas donde la propiedad IsChildEntity es verdadera nunca tendrán ningún privilegio definido y nunca serán propiedad de ningún usuario o equipo. Las operaciones que se pueden realizar en una tabla secundaria están enlazadas a una tabla a la que se asocian a través de una relación de varios a uno. Los usuarios solo pueden realizar operaciones en tablas secundarias si pueden realizar la misma operación en la tabla relacionada. Las tablas secundarias se eliminan automáticamente cuando se elimina el registro de tabla del que dependen.

Por ejemplo, PostComment, PostLike y PostRole son elementos secundarios de la tabla Post.

Claves

Cada definición de clave alternativa describe una o más columnas combinadas que identifican de forma única una tabla. Las claves alternativas se aplican normalmente solo para la integración con sistemas externos. Puede definir las claves alternativas para identificar de forma única un registro. Esto es valioso si está integrando datos con un sistema que no admita las claves de identificador único de GUID. Se puede definir un valor de columna único o una combinación de valores de columna para identificar una tabla. Agregar una clave alternativa aplicará una restricción de unicidad en estas columnas. No se podrá crear o actualizar otro registro de tabla que tenga los mismos valores.

Más información:

Estados de tabla

La mayoría de las tablas tiene dos propiedades para realizar el seguimiento del estado de un registro. Estas son StateCode, que se denomina Estado en aplicaciones basadas en modelos y StatusCode, que se denomina Razón para el estado en aplicaciones basadas en modelos.

Ambas columnas contienen un conjunto de opciones que muestran los valores válidos. Los valores de columna StateCode y StatusCode están vinculados para que solo determinadas elecciones StatusCode sean válidas para un StateCode dado.

Esto puede variar por tabla, pero el modelo común de muchas tablas, y el predeterminado para las tablas personalizadas, es el siguiente:

Elecciones de StateCode Elecciones de StatusCode
0: Activo 1: Activo
1: Inactivo 2: Inactiva

Algunas tablas tendrán otros conjuntos de elecciones.

Ejemplo: tabla PhoneCall y opciones StateCode y StatusCode

Código de estado Código de estado
0: Abierta 1: Abierta
1: Finalizada 2: Realizada
4: Recibida
2: Cancelada 3: Cancelada

El conjunto de los códigos de estado válidos para una tabla no se puede personalizar, pero los códigos de la razón para el estado sí se pueden personalizar. Se pueden agregar más elecciones StatusCode para un StateCode correspondiente.

Para las tablas personalizadas, se pueden definir criterios adicionales para las transiciones válidas entre estados.

Más información:

Consultar también

Tablas de Dataverse

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).