C1Report は、レポートを生成するために以下の2つの方法を提供します。
どちらの方法でも既存のレポートを正常に生成できますが、上記の2つの方法の主な相違点は以下の通りです。
インポートするとデータ連結されたC1PrintDocumentが生成され、データが取得されます。したがって、データが更新されるとドキュメントも更新されます。
一方、C1Report コンポーネントを使用する場合は、作成されたドキュメントで生成中に取得されたデータは既に組み込まれています。したがって、ドキュメントはデータと連結されていませんので、データを更新したときは、再びレンダリングする必要があります。
レポートをC1PrintDocumentでインポートする場合は、フィールドおよびセクションのすべてはそれぞれ RenderFieldクラスおよび RenderSection クラスとして示されています。レポートの定義でグループが含まれている場合は、各グループは RenderArea オブジェクトとして表されます。グループ内のヘッダとフッタは RenderSection クラス、ネストされたグループは RenderArea クラスが使用されます。
C1Report コンポーネントを使用すると、各セクションは RenderArea オブジェクトとしてレンダリングされます。フィールドのレンダリングは以下の通りです。
CustomWidth および CustomHeight がどちらも0に設定されているレポートをプリンタがインストールされていないシステムにインポートすると、C1PrintDocument では、現在のロケールに基づいて用紙サイズが決定されます (たとえば、用紙サイズはアメリカやカナダではレター、日本やヨーロッパでは A4 に設定されます)。
同じレポートを C1Report コンポーネントで読み込んだ場合は、用紙サイズは C1.Win.C1Report.C1Report と同様に現在のロケールに基づいて用紙サイズが決定されます。
1つ以上のプリンタがインストールされているシステムでは、インポートされたレポートのデフォルトページサイズは通常のC1PrintDocumentと同じロジックを使用して決定されます (プリンタを決定するには、 MeasurementPrinterNameプロパティが使用されます)。この動作は、デフォルトネットワークプリンタがインストールされているシステムで長い保留時間を回避するために提供されています。C1Report コンポーネントの場合は、システムのデフォルトプリンタのデフォルトページサイズが使用されます。
C1Report をC1PrintDocumentにインポートする際は、次の制限があります。