質問

さまざまな SharePoint サーバーへの InfoPath フォームの展開はどのように管理しますか?フォームを開いたり、データ接続を編集したり、環境ごとに再公開したりせずに、サイト固有のすべてのデータ接続を処理するより良い方法はありますか?

役に立ちましたか?

解決

シナリオを正しく理解している場合:

データを送信するデータ接続を備えた InfoPath フォームがあります。このフォームを複数の SharePoint サーバーに展開し、それらのデータ接続で現在展開されているサーバーにデータを送信できるようにしたいと考えています。

フォームを展開するすべての SharePoint サーバーで作業を行う必要があるのを回避することはできません。ただし、InfoPath フォーム テンプレートを変更する必要を回避することはできます。

SharePoint データ接続ライブラリ (DCL) を使用し、使用するすべての SharePoint Server 上でデータ接続から UDC ファイルを作成すると、InfoPath テンプレートは UDC ファイルと通信することができます。

InfoPath と SharePoint の DCL の統合に関する記事へのリンクは次のとおりです。

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

他のヒント

これは、開発システムで作業していて、時々本稼働システムにデプロイする必要がある場合によくある問題です。正規表現に基づいて(プレーンテキストの)置換を実行するスクリプトを使用します。

デプロイごとに次のようにします。

  1. フォームのバックアップを作成してください ;-)
  2. フォームをソース コードとして保存します。 (xsn は名前が変更された .cab にソース ファイルが含まれているだけであるため、.xsn ではなくソース コード ファイルで作業することをお勧めします。そして、より満足のいく方法でソース管理を使用できるようになります。)
  3. を開きます マニフェスト.xsf ファイル
  4. XML ノード「DataConnections」を検索します。
  5. site-url 部分を検索して置換します
  6. (save-path、file-&site 属性、publishUrl を忘れないでください)
  7. InfoPath デザイナーから展開する

すべての置換を行うスクリプトを使用します。これはうまく機能し、すでに多くの作業を節約できました。

送信オプションに進むと、ルールを使用してカスタム アクションを実行するオプションがあります。すべてのデータ接続が設定されている場合は、送信先の接続を選択するルールを構成できます。

再:Speedfox の答えは、可能な限りマニフェストの編集を避けるようにしてください。それだけで頭が痛くなります。

問題が理解できれば、複数のサーバー (DEV、UAT、本番) にデプロイしていて、ある環境から別の環境に移動するたびにデータ接続を手動で編集する必要があるということですか?問題を単純化しすぎていたらごめんなさい

データ接続サイトを相対的にする最良の方法は次のとおりであることがわかりました。

  1. フォームでデータ接続ファイルを使用します。infopath でデータ接続ウィザードを開き、データ接続している全員が [変換...] をクリックすると、データ接続がフォームに埋め込まれたものから独立した XML ファイルに変更されます。これらを保存するには、SharePoint サイトにデータ接続ライブラリが必要です。それをブラウザで作成します。

  2. 変換後、接続に戻ると、接続オプションが表示されます...ボタンを使用して、「ローカル データ接続ライブラリ」から「集中管理された接続ライブラリ」に変更します。

  3. サイトのデータ接続ライブラリにあるデータ接続を中央管理者にアップロードします

  4. フォームを公開するときは、集中管理された場所 (中央管理者) に公開していることを確認してください。

  5. フォームをそのサイト コレクションのフォーム ライブラリのコンテンツ タイプとして使用します。

  6. 別のサイトでフォームを使用するには、データ接続ファイルを新しいサーバーの中央管理者にアップロードし、(変更されていない) フォームを中央管理されているフォームに発行します。

以下の内容について、関連するスナップショットを使用して段階的に説明している私のブログ投稿を参照してください。

a.InfoPath データ接続を SharePoint の DCL ライブラリに変換します。b.SharePointリスト/ライブラリへのInfopathフォームの公開c。InfoPathフォームとそのコードビハインドdの.WSPソリューションパッケージを作成します。InfoPath フォームを運用サイトに展開するバッチ スクリプトを作成します。e.Infopathフォームが機能fとして展開されていることを確認してください。運用環境で DCL を変更します。g.InfoPath コンテンツ タイプをドキュメント/フォーム ライブラリに関連付ける

ブログ投稿全文は次のサイトでご覧ください。 http://www.sharepointfix.com/2009/12/infopath-2007-form-and-nintex-workflows.html

サイト固有とは、フォーム内のデータ接続がフォームが展開されているサーバーを参照することを意味しますか?その場合は、データ接続 URL のホスト名部分にサーバー名の代わりに localhost を使用するように接続を調整できる可能性があります。

私のシナリオでは、組み込みの「保存」ボタンは使用しません。データを別のリストに「投稿」するために使用するデータ接続があります。

はい、それがサイト固有という意味です。ユーザーがフォームを保存すると、ユーザーのコンピュータに投稿しようとするため、localhost は使用できないと思います。ローカルホスト)。相対パスを使用しようとしましたが、うまくいかないようです。

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