Microsoft Office Online
Für Mein Office Online (Was ist das?) registrieren | Anmelden

 
 
Microsoft Office InfoPath
Suchen
Suchen
 
 
 
 
Warnung: Sie haben diese Webseite mit einem nicht unterstützten Browser geöffnet. Diese Webseite wird am besten angezeigt, wenn Sie Microsoft Internet Explorer 6.0 oder höher, Firefox 1.5 oder Netscape Navigator 6.0 oder höher verwenden. Hier finden Sie weitere Informationen über unterstützte Browser.

DruckversionDruckversion Lesezeichen und FreigabeFreigabe
Erstellen eines Ereignishandlers
 

Beim Schreiben von Skript für eine Microsoft Office InfoPath-Formularvorlage schreiben Sie üblicherweise Code in einer der Formularvorlagen oder Ereignishandler zur Datenüberprüfung. Ein Ereignishandler ist der Funktionscode in einer InfoPath-Formularvorlage, der auf eine Benutzeraktion oder eine Änderung an den XML-Daten in einem Formular reagiert. Wie der Ereignishandler erstellt wird, hängt vom zu verwendenden Ereignistyp ab. Es ist wichtig, den Ereignishandler im Designmodus zu erstellen, da InfoPath die Deklarationen des Ereignishandlers in der Skriptdatei automatisch erstellt und Eintragungen in der Formulardefinitionsdatei (XSF) (Formulardefinitionsdatei: Eine XML-Datei mit der Erweiterung XSF, die Informationen zu allen anderen Dateien und Komponenten, z. B. Anpassungen der Benutzeroberfläche, XML-Schemas, Ansichten, Geschäftslogik, Ereignisse und Bereitstellungseinstellungen enthält, die in einem Formular verwendet werden.) vornimmt, dank derer eine Formularvorlage Ereignishandler verwenden kann.

 Hinweis   Obwohl die Ereignishandler manuell in der Skriptdatei erstellt werden können und dann durch manuelles Hinzufügen der entsprechenden Elemente zur XSF-Datei aktiviert werden können, ist dies nicht empfehlenswert. Durch das Vornehmen einer ungültigen Änderung an der XSF-Datei könnte die Formularvorlage unbrauchbar werden.

In der folgenden Tabelle werden alle InfoPath-Ereignishandler aufgeführt sowie die Schritte zum Erstellen dieser Ereignishandler. Beim Erstellen eines Ereignishandlers für eine Formularvorlage wird von InfoPath der Microsoft Skript-Editor (MSE) (Microsoft Script Editor: Wird zum Hinzufügen von Text und zum Bearbeiten von HTML-Tags sowie VBScript-Code (Microsoft Visual Basic Scripting Edition) auf einer Datenzugriffsseite verwendet. Sie können Ihre Seite im Skript-Editor auch so anzeigen, wie sie in einem Webbrowser dargestellt würde.) gestartet und der Cursor im Code für diesen Ereignishandler platziert. Dann können Sie das Skript für den Ereignishandler schreiben. Genaue Informationen zu InfoPath-Ereignissen und -Ereignishandlern finden Sie in der InfoPath-Entwicklerreferenz, die in der MSE-Hilfe verfügbar ist.

Ereignishandler Beschreibung Schritte beim Erstellen
OnAfterChange Dieses Ereignis wird ausgeführt, nachdem ein Benutzer den Wert in dem angegebenen Steuerelement, das an ein Feld gebunden ist, geändert hat. Sie können z. B. einen benutzerdefinierten HTML-Aufgabenbereich anzeigen, nachdem der Benutzer ein Element in einem Listenfeld-Steuerelement ausgewählt hat. Dieses Ereignis wird nach dem Ereignis OnValidate ausgeführt. Klicken Sie mit der rechten Maustaste auf ein Steuerelement auf der Formularvorlage oder ein Feld im Aufgabenbereich Datenquelle, zeigen Sie im Kontextmenü auf Programmierung, und klicken Sie auf On After Change-Ereignis.
OnAfterImport Dieses Ereignis wird ausgeführt, nachdem der Benutzer mehrere Formulare in einem Formular zusammengeführt hat. Fügen Sie manuell mithilfe von MSE direkt der Skriptdatei die Deklaration des Ereignishandlers OnAfterImport hinzu. Dieser Ereignishandler kann nicht im Entwurfsmodus erstellt werden.
OnBeforeChange Dieses Ereignis wird ausgeführt, wenn ein Benutzer den Wert in einem Steuerelement ändert und bevor der Wert in dem an dieses Steuerfeld gebundene Feld hinzugefügt wurde. Sie können z. B. verhindern, dass ein Benutzer eine zusätzliche Zeile hinzufügt, bevor er die letzte Zeile in einer wiederholten Tabelle ausgefüllt hat. Klicken Sie mit der rechten Maustaste auf ein Steuerelement auf der Formularvorlage oder ein Feld im Aufgabenbereich Datenquelle, zeigen Sie im Kontextmenü auf Programmierung, und klicken Sie auf On Before Change-Ereignis.
OnClick Dieses Ereignis wird ausgeführt, wenn ein Benutzer auf eine diesem Ereignis zugeordnete Schaltfläche klickt . Dieses Ereignis ist nach dem Hinzufügen einer Schaltfläche zu der Formularvorlage verfügbar. Sie können z. B. eine komplizierte Berechnung mithilfe der Werte in den Feldern in der Hauptdatenquelle ausführen, wenn ein Benutzer auf die Schaltfläche klickt. Doppelklicken Sie auf das Schaltflächen-Steuerelement und anschließend auf die Registerkarte Allgemein im Dialogfeld Schaltflächeneigenschaften, klicken Sie auf Formularcode bearbeiten.
OnContextChange Dieses Ereignis wird ausgeführt, wenn ein Benutzer ein Feld in einer Gruppe ändert. Sie können z. B. einen benutzerdefinierten HTML-Aufgabenbereich mit mehr Informationen zu einem Steuerelement in einer Ansicht anzeigen. Der Code wird ausgeführt, wenn der Benutzer das Steuerelement auswählt und eine bestimmte Taste, z. B. F1, drückt. Dieses Ereignis tritt ein, nachdem die Ereignisse OnLoad und OnSwitchView eingetreten sind. Zeigen Sie im Menü Extras auf Programmierung, und klicken Sie anschließend auf On Context Change-Ereignis.
OnLoad Dieses Ereignis wird jedes Mal ausgeführt, wenn ein Benutzer ein neues Formular erstellt oder ein vorhandenes Formular, das auf Ihrer Formularvorlage beruht, öffnet. Sie können z. B. eine Liste von Elementen aus einer sekundären Datenquelle in die Hauptdatenquelle kopieren, wenn ein Benutzer das Formular öffnet. Zeigen Sie im Menü Extras auf Programmierung, und klicken Sie anschließend auf On Load-Ereignis.
OnMergeRequest Dieses Ereignis wird ausgeführt, wenn Formulare, die auf Ihrer Formularvorlage basieren, zusammengeführt werden. Sie können z. B. die Anzahl der zusammengeführten Formulare anzeigen, um dem Benutzer während des Zusammenführungsvorgangs eine Statusinformationen zu geben. Klicken Sie im Menü Extras auf Formularoptionen. Klicken Sie in der Liste Kategorie auf Erweitert. Aktivieren Sie unter Formulare zusammenführen das Kontrollkästchen Mithilfe benutzerdefiniertem Code zusammenführen, und klicken Sie anschließend auf Bearbeiten.
OnSaveRequest Dieses Ereignis wird ausgeführt, wenn ein Benutzer ein auf Ihrer Formularvorlage basierendes Formular speichert. Sie können z. B. das auf dieser Formularvorlage basierende Formular an mehr als einem Speicherort speichern, wenn ein Benutzer das Formular speichert. InfoPath fügt zwei zusätzliche Codezeilen für dieses Ereignis hinzu: eine Zeile, mit der das Formular gespeichert wird, und eine andere Zeile, die Ihnen mitteilt, ob InfoPath das Formular erfolgreich gespeichert hat. Klicken Sie im Menü Extras auf Formularoptionen. Klicken Sie in der Liste Kategorie auf Öffnen und speichern. Aktivieren Sie unter Verhalten beim Speichern das Kontrollkästchen Speichern erfolgt mittels benutzerdefiniertem Code, und klicken Sie anschließend auf Bearbeiten.
OnSign Dieses Ereignis wird ausgeführt, wenn ein Benutzer ein Formular digital signiert. Sie können z. B. der digitalen Signatur eines Kostenberichtsformulars zusätzliche Daten hinzufügen, wenn der Benutzer das Formular unterschreibt. Zeigen Sie im Menü Extras auf Programmierung, und klicken Sie anschließend auf On Sign-Ereignis.
OnSubmitRequest Dieses Ereignis wird ausgeführt, wenn ein Benutzer Formulardaten absendet. Sie können z. B. die Formulardaten an einen sicheren Webdienst senden, wenn der Benutzer im Menü Datei auf Absenden klickt. Da InfoPath eine Datenverbindung zu einem sicheren Webdienst nicht unterstützt, müssen Sie eine benutzerdefinierte Datenverbindung hinzufügen, die mit Ihrem sicheren Webdienst funktioniert. Klicken Sie im Menü Extras auf Optionen zum Absenden. Aktivieren Sie das Kontrollkästchen Übermitteln dieses Formulars durch Benutzer zulassen, klicken Sie auf Benutzerdefinierte Aktion mithilfe von Code ausführen, und klicken Sie anschließend auf Code bearbeiten.
OnSwitchView Dieses Ereignis wird ausgeführt, wenn ein Benutzer ein auf Ihrer Formularvorlage basierendes Formular öffnet oder in eine andere Ansicht im Formular wechselt. Sie können z. B., wenn ein Benutzer in eine bestimmte Ansicht wechselt, eine E-Mail-Nachricht erstellen, die die Daten aus den Feldern in der Hauptdatenquelle des Formulars enthält. Zeigen Sie im Menü Extras auf Programmierung, und klicken Sie anschließend auf On Switch View-Ereignis.
OnValidate Dieses Ereignis wird ausgeführt, wenn ein Benutzer den Wert in einem Steuerelement, das an ein Feld gebunden ist, ändert. Sie können z. B., wenn der Benutzer den Wert in einem bestimmten Steuerelement ändert, einen neuen Wert für ein anderes Steuerelement berechnen, indem Sie die vom Benutzer eingegebene Zahl und eine im Skript enthaltene Zahl verwenden. Dieses Ereignis tritt ein, nachdem der Ereignishandler OnBeforeChange ausgeführt wurde. Klicken Sie mit der rechten Maustaste auf ein Steuerelement auf der Formularvorlage oder ein Feld im Aufgabenbereich Datenquelle, zeigen Sie im Kontextmenü auf Programmierung, und klicken Sie auf On After Validate-Ereignis.
OnVersionUpgrade Dieses Ereignis wird ausgeführt, wenn ein Benutzer ein vorhandenes Formular öffnet und die vom vorhandenen Formular verwendete Versionsnummer der Formularvorlage älter als die Versionsnummer der Formularvorlage am Veröffentlichungsort ist. Wenn ein Benutzer eine vorhandene Formularvorlage öffnet, wird von InfoPath die Versionsnummer der Formularvorlage für das vorhandene Formular überprüft. Wenn die Formularvorlage eine neuere Versionsnummer aufweist, führt InfoPath den Ereignishandler OnVersion aus, sobald der Benutzer das vorhandene Formular öffnet. Stellen Sie sich z. B. vor, dass Sie einer vorhandenen Formularvorlage ein neues Feld hinzufügen und diese erneut veröffentlichen, und Sie möchten, dass der Hauptdatenquelle das neue Feld hinzugefügt wird, wenn ein Benutzer ein vorhandenes Formular öffnet. Dieses Ereignis fügt der Hauptdatenquelle das neue Feld hinzu, wenn ein Benutzer ein vorhandenes Formular öffnet. Klicken Sie im Menü Extras auf Formularoptionen. Klicken Sie in der Liste Kategorie auf Versionskontrolle. Klicken Sie in der Liste Bei Versionsaktualisierung auf Benutzerdefiniertes Ereignis verwenden, und klicken Sie anschließend auf Bearbeiten.
Anzeige