Infopath のテキストフィールドに改行を挿入する
Infopath とフォームライブラリの組み合わせは、SharePointでほぼ唯一、ある程度自由に帳票をデザインし、かつ細かなユーザニーズを反映できる手段です。しかし、それなりに使い込む、機能面でちらほらと不満を感じるようになります。
有り体に言うと「不自由なノーツ」なのです。
機能面でノーツを簡略化したような側面があります。
設計に必要な知識は少なくて済みますが、自由度で劣ります。
まあ、これは良し悪しですので一概に欠点とは言えませんが。
さて、その不満点のひとつに「改行テキストフィールドの既定値(あるいは動作規則による設定値)に改行が使えない、ことが挙げられます。
一般的な改行記号である br や \n あたりを入れてみても、効果がありません。
このエントリでは Infopathのテキストエリアに改行を挿入する方法をご紹介します。
まず、テキストボックスのプロパティで[段落の区切り]オプションを有効にします。
これを忘れると、そもそも改行が出来ません。
次に、以下の XML ファイルを用意します。
改行コードをキャノニカルXML(Canonical XML)に変換したものです。
このファイルをデーター接続(データーの受信/XMLドキュメント)としてフォームに追加します。
この際、[フォームテンプレートまたはテンプレートパーツのリソースファイルとしてデータを含める]オプションをを選択して下さい。
[code lang=”html”]
<?xml version="1.0" encoding="UTF-8"?>
<characters cr="
" lf="
" crlf="
" />
[/code]
このフィールド(セカンダリデータソース)を数式に組込みます。
実際には、@cr、@lf、@crlf、いずれを利用しても構いません。
concat( “この文章の後に改行が二回はいります” , @ctrf, @ctrf)
login