Eine Möglichkeit, mehrere Zeilendaten in eine Infopath -Wiederholungstabelle hinzuzufügen?

StackOverflow https://stackoverflow.com/questions/1610373

  •  05-07-2019
  •  | 
  •  

Frage

Meine Benutzer verwenden Excel, um einige Ad-hoc-Listen von Gebäuden zu erstellen, die wir besitzen. Ich baue ein Infopath -Formular, um Verträge an diesen Gebäuden zu verwalten. Ich suche nach einer Möglichkeit, meine Benutzer die Gebäude anzugeben, die sie in Excel benötigen, und diese Liste in das Infopath -Formular -Wiederholungstabellensteuerung einfügen.

Die Tabelle hat mehrere Felder; Die Benutzer würden die Spalte für die Gebäude -ID in ihrer Tabelle auswählen, sie in das Feld Wiederholungstabelle in das Feld für Gebäudemiden einfügen. Anschließend würde das Infopath -Formular die verbleibenden Erstellungsinformationen aus der an die Steuerung gebundenen Datenquelle unter Verwendung der Gebäudemid -ID als die nachschlagen Schlüssel.

Der Wiederholungstabellen -Lookup -Teil funktioniert derzeit: Der Benutzer kann eingeben (durch Eingeben oder Einfügen von Excel) eine einzelne Bau -ID, klicken Sie auf die Registerkarte und die Tabelle schaut im Rest der Informationen nach. Dann können sie eine neue Reihe einfügen und die zweite Bauausweise, Schaume, Spülen, Wiederholung betreten. Dies ist in Ordnung für eine Handvoll Gebäude - aber nicht für Dutzende oder Hunderte. Ich suche also nach einer Möglichkeit, sie in eine Liste einfügen zu lassen und die Tabelle von dort auszufüllen.

Wenn sie nicht direkt in eine sich wiederholende Tabelle einfügen können, könnte ich sie dann in eine multiline Textsteuerung einfügen und diese dann mit einem XPath -Ausdruck analysieren? Wie würde dieser XPath aussehen? Eine endgültige Einschränkung: Keine Code-Behind C# oder VB-Wir haben für den Moment entschieden, dass die Logistik der Bereitstellung von Formularen mit Codeverbindungen für das aktuelle Projekt zu viel ist.

Jede Hilfe geschätzt ...

War es hilfreich?

Lösung

Das einzige Problem, das ich sehe (hauptsächlich aufgrund der Tatsache, dass diese Lösung Codebehind nicht beinhalten kann), ist die Tatsache, dass es keine Infopath -Regeln gibt, mit denen Sie einer sich wiederholenden Gruppe dynamisch zusätzliche Knoten hinzufügen können (was die Wiederholungstabelle ist Bindend an.)

Die einzige Möglichkeit, zusätzliche Datensätze in einer Wiederholungstabelle zu erstellen, besteht darin, dass der Benutzer am unteren Rand der Tabelle manuell auf die Registerkarte "zusätzliche Zeile einfügen" drückt.

Ich würde dringend empfehlen, CodeBehind zu verwenden, sodass ein Benutzer seine tab delimitierten Excel-Daten aus der Zwischenablage in ein Box einfügen kann. Lassen Sie es Serverside analysieren; Verwenden Sie diese Daten zusammen mit einer Routine, um auf die MainDataSource des Formulars zuzugreifen, und fügen Sie die zusätzlichen Zeilen auf diese Weise hinzu.

Andere Tipps

Wenn Sie die Quelldateien aus Infopath extrahieren, ist eines der Dokumente die Datei template.xml. Dies enthält die Daten für Ihr Infopath -Formular. Verwenden Sie ein Excel -Makro, um die Vorlage als XML -Dokument zu öffnen und die Daten aus der Excel -Tabelle hinzuzufügen. Sie können dann dem Benutzer erlauben, die Datei selbst zu öffnen oder sie für ihn zu öffnen. Nur ein Weg, um sich umzugehen, ohne Codebehind zu haben.

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