このトピックでは、サード パーティのコンポーネントである Crystal Reports を使用してレポートを作成する方法について説明します。作成したレポートは PRISMAdirect にアップロードする必要があります。
PrintAccounting データベースを Crystal Reports で使用できるようになりました。
テーブルまたはストアド プロシージャを選択できます。ストアド プロシージャは、1 つの実行計画にまとめられた SQL ステートメントのグループです。各テーブルにはチケット アイテムの限定されたセットが含まれています。
ストアド プロシージャはレポートごとに 1 つだけ使用します。レポートですでにストアド プロシージャを使用している場合は、追加のテーブルやストアド プロシージャを選択しないでください。レポートで複数のストアド プロシージャを使用すると、特に多くのレコードのあるデータベースで深刻なパフォーマンス上の問題につながる可能性があります。
レポートを作成する際は、複数のテーブルまたは 1 つのストアド プロシージャを選択できます。各テーブルにはチケット アイテムの限定されたセットが含まれています。ストアド プロシージャは、1 つの実行計画にまとめられた SQL ステートメントのグループです。次のストアド プロシージャのいずれかをレポートごとに選択できます。
uspGetAllOrdersItems
オーダー レベルのカスタム チケット アイテムを含むすべてのオーダー チケット アイテムが含まれています。
uspGetAllJobsItems
ジョブ レベルのカスタム チケット アイテムを含むすべてのジョブ チケット アイテムが含まれています。
uspGetOrderJobsItems
オーダー レベルとジョブ レベルのカスタム チケット アイテムを含む、すべてのオーダー チケット アイテムとジョブ チケット アイテムが含まれています。
@DumpDataInTempTable には False を選択します。
@TempTable には一意の名前 (「table1」など) を入力します。
@selectedColumns:
この手順の後のほうで、レポートに表示するフィールドを選択できます。そのステップでは、使用可能なフィールドのセットから選択できます。
使用可能なフィールドをすべて表示するには、「Set to Null (NULL に設定)」オプションを有効にします。
使用可能なフィールドのサブセットだけを表示するには、このパラメータで目的のフィールド名を指定します。各フィールド名はコンマで区切ります。
有効な WHERE 句を使用して、ストアド プロシージャの結果をフィルタリングできます。WHERE 句は SQL クエリの条件です。WHERE 句を含めることのできるパラメータの名前は、選択したストアド プロシージャによって異なります。この例ではプロシージャ uspGetAllJobsItems が選択されているため、パラメータ名は @jobsFilter です。
ストアド プロシージャの結果をフィルタリングするには、このパラメータに有効な WHERE 句を入力します。
たとえば、ストアド プロシージャ uspGetAllJobsItems は JobItems および JobCustomItems テーブルに問い合わせます。JobItems テーブルには JobNumber 列が含まれています。それで、@jobsFilter パラメータで JobNumber > 5 AND JobNumber < 20 を使用して結果をフィルタリングできます。
ストアド プロシージャの結果をフィルタリングしない場合は、このパラメータを空のままにしておきます。「Set to Null (NULL に設定)」は選択しません。
「OK」をクリックします。
「[設定] 」ワークスペースにレポートが追加されます。これで、PRISMAdirect で該当するレポートを生成できます。