コンポーネントの組み合わせで実現!
業務要件を満たす帳票アプリケーションの作り方
MultiRow + InputMan + ActiveReports = Windows業務アプリケーション
ダウンロード サンプルソース (610.9 KB)
印刷機能を追加する
ActiveReportsで作成した帳票デザインとプレビュー表示フォームの2つを、サンプル「CZ0912MultiRow」に追加します。
CZ0912_Form.vbで表示中のデータを印刷したいので、プレビュー表示フォーム(CZ0912Bound_Form.vb)のShowDialogメソッドに請求番号を渡すためのパラメータを追加して、リスト5のようなコードにします。
Public Class CZ0912Bound_Form
Private _billNo As String = String.Empty
Public Shadows Function ShowDialog(ByVal owner As Form, _
ByVal billNo As String) As DialogResult
_billNo = billNo
Return MyBase.ShowDialog(owner)
End Function
Private Sub Me_Shown(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Me.Shown
Dim rpt As New Seikyu_Report()
Application.DoEvents()
Using _prco As New CZ0912Bound
rpt.DataSource = _prco.GetPrintRecords("admin", "", _billNo).Tables(0)
Viewer1.Document = rpt.Document
rpt.Run()
End Using
End Sub
End Class
この画面を呼び出すためのコードは、CZ0912_Form.vbに[印刷]ボタンを追加して、ボタンをクリックしたらプレビュー表示フォームを呼び出すようにします。
Private Sub Print_Button_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Print_Button.Click
Me.Cursor = Cursors.WaitCursor
Me.ToolStripStatusLabel1.Text = "印刷中"
Me.Refresh()
Try
Using _form As New CZ0912Bound_Form
_form.Showdialog(Me,Me.GcMultiRow1.ColumnHeaders(0).Cells("BillNo_Cell").Value.ToString)
End Using
Me.ToolStripStatusLabel1.Text = Now.ToString("MM/dd hh:mm:ss")
Catch ex As Exception
Me.ToolStripStatusLabel1.Text = ex.Message
Finally
Me.Cursor = Cursors.Default
End Try
End Sub
まとめ
サンプル「CZ0912MultiRow」では、事前に作成した帳票出力コードを最大限利用するために印刷時に再度mdbファイルから値を取得しています。もちろん、印刷時にはmdbファイルから取得せずに画面に表示中のDataSetを渡して印刷するようにも変更可能なので、ぜひチャンレジしてみてください。
製品情報
この記事は参考になりましたか?
既に会員の方はを行ってください。
- 現役エンジニア直伝! 「現場」で使えるコンポーネント活用術(ActiveReports)連載記事一覧
- この記事の著者
-
初音玲(ハツネアキラ)
国内SIerのSEでパッケージ製品開発を主に行っており、最近は、空間認識や音声認識などを応用した製品を手掛けています。 個人的には、仕事の内容をさらに拡張したHoloLensなどのMRを中心に活動しています。 Microsoft MVP for Windows Development ブログ:http://hatsune.hatenablog.jp/
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア


