Frage Bereitstellen von InfoPath-Formularen auf verschiedenen SharePoint-Servern


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


5
2017-08-21 16:12


Ursprung


Antworten:


Wenn ich Ihr Szenario richtig verstehe:

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

Sie können sich nicht wirklich darum kümmern, dass Sie auf jedem SharePoint-Server arbeiten müssen, auf dem Sie das Formular bereitstellen möchten. Sie können jedoch die InfoPath-Formularvorlage ändern.

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

Hier finden Sie einen Link zu einem Artikel über die Integration von InfoPath in die DCL von SharePoint:

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


2
2017-08-28 18:42



Dies ist ein häufiges Problem, wenn Sie an einem Entwicklungssystem arbeiten und von Zeit zu Zeit Bereitstellungen für ein produktives System benötigen. Ich benutze ein Skript, das auf regulären Ausdrücken basierende Ersetzungen durchführt.

bei jeder Bereitstellung:

  1. mach ein Backup deiner Form ;-)
  2. Speichern Sie Ihr Formular als Quellcode. (Ich schlage vor, dass Sie an Quellcodedateien und nicht an .xsn arbeiten, da das xsn nur ein umbenanntes .cab mit den Quelldateien ist. Und Sie können die Quellcodeverwaltung auf eine zufriedenstellendere Weise verwenden.)
  3. öffne das manifest.xsf Datei
  4. Suche nach dem XML-Knoten "DataConnections"
  5. Suchen und ersetzen Sie den Site-URL-Teil
  6. (Vergessen Sie nicht die Speicherpfad-, Datei- & Siteattribute und publishUrl)
  7. Bereitstellen aus dem InfoPath-Designer

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


6
2017-10-17 12:33



Wenn Sie die Übermittlungsoptionen aufrufen, gibt es eine Option zum Ausführen einer benutzerdefinierten Aktion mithilfe von Regeln. Wenn Sie alle Datenverbindungen eingerichtet haben, können Sie Regeln konfigurieren, um auszuwählen, an welche Verbindung gesendet werden soll.


2
2017-08-22 15:10



re: speedfox 'Antwort, versuchen Sie, das Manifest nach Möglichkeit zu bearbeiten. Es wird nur zu Kopfschmerzen führen.

Wenn ich Ihr Problem verstehe, verteilen Sie es auf mehreren Servern (DEV, UAT, Production) und müssen die Datenverbindung jedes Mal manuell bearbeiten, wenn Sie von einer Umgebung zur anderen wechseln. Verzeihen Sie, wenn ich das Problem vereinfacht habe

Ich habe den besten Weg gefunden, Datenverbindungen relativ zum Site zu machen:

  1. Verwenden Sie Datenverbindungsdateien in Ihrem Formular. Öffnen Sie den Datenverbindungsassistenten in infopath und für alle Daten klicken Sie auf "Convert ...". Dadurch wird Ihre Datenverbindung vom eingebetteten Formular in eine eigenständige XML-Datei umgewandelt. Sie benötigen eine Data Conenction-Bibliothek auf Ihrer Sharepoint-Site, in der diese gespeichert werden. Erstellen Sie diese im Browser.

  2. Nachdem Sie konvertiert haben und die Verbindung wieder hergestellt ist und eine Verbindungsoptionen-Schaltfläche angezeigt wird, wechseln Sie von "Lokale Datenverbindungsbibliothek" zu "Zentral verwaltete Verbindungsbibliothek".

  3. Laden Sie die Datenverbindung, die sich in den Datenverbindungsbibliotheken Ihrer Websites befindet, mit dem zentralen Administrator hoch

  4. Wenn Sie Ihr Formular veröffentlichen, vergewissern Sie sich, dass Sie es an einem zentral verwalteten Ort veröffentlichen (Central Admin).

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

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


1
2018-02-27 16:42



Sehen Sie sich meinen Blogbeitrag an, in dem ich Sie Schritt für Schritt mit relevanten Snapshots über Folgendes beschreibe:

ein. Konvertieren von InfoPath-Datenverbindungen in die DCL-Bibliothek in SharePoint b. Veröffentlichen des InfoPath-Formulars in einer SharePoint-Liste / Bibliothek c. Erstellen eines .wsp-Lösungspakets für das InfoPath-Formular und dessen Code-Behind d. Erstellen eines Stapel-Skripts, mit dem das InfoPath-Formular auf Ihrer Produktions-Site bereitgestellt wird. e. Sicherstellen, dass das InfoPath-Formular als Feature bereitgestellt wurde f. Ändern Sie die DCLs in der Produktionsumgebung. G. Ordnen Sie den InfoPath-Inhaltstyp der Dokument- / Formularbibliothek zu

Siehe den vollständigen Blog-Post unter: http://www.sharepointfix.com/2009/12/infopath-2007-form-and-nintex-workflows.html


1
2017-12-18 14:35



Mit Site-spezifisch 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 sie localhost anstelle des Servernamens für den Hostnamen-Teil der Datenverbindungs-URLs verwenden.


0
2017-08-21 19:08



In meinem Szenario verwende ich nicht die integrierte Schaltfläche "Speichern". Ich habe eine Datenverbindung, mit der ich die Daten in eine andere Liste "posten" kann.

Ja, das meine ich mit Site-spezifisch. Ich glaube nicht, dass Sie localhost 'cos verwenden können, wenn ein Benutzer das Formular speichert, wird es versuchen, auf dem Computer des Benutzers (d. H. Localhost) zu veröffentlichen. Ich habe versucht, relative Pfade zu verwenden, aber das scheint nicht zu funktionieren.


0
2017-08-22 12:25