Client-API-Formularkontext
Der Client-API-Formularkontext (formContext) bietet eine Referenz im Formular oder auf ein Element im Formular, wie z. B. ein Steuerelement für die Schnellansicht oder eine Zeile in einem bearbeitbaren Raster, für den der aktuelle Code ausgeführt wird.
Früher wurde das globale Xrm.Page-Objekt dazu verwendet, um ein Formular oder ein Element im Formular darzustellen. Mit der neuesten Version ist das Xrm.Page-Object veraltet, und Sie sollen nun die getFormContext-Methode aus dem zur Ausführung übergebenen Kontextobjekt verwenden, um die Referenz ins entsprechende Formular oder ein Element im Formular zurückzugeben.
Wichtig
Veraltet bedeutet, dass wir eine Funktion aus einer zukünftigen Version von modellgesteuerten Apps entfernen möchten; die Funktionen oder die Funktionalität wird weiterhin funktionieren und vollständig unterstützt, bis sie offiziell entfernt wird. Mindestens sechs Monate vor dem Entfernen wird eine öffentliche Ankündigung hier in der Dokumentation, im offiziellen Blog und an vielen anderen Orten ausgegeben.
Verwendung von Xrm.Page als statischen Zugang zum primären Formularkontext ist weiterhin unterstützt, um die vorhandene Abwärtskompatibilität mit Skripten beizubehalten und wird nicht entfernt, sobald weitere Client API-Methoden im Bereich der Client API-Veraltung entfernt werden. Es wird empfohlen, das Sie das neue formContext-Objekt und nicht das Xrm.Page-Objekt in Ihrer Codezielgruppenadressierung Version 9.0 oder höher verwenden, sofern möglich. Ein weiterer Vorteil der Verwendung des formContext-Objekts ist, dass es Ihnen ermöglicht, gemeinsame Ereignishandler zu erstellen, die entweder über ein Formular oder in einem bearbeitbaren Raster verwendet werden, je nachdem wo sie aufgerufen werden. Weitere Informationen: getFormContext (Client-API-Referenz).
Das Ziel für formContext JavaScript-Funktionen für Menübandaktionen abzurufen, ist jedoch unterschiedlich vom Abrufen von Formularskripts. Weitere Informationen: Formular- und Rasterkontext in Menübandaktionen.
Hinweis
Formularkontexte sind nur während des Ereignisses gültig, bei dem sie übergeben werden. Es gelten die gleichen Einschränkungen wie bei Ausführungskontexten
Verwendung des formContext-Objekts anstelle des Xrm.Page-Objekts
Es ist einfach, den vorhandenen Code mit Xrm.Page zu konvertieren, um das neue formContext-Objekt zu verwenden. Betrachten Sie beispielsweise das folgende Skript, das das Xrm.Page-Objekt verwendet:
function displayName()
{
var firstName = Xrm.Page.getAttribute("firstname").getValue();
var lastName = Xrm.Page.getAttribute("lastname").getValue();
console.log(firstName + " " + lastName);
}
Hier ist das aktualisierte Skript, das den übergebenen Ausführungskontext verwendet, um das formContext -Objekt abzurufen, anstatt das statische Xrm.Page -Objekt zu verwenden:
function displayName(executionContext)
{
var formContext = executionContext.getFormContext(); // get formContext
// use formContext instead of Xrm.Page
var firstName = formContext.getAttribute("firstname").getValue();
var lastName = formContext.getAttribute("lastname").getValue();
console.log(firstName + " " + lastName);
}
Wichtig
Sie müssen daran denken, die Option Ausführungskontext als ersten Parameter übergeben im Dialogfeld Handlereigenschaften auszuwählen, während Sie die Ereignishandler für die Verwendung des Objekts formContext definieren. Weitere Informationen: Client-API-Ausführungskontext
formContext-Objektmodell
Verwenden Sie die Daten- und Benutzerschnittstelle-Objekte unter dem formContext-Objekt, um Daten oder Benutzerschnittstellenelemente in modellgesteuerten Apps programmgesteuert zu bearbeiten.
Datenobjekt
Stellt Eigenschaften und Methoden zur Verfügung, um mit den Daten auf einem Formular zu arbeiten, einschließlich Tabellendaten und Daten im Steuerelement für den Business Process Flow. Enthält die folgenden Objekte:
Object | Beschreibung |
---|---|
attributes |
Sammlung von Nicht-Tabellendaten im Formular. Die Elemente in dieser Sammlung sind vom gleichen Typ wie die Spaltensammlung, es handelt sich jedoch nicht um Spalten der Formulartabelle. Weitere Informationen: Sammlungen. |
entity |
Bietet Eigenschaften und Methoden zum Abrufen von Informationen, die spezifisch für den auf der Seite angezeigten Datensatz sind, die Speichermethode und eine Sammlung aller im Formular enthaltenen Spalten. Spaltendaten sind auf Spalten beschränkt, die im Formular dargestellt werden. Weitere Informationen: formContext.data.entity |
process |
Stellt Objekte und Methoden zum Interagieren mit den Geschäftsprozessfluss-Daten in einem Formular bereit. Weitere Informationen: formContext.data.process |
Es bietet auch eine Attribute Sammlung für den Zugriff auf nicht tabellengebundenes Steuerelement. Weitere Informationen finden Sie im Abschnitt Sammlungen im formContext-Objektmodell weiter unten in diesem Artikel.
Weitere Informationen: formContext.data
Benutzerschnittstellenobjekt
Bietet neben Sammlungen für verschiedene Unterkomponenten des Formulars oder Rasters die Methoden zum Abrufen von Informationen über die Benutzerschnittstelle. Enthält die folgenden Objekte:
Object | Beschreibung |
---|---|
formSelector |
Bietet eine Elementsammlung, die Funktionen zum Abfragen der Formulare, die für den aktuellen Benutzer verfügbar sind, bereitstellt. Verwenden Sie die Navigationsmethode, um das aktuelle Formular zu schließen und ein anderes zu öffnen. |
navigation |
Enthält keine Methoden. Bietet Zugriff auf die Navigationselemente über die Elementsammlung. Weitere Informationen über Sammlungen finden Sie im folgenden Abschnitt. |
process |
Stellt Methoden zum Interagieren mit den Geschäftsprozessflusssteuerung in einem Formular bereit. |
Weitere Informationen: formContext.ui
Sammlungen im formContext-Objektmodell
Die folgende Tabelle beschreibt die Sammlungen im Xrm-Objektmodell. Weitere Informationen über die für Sammlungen allgemein verfügbaren Methode finden Sie unter Sammlungen (Client-API-Referenz).
Sammlung | Beschreibung |
---|---|
Attribute | Zwei Objekte enthalten eine Spaltensammlung: - formContext.data.attributes Sammlung bietet Zugriff auf nicht tabellengebundenen Spalten. - formContext.data.entity.attributes Sammlung bietet Zugriff auf jede Tabellenspalte, die im Formular verfügbar ist. Es sind nur die dem Formular hinzugefügten Spalten verfügbar. |
Steuerelemente | Drei Objekte enthalten eine Sammlung von Steuerelementen: - formContext.ui.controls: Bietet den Zugriff auf jedes Steuerelement, das im Formular vorhanden ist. - formContext.data.entity.attribute.controls: Da eine Spalte im Formular mehr als ein Steuerelement enthalten kann, ermöglicht diese Sammlung den Zugriff auf alle diese Steuerelemente. Diese Sammlung enthält nur ein Element, sofern dem Formular nicht mehrere Steuerelemente für die Spalte hinzugefügt werden. - formContext.ui.tabs.sections.controls: Diese Sammlung enthält nur die Steuerelemente, die im Bereich gefunden sind. |
formContext.data.process.stages und formContext.data.process.steps | Stellt den Zugriff auf die Phasen- und Schrittsammlungen in einem Geschäftsprozessfluss bereit. Diese erlauben auch das Hinzufügen und Entfernen der Elementen der Sammlung. |
formContext.ui.formselector.Elemente | Wenn für eine Tabelle mehrere Formulare bereitgestellt werden, können Sie jedem Formular Sicherheitsrollen zuordnen. Wenn die Sicherheitsrollen, die einem Benutzer zugeordnet sind, es diesem ermöglichen, mehr als ein Formular anzuzeigen, bietet die formContext.ui.formSelector.items-Sammlung den Zugriff auf jede Formulardefinition, die diesem Benutzer verfügbar ist. |
formContext.ui.navigation.items | Die formContext.ui.navigation.items-Sammlung bietet den Zugriff auf die Navigationselemente, die mithilfe des Navigationsbereichs des Formular-Editors definiert werden. Benutzer navigieren dazu mithilfe der Befehlsleiste. |
formContext.ui.quickForms | Bietet Methoden für den Zugriff auf alle Schnellansichtssteuerelemente und die dazugehörigen Steuerelemente in den Formularen. |
formContext.ui.tabs | Sie können jedes Formular organisieren, indem Sie eine oder mehrere Registerkarten verwenden. Diese Sammlung bietet Zugriff auf jede dieser Registerkarten. |
formContext.ui Tab. Abschnitte | Sie können jede Registerkarte im Formular organisieren, indem Sie einen oder mehrere Abschnitte verwenden. Die sections-Sammlung der Registerkarten bietet Zugriff auf jeden dieser Abschnitte. Sie müssen die Registerkarte definieren, die den gewünschten Abschnitt enthält, oder jede Registerkarte durchsuchen, um den relevanten Abschnitt zu finden. |
Ähnliche Artikel
getFormContext-Methode
getGlobalContext-Methode
getAttribute-Methode
getControl-Methode
Ausführungskontextmethoden
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).