Memo/InfoPath

http://dexlab.net/pukiwiki/index.php?Memo%2FInfoPath
 

FrontPage

InfoPath?

使えないXSLT命令

命令現象
xsl:call-templateInfopathで読み込めなくなる

フォームにヘルプを追加する

フォーム入力時に、ヘルプファイル(html形式)を表示させる事ができる。
画面右に表示される。
ただし、このファイルはInfoPath?では作成できないので、外部ソフトで作成し指定する必要がある。
なお、画像やcssも使えるがいちいちリソースとして一つづつ取り込む必要があるので、数は少ない方がよい。

HTMLをXHTMLへ変換する

HTMLをXHTMLに変換する事で、InfoPath?のフォームで編集できるようになります。
html2xhtml.dllのconvertToXHTMLメソッドを使用する事で、変換できます。(Microsoft Office InfoPath? 2003 SDK付属)
強制的にSJISに変換するようです。EUC-JPのファイルを変換させると文字化けが発生。
よって、あらかじめSJISに変換しておくとよさそう。

  1. html2xhtml.dllの登録
    COMなのでレジストリに登録する必要があります。
    C:\Program Files\Microsoft Office 2003 Developer Resources\Microsoft Office InfoPath 2003 SDK\Tools>regsvr32 html2xhtml.dll
  2. スクリプト
  3. 実行
    コマンドプロンプトから
    convertToXHTML.js <入力html> <出力xhtml>
  • htmlのサンプル
    C:\Program Files\Microsoft Office 2003 Developer Resources\Microsoft Office InfoPath 2003 SDK\Tools\html2xhtml_sample.htm

Regform.exeでエラーが出る場合

以前の作成時にエラーが出るとゴミを残し、以後のコンパイルに失敗する場合があります。
テンポラリファイルを消すと正常に作成できる場合がありました。

C:\DOCUME~1\ユーザー名\LOCALS~1\Temp\RegForm\

完全信頼フォームの配布

完全信頼フォームを作成すると、ローカルリソースにアクセスできるようになります。
また、msiファイルを作成してくれるのでインストール等が楽に行えます。

regform.exe を使用します。(Microsoft Office InfoPath? 2003 SDK)

C:\Program Files\Microsoft Office 2003 Developer Resources\Microsoft Office InfoPath 2003 SDK\Tools\regform.exe
  • 新規インストール
    1. インストール用パッケージの作成
      regform.exe /T Yes /MSI 配布するxsnファイル
      すると、msiファイルとjsファイルが作成されます。
      また、xsnファイルが完全信頼フォームに書き換えられます。
      なお、ファイル名が日本語のxsnは扱えません。

    2. msiファイルをダブルクリックして、インストールすると、完全信頼されたフォームがインストールされ、InfoPath?起動時のテンプレートとして登録されます。

  • 更新
    xsnを更新して、msiを作成してインストールしても、古いxsnファイルを消してくれないようです。
    よって、更新時にはアンインストール -> インストールの順番で行います。
    それが面倒な場合は、以下の手順で更新できるようです。

    1. xsnファイルを更新する
    2. 完全信頼フォームの作成
      regform.exe /T Yes /MSI 配布するxsnファイル
    3. xsnとjsをインストール済みフォルダに上書き
    4. jsファイルを/uninstallオプション付きで実行
      wscript 配布するxsnファイル.js /uninstall
    5. jsファイルをそのまま実行
      wscript 配布するxsnファイル.js
      上記を実行するバッチファイルでも作成すれば楽に更新できるかも。

高度なxsltを使用する

xsltではできて、InfoPath?ではできない事を実装するには、一度xsnファイルを展開して、直接編集して再圧縮すれば動作する。

  • manifest.xsf
    構成ファイル情報
    付属リソースファイル等を追加する場合は、ここを編集する。
  • *.xsl
    各ビューファイル。これを編集する。

xsnファイルの中身を見る

.xsnファイルの実体は標準的な圧縮形式の.cabファイルである。
よって、拡張子をcabに変えればWindowsの標準機能で中身を見る事ができる。
中には、xmlやxsltやjsファイルが含まれている。
よって、これらを直接編集し、再度cab圧縮すれば更新できる。

JScript

参考リンク


添付ファイル: fileconvertToXHTMLEx.js 1037件 [詳細] fileconvertToXHTML.js 1182件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-03-08 (月) 12:55:00 (2972d)