ダウンロード サンプルファイル (2.4 MB)
セクションレポートでデータのみ印刷
ここでは、セクションレポートで「プレ印字の用紙にデータのみ印刷する」方法を紹介します。セクションレポートではレイヤー機能は使用できませんが、実行時にコードでプレビュー用、および印刷用にレポートを生成することで対応できます。
ただし、この方法の場合は、プレビュー用と印刷用にそれぞれレポートを生成することになります。通常はプレビュー用に作成したレポートをそのまま印刷しますが、この方法では印刷用に再度レポートを生成することになるため、通常のビューワからの印刷に対してパフォーマンス的に不利になります。
付属のサンプルは、「03_セクションレポートでデータのみ印刷.vb/.cs」をご参照ください。
レポートデザインの作成
はじめに、セクションレポートでレポートを作成します。ページレポートの場合と同様、ハガキのレイアウトおよびデータ部分を作成します。
コントロールの非表示
印刷時にプレ印字用紙のレイアウト(郵便番号の枠線や会社ロゴ)を非表示に設定するためのPublicなプロパティを追加します。
Private _ForPrint As Boolean = False
Public Property ForPrint As Boolean
Get
Return Me._ForPrint
End Get
Set(value As Boolean)
Me._ForPrint = value
End Set
End Property
Private Sub Section_DataOnly_ReportStart(sender As Object, e As EventArgs) Handles MyBase.ReportStart
' 非表示にするコントロールの配列
Dim hideControls() As GrapeCity.ActiveReports.SectionReportModel.ARControl = {Me.Shape1, Me.Shape2, Me.Shape3, Me.Shape4, Me.Shape5, Me.Shape6, Me.Shape7, Me.Label1, Me.Picture1}
' コントロールを非表示にする
If Me.ForPrint Then
For Each c As SectionReportModel.ARControl In hideControls
c.Visible = False
Next
End If
End Sub
private Boolean _ForPrint = false;
public Boolean ForPrint
{
get
{
return this._ForPrint;
}
set
{
this._ForPrint = value;
}
}
private void Section_DataOnly_ReportStart(object sender, EventArgs e)
{
// 非表示にするコントロールの配列
GrapeCity.ActiveReports.SectionReportModel.ARControl[] hideControls = {this.Shape1, this.Shape2, this.Shape3, this.Shape4, this.Shape5, this.Shape6, this.Shape7, this.Label1, this.Picture1};
// コントロールを非表示にする
if (this.ForPrint)
{
foreach (GrapeCity.ActiveReports.SectionReportModel.ARControl c in hideControls)
{
c.Visible = false;
}
}
}
印刷ボタンの動作を変更する
データのみのレポートを印刷するように、印刷ボタンの動作を変更します。
Viewerコントロールのツールバーは .NET FrameworkのToolStripオブジェクトで作成されていますので、カスタマイズが可能です。カスタマイズの方法については、こちらのナレッジ文書をご参照ください。
まとめ
今回は、9.0Jの新機能であるレイヤーを紹介しました。レイヤーのDesignerTrasnparencyプロパティを使用することで、既存の帳票の画像をトレースして帳票レイアウトを作成できます。また、レイヤーのTargetDeviceプロパティを使用することで、簡単にプレ印字の用紙にデータのみ印刷できます。
次回は、「HTML5ビューワ」を使用したWebアプリケーションの作成方法を紹介します。
この記事は参考になりましたか?
既に会員の方はを行ってください。
- この記事の著者
-
グレープシティ株式会社 ActiveReportsチーム(グレープシティカブシキガイシャ アクティブレポートチーム)
宮城県仙台市に本社を構えるグレープシティでは、日本の業務に適したシステムをより早く開発するためのソフトウェアを提供しています。エンドユーザーの利用しやすさ、幅広いユーザー環境への対応、そして何よりプログラマの作業を軽減することを一番に目指しています。 ActiveReportsは、帳票開発に必要なあらゆる機能を備えた当社を代表するコンポーネントの1つ。1998年の発売以来、日本だけでなく全世界で多数の帳票開発者に使用されています。製品開発は同チームが中心になり、「日本仕様」の厳しい要望を実現することを目指しています。...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア
