LoginSignup
1
0

More than 5 years have passed since last update.

Cognosの条件付きスタイルを他のレポートに簡単にコピーする方法

Posted at

はじめに

Cognosのレポート開発を実施している時に、すでに開発済みのレポート上に定義している「条件付きスタイル」をコピーしたいと思ったことはありませんか?
新規開発中のレポートで一から作成してもいいのですが、細かく書式を設定している場合は再度設定するのは手間だったりしますよね。設定漏れも起きやすくなってしまう箇所でもあります。

条件付きスタイルは簡単にはコピーできない

レポート編集画面のこちらから (図1)、条件付きスタイルを参照することはできるのですが (図2)、
他のレポートに移行するためのコピー用のアイコンなどはありません。

(図1)
WS000000.JPG

(図2)
WS000001.JPG

また、条件付きスタイルが設定されているリストやグラフなどのオブジェクトごとコピーしようとしても、「条件付きスタイル"条件付きスタイル1"はこのレポートにありません」とエラーになってしまいます。(図3)

(図3)
WS000003.JPG

XMLベースでコピーを実施

そんな時に役に立つのが、レポートXMLを使用したコピーです。
レポートXML上、条件付きスタイルは<namedConditionalStyles> タグで定義されています。
条件付きスタイル全体をコピーする場合は、この<namedConditionalStyles> をまるっとコピーすることで新規レポートに移行できます。
条件付きスタイルが複数有り、定義ごとにコピーしたい場合は、<advancedConditionalStyle name="条件付きスタイル 1"> (nameは条件付スタイルの定義名) をコピーすることで、対応可能です。この場合は、<namedConditionalStyles> タグ内にコピーするようにしてください。

詳細手順

  1. コピー元のレポートのXMLを取得する
      ※「ページ」ペインから「レポート」を右クリックして「クリップボードにレポートをコピー」を選択します
    WS000004.JPG

  2. コピーしたXMLをテキストエディタに貼り付け、<namedConditionalStyles> ~ </namedConditionalStyles>の部分を見つけておく
      ※ XMLの最下部のほうに定義されているので下から探すと見つけやすいです。
    WS000005.JPG

  3. コピー先のレポートのXMLを取得する
      ※ 手順1と同様の操作で、今開発中にレポートのXMLを取得します

  4. 手順2で見つけた条件付きスタイルに関する定義部分を、</reportName>と</report>の間にコピーします
    WS000006.JPG

  5. 条件付きスタイルの定義を追加したXML全体をクリップボードにコピーする
      ※ 全選択してからコピーを実施しましょう

  6. クリップボードからレポートを開き、条件付きスタイルがコピーされていることを確認します。
      ※「ページ」ペインから「レポート」を右クリックして「クリップボードからレポートを開く」を選択します。
    WS000004 - コピー.JPG

  ※ 条件付きスタイルの確認は、上述の図1、図2のキャプチャを参考に確認してください。

正しく、条件付きスタイルがコピーできていたら、レポートに名前をつけて保存します。

以上で、条件付きスタイルのコピーが完了です。
いかがでしたか。Cognosのレポート開発はGUIベールのツールですがXMLを使用することで、簡単に定義をコピーすることができました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0