Crystal Reports XI を使用しています。
私のデータはデータセットから来ています。
次のように関連する2つのテーブルがあります。
製品 (製品 ID (PK)、製品名)
ProdPC(ProdPCID(PK)、ProdID(FK)、PCType、ProdCode)
「PCType」フィールドは、「ProdCode」が表すバーコード形式のタイプを決定します。(例: EAN13、EAN8)。
Crystal レポートでは、1 つの「製品」に複数の種類のバーコードを含めることができます。これは、テーブルが次のようになることを意味します。
製品: ("1", "製品例 1")
ProdPC: ("0", "1", "EAN8", "01234567"), ("1", "1", "EAN13", "012345678910")
Crystal レポートでは、製品ごとに 1 つのバーコード ラベルのみを印刷したいと考えています。ただし、「ProdPC」テーブルには 2 つのレコードがあるため、この 1 つの製品に対して 2 つのラベルが印刷されます。
私がやりたいことは、Crystal レポートに「EAN13 が NULL の場合は EAN8 を表示し、ELSE は EAN13 を表示する」という条件を配置することです。
データセットにアクセスできず、Crystal Reports を呼び出してバーコード ラベルを作成するアプリケーションが「ProdPC」テーブルの複数のレコードを送信するのを防ぐことができません。
「Crystal Reports 2008」だけで条件文を作成するにはどうすればよいですか?
私がこれまでに試したことは次のとおりです。
IF {PartPC.PCType} = "EAN-13" AND {PartPC.ProdCode} <> "" THEN
{PartPC.ProdCode}
ELSE
/* DISPLAY PartPC.ProdCode containing EAN8 value */
;
しかし、「PCType」が「EAN8」に等しい「ProdCode」値を表示するようにCrystal Reportsに指示する方法がわかりません