2008-08-21 18 views
5

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

答えて

2

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

あなたはあなたのデータを送信するデータ接続で、InfoPathフォームを持っています。 このフォームを複数のSharePointサーバーに展開し、これらのデータ接続で現在展開されているサーバーにデータを送信する必要があります。

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

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

ここSharePointのDCLでInfoPathの統合についての記事へのリンクです:

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

+0

を。しかし、私は別のショットを与えるでしょう。ありがとう! – Tundey

+0

これをやり直してみました。ありがとう。 – Tundey

0

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

0

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

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

2

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

6

あなたはDEV-システムで作業と時間から生産システムへの展開を必要としている場合、これは、共通の問題です時間に。私は、正規表現に基づいて(プレーンテキストの)置換を実行するスクリプトを使用します。各配備に

  1. は、ソースコードとしてフォームを保存し、フォーム;-)
  2. のバックアップを作成します。 (xsnはソースファイルを含む名前が変更された.cabなので、.xsnではなくソースコードファイルで作業することをお勧めします)。
  3. マニフェストを開きます。XSFファイル
  4. XMLノード "DataConnections"
  5. 検索と置換サイトのURL
  6. (セーブ・パスを忘れてはいけない、[ファイル] - &サイトの属性とpublishUrl)一部
  7. ため
  8. 検索InfoPathデザイナから展開する

すべての置換を行うスクリプトを使用します。それはうまく動作し、すでに私に多くの仕事を助けてくれました。

+0

私はxsnではなくソースコードで作業することを考えましたが、フォームはいくつかのデータ接続でかなり大きくなっています。しかし、私はあなたのアプローチを繰り返し、フォーム全体の変更を繰り返しています。ありがとう。 – Tundey

+0

これは実際に機能する唯一のソリューションです。誰にも聞かないでください。データ接続ライブラリは、複数のフォーム(またはExcelドキュメントなどの他のOfficeドキュメント)でデータベース接続文字列を集中管理し、SharePointリストを特定できるようにするためのものです。同じフォームを複数のサーバーに展開できるようにするものではありません。 manifest.xsfファイルには、データ接続をローカルまたは集中化してロードするかどうかにかかわらず、サーバーに格納されているデータ接続へのハードリンクが含まれています。 – jorelli

+0

これが動作します!私はわかりませんが、データ接続ライブラリはサイトの公開には使用できません。私が間違っているなら、私を訂正してください。 – Ubaid

1

re:speedfoxの答えは、できる限りマニフェストを編集しないようにしてください。頭が痛いだけにつながります。

私はあなたの問題を理解していれば、複数のサーバー(DEV、UAT、Production)に展開していて、ある環境から別の環境に移動するたびに手動でデータ接続を編集する必要がありますか?私が上で、私はデータ接続サイトの相対を作るための最善の方法を発見した問題

を簡素化した場合であり、私を許し:

  1. 使用データ接続ファイルをフォームで。 infopathでデータ接続ウィザードを開き、 "Convert ..."をクリックすると、データ接続がフォームに埋め込まれてから独立したXMLファイルに変わります。これらを保存するには、SharepointサイトにData Conenction Libraryが必要です。これをブラウザに作成します。

  2. あなたは変換されてきたとの接続が

  3. ボタンは、「一元管理接続ライブラリを」する「ローカルデータ接続ライブラリ」から変更するためにそれを使用する...それに戻って、接続オプションがあるでしょう後

    あなたのフォームを使用して、集中管理された場所(中央管理)に発行していることを確認し公開するととして、あなたのフォームを使用し、中央管理者に

  4. をあなたのサイトにデータ接続ライブラリでデータ接続をアップロードコンテンツタイプnyはそのサイトコレクションにライブラリを作成します。

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

    :私はあなたがステップバイステップ以下をカバーし、関連するスナップショットを取るところ

1

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

でフルブログ記事を参照してください:私はそれを試してみましたし、それが仕事を得ることができなかったしているhttp://www.sharepointfix.com/2009/12/infopath-2007-form-and-nintex-workflows.html

関連する問題