SetPrinterプロパティ

印刷の設定を行います。
 
[構文]
 
Object.SetPrinter  =  long  
 

設定項目

内容

Object

オブジェクトへの参照を表すオブジェクト式

long 印刷設定(設定値参照)
   
[設定値]
 
long には次の値を指定します。
 

定数

内容

JV_SPNONE

0

何も設定しない(初期値)

JV_SPSETPAPER

1

用紙サイズと方向を自動的に設定

JV_SPSHOWDIALOG

2

印刷ダイアログの表示

JV_SPDEVMODE

3

プリンタドライバ情報の設定

 
[解説]
 
用紙サイズと方向を自動的に設定
印刷実行時に、FormNameプロパティで指定されているフォームの用紙サイズと用紙方向をレポートライブラリが自動的に設定します。
設定値は、Windowsが提供する標準値です。プリンタドライバによっては、独自の設定値を使用しているなどの理由により有効にならない場合があります。そのような場合は「JV_SPDEVMODE(プリンタドライバ情報の設定)」に変更してください。
 
出力先が「JV_RDF」「JV_RDFSVC 」の場合には、レポートライブラリが自動的に設定した用紙サイズと用紙方向の値は、RDFデータの中に入ります。プレビューコントロールのPrintOutメソッドで印刷をすると、この設定値で印刷が行われ、プレビューコントロールのPrintDialogメソッドをコールすると、この設定値で初期設定された印刷ダイアログがポップアップします。RDFデータにこの設定値が入っている場合、プレビューコントロールの印刷ダイアログで、ユーザーが用紙サイズや用紙方向を変更しても有効とならず、この設定値で印刷が行われます。プレビューコントロールの印刷ダイアログで用紙サイズや用紙方向を変更する場合には、「JV_SPNONE」で何も設定しないようにしてください。
 
用紙サイズや用紙方向の違う帳票を1つのRDFデータに混在させ、且つ、プレビューコントロールから一括で印刷を行う場合には、RDFデータを作成する時、各ページごとに、「JV_SPSETPAPER」または「JV_SPDEVMODE」で用紙サイズや用紙方向の情報を設定しておきます。
 
印刷ダイアログの表示
実行時(Startメソッド実行時)に印刷ダイアログを表示します。
 
印刷ダイアログを表示する場合には、Startメソッドの前で設定してください。印刷ダイアログの表示は、OutDeviceプロパティが「JV_PRINTER 」の場合のみ有効です。
Startメソッドの前でFormnameプロパティにフォーム名が設定されている場合には、フォームの用紙サイズと用紙方向で初期設定された印刷ダイアログが表示されます。 PrinterNameプロパティにプリンタ名が設定されていれば、そのプリンタで印刷ダイアログボックスが表示されます。設定されていない場合は「通常使うプリンタ」で印刷ダイアログが表示されます。
印刷ダイアログを表示した時の初期値設定や、印刷ダイアログ上でユーザーが入力した値の取得には、Copiesプロパティ、FromPageプロパティ、ToPageプロパティ、MinPageプロパティ、MaxPageプロパティ、Collateプロパティ、AllowSelectionプロパティを使います。
 
1つの印刷ジョブ(StartからEndまでの間)の中で用紙サイズや用紙方向の異なる帳票を印刷する場合、印刷ダイアログは使用できません。そのような帳票で印刷ダイアログを使用する場合には、RDF形式のデータを作成し、プレビューコントロールから印刷を行ってください。プレビューコントロールで印刷ダイアログを表示する場合には、プレビューコントロールのPrintDialogメソッドを使います。
 
基本的なコーディング   
 
プリンタドライバ情報の設定
印刷実行時に、アプリケーション内部でプリンタドライバを設定します。
プリンタドライバの設定値は、PrinterDevModeプロパティで指定します。プリンタは、PrinterNameプロパティを使って指定します。
プリンタドライバの設定は、OutDeviceプロパティが「JV_PRINTER」「JV_RDF」「JV_RDFSVC 」の場合のみ有効です。
 
出力先が「JV_RDF」「JV_RDFSVC 」の場合には、設定したプリンタドライバ情報の値は、RDFデータの中に入ります。プレビューコントロールのPrintOutメソッドで印刷をすると、この設定値で印刷が行われ、プレビューコントロールのPrintDialogメソッドをコールすると、この設定値で初期設定された印刷ダイアログがポップアップします。RDFデータにプリンタドライバ情報の設定値が入っている場合、プレビューコントロールの印刷ダイアログで、ユーザーが用紙サイズや用紙方向を変更しても有効とならず、この設定値で印刷が行われます。プレビューコントロールの印刷ダイアログで用紙サイズや用紙方向を変更する場合には、「JV_SPNONE」で何も設定しないようにしてください。プリンタや印刷枚数などの用紙サイズと用紙方向以外の項目は、印刷ダイアログで変更可能です。プレビューコントロールの印刷ダイアログに初期設定をする場合には、Startメソッドの前でプリンタドライバ情報を設定してください。
 
用紙サイズや用紙方向の違う帳票を1つのRDFデータに混在させ、且つ、プレビューコントロールから一括で印刷を行う場合には、RDFデータを作成する時、各ページごとに、「JV_SPSETPAPER」または「JV_SPDEVMODE」で用紙サイズや用紙方向の情報を設定しておきます。
 
プリンタドライバ情報は、1つの印刷ジョブ(StartからEndまでの間)の中で何度でも変更することができます。変更する場合には、NewPageメソッドの後で変更します。プリンタドライバ情報が変更されると、前回の設定は無効になります。二回目以降に変更できるのは、用紙サイズと用紙方向のみで、プリンタや印刷枚数などは変更できません。
 
基本的なコーディング
   
[コーディング例]
 
プリンタドライバ情報を設定する
 
Jvr.SetPrinter = JV_SPDEVMODE

'プリンタドライバ情報の設定

Jvr.PrinterDevMode = "2,9"

'A4横置き

Jvr.Temporary = JV_TEMPORARY_OFF

'永久登録

Jvr.OutDevice = JV_PRINTER

'出力先をプリンタにする

Jvr.Start

 

 
自動設定機能を使い、印刷中に用紙のサイズや方向を変更する
 

Jvr.OutDevice = JV_PRINTER

'出力先をプリンタに設定

Jvr.FormName = "C:\tmp\請求書.jfm"

'A4縦置きフォームを指定

Jvr.PrinterName = "EPSON PM-G860X"

'プリンタの指定

Jvr.SetPrinter = JV_SPSETPAPER

'用紙サイズと方向を自動設定

Jvr.Start()

'印刷の開始

 ・

 

 ・

 

Jvr.DrawForm()

'A4縦置きの帳票を描画

Jvr.NewPage()

'排紙

Jvr.FormName = "C:\tmp\受領書.jfm"

'A4横置きフォームを指定

 ・

 

 ・

 

Jvr.DrawForm()

'A4横置きの帳票を描画

Jvr.NewPage()

'排紙

Jvr.End()

'印刷終了

 
プリンタドライバ設定機能を使い、印刷中に用紙のサイズや方向を変更する
 

Jvr.OutDevice = JV_PRINTER

'出力先をプリンタに設定

Jvr.FormName = "C:\tmp\請求書.jfm"

'A4縦置きフォームを指定

Jvr.PrinterName = "EPSON PM-G860X"

'プリンタの指定

Jvr.PrinterDevmode = "1,9"

'A4縦置きのプリンタドライバ情報を設定

Jvr.SetPrinter = JV_SPDEVMODE  

'プリンタドライバ情報の設定

Jvr.Start()

'印刷の開始

 ・

 

 ・

 

Jvr.DrawForm()

'A4縦置きの帳票を描画

Jvr.NewPage()

'排紙

Jvr.FormName = "C:\tmp\受領書.jfm"

'A4横置きフォームの指定

Jvr.PrinterDevmode = "2,9"

'A4横置きのプリンタドライバ情報を設定

 ・

 

 ・

 

Jvr.DrawForm()

'A4横置きの帳票を描画

Jvr.NewPage()

'排紙

Jvr.End()

'印刷終了

 
自動設定機能で用紙のサイズや方向を変更したRDFデータを作成し、プレビューコントロールで印刷する
 

Jvr.OutDevice = JV_RDF

'出力先をRDFタに設定

Jvr.FormName = "C:\tmp\請求書.jfm"

'A4縦置きフォームを指定

Jvr.SetPrinter = JV_SPSETPAPER

'用紙サイズと方向を自動設定

Jvr.Start()

'ジョブの開始

 ・

 

 ・

 

Jvr.DrawForm()

'A4縦置きの帳票を描画

Jvr.NewPage()

 

Jvr.FormName = "C:\tmp\受領書.jfm"

'A4横置きフォームを指定

 ・

 

 ・

 

Jvr.DrawForm()

'A4横置きの帳票を描画

Jvr.NewPage()

 

Jvr.End()

'ジョブの終了

 

 

Call JiveView.set_DocumentData(Jvr.DocumentData)  'RDFデータを設定

JiveView.PrinterName = "EPSON PM-G860X"

'プリンタを設定

JiveView.Copies = 1 

'印刷部数を設定

JiveView.MinPage = 1

'印刷開始ページを1にする

JiveView.MaxPage = JiveView.PageCount

'印刷終了ページに総ページ数を入れる

JiveView.PrintOut()

'印刷

 
プリンタドライバ設定機能で用紙のサイズや方向を変更したRDFデータを作成し、
プレビューコントロールで印刷する
 

Jvr.OutDevice = JV_RDF

'出力先をRDFに設定

Jvr.FormName = "C:\tmp\請求書.jfm"

'A4縦置きフォームを指定

Jvr.PrinterDevmode = "1,9"

'A4縦置きのプリンタドライバ情報を設定

Jvr.SetPrinter = JV_SPDEVMODE

'プリンタドライバ情報の設定

Jvr.Start()

'ジョブの開始

 ・

 

 ・

 

Jvr.DrawForm()

'A4縦置きの帳票を描画

Jvr.NewPage()

 

Jvr.FormName = "C:\tmp\受領書.jfm"

'A4横置きフォームを指定

Jvr.PrinterDevmode = "2,9"

'A4横置きのプリンタドライバ情報を設定

 ・

 

 ・

 

Jvr.DrawForm()

'A4横置きの帳票を描画

Jvr.NewPage()

 

Jvr.End()

'ジョブの終了

 

 

Call JiveView.set_DocumentData(Jvr.DocumentData) 'RDFデータを指定

JiveView.PrinterName = "EPSON PM-G860X"

'プリンタを指定

JiveView.Copies = 1 

'印刷部数を設定

JiveView.MinPage = 1

'印刷開始ページを1にする

JiveView.MaxPage = JiveView.PageCount

'印刷終了ページに総ページ数を入れる

JiveView.PrintOut()

'印刷

   
プリンタドライバ設定機能で用紙のサイズや方向を変更したRDFデータを作成し、
プレビューコントロールで印刷ダイアログを表示する
 

Jvr.OutDevice = JV_RDF

'出力先をRDFに設定

Jvr.FormName = "C:\tmp\請求書.jfm"

'A4縦置きフォームを指定

Jvr.PrinterDevmode = "1,9"

'A4縦置きのプリンタドライバ情報を設定

Jvr.SetPrinter = JV_SPDEVMODE

'プリンタドライバ情報の設定

Jvr.Start()

'ジョブの開始

 ・

 

 ・

 

Jvr.DrawForm()

'A4縦置きの帳票を描画

Jvr.NewPage()

 

Jvr.FormName = "C:\tmp\受領書.jfm"

'A4横置きフォームを指定

Jvr.PrinterDevmode = "2,9"

'A4横置きのプリンタドライバ情報を設定

 ・

 

 ・

 

Jvr.DrawForm()

'A4横置きの帳票を描画

Jvr.NewPage()

 

Jvr.End()

'ジョブの終了

 

 

Call JiveView.set_DocumentData(Jvr.DocumentData) 'RDFデータを指定

JiveView.Copies = 1 

'印刷部数を設定

JiveView.MinPage = 1

'印刷開始ページを1にする

JiveView.MaxPage = JiveView.PageCount

'印刷終了ページに総ページ数を入れる

JiveView.PrintDialog()

'印刷ダイアログの表示