cancel
Showing results for 
Search instead for 
Did you mean: 

CrystalReports 2013 でVB.netからプリンタ設定できない

Former Member
0 Kudos

旧環境:VisualStudio2010,CrystalReports9

から

新環境:VisualStudio2013,CrystalReports2013

への移行中です。

旧環境ではレポートのデザイン時にプリンタの設定で「プリンタなし」を設定し、ReportDocument.PrintOptions.PrinterNameに

プリンタを設定して問題なく印刷できていました。

新環境では「プリンタなし」が設定されているとReportDocument.PrintOptions.PrinterNameにプリンタが設定されません。

PCのデフォルトプリンタに印刷されます。

レポートファイルにプリンタを設定しておくとプリンタの設定は可能でした。

レポートのデザイナでは「プリンタなし」とし、プログラムからプリンタを設定する方法はありますでしょうか。

Accepted Solutions (1)

Accepted Solutions (1)

former_member186271
Participant
0 Kudos

こんにちは。

以下のコードをご確認お願いいたします。

Dim _myCrystalReDoc as CrystalDecisions.CrystalReports.Engine
_myCrystalReDoc = new ....

_myCrystalReDoc.load (....)

Dim _rcd1 AsCrystalDecisions.ReportAppServer.ClientDoc.ISCDReportClientDocument
_rcd1 = _myCrystalReDoc.ReportClientDocument
_rcd1.PrintOutputController.GetPrintOptions.PrinterName = printerName

If _myCrystalReDoc.PrintOptions.PrinterName <> "" Then
       msgbox ("Yeah")
End If

以上、

Jeff。

Former Member
0 Kudos

ご回答ありがとうございます。

なるほど。プリンタの設定ができました。

ただし、

_myCrystalReDoc.PrintOptions.PrinterName は "" のままです。

_myCrystalRedoc.ReportClientDocument.ReportDocument.PrintOptions.PrinterName にプリンタ名が設定され、この状態で指定したプリンタには印刷できました。

ありがとうございました。

Answers (1)

Answers (1)

Former Member
0 Kudos

以下のリンクから最新版の Runtime でお試しいただきましたでしょうか。


http://scn.sap.com/docs/DOC-7824

Yoshi

Former Member
0 Kudos

ご回答ありがとうございます。

最新版のRuntimeでも試しましたが、現象は変わらずです。

通常であれば、デザイナで「プリンタなし」とした場合でも、プログラムからプリンタを設定することは可能なのでしょうか。

Former Member
0 Kudos

一般論になりますが、[プリンタなし] を利用する場合、定型サイズの用紙や Web 経由で印刷されるときには利用されることをお勧めいたします。それ以外の場合、特定のプリンタを指定し、[ページオプションの書式設定ページサイズと用紙サイズを別個に設定する] をチェックして用紙サイズを選択してください。

Crystal Reports 9 には、[ページオプションの書式設定ページサイズと用紙サイズを別個に設定する] のオプションが存在しておりませんが、移行後は、どのような設定になっておりますか。


また、プリンタへの印刷ですが、コード上から PrintToPrinter()、または、ビューア上のプリンタアイコンのどちらから行なわれておりますか。

現状のコード記述ですが、印刷する前に以下のプロパティの設定は行なわれておりますでしょうか。

・プリンタ名

・用紙サイズ

・印刷方向

・余白

差し支えなければ、プリンタのプロパティ設定から印刷までのコード記述をご提供ください。

用紙サイズ、印刷方向もあわせてお知らせください。

Yoshi