2021.10.27
IM-FormaDesignerの複数行文字列アイテムで画面を開いた際の初期値として
複数行の文字列を表示させたかったので、色々と試してみました。
ワークフローで使用する画面では、アイテムのプロパティで初期値を設定できます。
そこで、まずは以下のような方法をとってみました。
対応1.初期値欄に改行された文字列をそのままコピー&ペースト
→改行は半角スペースとみなされ、文字列は一行で表示されてしまいました。
対応2.初期値欄に改行文字「\n」を含んだ文字列を設定
→「\n」は改行文字とみなされず、文字列は一行で表示されてしまいました。
これらの対応では解決に繋がらなかったため、次にクライアントサイドスクリプトAPIで
初期表示時に画面アイテムに値を反映させる方法を検討しました。
対応3.クライアントサイドスクリプトAPIで改行された文字列を設定
→コード上の改行は無視されるため、文字列は一行で表示されてしまいました。
対応4.クライアントサイドスクリプトAPIで改行文字「\n」を含んだ文字列を設定
→「\n」は改行文字とみなされ、改行された文字列を画面上に表示することができました。
以上の結果から、改行された文字列をテキストエリアの初期値としたいときは、
クライアントサイドスクリプトAPIで改行文字「\n」を含んだ文字列を設定することで実現できるようです。
参考:13. クライアントサイドスクリプトAPI — IM-BIS 仕様書 第17版 2021-08-01 IM-BIS for Accel Platform
https://document.intra-mart.jp/library/bis/public/bis_specification/texts/spec/csjs_script.html