Freigeben über


Tabellendefinitionen in Microsoft Dataverse

Jede Tabelle bietet die Funktionalität, strukturierte Daten zu speichern. Für Entwickler entsprechen die Tabellen den Klassen, die Sie bei der Arbeit mit Daten in Microsoft Dataverse verwenden werden.

Tabellennamen

Jede Tabelle hat einen eindeutigen Namen, der beim Erstellen der Tabelle festgelegt wird. Dieser Name ist auf verschiedene Weise dargestellt:

Eigenschaftenname Beschreibung
SchemaName In der Regel eine Pascal-umkleidete Version des logischen Namen. Zum Beispiel „Konto“
CollectionSchemaName Eine mehrzahlige Version des Anzeigenamens. Zum Beispiel „Konten“
LogicalName Alle kleingeschriebene Version des Schemanamens. Zum Beispiel „Konto“
LogicalCollectionName Alle kleingeschriebene Versionen des Schemanamens. Zum Beispiel „Konten“
EntitySetName Verwendet. um Sammlungen mit Internet API zu identifizieren. Standardmäßig ist sie gleich wie der logische Sammlungsname.
Es ist möglich, den Namen der Entität festzulegen, indem Sie die Definitionen programmatisch aktualisieren. Dies sollte jedoch nur geschehen, bevor irgendein Web-API-Code für die Tabelle geschrieben wird. Weitere Informationen: Namen des Entitätssatzes

Hinweis

EntitySetName wird automatisch erzeugt, indem EntityName in den Plural dieses Namens geändert wird. Beispiel: EntityName: Auto EntitySetName: Autos. Beim manuellen Erstellen einer neuen Tabelle kann die EntitySetName geändert werden. Vom System erstellte EntitySetName sind immer der Plural von EntityName und diese können nicht über die Client-Schnittstelle geändert werden. Dies gilt sowohl für Systemtabellen als auch für Tabellen, die für N:N-Beziehungen erstellt wurden.

Wenn Sie eine angepasste Tabelle erstellen, wird dem von Ihnen gewählten Namen der Anpassungspräfix-Wert des Solution Publishers vorangestellt, der mit der Lösung verknüpft ist, in der die Tabelle erstellt wurde. Abgesehen vom Namen der festgelegten Entitäten können Sie die Namen einer Tabelle nicht mehr ändern, nachdem sie erstellt wurde. Wenn Sie konsistente Namen für Definitionselemente in Ihrer Lösung wünschen, sollten Sie diese im Kontext einer Lösung erstellen, die Sie in Verbindung mit einem Solution Publisher erstellen, der das gewünschte Anpassungspräfix enthält. Weitere Informationen Lösungsherausgeber

Jede Tabelle hat außerdem drei Eigenschaften, die lokalisierte Werte anzeigen können:

Name Beschreibung
DisplayName Normalerweise gleich wie der Schemaname, können aber Leerzeichen enthalten. Zum Beispiel „Konto“
DisplayCollectionName Eine Pluralform des Anzeigenamens. Zum Beispiel „Konten“
Description Ein kurzer Satz, der die Tabelle beschreibt, z. B. Geschäft, das einen Kunden oder potenziellen Kunden darstellt. Die Firma, die bei Geschäftsvorgängen abgerechnet wird.

Dies sind die lokalisierbaren Werte, die verwendet werden, um auf die Tabellen in einer App zu verweisen. Diese Werte können jederzeit geändert werden. Um lokalisierte Werte hinzuzufügen oder zu bearbeiten, siehe Angepasste Tabellen-, Formular- und Spaltentexte in andere Sprachen übersetzen.

Primärschlüssel

Der Wert der Eigenschaft PrimaryIdAttribute ist der logische Name der Spalte, die der Primärschlüssel für die Tabelle ist.

Standardmäßig haben alle Tabellen eine einzige GUID-Spalte als eindeutigen Bezeichner namens <table logical name>Id.

Primärer Name

Der Eigenschaftswert PrimaryNameAttribute ist der logische Name der Spalte, die den String-Wert speichert, der den Datensatz der Tabelle identifiziert. Dies ist der Wert, der in einen Hyperlink angezeigt wird, um den Datensatz in einer Benutzeroberfläche zu öffnen.

Beispiel: Die Tabelle „Kontakt“ verwendet die Spalte fullname als primäre Namensspalte.

Hinweis

Nicht jede Tabelle wird einen primären Namen haben. Einige Tabellen sind nicht dafür vorgesehen, in einer Benutzeroberfläche angezeigt zu werden.

Entitätsbilder

Der PrimaryImageAttribute-Eigenschaftswert wird der logische Name der Bildspalte, die ausgewählt wurde, um den Entitätsdatensatz darzustellen. Dieses Bild kann in einer Anwendung angezeigt werden.

Beispiel: Die Kontakt-Tabelle EntityImage Spalte kann ein Bild des Kontakts speichern.

Hinweis

Dies unterscheidet sich von dem Symbol, das für eine Tabelle in modellbasierten Apps angezeigt wird. Die IconVectorName-Eigenschaft enthält den Namen der SVG-Webressource, die dieses festlegt.

Weitere Informationen:

Arten von Tabellen

Die Funktionalitäten und das Verhalten von Tabellen hängen von mehreren Tabelleneigenschaften ab. Die meisten der Eigenschaften sind verhältnismäßig einfach und haben aussagekräftige Namen. Zu den vier Eigenschaften, die einer weiteren Erklärung bedürfen, gehören: Eigentümerschaft, Aktivitätstabellen, Aktivitätspartei-Tabelle und Untergeordnete Tabellen.

Tabelleneigentum

Tabellen können danach kategorisiert werden, wie die Daten in ihnen besessen werden. Dies ist ein wichtiges Konzept in Bezug darauf, wie die Sicherheit auf Tabellen angewendet wird. Diese Informationen sind in der OwnershipType-Eigenschaft enthalten. Die folgende Tabelle beschreibt die unterschiedlichen Besitztypen in :

Besitztyp Beschreibung
Geschäftlich Daten gehören der Unternehmenseinheit. Zugriff auf die Daten kann auf der Unternehmenseinheitebene gesteuert werden.
Kein Wert Daten, die zu keiner anderen Tabelle gehören.
Organisation Daten, die der Organisation gehören. Der Zugriff auf die Daten wird auf Organisationsebene gesteuert.
Benutzer oder Team Daten, die zu einem Benutzer oder einem Team gehören. Aktionen, die für diese Datensätze ausgeführt werden, können auf Benutzerebene gesteuert werden.

Wenn Sie neue Tabellen erstellen, sind die einzigen Optionen für die Eigentümerschaft: Organisation oder Benutzer oder Team. Nachdem Sie eine Wahl für diese Option auswählen, können Sie sie nicht mehr ändern. Wählen Sie Benutzer oder Team für eine präzisste Kontrolle darüber, wem Aktionen für Datensätze anzuzeigen oder ausgeführt werden können. Wählen Sie Organisation aus, wenn dieses Maß an Kontrolle nicht erforderlich ist.

Aktivitätstabellen

Eine Aktivität ist eine Aufgabe, die von einem Benutzer ausgeführt wurde oder auszuführen ist. Eine Aktivität ist eine beliebige Aktion, für die ein Eintrag in einem Kalender vorgenommen werden kann.

Aktivitäten werden anders modelliert als andere Arten von Tabellen, die Geschäftsdaten speichern. Daten über Aktivitäten werden oft in einer Liste angezeigt, aber die Aktivität benötigt der eindeutige Eigenschaften. Anstatt eine einzige Aktivitätstabelle mit allen möglichen Eigenschaften zu haben, gibt es separate Arten von Aktivitätstabellen und jede von ihnen erbt Eigenschaften von einer Basis ActivityPointer-Tabelle. Bei diesen Tabellen wird die Eigenschaft IsActivity auf true festgelegt.

Tabelle Beschreibung
Termin Verpflichtung, die ein Zeitintervall mit Start/Endzeit und Dauer angibt.
Email Aktivität, die unter Verwendung von E-Mail-Protokollen übermittelt wird.
Fax Aktivität, die das Anrufergebnis sowie die Anzahl der Seiten eines Fax nachverfolgt und optional eine elektronische Kopie des Dokuments speichert
Brief Aktivität, die die Zustellung eines Briefs nachverfolgt. Die Aktivität kann die elektronische Kopie des Briefs enthalten.
PhoneCall Aktivität zur Nachverfolgung eines Telefonanrufs.
RecurringAppointmentMaster Der Mastertermin einer Terminserie.
Social Media-Aktivitäten Nur zur internen Verwendung.
Aufgabe Allgemeine Aktivität, die die auszuführende Arbeit darstellt.

Wann immer jemand einen Datensatz einer dieser Arten von Aktivitätstabellen erstellt, wird ein entsprechender ActivityPointer-Tabellendatensatz mit demselben ActivityId-Einzelbezeichner-Spaltenwert erstellt. Sie können keine Instanzen der ActivityPointer-Tabelle erstellen, aktualisieren oder löschen, aber Sie können sie abrufen. Damit können Aktivitätstypen in einer Liste angezeigt werden.

Sie können angepasste Aktivitätstabellen erstellen, die sich genauso verhalten.

ActivityParty-Tabelle

Diese Tabelle wird verwendet, um den Spalten der Aktivitätstabelle PartyListType, die Verweise auf andere Tabellen enthalten, eine Struktur hinzuzufügen. Sie werden diese Tabelle verwenden, wenn Sie Werte für Aktivitätstabellen-Spalten wie Email.to oder PhoneCall.from festlegen. Innerhalb der ActivityParty-Tabelle legen Sie die Spalte ParticipationTypeMask fest, um die Rolle zu definieren, die die Referenz spielt. Rollen umfassen Sender, ToRecipient, Organizer und mehr.

Sie können die Tabelle ActivityParty abfragen, aber Sie können eine Aktivitätspartei außerhalb der Aktivität, auf die sie sich bezieht, nicht erstellen, abrufen, aktualisieren oder löschen. Weitere Informationen:

Untergeordnete Tabellen

Tabellen, bei denen die Eigenschaft IsChildEntity wahr ist, haben niemals irgendwelche definierten Zugriffsrechte und sind niemals im Besitz von Benutzern oder Teams. Operationen, die an einer untergeordneten Tabelle durchgeführt werden können, sind an eine Tabelle gebunden, mit der sie über eine N:1-Beziehung verbunden sind. Benutzer können nur dann Operationen an untergeordneten Tabellen durchführen, wenn sie die gleiche Operation an der zugehörigen Tabelle durchführen können. Untergeordnete Tabellen werden automatisch gelöscht, wenn der Tabellendatensatz, von dem sie abhängen, gelöscht wird.

Zum Beispiel sind PostComment, PostLike und PostRole jeweils untergeordnete Elemente der Tabelle Post.

Schlüssel

Jede Definition eines alternativen Schlüssels beschreibt eine oder mehrere Spalten in Kombination, die eine Tabelle eindeutig identifizieren. Alternativschlüssel werden in der Regel nur für die Integration mit externen Systemen angewendet. Sie können Alternativschlüssel definieren, um einen Datensatz eindeutig zu identifizieren. Dies ist dann von Nutzen, wenn Sie Daten in ein einzelnes System integrieren, das nicht den Schlüssel des GUID-Bezeichnerwerts unterstützt. Sie können einen einzelnen Spaltenwert oder eine Kombination von Spaltenwerten zur eindeutigen Identifizierung einer Tabelle definieren. Durch das Hinzufügen eines alternativen Schlüssels wird eine Eindeutigkeitsbeschränkung für diese Spalten erzwungen. Sie werden nicht in der Lage sein, einen anderen Datensatz der Tabelle mit denselben Werten zu erstellen oder zu aktualisieren.

Weitere Informationen:

Tabellenzustände

Die meisten Tabellen haben zwei Eigenschaften, um den Status eines Datensatzes zu erfassen. Dies sind StateCode, für die Status in modellgesteuerten Apps und StatusCode, die Statusgrund in modellgesteuerten Apps genannt werden.

Beide Spalten enthalten eine Reihe von Auswahlmöglichkeiten, die die gültigen Werte anzeigen. Die Werte der Spalten StateCode und StatusCode sind miteinander verknüpft, sodass nur bestimmte StatusCode-Auswahlmöglichkeiten für eine bestimmte StateCode gültig sind.

Dies kann je nach Tabelle variieren, aber das allgemeine Muster für viele Tabellen und die Vorgabe für angepasste Tabellen ist dies:

StateCode-Auswahlen StatusCode-Auswahlen
0 : Aktiv 1 : Aktiv
1 : Inaktiv 2 : Inaktiv

Einige Tabellen haben unterschiedliche Sätze von Auswahlmöglichkeiten.

Beispiel: PhoneCall Tabelle StateCode und StatusCode Auswahlmöglichkeiten

StateCode StatusCode
0 : Offen 1 : Offen
1 : Abgeschlossen 2 : Erledigt
4 : Empfangen
2 : Abgebrochen 3 : Abgebrochen

Die Menge der gültigen Statuscodes für eine Tabelle ist nicht festlegbar, aber die Statuscodes sind anpassbar. Sie können weitere StatusCode-Auswahlen für einen entsprechenden StateCode hinzufügen.

Für angepasste Tabellen können Sie weitere Kriterien für gültige Übergänge zwischen Zuständen definieren.

Weitere Informationen:

Siehe auch

Dataverse-Tabellen

Hinweis

Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)

Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).