1

Crystal Reportsクロス集計列の列ごとに最大値を強調表示しようとしています。つまり、毎月最高のセールスマンを表示します。クロス集計列ごとに最大値をハイライト表示

かなり基本的な要件のようですが、わかりません!ハイライトエキスパートは明らかな答えですが、条件を定義した場合(たとえば、総売上> 120,000)、列/行の最後に合計を強調表示することには興味がありません。私は、列ごとに最高の値の行が必要です。

+0

ただ、考えて....これは私がトイレのためのカップルと何ができる何かでありますps?私は、列/行などの数を取得するための関数があることを知っています... – Hoppertron

答えて

2

これは、はるかに難しい、それは必要以上にある...

は、集計フィールドの「ツールチップテキスト」条件付き書式設定式にこのテキストを追加します。

// this assumes that there is a Total column and that it is the left-most column. 

Numbervar max:=0; 
local Numbervar col; 

// exclude (left-most) total column 
for col := 1 to GetNumColumns-1 do (

    local numbervar value := GridValueAt (CurrentRowIndex, col, CurrentSummaryIndex); 
    if value > max then max := value; 

); 

ToText(max,"#"); 

その後にこのテキストを追加同じフィールドの「スタイル」条件付き書式設定式:

Numbervar max; 

If GridValueAt (CurrentRowIndex, CurrentColumnIndex, 0) = max Then 
    crBold 
Else 
    crRegular 
+0

これは完璧です、ありがとう!ちなみに、私は望んでいたようにツールチップの式を微調整しました。 X軸にSales Value、Y軸にMonthがあります。 最終調整は次のようになります。 '//これは、合計があり、最下位行であることを前提としています。 Numbervar max:= 0; ローカルNumbervar行。 //行の下の総行 除外する:( ローカルnumbervar値:= GridValueAt(行、CurrentColumnIndex、CurrentSummaryIndex)を、 値場合>最大次に最大:=値; )行うGetNumRows-2 = 0を; ToText(max、 "#"); ' – Hoppertron

+0

この問題の良い解決策 – Gerard

関連する問題