1

次の機能または解決策を探しています。

SQL レポートのグラフの場合、列 A の値を乗算する必要があります。合計=SUM(COLUMN_A)の場合、グラフに使用します。しかし、乗算には何を使用できますか-これまでのところ解決策を見つけることができませんでしたか?

現在、積み上げ列の値を次のように計算しています。

=ROUND(SUM(Fields!Value_Is.Value)/SUM(Fields!StartValue.Value),3)

SUM の代わりに、値を乗算するものが必要です。そんな感じ:

=ROUND(MULTIPLY(Fields!Value_Is.Value)/MULTIPLY(Fields!StartValue.Value),3)

編集#1

さて、これを実行しようとしました。チャートの式は次のようになります。

=Exp(Sum(Log(IIf(Fields!Menge_Ist.Value = 0, 10^-306, Fields!Menge_Ist.Value)))) / Exp(Sum(Log(IIf(Fields!Startmenge.Value = 0, 10^-306, Fields!Startmenge.Value))))

「ニーズ」を手動で計算すると、次の結果が得られます。

必要な結果

私のSQLレポートでは、次の結果が得られます。

ここに画像の説明を入力

簡単にするために、これらは生の値です。

ここに画像の説明を入力

また、チャートを CW、CQ、または CY でグループ化する可能性があります (最初の写真の値は、FertStufe による生の値から集計された合計値です)

編集#2

式を試してみると、次のようになります。 ここに画像の説明を入力

明確にするために:

列の値

=Value_IS / Start_Value

最初の写真では、互いに乗算されます

0,9947 x 1,0000 x 0,59401 = 0,58573

ディフュージョン カレンダーウィーク 44 サム

開始値: 1900,00 値: 1890,00 == 利回り:0,99474

Waffer unbestrahlt Calenderweek 44 Sums

開始値: 620,00 値: 620,00 == 利回り 1,0000

ペレット カレンダーウィーク 44 Sums

開始値: 271,00 値: 160,00 == 利回り 0,59041


収量 拡散 x 収量 ウェーハ x 収量 ペレット = 必要 チャートの値 = 0,58730

編集 #3 生の値は次のようになります。 ここに画像の説明を入力

グラフは、イメージのように、CY (暦年)、CM (暦月)、CW (暦週) のフィールドでグループ化されています。

こちらからデータをxls形式でダウンロードできます。

https://www.dropbox.com/s/g0yrzo3330adgem/2013-01-17_data.xls

私が使用する式(編集ウィンドウからコピー/貼り付け)

=Exp(Sum(Log(Fields!Menge_Ist.Value / Fields!Startmenge.Value)))

レポートの結果全体を Excel にエクスポートしました。こちらから入手できます: https://www.dropbox.com/s/uogdh9ac2onuqh6/2013-01-17_report.xls

4

1 に答える 1

5

それは実際には回避策です。しかし、私はこの悪名高い問題の唯一の解決策であると確信しています:D

これが私がした方法です:

Exp(∑(Log(X)))、あなたがすべきことは次のとおりです。

Exp(Sum(Log(Fields!YourField.Value)))

数学に何の価値もないなんて誰が言った?=D

編集:

式を修正しました。

ちなみに、テスト済みです。

イアンの懸念に対処する:

Exp(Sum(Log(IIf(Fields!YourField.Value = 0, 10^-306, Fields!YourField.Value))))

アイデアは、非常に小さな数で 0 を変更することです。ただのアイデア。

編集:

更新された質問に基づいて、これはあなたがすべきことです:

Exp(Sum(Log(Fields!Value_IS.Value / Fields!Start_Value.Value)))

上記のコードをテストしたところ、期待どおりの結果が得られました。

于 2013-01-17T09:58:32.833 に答える