Ereignisse in Formularen und in Rastern in modellgesteuerten Apps

Ereignisse in Formularen und Rastern initiieren den gesamten clientseitigen Code in modellgesteuerten Apps. Sie ordnen eine bestimmte Funktion in einer JavaScript-Bibliothek (Skriptwebressource) zu, die ausgeführt werden soll, wenn ein Ereignis auftritt. Diese Funktion wird als Ereignishandler bezeichnet. Jeder Ereignishandler gibt eine Funktion innerhalb einer einzelnen JavaScript-Bibliothek und alle Parameter an, die an die Funktion übergeben werden können.

Sie können Ereignishandler nur einigen Ereignissen zuordnen, indem Sie die Benutzeroberfläche verwenden. Für Ereignisse, die Sie nicht über die Benutzeroberfläche zuordnen können, stellt die Client-API Methoden bereit, die Sie zum Anfügen von Ereignishandlern verwenden können.

Hinzufügen oder Entfernen von Ereignishandlerfunktionen in Formularen mithilfe der Benutzeroberfläche

So fügen Sie Ereignishandlerfunktionen für Ereignisse in der neuen Unified Interface hinzu oder entfernen sie:

  1. Wechseln Sie zu Power Apps.

  2. Wählen Sie im linken Navigationsbereich Daten und wählen Sie dann Tabellen.

  3. Wählen Sie aus der Liste der Tabellen die Tabelle aus, in der Sie die Ereignishandler hinzufügen möchten.

  4. Wählen Sie in der Befehlsleiste die Registerkarte "Formulare " aus, und wählen Sie dann das Formular aus, in dem Sie den Ereignishandler hinzufügen möchten.

    Screenshot der Registerkarte

  5. Wählen Sie die Registerkarte "Ereignisse " aus. Sowohl die Ereignishandler " Beim Speichern" als auch " Beim Laden " werden angezeigt.

    Screenshot der Registerkarte

  6. Wenn Sie einen Ereignishandler für das Änderungsereignis hinzufügen möchten, wählen Sie die Spalte und dann die Registerkarte "Ereignis " aus.

    Screenshot der Registerkarte

Massenbearbeitung von Formularen

Standardmäßig werden Ereignishandler nicht ausgeführt, wenn sich ein Formular im Massenbearbeitungsmodus befindet.

Um einen Ereignishandler im Massenbearbeitungsmodus zu aktivieren, ändern Sie den Formular-XML-Code, indem Sie das relevante event Element suchen und das BehaviorInBulkEditForm Attribut erstellen oder festlegen auf Enabled. Derzeit wird dieses Verhalten nur für OnLoad-Ereignisse unterstützt.

Weitere Informationen zur Xml-Anpassung von Formularen finden Sie unter "Wann können Sie die Anpassungsdatei bearbeiten,Formulareanpassen" und das Formular-XML-Schema.

Verwenden Sie die getFormType Methode, um festzustellen, wann ein Ereignishandler in einem Formular im Massenbearbeitungsmodus ausgeführt wird.

Hinzufügen oder Entfernen von Ereignishandlerfunktionen mithilfe von Client-API-Code

Verwenden Sie die folgenden Methoden, um Ereignishandler für Ereignisse hinzuzufügen und zu entfernen, die Sie nicht über die Benutzeroberfläche zuordnen können:

Veranstaltungen Ereignishandler
Attribut OnChange addOnChange und removeOnChange-Methoden
Formular OnLoad formContext.ui und addOnLoad und removeOnLoad-Methoden
Formular geladen formContext.ui addLoaded- und removeLoaded-Methoden
Formulardaten OnLoad formContext.data addOnLoad und removeOnLoad-Methoden
Formular OnSave addOnSave und removeOnSave-Methoden
Nachschlagesteuerung PreSearch addPreSearch und removePreSearch-Methoden
kbsearch Steuerelement OnResultOpened addOnResultOpened und removeOnResultOpened-Methoden
kbsearch Steuerelement OnSelection addOnSelection und removeOnSelection-Methoden
kbsearch Steuerelement PostSearch addOnPostSearch und removeOnPostSearch-Methoden

Wichtig

Der Ausführungskontext wird automatisch als erster Parameter an Funktionen übergeben, die Sie mithilfe des Codes festlegen. Weitere Informationen finden Sie im Client-API-Ausführungskontext.

Formularereignispipeline

Sie können bis 50 Ereignishandler für jedes Ereignis definieren. Im Abschnitt "Ereignishandler" auf der Registerkarte "Ereignisse " des Dialogfelds " Formulareigenschaften " wird die Reihenfolge der Ereignishandler angezeigt, und jeder Ereignishandler wird in dieser Reihenfolge ausgeführt.

Verwenden Sie die setSharedVariable und getSharedVariable-Methoden, um eine gemeinsam genutzte Variable zwischen Erreignishndlern (Funktionen) zu übergeben. Verwenden Sie die GetDepth-Methode zum Ausführen des Ausführungskontexts, um die Abfolge der Ereignishandlerausführung relativ zu anderen Ereignishandlern zu verstehen.

Grundlegendes zum Client-API-Objektmodell
Client-API-Ausführungskontext
Ereignissse (Client-API-Referenz)