0

私は、さまざまな組織単位用に何百ものサイトを作成するために使用されるサイト テンプレートに取り組んでいます。サイトには、InfoPath フォーム テンプレートを含むフォーム ライブラリが含まれている必要があります。

私の質問は、管理者や開発者の関与なしに、テンプレートを作成し、パワー ユーザーにサイトを作成させることは可能ですか? そうでない場合 - 最も簡単な代替手段は何ですか?

問題は、フォーム テンプレートにサイトの URL が含まれていることです。これを回避できるかどうかはわかりません。その結果、サイトが作成されてフォームが送信されると、最終的に元のサイトのライブラリに格納されます。

パイロット プロジェクト用にいくつかのサイトを作成しましたが、これまでに行ったことは、XSN ファイルのキャブを解除し、手動で URL を編集し、XSN に再パッケージして、新しいライブラリに公開することです。これは機能しますが、回避したいサイト作成プロセスに手動のステップが含まれます。編集中の行は次のとおりです。

<xsf:submit caption="Submit" disableMenuItem="no" onAfterSubmit="close" showStatusDialog="no">
    <xsf:davAdapter name="SharePoint Library Submit" submitAllowed="yes" overwriteAllowed="no">
        <xsf:folderURL value="http://my_farm_url/subsite1/form_lib"

ここもまた:

<xsf2:solutionPropertiesExtension branch="wss">
    <xsf2:wss path="http://my_farm_url/subsite1/form_lib"

subsite1 を subsite2 に変更しています。

最初に送信要素に、次に両方に相対 URL を設定しようとしましたが、役に立ちませんでした。フォームは (ブラウザで) レンダリングされ、送信は機能しました (エラーなし) が、送信されたフォームはライブラリにありませんでした。さらに調べてみると、フォームはルート サイトのフォーム ライブラリに送信されていましたhttp://my_farm_url/form_lib。考えてみれば当然のことform_libですが、ルート サイトの観点から、サイトから の相対 URL にアクセスできます。

今のところ、私が考えている唯一の解決策は、ユーザーがテンプレートに基づいてサイトを作成するのに役立つツールを作成し、XSN をカーテンの後ろで修正することです。フォーム テンプレートをプログラムで発行する方法がわかりませんが、可能である必要があります。この不明な点は別として、これはあまり自動化されていないため、SharePoint/InfoPath ツールのみで機能する適切なソリューションが可能であれば、非常に嬉しく思います。

4

1 に答える 1

1

EventReceiver をスケジュールする必要がありますが、構成のためにそれを行う方法はありません。

EventReceiver では、ファイル「Manifest.xsf」を読み取り、URL が定義されている XML ノードを更新して、ファイル「Manifest.xsf」を保存する必要があります。

XML ノードを読み取るには、System.Xml.dll を使用する必要があります。

于 2012-07-13T20:31:51.167 に答える