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
Tipps für das Erstellen von Formularen für die Offlineverwendung
 
Anwendbar unter
Microsoft Office InfoPath® 2003 Service Pack 1

Wenn ein Benutzer ein neues InfoPath-Formular zum Ausfüllen öffnet, wird die diesem Formular zugewiesene Formularvorlage (Formularvorlage: Eine Datei oder eine Reihe von Dateien in InfoPath, welche die Datenstruktur, die Darstellung und das Verhalten eines Formulars definieren.) automatisch auf dem Computer des Benutzers gespeichert (oder zwischengespeichert). So kann der Benutzer das Formular auch ausfüllen, wenn sich der Computer im Offlinemodus befindet. Auf diese Weise müssen die Benutzer nicht unter Zeitdruck arbeiten und können das Ausfüllen des Formulars an ihre Arbeitsabläufe anpassen. Ein Benutzer kann z. B. schon auf einer Geschäftsreise anfangen, das Formular für die Spesenabrechnung auszufüllen. Wenn er wieder zurück im Büro ist, kann er eine Verbindung mit dem Firmennetzwerk herstellen und das ausgefüllte Formular auf einer Netzwerkfreigabe speichern, z. B. im Intranet des Unternehmens oder in einer Formularbibliothek (Formularbibliothek: Ein Ordner, in dem eine Sammlung von Formularen, die auf derselben Vorlage basieren, gespeichert und freigegeben sind. Jedem Formular in einer Formularbibliothek sind benutzerdefinierte Informationen zugeordnet, die im Inhaltsverzeichnis der Bibliothek angezeigt werden.) auf einer Microsoft Windows SharePoint Services-Website.

Wenn die Formularvorlage jedoch nicht im Hinblick auf die Offlineverwendung entworfen wurde, kommt es für die Benutzer im Offlinemodus möglicherweise zu Problemen mit dem Formular, die bei der Onlinebearbeitung nicht aufgetreten wären. Wenn in der Formularvorlage z. B. eine externe sekundäre Datenquelle (Sekundäre Datenquelle: Eine XML-Datenquelle, eine Datenbank oder ein Webdienst, die bzw. der von einem Formular für die Einträge in ein Listenfeld oder für Skriptaktionen verwendet wird.) verwendet wird und die Datenquelle der Formularvorlage nicht als Ressourcendatei hinzugefügt wurde, können Offlinebenutzer nicht auf die Daten in dieser Datenquelle zugreifen.

Wenn Sie eine Formularvorlage für die Offlineverwendung entwerfen, sollten Sie einige Dinge beachten, um sicherzustellen, dass die Benutzer im Offlinemodus auf Formulare zugreifen und sie ausfüllen können. In diesem Artikel werden die beiden optimalen Verfahren zum Entwerfen von Formularen für die Offlineverwendung vorgestellt – Erstellen eines benutzerdefinierten Skripts, um den Onlinestatus der Benutzercomputer zu ermitteln, und Hinzufügen aller sekundären Datenquellen zu den Formularen, die die Benutzer offline ausfüllen sollen.

Erstellen eines benutzerdefinierten Skripts zum Ermitteln des Onlinestatus

Zum Erstellen von Formularvorlagen für die Offlinebearbeitung können Sie ein benutzerdefiniertes Skript erstellen, mit dem Sie ermitteln können, ob der Computer eines Benutzers über eine Verbindung mit dem Netzwerk verfügt. Dies ist hilfreich, wenn Sie bestimmte Funktionen in der Formularvorlage aktivieren möchten, die davon abhängig sind, ob der Benutzer online arbeitet. Wenn Sie z. B. eine Formularvorlage entwerfen, in der Echtzeitdaten von einem Webdienst verwendet werden, sollten die Benutzer das Formular nur an einem Computer ausfüllen können, bei dem eine aktive Internetverbindung besteht. Wenn Sie in der Formularvorlage ein Skript hinzufügen, mit dem der Onlinestatus des Benutzers getestet wird, können Sie eine Nachricht anzeigen, wenn sich der Computer des Benutzers im Offlinemodus befindet. Darin können Sie die Benutzer auffordern, eine Verbindung mit dem Internet herzustellen, bevor sie das Formular ausfüllen.

Wenn Sie ermitteln möchten, ob ein Computer mit dem Netzwerk verbunden ist, können Sie die MachineOnlineState-Eigenschaft überprüfen. Diese Eigenschaft hat den Wert True, wenn der Computer mit einem Netzwerk verbunden ist. Im Offlinemodus weist diese Eigenschaft den Wert False auf.

Damit das Formular beim ersten Öffnen die Netzwerkverbindung erkennen kann, müssen Sie dem OnLoad-Ereignis in der Formularvorlage ein Skript hinzufügen. Skripts im OnLoad-Ereignis werden jedes Mal beim Öffnen eines Formulars ausgeführt. Gehen Sie wie folgt vor, um auf das OnLoad-Ereignis zuzugreifen:

  • Zeigen Sie im Entwurfsmodus im Menü Extras auf Programmierung, und klicken Sie anschließend auf On Load-Ereignis.

Hierdurch wird der OnLoad-Ereignishandler erstellt (der Name des Skripts, das beim Öffnen des Formulars ausgeführt wird – es „behandelt“ gewissermaßen das Ereignis). Außerdem wird Microsoft Script Editor (MSE) (Microsoft Script Editor [MSE]: Eine Programmierumgebung, die zum Erstellen, Bearbeiten und Debuggen von Microsoft JScript- oder Microsoft VBScript-Code in einem InfoPath-Formular verwendet wird.) geöffnet, und der Mauszeiger wird in dem Ereignishandler positioniert. Der Abschnitt des Skripts, mit dem Sie arbeiten, sollte wie folgt aussehen:

//=======
// Die folgende Handlerfunktion wurde von Microsoft Office InfoPath erstellt.
// Der Funktionsname und die Anzahl und Namen der Argumente dürfen nicht geändert werden.
//=======
function XDocument::OnLoad(eventObj)
{
	// Fügen Sie hier den Scriptcode ein}

Anmerkung  Alle Skripts in diesem Artikel folgen der Microsoft JScript-Syntax.

Es ist ausschlaggebend, dass Sie auf das OnLoad-Ereignis wie im zuvor beschriebenen Verfahren erläutert zugreifen. So wird automatisch ein Eintrag 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.) erstellt. Dies ist erforderlich, damit der Ereignishandler ordnungsgemäß ausgeführt werden kann. Nachdem Sie den OnLoad-Ereignishandler erstellt haben, fügen Sie das Skript zum Überprüfen der Netzwerkverbindung des Benutzercomputers hinzu.

  1. Kopieren Sie den folgenden Text in einen Texteditor (z. B. Microsoft Editor), markieren Sie den Text im Texteditor, und ersetzen Sie dann den Text // Fügen Sie hier den Scriptcode ein im OnLoad-Ereignis in MSE.

    Anmerkung  Durch das Verschieben des Texts in einen Texteditor, bevor er in der Formularvorlage in MSE hinzugefügt wird, können Sie verhindern, dass Hypertext Markup Language (HTML) (HTML: Die standardmäßig für Dokumente im World Wide Web verwendete Programmiersprache. In HTML wird mithilfe von Tags angegeben, wie Elemente einer Seite (Text oder Grafiken) in Webbrowsern angezeigt werden sollen und wie auf Benutzereingaben reagiert werden soll.)-Formatierungszeichen im Skript eingefügt werden.

    if (0==Application.MachineOnlineState) 
    { 
         XDocument.UI.Alert("Ihr Computer befindet sich im Offlinemodus.");
    }
    else
    {
         XDocument.UI.Alert("Ihr Computer befindet sich im Onlinemodus.");
    }

  2. Überprüfen Sie das Skript auf Fehler, und ersetzen Sie dann im gerade eingefügten Skript den Text "Ihr Computer befindet sich im Offlinemodus" durch die Nachricht, die für die Benutzer beim Öffnen des Formulars angezeigt werden soll, wenn ihr Computer offline ist. Sie können den Code z. B. in folgenden Text ändern: "In diesem Formular werden Daten aus einem Webdienst verwendet. Stellen Sie eine Verbindung mit dem Internet her, und öffnen Sie dann das Formular." Sie können die Bedingung nach else und die folgende Meldung auch löschen, wenn bei Onlinemodus des Computers keine Meldung angezeigt werden soll.
  3. Klicken Sie in MSE im Menü Datei auf Speichern.
  4. Deaktivieren Sie zum Testen des benutzerdefinierten Skripts die Netzwerkverbindung, und klicken Sie dann auf der Standardsymbolleiste auf Formularvorschau.

    Wenn das Formular im Vorschaufenster geöffnet wird, sollte die von Ihnen erstellte Nachricht angezeigt werden.

Sie können das Skript im vorhergehenden Beispiel auch ändern, um zu ermitteln, ob auf dem Computer, auf dem ein Formular ausgefüllt wird, eine IP-Adresse, ein UNC-Pfad oder ein URL verfügbar ist. Hierzu verwenden Sie die IsDestinationReachable-Methode. Diese Unterscheidung ist wichtig, da ein Server online, jedoch trotzdem nicht verfügbar sein kann. Betrachten Sie z. B. einen Benutzer, der zu Hause und bei der Arbeit einen Laptop verwendet. Im Büro kann er ein Formular ausfüllen, das auf eine sekundäre Datenquelle von einem Webserver zugreift, der sich im Intranet des Unternehmens befindet. Wenn der gleiche Benutzer zu Hause mit dem Laptop eine Verbindung mit dem Internet herstellt, kann auf den Webdienst nicht zugegriffen werden, auch wenn der Computer online ist. Ein Skript, das eine IP-Adresse, einen UNC-Pfad oder einen URL ermittelt, ist daher hilfreich, um dem Benutzer in einem solchen Fall weitere Informationen zur Verfügung zu stellen.

Um ein Skript zu erstellen, das die Verfügbarkeit eines Servers ermittelt, ändern Sie das Skript in Schritt 1 im oben beschriebenen Verfahren so, dass es dem folgenden Beispiel entspricht. Denken Sie daran "http://Beispiel/" durch den Veröffentlichungsort der Formularvorlage zu ersetzen:


if (0==Application.IsDestinationReachable("http://Beispiel/")) 
{

     XDocument.UI.Alert("Der Server ist nicht verfügbar.");
}
else
{
     XDocument.UI.Alert("Der Server ist verfügbar.");
}

Einschließen von sekundären Datenquellen im Formular

Bei einer sekundären Datenquelle handelt es sich um eine XML (Extensible Markup Language (XML): Eine komprimierte Form der Standard Generalized Markup Language (SGML), mit deren Hilfe Entwickler benutzerdefinierte Tags erstellen können, die eine flexible Organisation und Präsentation von Informationen ermöglichen.)-Datendatei (Extensible Markup Language), eine Datenbank oder einen Webdienst, mit der bzw. dem in einem Formular Listenfelder ausgefüllt werden können. Benutzer, die ein Formular offline ausfüllen, können nicht auf sekundäre Datenquellen zugreifen, bei denen Datenbanken oder Webdienste verwendet werden. Wenn Sie daher ein Formular für die Offlineverwendung erstellen, sollten Sie eine XML-Datei als sekundäre Datenquelle verwenden, da die benötigten Daten so mit dem Formular und nicht an einem Speicherplatz im Netzwerk gespeichert werden. Mit dem Ressourcen-Manager können Sie einem Formular XML-Dateien hinzufügen.

  1. Klicken Sie im Entwurfsmodus im Menü Extras auf Ressourcendateien.
  2. Klicken Sie im Dialogfeld Ressourcendateien auf Hinzufügen.
  3. Wählen Sie im Dialogfeld Datei hinzufügen die XML-Datei aus, die Sie als sekundäre Datenquelle hinzufügen möchten.
Anzeige