InfoPath Formulare mit Code deployen

InfoPath war gedacht um fachlichen Mitarbeitern die Möglichkeit zur Erstellung einfacher Formulare ohne Entwickler und Administrator zu ermöglichen. Bei einigen Projekten unserer Teilnehmer geht die Vision aber darüber hinaus. Dabei tauchen auch Szenarien mit Programmierung auf. Während bei normalen User-Formularen das Deployment direkt via InfoPath Designer funktioniert, stehen bei komplexen Formularen mit Code aber nun tiefere Eingriffe an.

Development

Zur Entwicklung eines solchen Formulars kann mit InfoPath ein ganz normales “Blank Form” erstellt werden. Sobald man über die Developer Ribbon in den Code Modus wechselt und dort etwas erstellt, werden die Möglichkeiten eingeschränkt.

Um auf Resourcen im System zugreifen zu können (Beispielsweise die SharePoint Server API), muss das Formular im “Full Trust” Security Level laufen. Damit ist nur noch das Publishing im Modus “Administrator-approved form template (advanced)” möglich.

image

Es wir eine normale XSN Datei (incl. DLL) exportiert. Diese kann anschließend dem Administrator übermittelt werden.

Deployment

Damit das Formular nun im SharePoint genutzt werden kann, muss ein Administrator das Formular bereitstellen. Dies geht sowohl über die Oberfläche der Zentraladministration, also auch einfacher und schneller via PowerShell.

Install-SPInfoPathFormTemplate –Path C:\Sample\Form.xsn
Enable-SPInfoPathFormTemplate –Identity Form.xsn –Site http://win7-mp1:2500/
 

Durch das Verteilen wird das Formular in der Library “Form Templates” der angegebenen SiteCollection abgelegt.

Erstellt man nun im Web eine normale FormLibrary und fügt das verteilte Formular hinzu, so kann es im Browser den Code ausführen. Die weitere Verwendung im Browser ist dabei identisch zu der von normalen User-Formularen.

Weiterführende Informationen und StepByStep Anleitungen
TechNet: Manage administrator-approved form templates
InfoPath Blog: Introduction to Programming in InfoPath 2010

Kommentare (1) -

Kommentar schreiben