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:
- Trabajar con definiciones de columna de imagen mediante código
- Usar datos de columna de imagen
- Ejemplo: Operaciones de imagen usando la SDK de Dataverse para .NET
- Ejemplo: Operaciones de imagen usando la API web de Dataverse
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
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).