Sie können eine Formularvorlage entwerfen, die mit einer Microsoft SQL Server-Datenbank zusammenarbeiten kann, um Entweder Daten abzufragen oder Daten abzufragen und zu übermitteln.
Inhalt dieses Artikels
- Übersicht
- Überlegungen zur Kompatibilität
- Bevor Sie beginnen
- Entwerfen der Formularvorlage
- Konfigurieren der Übermittlungsoptionen
Übersicht
Ein Formular kann über eine primäre Datenverbindung verfügen, die als Hauptdatenverbindung bezeichnet wird, und optional über eine oder mehrere sekundäre Datenverbindungen verfügen. Abhängig von Ihren Zielen für das Formular kann eine Datenverbindung Formulardaten abfragen oder an eine externe Datenquelle senden, z. B. eine Microsoft SQL Server-Datenbank oder einen Webdienst.
Wenn Sie eine Formularvorlage entwerfen, die auf einer Datenbank basiert, erstellt Microsoft Office InfoPath eine Hauptdatenquelle mit Gruppen, die Abfragefelder und Datenfelder enthalten, sowie eine Abfragedatenverbindung als Hauptdatenverbindung für die Formularvorlage. Diese Felder und Gruppen entsprechen der Art und Weise, wie Daten in den Tabellen in der Datenbank gespeichert werden. Abfragefelder enthalten die Daten, die von einem Benutzer eingegeben werden, um die Abfrageergebnisse auf Datensätze zu beschränken, die den Daten in den Abfragefeldern entsprechen. Wenn ein Formular, das auf dieser Formularvorlage basiert, die Hauptdatenverbindung verwendet, erstellt InfoPath mithilfe der Daten in den Abfragefeldern eine Abfrage. InfoPath sendet die Abfrage dann über die Abfragedatenverbindung. Die Datenbank gibt die Ergebnisse der Abfrage über die Abfragedatenverbindung an das Formular zurück. Die Ergebnisse der Abfrage werden in Datenfelder eingefügt, die über Steuerelemente bearbeitet werden können, die an diese Felder gebunden sind.
Da die Datenstruktur der Abfrage und der Datenfelder mit der Art und Weise übereinstimmen muss, wie daten in der Datenbank gespeichert werden, können Sie diese Felder oder Gruppen in der Hauptdatenquelle nicht ändern. Sie können nur Felder oder Gruppen zur Stammgruppe in der Hauptdatenquelle hinzufügen. Links zu weiteren Informationen zu Datenquellen finden Sie im Abschnitt Siehe auch .
Ein Formular kann Daten über die Hauptdatenverbindung des Formulars an eine Datenbank senden, wenn die Formularvorlage, auf der das Formular basiert, und die Datenbank die folgenden Anforderungen erfüllen:
- Die Formularvorlage ist keine browserkompatible Formularvorlage . InfoPath erstellt keine Übermittlungsdatenverbindung in der Hauptdatenverbindung, wenn Sie eine browserkompatible Formularvorlage entwerfen. Damit Benutzer Daten in einem Formular übermitteln können, das auf einer browserkompatiblen Formularvorlage basiert, verwenden Sie einen Webdienst, der mit der Datenbank arbeitet.
- Die linke Tabelle in jedem Paar verwandter Tabellen in der Hauptdatenquelle enthält einen Primärschlüssel . Mindestens eine der Beziehungen für jedes Verknüpfte Tabellenpaar muss einen Primärschlüssel aus der linken Tabelle enthalten.
- Keines der Datenfelder in der Hauptdatenquelle des Formulars speichert einen großen binären Datentyp . InfoPath deaktiviert die Übermittlungsdatenverbindung, wenn die Abfrage Felder enthält, die einen großen binären Datentyp speichern können, z. B. Bilder, Bilder, OLE-Objekte, Dateianlagen, den Office Access-Memo-Datentyp oder den SQL Text-Datentyp.
Wenn InfoPath die Verbindung zum Senden von Daten aktiviert, können Benutzer die Daten in den Datenfeldern in der Hauptdatenquelle an die Datenbank übermitteln. Wenn InfoPath die Verbindung zum Senden von Daten aktiviert, können Sie die Übermittlungsoptionen für die Formulare anpassen, die auf dieser Formularvorlage basieren.
Überlegungen zur Kompatibilität
Wenn Sie eine Formularvorlage entwerfen, die auf einer Datenbank basiert, haben Sie die Möglichkeit, eine browserkompatible Formularvorlage zu entwerfen. InfoPath erstellt eine Abfragedatenverbindung als Hauptdatenverbindung in einer browserkompatiblen Formularvorlage. Browserkompatible Formularvorlagen können jedoch nicht so konfiguriert werden, dass Benutzer Daten an eine Datenbank übermitteln können. Wenn Sie also eine Formularvorlage entwerfen, die auf einer SQL Server Datenbank basiert und Sie möchten, dass Ihre Benutzer ihre Formulardaten über die Hauptdatenverbindung an die Datenbank übermitteln, können Sie diese Formularvorlage nicht browserkompatibel machen.
Erste Schritte
Um Ihre Formularvorlage auf der Grundlage einer SQL Server Datenbank zu entwerfen, benötigen Sie die folgenden Informationen von Ihrem Datenbankadministrator:
- Der Name des Servers, der die Datenbank enthält, mit der Sie ihre Formularvorlage verbinden.
- Der Name der Datenbank, die Sie mit dieser Formularvorlage verwenden.
- Die für die Datenbank erforderliche Authentifizierung. Die Datenbank kann entweder microsoft Windows-Authentifizierung oder SQL Server-Authentifizierung verwenden, um zu bestimmen, wie Benutzer auf die Datenbank zugreifen können.
- Der Name der Tabelle, die die Daten enthält, die Sie an das Formular senden oder die Daten aus dem Formular empfangen. Dies ist die primäre Tabelle. Wenn Sie mehr als eine Tabelle in der Datenbank verwenden möchten, benötigen Sie die Namen dieser anderen untergeordneten Tabellen. Außerdem benötigen Sie die Namen der Felder in den untergeordneten Tabellen, die beziehungen zu den Feldern in der primären Tabelle haben.
Entwerfen der Formularvorlage
Um eine Formularvorlage mit einer Abfragedatenverbindung zu entwerfen, müssen Sie wie folgt vorgehen:
- Erstellen der Formularvorlage Wenn Sie eine Formularvorlage erstellen, die auf einer Datenbank basiert, erstellt InfoPath eine Abfragedatenverbindung als Hauptdatenverbindung zwischen der Formularvorlage und der Datenbank. Bei diesem Vorgang wird automatisch die Hauptdatenquelle der Formularvorlage erstellt.
- Hinzufügen eines oder mehrerer Steuerelemente zum Anzeigen der Abfrageergebnisse Damit Benutzer die Daten in den Feldern in der Hauptdatenquelle anzeigen und bearbeiten können, wenn sie das Formular öffnen, können Sie der Formularvorlage ein Steuerelement hinzufügen und dieses Steuerelement dann an ein Feld in der Hauptdatenquelle binden.
Schritt 1: Erstellen der Formularvorlage
Klicken Sie im Menü Datei auf Formularvorlage entwerfen.
Klicken Sie unter Neu entwerfen im Dialogfeld Formularvorlage entwerfen auf Formularvorlage.
Klicken Sie in der Liste Basierend auf auf auf Datenbank.
Wenn Sie eine browserkompatible Formularvorlage entwerfen, aktivieren Sie das Kontrollkästchen Nur browserkompatible Features aktivieren .
Hinweis
Der Datenverbindungs-Assistent aktiviert die Daten übermitteln-Verbindung in einer browserkompatiblen Formularvorlage nicht. Damit Benutzer ihre Daten aus Formularen, die auf einer browserkompatiblen Formularvorlage basieren, an eine Datenbank übermitteln können, fügen Sie eine sekundäre Datenverbindung zu einem Webdienst hinzu, der mit der Datenbank arbeitet. Links zu weiteren Informationen zu sekundären Datenverbindungen finden Sie im Abschnitt Siehe auch .
Klicken Sie auf OK.
Klicken Sie im Datenverbindungs-Assistenten auf Datenbank auswählen.
Klicken Sie im Dialogfeld Datenquelle auswählen auf Neue Quelle.
Klicken Sie in der Liste Mit welcher Art von Datenquelle möchten Sie eine Verbindung herstellen auf Microsoft SQL Server, und klicken Sie dann auf Weiter.
Geben Sie im Feld Servername den Namen des Servers mit der SQL Server-Datenbank ein.
Führen Sie unter Anmeldeinformationen eine der folgenden Aktionen aus:
- Wenn die Datenbank anhand der in einem Microsoft Windows-Netzwerk verwendeten Anmeldeinformationen ermittelt, wer Zugriff hat, klicken Sie auf Windows-Authentifizierung verwenden.
- Wenn die Datenbank anhand eines angegebenen Benutzernamens und Kennworts, den Sie vom Datenbankadministrator erhalten, ermittelt, wer Zugriff hat, klicken Sie auf Benutzername und Kennwort verwenden, und geben Sie dann Ihren Benutzernamen und Ihr Kennwort in die Felder Benutzername und Kennwort ein .
Klicken Sie auf Weiter.
Klicken Sie in der Liste Wählen Sie die Datenbank aus, die die gewünschten Daten enthält auf den Namen der Datenbank, die Sie verwenden möchten, aktivieren Sie das Kontrollkästchen Mit einer bestimmten Tabelle verbinden , klicken Sie auf den Namen der primären Tabelle, und klicken Sie dann auf Weiter.
Geben Sie auf der nächsten Seite des Assistenten im Feld Dateiname einen Namen für die Datei ein, in der die Datenverbindungsinformationen gespeichert sind, und klicken Sie dann auf Fertig stellen , um diese Einstellungen zu speichern.
Wenn Sie andere Tabellen in der Abfragedatenverbindung verwenden möchten, können Sie die anderen Tabellen auf dieser Seite des Assistenten hinzufügen.
Wie?- Klicken Sie auf Tabelle hinzufügen.
- Klicken Sie im Dialogfeld Tabelle oder Abfrage hinzufügen auf den Namen der untergeordneten Tabelle, und klicken Sie dann auf Weiter. InfoPath versucht, die Beziehungen festzulegen, indem die Feldnamen in beiden Tabellen übereinstimmen. Wenn Sie die vorgeschlagene Beziehung nicht verwenden möchten, wählen Sie die Beziehung aus, und klicken Sie dann auf Beziehung entfernen. Klicken Sie zum Hinzufügen einer Beziehung auf Beziehung hinzufügen. Klicken Sie im Dialogfeld Beziehung hinzufügen auf den Namen der einzelnen verknüpften Felder in der entsprechenden Spalte, und klicken Sie dann auf OK.
- Klicken Sie auf Fertig stellen.
- Wiederholen Sie diese Schritte, um weitere untergeordnete Tabellen hinzuzufügen.
Klicken Sie auf Weiter.
Geben Sie auf der letzten Seite des Assistenten einen Namen für die Hauptdatenverbindung ein. Dieser Name wird in der Liste Datenquellen im Aufgabenbereich Datenquelle angezeigt.
Wenn Ihre Formularvorlage die Anforderungen im Abschnitt Übersicht erfüllt, wird auf dieser Seite des Assistenten angegeben, dass InfoPath die Verbindung zum Senden von Daten in der Hauptdatenverbindung aktiviert hat. Um den Namen für die Übermittlungsdatenverbindung zu ändern, geben Sie einen neuen Namen in das entsprechende Feld ein. Wenn Sie möchten, dass Ihre Benutzer ihre Formulardaten über eine andere Sendedatenverbindung übermitteln, die Sie später der Formularvorlage hinzufügen werden, deaktivieren Sie das Kontrollkästchen Senden für diese Verbindung aktivieren .
Hinweis
Wenn Ihre Formularvorlage die Anforderungen im Abschnitt Übersicht nicht erfüllt, deaktiviert InfoPath die Verbindung zum Senden von Daten, und die Kontrollkästchen Geben Sie einen Namen für die Übermittlungsverbindung eingeben und das Kontrollkästchen Senden für diese Verbindung aktivieren sind nicht verfügbar (deaktiviert). Wenn InfoPath die Verbindung zum Senden von Daten deaktiviert, verfügt die Hauptdatenverbindung für Ihre Formularvorlage nur über eine Abfragedatenverbindung.
Schritt 2: Hinzufügen eines oder mehrerer Steuerelemente zum Anzeigen der Abfrageergebnisse
- Wenn der Aufgabenbereich Steuerelemente nicht angezeigt wird, klicken Sie im Menü Einfügen auf Weitere Steuerelemente, oder drücken Sie ALT+I, C.
- Ziehen Sie ein Steuerelement auf die Formularvorlage.
- Wählen Sie im Dialogfeld Steuerelementbindung die Gruppe oder das Feld aus, an die bzw. das Sie das Steuerelement binden möchten.
Konfigurieren der Übermittlungsoptionen
Wenn Ihre Formularvorlage und die Tabellen, die Sie im Datenverbindungs-Assistenten ausgewählt haben, die Anforderungen im Abschnitt Übersicht erfüllen, konfiguriert InfoPath Ihre Formularvorlage so, dass Daten über die Hauptdatenverbindung gesendet werden. Wenn Sie diese Verbindung zum Senden von Daten verwenden möchten, konfiguriert InfoPath die Formularvorlage so, dass Benutzer ihre Formulardaten an die Datenbank übermitteln können, und fügt sowohl die Schaltfläche Senden zur symbolleiste Standard als auch den Befehl Senden zum Menü Datei hinzu, wenn Benutzer das Formular ausfüllen. InfoPath konfiguriert auch die Formularvorlage so, dass das Formular geöffnet bleibt, wenn Benutzer ihre Formulare übermitteln und dem Benutzer eine Meldung angezeigt wird, die angibt, ob das Formular erfolgreich übermittelt wurde. Sie können den Text auf der Schaltfläche Senden und das Verhalten ändern, nachdem der Benutzer ein Formular übermittelt hat.
Klicken Sie im Menü Extras auf Übermittlungsoptionen.
Um den Namen der Schaltfläche Senden, die auf der Symbolleiste Standard angezeigt wird, und den Befehl Senden, der im Menü Datei angezeigt wird, zu ändern, wenn Benutzer das Formular ausfüllen, geben Sie im Dialogfeld Übermittlungsoptionen den neuen Namen in das Feld Beschriftung ein.
Tipp
Wenn Sie dieser Schaltfläche und dem Befehl eine Tastenkombination zuweisen möchten, geben Sie vor dem Zeichen, das Sie als Tastenkombination verwenden möchten, ein kaufmännisches und -& ein. Wenn Sie beispielsweise ALT+B als Tastenkombination für die Schaltfläche "Senden " und den Befehl zuweisen möchten, geben Sie Su&bmit ein.
Wenn Sie nicht möchten, dass Personen beim Ausfüllen Des Formulars einen Befehl Senden oder die Schaltfläche Senden auf der symbolleiste Standard verwenden, deaktivieren Sie das Menüelement Senden anzeigen und die Symbolleistenschaltfläche Absenden.
Nachdem Benutzer ein Formular gesendet haben, hält InfoPath das Formular standardmäßig geöffnet und zeigt eine Meldung an, die angibt, ob das Formular erfolgreich gesendet wurde. Um dieses Standardverhalten zu ändern, klicken Sie auf Erweitert, und führen Sie dann eine der folgenden Aktionen aus:
Um das Formular zu schließen oder ein neues leeres Formular zu erstellen, nachdem der Benutzer ein ausgefülltes Formular übermittelt hat, klicken Sie in der Liste Nach dem Senden auf die gewünschte Option.
Um eine benutzerdefinierte Nachricht zu erstellen, die angibt, ob das Formular erfolgreich gesendet wurde, aktivieren Sie das Kontrollkästchen Benutzerdefinierte Nachrichten verwenden , und geben Sie dann Ihre Nachrichten in die Felder Bei Erfolg und Ein Fehler ein.
Tipp
Verwenden Sie eine Meldung im Feld Bei Fehler , um Benutzern mitzuteilen, was zu tun ist, wenn sie ihr Formular nicht übermitteln können. Beispielsweise können Sie benutzern vorschlagen, ihr Formular zu speichern und sich an eine andere Person zu wenden, um weitere Anweisungen zu erhalten.
Wenn Sie keine Meldung anzeigen möchten, nachdem der Benutzer ein Formular gesendet hat, deaktivieren Sie das Kontrollkästchen Erfolgs- und Fehlermeldungen anzeigen .