UnWeeklyAlteryxTips#106 レポートテキストツールで複雑なHTMLを利用する

Alteryx

みなさんAlteryxのレポーティングツールを使っているでしょうか?今回は、レポートテキストツールのTipsです。

レポートテキストツールのエキスパートモードは、PCXML準拠のタグ(Designerの中ではComposerタイプと言われているようです)のみ利用可能なモードです。通常のHTMLタグと互換性がある場合もありますが、複雑なHTMLタグには対応していません。

エキスパートモードを使ってみる

レポートテキストツールのエキスパートモードを使ってみましょう。以下のようにテキストモードを「エキスパートモード」にすればオッケーです。

あとは、テキストデータのところにPCXMLタグに準拠して記載すればオッケーです(といっても何がPCXMLタグなのかわかりにくいという話はありますが・・・)。一応簡易的な仕様を書いてくれている人がいます。

上のようなh1タグやpタグは普通に利用可能です。しかし、hrタグなどを利用することはできません。そのようなPCXMLに対応していないタグが入ったテキストを扱いたい時はどうすればよいのでしょうか?

このような場合、htmlpassthroughタグというのが利用可能です。

htmlpassthroughタグの使い方

以下は、インタラクティブチャートツールでチャートを作成したときのレポートスニペットを文字列として読んだ時のものです(以下スクショはテキストエディタに貼り付けています)。

インタラクティブチャートは、Plotlyというライブラリを用いてチャートを作るため、非常に複雑なHTMLで構成されます。このような複雑なものを表示したい場合はhtmlpassthroughとCDATAタグでレポートスニペットに埋め込まれます。

実際にこのhtmlpassthroughとCDATAの使い方をご紹介します。基本的にCDATA(同名の会社名があって紛らわしいですね、これ・・・)構文は、XML解釈を行う際にそのまま文字として出力するというためのもので、XML解釈してほしくない時に使います。

つまり、今回で言えば、以下のようにhtmlpassthroughと組み合わせて使います。

<htmlpassthrough><![CDATA[
入れ込みたい内容を記載
]]></htmlpassthrough>

このとき、CDATA内はHTMLタグを自由に使って記載できます。

ただし、htmlpassthroughタグを使う場合は、レンダリングツールで保存する際のファイル形式に制限があり、HTML系のファイルのみへの出力となります(PDF/Word/RTF/Excel/PPT/PNGファイルへの出力を行うと中身が空になります)。コンポーザーファイルは問題ありませんでした。

まとめ

  • レポートテキストツールのエキスパートモードの使い方を紹介しました
  • htmlpassthroughタグとCDATAタグの使い方をご紹介しました

サンプルワークフローダウンロード

コメント

タイトルとURLをコピーしました