私はこれを行う簡単な方法を見つけようと頭を悩ませてきましたが、プログラムによる解決策に頼らなければならないと思います(それが可能であれば)。
Cognos BI 8.4を使用しており、データベーステーブルからすべての個別の日付を取得するようにクエリを設定しています。また、そのクエリを使用して、開始日と終了日にそれぞれ1つずつ、2つの値プロンプトを入力するレポートのパラメーターもいくつかあります。
必要なのは、リストの最初の日付をデフォルト(開始日パラメーターの場合)またはリストの最後の日付(終了日パラメーターの場合)にすることです。たとえば、テーブルの日付の範囲がからの2011-01-15
場合2011-06-03
、開始日パラメータはデフォルトで前者になり、終了日パラメータはデフォルトで後者になります。
デフォルトを特定の既知の値に設定できますが、リストはクエリの結果であるため、事前に値がわかりません。デフォルトの開始日に使用する1970-01-01
と、最も早い日付に設定されず、その値が完全に無視されます。
パラメータ画面に表示されるのは次のようなものです。
+-------------+ +-----------+
Date range: | From date |V| | To date |V|
+-------------+ +-----------+
+-------------+ +-----------+
Yellow/red: | 70% |V| | 90% |V|
+-------------+ +-----------+
黄色と赤のしきい値は、動的ではなく静的なコンテンツ(段階的に50
)であるため、問題なく表示されていることがわかります。そのドロップダウンには特定の値が存在することがわかっているので、デフォルトをまたはのような静的な値に設定できます。100
5
70
90
ただし、前述のように、動的パラメーターはこのようには機能しません。代わりに、設定しようとしているデフォルトがドロップダウンに入力されたクエリにない場合は、「デフォルトが選択されていません」ビューに戻ります。
デフォルトを静的な値ではなくクエリ固有の値に設定するにはどうすればよいですか。BIRTでは、クエリの後にJavascriptコードを実行して、取得したデータに基づいてROMスロットを変更しました。Cognos BIにも同様の方法がありますか(もしそうなら、それは何ですか)?