0

私はCrystalReportsの初心者です。マップされたデータベース列にYesとNULLの2つの値を持つパラメーターがあります。私は次のようなカウント付きのクロステーブルを作成しようとしています-

Name    Yes   NULL
ABC      5     2
XYZ      3     7

Nullの代わりに「いいえ」を表示するにはどうすればよいですか---名前はいいいえ

4

3 に答える 3

4

Bethが示唆しているように、この種のことはDB(つまりクエリ)側の方が簡単なことがよくあります。

本当にCrystalで実行したい場合は、次のような式を使用して、適切な名前の新しい数式を作成します。

If IsNull ({TABLE.FIELD}) Then "No" Else {TABLE.FIELD}

クロス集計を変更して、TABLE.FIELD値ではなく、数式でグループ化します。

于 2010-09-23T10:58:27.313 に答える
1

可能であれば、db側のNullをNoに置き換えてください。

于 2010-09-22T22:04:38.957 に答える
1

多くの場合、バックエンドでSQL Serverを使用している独自のプログラムに対してレポートを作成する場合など、データソースを制御できません。そのような場合は、マークが提案するとおりに実行する必要があります。

時々物事を簡単にすることができるさらなる習慣:Group1と呼ばれる式を作成します。その中に、グループ化するフィールド名を入力するだけです。次に、この状況に遭遇した場合、NULLを処理するために実際のフィールドの数式を交換する必要がある場合は、数式Group1の内容を{fieldname}から@formulanameに変更するだけです。

ここでの大きな利点は、かなりの作業を行ったレポートがある場合、つまり、グループフッターに多くの要約やその他の要素が追加されている場合、GroupByを{field}-> @formulaから変更すると、それらがすべて失われることです。 。ただし、@ Group1という数式でグループ化し、その内容を変更するだけで、その作業が失われることはありません。

于 2014-07-23T19:05:17.257 に答える