2

この質問の個々の部分には多くのコード サンプルがありますが、Report Designer の初心者として、この正しい構文を取得できません。

3 つの DataSet の 1 つから「Held Hours」の合計を表示したいテキストフィールドがあり、これは「H」の値を持つ同じ DataSet の別のフィールドによって決定されます。

したがって、分割すると、これは ReportDataset のすべての時間を合計するように機能します。

=Sum((Fields!RegHrs.Value + Fields!OvtHrs.Value),"ReportDataset")

さて、どういうわけか、それを IIF にネストする必要があります。BillStatus = "H" の場合、SUM 式が IIF から "True" を返す必要があります。

IIF(Fields!BillStatus.Value = "H",true,false)

IIF と SUM を組み合わせて "ReportDataset" から取得し、構文的に正しいようにする方法がわかりません。

私はこれのさまざまな順列を試してきました:

=Sum(IIF(Fields!BillStatus.Value = "H",((Fields!RegHrs.Value + Fields!OvtHrs.Value),"ReportDataset"),0))

ポインタはありますか?


新しい情報:

次は構文的に正しいと報告していますが、戻り値として 0 が返されます。

=Sum(IIF(Fields!BillStatus.Value = "H", (Fields!RegHrs.Value + Fields!OvtHrs.Value),0),"ReportDataset")

何百時間も返されるはずです。

4

2 に答える 2

2

ネストされた合計を試してください:

=Sum(IIF(Fields!BillStatus.Value = "H", Sum(Fields!RegHrs.Value + Fields!OvtHrs.Value,"ReportDataset"),0),"ReportDataset")

または:

=IIF(Fields!BillStatus.Value = "H", Sum(Fields!RegHrs.Value + Fields!OvtHrs.Value,"ReportDataset"),0)
于 2012-12-16T01:25:53.450 に答える
1

SQL を使用してデータセットで実行できますか? その場合は、次を使用してください。

SELECT CASE WHEN BillStatus = 'H' THEN RegHrs + OvtHrs END AS HeldHours
FROM MyTable

次に、このフィールドを合計するだけです。

=Sum(Fields!HeldHours.Value, "ReportDataSet")
于 2012-12-13T22:27:03.173 に答える