Compartir a través de


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á al trabajar con datos en Microsoft Dataverse.

Nombres de tabla

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

Nombre de propiedad Description
SchemaName Normalmente, una versión con estilo de mayúsculas y minúsculas Pascal del nombre lógico. Por ejemplo, Cuenta
CollectionSchemaName Forma 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 usa para identificar colecciones con la API web. De forma predeterminada, es igual que el nombre de la colección lógica.
Es posible cambiar el nombre del conjunto de entidades mediante programación actualizando las definiciones. Pero solo debe hacerlo antes de que se escriba cualquier código de API web para la tabla. Más información: Nombre del conjunto de entidades

Nota:

EntitySetName se genera automáticamente cambiando el EntityName al plural de ese nombre. Ejemplo: EntityName: Car EntitySetName: Cars. Al crear manualmente una nueva tabla, EntitySetName se puede cambiar. El sistema creado EntitySetName siempre será el plural de EntityName y estos no se pueden cambiar a través de la interfaz de 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 se anteponerá al valor de prefijo de personalización del publicador de soluciones asociado a la solución en la que 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 desea nombres coherentes para los elementos de definición de la solución, debe crearlos en el contexto de una solución que cree asociada a un publicador de soluciones que contenga el prefijo de personalización que desea usar. Más información: Publicador de soluciones

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

Nombre Description
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 Frase corta que describe la tabla que es Negocio 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 hacer referencia a las tablas de 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 PrimaryIdAttribute valor de propiedad es el nombre lógico de la columna que es la clave principal de la tabla.

De forma predeterminada, todas las tablas tienen una sola columna de identificador único GUID denominada: <table logical name>Id.

Nombre principal

El PrimaryNameAttribute valor de propiedad es el nombre lógico de la columna que almacena el valor de cadena que identifica el registro de 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 fullname columna 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 seleccionado para representar el registro de entidad. Esta imagen se puede mostrar en una aplicación.

Ejemplo: la columna EntityImagede la tabla Contact puede almacenar una imagen del contacto.

Nota:

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

Más información:

Tipos de tablas

Las funcionalidades y el comportamiento de las tablas dependen de varias propiedades de tabla. La mayoría de estas propiedades son relativamente simples y tienen nombres descriptivos. Entre cuatro propiedades que requieren una explicación más son: Propiedad, Tablas de actividad, Tabla Activityparty y Tablas secundarias.

Propiedad de la tabla

Las tablas se pueden clasificar por la forma en que los datos que contiene son propiedad de ellas. Este es un concepto importante relacionado con cómo se aplica la seguridad a las tablas. ** Esta información está en la propiedad OwnershipType. En la tabla siguiente se describen los distintos tipos de propiedad:

Tipo de propiedad Description
Negocio Los datos pertenecen a la unidad de negocio. El acceso a los datos se puede controlar en el nivel de unidad de negocio.
Ninguno Datos que no pertenecen a 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 a 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 elija esta opción, no podrá cambiarla. Elija Usuario o equipo para obtener el control más pormenorizado sobre quién puede ver o realizar acciones en los registros. Elija Organización cuando este nivel de control no sea necesario.

Tablas de actividades

Una actividad es una tarea realizada o que un usuario va a realizar. 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 las actividades se muestran con frecuencia en una lista, pero cada tipo de actividad requiere propiedades únicas. En lugar de tener una sola tabla Activity con todas las propiedades posibles, hay tipos independientes de tablas de actividad y cada una de ellas hereda las propiedades de una tabla ActivityPointer base. Estas tablas tendrán la IsActivity propiedad establecida en true.

Table Description
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 de 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.
RecurringAppointmentMaster Cita principal de una serie de citas periódicas.
SocialActivity Solo para uso interno.
tarea Actividad genérica que representa el trabajo que se debe realizar.

Siempre que cualquier usuario cree uno de estos tipos de registros de tabla de actividad, se creará un registro de tabla correspondiente ActivityPointer con el mismo ActivityId valor de columna de identificador único. No puede crear, actualizar ni eliminar instancias de la ActivityPointer tabla, pero puede recuperarlas. Esto es lo que permite que todos los tipos de actividades se presenten juntos en una lista.

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

Tabla ActivityParty

Esta tabla se usa para agregar estructura a columnas de tabla PartyListType de actividad que incluyen referencias a otras tablas. Usará esta tabla 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 y Organizer y mucho más.

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 en las que la IsChildEntity propiedad es true nunca tendrán ningún privilegio definido y nunca serán propiedad del 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.

Keys

Cada definición de clave alternativa describe una o varias columnas en combinación que identificarán de forma única una tabla. Normalmente, las claves alternativas solo se aplican para la integración con sistemas externos. Puede definir claves alternativas para identificar de forma única un registro. Esto es útil si va a integrar datos con un sistema que no admite claves de identificador único GUID. Puede definir un valor de columna único o una combinación de valores de columna para identificar de forma única una tabla. Al agregar una clave alternativa, se aplicará una restricción de unicidad en estas columnas. No podrá crear ni actualizar otro registro de tabla para tener los mismos valores.

Más información:

Estados de tabla

La mayoría de las tablas tienen dos propiedades para realizar un seguimiento del estado de un registro. Se trata de StateCode, que se denomina Status en aplicaciones controladas por modelos y StatusCode, que se denomina Status Reason en aplicaciones controladas por modelos.

Ambas columnas contienen un conjunto de opciones que muestran los valores válidos. Los StateCode valores de columna y StatusCode se vinculan para que solo ciertas StatusCode opciones sean válidas para un determinado StateCode.

Esto puede variar según la tabla, pero el patrón común para muchas tablas y el valor predeterminado para las tablas personalizadas es esto:

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

Algunas tablas tendrán diferentes conjuntos de opciones.

Ejemplo: PhoneCall tabla StateCode y StatusCode opciones

StateCode Código de estado
0: Abrir 1: Abrir
1: Completado 2: Hecho
4: Recibido
2: Cancelado 3: Cancelado

El conjunto de códigos de estado válidos para una tabla no es personalizable, pero los códigos de estado son personalizables. Puede agregar más StatusCode opciones para un StateCode correspondiente.

En el caso de las tablas personalizadas, puede definir más criterios para las transiciones válidas entre estados.

Más información:

Consulte también

Tablas de Dataverse