はじめに
Cognosのレポート開発を実施している時に、すでに開発済みのレポート上に定義している「条件付きスタイル」をコピーしたいと思ったことはありませんか?
新規開発中のレポートで一から作成してもいいのですが、細かく書式を設定している場合は再度設定するのは手間だったりしますよね。設定漏れも起きやすくなってしまう箇所でもあります。
条件付きスタイルは簡単にはコピーできない
レポート編集画面のこちらから (図1)、条件付きスタイルを参照することはできるのですが (図2)、
他のレポートに移行するためのコピー用のアイコンなどはありません。
また、条件付きスタイルが設定されているリストやグラフなどのオブジェクトごとコピーしようとしても、「条件付きスタイル"条件付きスタイル1"はこのレポートにありません」とエラーになってしまいます。(図3)
XMLベースでコピーを実施
そんな時に役に立つのが、レポートXMLを使用したコピーです。
レポートXML上、条件付きスタイルは<namedConditionalStyles> タグで定義されています。
条件付きスタイル全体をコピーする場合は、この<namedConditionalStyles> をまるっとコピーすることで新規レポートに移行できます。
条件付きスタイルが複数有り、定義ごとにコピーしたい場合は、<advancedConditionalStyle name="条件付きスタイル 1"> (nameは条件付スタイルの定義名) をコピーすることで、対応可能です。この場合は、<namedConditionalStyles> タグ内にコピーするようにしてください。
詳細手順
コピー元のレポートのXMLを取得する
※「ページ」ペインから「レポート」を右クリックして「クリップボードにレポートをコピー」を選択します
コピーしたXMLをテキストエディタに貼り付け、<namedConditionalStyles> ~ </namedConditionalStyles>の部分を見つけておく
※ XMLの最下部のほうに定義されているので下から探すと見つけやすいです。
コピー先のレポートのXMLを取得する
※ 手順1と同様の操作で、今開発中にレポートのXMLを取得します条件付きスタイルの定義を追加したXML全体をクリップボードにコピーする
※ 全選択してからコピーを実施しましょうクリップボードからレポートを開き、条件付きスタイルがコピーされていることを確認します。
※「ページ」ペインから「レポート」を右クリックして「クリップボードからレポートを開く」を選択します。
※ 条件付きスタイルの確認は、上述の図1、図2のキャプチャを参考に確認してください。
正しく、条件付きスタイルがコピーできていたら、レポートに名前をつけて保存します。
以上で、条件付きスタイルのコピーが完了です。
いかがでしたか。Cognosのレポート開発はGUIベールのツールですがXMLを使用することで、簡単に定義をコピーすることができました。