ReportPrint関数(Visual Basic対応)

構文

ReportPrint(hwnd,filename,option,windowstyle)

指定項目

hwnd
起動元のウィンドウハンドルを識別します。
filename
帳票ファイル名(レポートファイル名(*.agr),またはフォームシートファイル名(*.fms))を指定します。ファイルのパスは,オプション記述ファイルで指定できますが,ここでファイルのパスを含めて指定することもできます。
帳票ファイル名を指定するとき,エクスプローラなどで,ファイルを一つ選択したあと,ポップアップメニューから[プロパティ]を選択すると,ファイルのプロパティを表示できます。[EURのプロパティ]タブで,帳票ファイルを設計したEUR製品のプログラムプロダクト情報を確認することで,帳票ファイルを参照,または印刷できるEUR製品のプログラムプロダクト情報を特定できます。
複数様式で帳票を印刷する場合は,オプション記述ファイルのキーワードMultiReportSetFileに指定する帳票セット指定ファイルにフォームシートファイル名を指定するので,filenameの指定は省略できます。
option
/kオプションでオプション記述ファイル名を指定します。記述形式を次に示します。

"/k オプション記述ファイル名"

オプション記述ファイル名をフルパスで指定しなかった場合は,EURのインストール先フォルダからの相対パスが仮定されます。
オプション記述ファイルでは,次に示す指定ができます。複数様式で帳票を印刷する場合は,指定しても無効になるキーワードがあります。オプション記述ファイルのキーワードに指定する情報については,「7.12.1 オプション記述ファイルのキーワード」を参照してください。

表5-4 オプション記述ファイルに指定できるキーワード(ReportPrint関数(Visual Basic対応))

指定できるキーワード一つの帳票を印刷する場合複数様式で印刷する場合
DBInfoFileName×
DBInfoFilePath
FontWidthMode
ImageFilePath
MappingDataFile
MappingDataPath
MultiFormInfoDefFile×
MultiFormInfoDefPath×
MultiReportSetFile×
MultiReportSetPath×
Numbering
NumberingFormat
NumberingFrom
NumberingPos
NumberingReset
PaperOrientation
PrintEndPage
PrinterName
PrintFileName
PrintFinishing
PrintSet
PrintStartPage
ReplaceItemCntlFile
ReplaceItemCntlFilePath
ReplaceItemFilePath
ReportFilePath
ReportTitle
TrayCode
TraySelection
UserDefDataFile
UserDefDataPath
(凡例)
○:指定できます
△:指定しても無効です
×:指定しません
windowstyle
ReportPrint関数の起動時の,ウィンドウの形式を指定します。
指定値説  明
0バックグラウンド印刷します。Windowsのリストの,最初のウィンドウをアクティブにします。
1フォーカスを持った通常のウィンドウで表示されます。
2フォーカスを持ち,アイコン化されているウィンドウで表示されます。
3フォーカスを持ち,最大表示されているウィンドウで表示されます。

機能

ReportPrint関数は,filenameで指定した帳票ファイルを直接印刷します。印刷している帳票をレポート確認ウィンドウに表示するかもしくはアイコンの状態で印刷するか,またはバックグラウンドの状態で印刷を指定できます。オプション記述ファイルを指定すると,プリンタの設定や余白へのページ番号なども指定できます。

印刷処理が終了すると,レポート確認ウィンドウ,またはアイコンを消去して呼び出し元へリターンします。リターン時には,処理結果を表示するリターンコードを返します。

戻り値

ReportPrint関数が正常に処理された場合は0を返します。それ以外はエラーコードを返します。

エラーコードについては,マニュアル「EUR メッセージ」を参照してください。

注意事項

一度に印刷できるページ数は,32,767までです。ただし,32,767という値は,ソフトウェア上の限界値です。ハードウェア上の限界値は,プリンタ用紙枚数,スプールファイル用のディスク容量などで決まります。通常は,プリンタカセット内の紙の枚数を考慮して印刷ページ数を決めてください。

記述例

'★ EURのDLL関数宣言 ★
Private Declare Function ReportPrint Lib "hieur20.dll" (ByVal x1 As Long, ByVal x2 As String, ByVal x3 As String, ByVal x4 As Long) As Long
'★ EURのDLL関数宣言 ★
   
'★ EURのDLL関数実行宣言 ★
Private Sub Command1_Click()
Dim x2 As String
Dim x3 As String
Dim r1 As Long
   
x2="table.agr"
                          '帳票ファイル名(パス名省略)
x3="/k d:¥grpmail¥tmp¥kopt1.txt"
                          'オプション記述ファイル(フルパス)
r1=ReportPrint(Form1.hWnd,x2,x3,1)
Label1.Caption=r1
                          'リターンコード設定
End Sub
'★ EURのDLL関数実行宣言 ★