各行はセールス担当者によってグループ化されるので、計算のために検出する必要があるのは年だけです。
= SUM(IIF(フィールドYear.Value = "2016")、フィールズMedicaid.Value、0!!)) - SUM(!IIF(フィールドYear.Value = "2017")、フィールドメディケイド! .Value、0))
これは、集計関数を(グループフィルタを使用して)データセットで実行するものです。要するに、IIFロジックをネストして、年フィールドがデータセット内にあるものを検出することができます。それが私たちが探している年であれば、データの価値を返します(この場合メディケイド値)。最終結果は、日付と一致するすべての値の合計です。それから、私は次の年までにそれを減算し、あなたの違いがあります。
私はあなたがこのダイナミックを保ちたいと思います。自分のデータをどのように処理するかわからないので、独自のソリューションをテストする必要があります。これは、代わりにあなたが使用するハードコーディングされた年で、現在の年と前年度に反転する非常に来年で想定すると:
今()現在の年と()addYears(-1).Year
は 。
このコードはすべて動作するはずですが、テストしなかったと思います。これらのVBNet DateTime機能を確認する必要があります。ちょうどあなたに私の昼休みの答えを得ようとしました!
@Luckyからの回答に別の考えを追加する。データセットを変更して、データcurrentYearにラベルを付けることができる場合は、実際の値ではなくprevYearにして、そのフィールド名を式にハードコードすることができます。列自体に表示される年が必要な場合は、これらの値をデータセットの追加列として追加し、列見出しを '= First(Fields!myCurrentYearLabelColumn.Value) 'のように設定してください。 –
Alan!今あなたは私に考えさせてくれました。 prevYearとcurrentYearをパラメータとして追加します。このようにして、何年目の曖昧さが解消され、ユーザーは以前の年のデータにもアクセスできます。 – Lucky
返答ありがとうございました..しかし、フィールド!メディケイド値は直接来ています...メディケイドは支払人タイプの列から来ています...それで、2つの条件が一致している式を修正し、値を表示する方法= = SUM (IIF(Fields!SMN_Year.Value = Year(Now)、Fields!Payer_Type.Value = "Medicaid"、Fields!Totals.Value、0)..私はこれを書こうとしますが、これは私にとっては役に立たない – sai