Frage

Wie verwalten Sie die Bereitstellung von InfoPath-Formularen auf verschiedenen Sharepoint-Servern?Gibt es eine bessere Möglichkeit, alle Datenverbindungen standortspezifisch zu behandeln, ohne die Formulare zu öffnen, die Datenverbindungen zu bearbeiten und für jede Umgebung erneut zu veröffentlichen?

War es hilfreich?

Lösung

Wenn ich Ihr Szenario richtig verstehe:

Sie verfügen über ein InfoPath-Formular mit Datenverbindungen, die Ihre Daten übermitteln.Sie möchten dieses Formular auf mehreren SharePoint-Servern bereitstellen und diese Datenverbindungen Daten an den aktuell bereitgestellten Server senden lassen.

Sie kommen nicht umhin, auf jedem SharePoint-Server, auf dem Sie das Formular bereitstellen möchten, Arbeiten durchzuführen.Sie können es jedoch umgehen, die InfoPath-Formularvorlage ändern zu müssen.

Wenn Sie die SharePoint-Datenverbindungsbibliothek (DCL) verwenden und aus Ihrer Datenverbindung eine UDC-Datei auf jedem SharePoint-Server erstellen, den Sie verwenden möchten, kann Ihre InfoPath-Vorlage einfach mit der UDC-Datei kommunizieren.

Hier ist ein Link zu einem Artikel über die Integration von InfoPath in die DCL von SharePoint:

http://msdn.microsoft.com/en-us/library/bb267335.aspx

Andere Tipps

Dies ist ein häufiges Problem, wenn Sie an einem Entwicklungssystem arbeiten und von Zeit zu Zeit Bereitstellungen auf einem Produktivsystem benötigen.Ich verwende ein Skript, das (einfache Text-)Ersetzungen basierend auf regulären Ausdrücken durchführt.

bei jeder Bereitstellung:

  1. Erstellen Sie ein Backup Ihres Formulars ;-)
  2. Speichern Sie Ihr Formular als Quellcode. (Ich schlage vor, dass Sie an Quellcodedateien und nicht an der .xsn-Datei arbeiten, da die xsn-Datei nur eine umbenannte .cab-Datei mit den darin enthaltenen Quelldateien ist.Und Sie können die Quellcodeverwaltung auf eine zufriedenstellendere Weise nutzen.)
  3. öffne das manifest.xsf Datei
  4. Suchen Sie nach dem XML-Knoten „DataConnections“
  5. Suchen und ersetzen Sie den Site-URL-Teil
  6. (Vergessen Sie nicht die Attribute „save-path“, „file-&site“ und „publishUrl“)
  7. Bereitstellung über den InfoPath-Designer

Ich verwende ein Skript, das alle Ersetzungen durchführt.Das funktioniert prima und hat mir schon viel Arbeit erspart.

Wenn Sie zu den Übermittlungsoptionen gehen, gibt es eine Option zum Ausführen benutzerdefinierter Aktionen mithilfe von Regeln.Wenn Sie alle Datenverbindungen eingerichtet haben, können Sie Regeln konfigurieren, um auszuwählen, an welche Verbindung gesendet werden soll.

Re:Antwort von speedfox: Versuchen Sie, das Manifest nach Möglichkeit nicht zu bearbeiten.Es wird nur zu Kopfschmerzen führen.

Wenn ich Ihr Problem verstehe, stellen Sie es auf mehreren Servern (DEV, UAT, Produktion) bereit und müssen die Datenverbindung jedes Mal manuell bearbeiten, wenn Sie von einer Umgebung in eine andere wechseln?Entschuldigen Sie, wenn ich das Problem zu stark vereinfacht habe

Ich habe herausgefunden, dass der beste Weg, Datenverbindungen standortrelativ zu gestalten, darin besteht, Folgendes zu tun:

  1. Verwenden Sie Datenverbindungsdateien in Ihrem Formular.Öffnen Sie den Datenverbindungsassistenten in Infopath und klicken Sie für alle Ihre Datenverbindungen auf „Konvertieren…“. Dadurch wird Ihre Datenverbindung von der Einbettung in das Formular zu einer unabhängigen XML-Datei.Sie benötigen eine Datenverbindungsbibliothek auf Ihrer Sharepoint-Site, um diese zu speichern.Erstellen Sie das im Browser.

  2. Nachdem Sie die Konvertierung durchgeführt und die Verbindung hergestellt haben, kehren Sie dorthin zurück und es werden Verbindungsoptionen angezeigt ...Mit dieser Schaltfläche können Sie von „Lokale Datenverbindungsbibliothek“ zu „Zentral verwaltete Verbindungsbibliothek“ wechseln.

  3. Laden Sie die Datenverbindung, die sich in der Datenverbindungsbibliothek Ihrer Site befindet, in den zentralen Administrator hoch

  4. Stellen Sie beim Veröffentlichen Ihres Formulars sicher, dass Sie es an einem zentral verwalteten Ort (Zentraladministration) veröffentlichen.

  5. Verwenden Sie Ihr Formular als Inhaltstyp in einer beliebigen Formularbibliothek dieser Websitesammlung.

  6. Um das Formular auf einer anderen Site zu verwenden, laden Sie die Datenverbindungsdatei in den zentralen Administrator des neuen Servers hoch und veröffentlichen Sie das (unveränderte) Formular in den zentral verwalteten Formularen.

Sehen Sie sich meinen Blog-Beitrag an, in dem ich Sie Schritt für Schritt mit relevanten Schnappschüssen zu den folgenden Themen begleite:

A.Konvertieren von InfoPath-Datenverbindungen in die DCL-Bibliothek in SharePoint.B.Veröffentlichung von Infopath -Formular in einer SharePoint -Liste/Bibliothek c.Erstellen eines .WSP-Lösungspakets für das Infopath-Formular und dessen Code-Behind d.Erstellen eines Batch-Skripts, das das InfoPath-Formular auf Ihrer Produktionssite bereitstellt.e.Sicherstellen, dass das Infopath -Formular als Funktion fiert wurde f.Ändern Sie die DCLs in der Produktionsumgebung.G.Ordnen Sie den InfoPath-Inhaltstyp der Dokument-/Formularbibliothek zu

Den vollständigen Blogbeitrag finden Sie unter: http://www.sharepointfix.com/2009/12/infopath-2007-form-and-nintex-workflows.html

Mit standortspezifisch meinen Sie, dass sich die Datenverbindungen in Ihren Formularen auf den Server beziehen, auf dem das Formular bereitgestellt wird?Wenn dies der Fall ist, könnten Sie Ihre Verbindungen möglicherweise so anpassen, dass für den Hostnamen-Teil der Datenverbindungs-URLs „localhost“ anstelle des Servernamens verwendet wird.

In meinem Szenario verwende ich nicht die integrierte Schaltfläche „Speichern“.Ich habe eine Datenverbindung, die ich zum „Posten“ der Daten in eine andere Liste verwende.

Ja, das meine ich mit standortspezifisch.Ich glaube nicht, dass Sie localhost verwenden können, denn wenn ein Benutzer das Formular speichert, versucht es, es auf dem Computer des Benutzers zu veröffentlichen (d. h.localhost).Ich habe versucht, relative Pfade zu verwenden, aber das scheint nicht zu funktionieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top