InfoPathの繰り返しテーブルに複数の行データを貼り付けて追加する方法はありますか?

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

  •  05-07-2019
  •  | 
  •  

質問

ユーザーはExcelを使用して、所有している建物のアドホックリストを作成します。これらの建物の契約を管理するために、InfoPathフォームを作成しています。ユーザーがExcelで必要な建物を指定し、そのリストをInfoPathフォームのRepeating Tableコントロールに貼り付ける方法を探しています。

テーブルには複数のフィールドがあります。ユーザーはスプレッドシートで[建物ID]列を選択し、[繰り返しテーブル]の[建物ID]フィールドに貼り付けます。その後、InfoPathフォームは、コントロールにバインドされたデータソースから残りの建物情報を検索します。キー。

繰り返しテーブルルックアップパーツは現在機能しています。ユーザーは(Excelから入力または貼り付けて)単一の建物IDを入力し、Tabキーを押すと、テーブルが残りの情報を検索できます。次に、新しい行を挿入し、2番目の建物IDを入力し、泡立て、すすぎ、繰り返します。これは、少数の建物では問題ありませんが、数十または数百では問題ありません。だから、リストに貼り付けて、そこからテーブルに記入する方法を探しています。

繰り返しテーブルに直接貼り付けられない場合、複数行のテキストコントロールに貼り付けてから、XPath式で解析できますか?そのXPathはどのように見えるでしょうか?最後の1つの制限:コードビハインドC#またはVBはありません-現時点では、コードビハインドを使用してフォームをデプロイするロジスティクスは現在のプロジェクトには多すぎると判断しました。

ご協力ありがとうございます...

役に立ちましたか?

解決

(主にこのソリューションにコードビハインドを含めることができないという事実のために)私が生じる唯一の問題は、繰り返しグループに追加ノードを動的に追加するために使用できるInfopathルールがないという事実です(これは繰り返しテーブルのバインド先。)

繰り返しテーブルに追加のレコードを作成する唯一の方法は、ユーザーが「追加行を挿入」を手動で押すことです。表の下部にあるタブ。

コードビハインドを使用することを強くお勧めします。ユーザーは、タブ区切りのExcelデータをクリップボードからボックスに貼り付けることができます。サーバー側で解析します。そのデータをルーチンと一緒に使用してフォームのMainDataSourceにアクセスし、追加の行をそのように追加します。

他のヒント

infopathからソースファイルを抽出する場合、ドキュメントの1つはtemplate.xmlファイルになります。これは、infopathフォームのデータを保持します。 Excelマクロを使用して、XMLドキュメントとしてテンプレートを開き、Excelスプレッドシートからデータを追加します。その後、ユーザーが自分でファイルを開くことを許可したり、ファイルを開いたりすることができます。コードビハインドを持たないようにする方法です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top