on 03-18-2009 6:52 AM
以前に、同名のフォーラムが掲載されておりましたが、解決に至っていないようでしたので、投稿させて頂きます。
今回、Visual Studio 2008にて、Crystal Reportsを使用し、レポートの出力プログラムを作成しました。
その後、実行環境にプログラムを移し、テストを実施したところ、VISTAでは、用紙サイズが正しく反映されるが、XPだと反映されないという現象が発生致しました。
いろいろと調査をおこなっておりますが、解決に至っていないしだいです。
つきましては、解決策についてご教授頂けないでしょうか?
開発環境
・Windows VISTA Business SP1
・Visual Statudio 2008 professional
実行環境
・Windows XP Professional SP3 u2192 用紙サイズが正しく反映されず。
・Windows VISTA Business SP1 u2192 問題なし。
その他
・開発環境、VISTAでは問題なし。
デザイン時の用紙サイズは?印刷時の用紙サイズは?
どのようなコード記述でプリンタへ印刷しているのかなぁ?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
早速のご返信ありがとうございます。
ご質問頂きました内容について回答させて頂きます。
1.用紙サイズについて
デザイン時の用紙サイズは、15×4.5インチ。
実際に印刷する用紙サイズは、15×4.5インチ。
用紙サイズの指定は、Visual Studio上の、Crystal Reports u2192 デザイン u2192 プリンタの設定 からプリンタ・用紙サイズを指定しております。
実行環境、開発環境それぞれに同一のプリンタ定義を作成し、検証を行なっております。
2.出力のコードについて
Dim testReport As New TESTReport(※レポートクラス)
――――――――
直接印刷時
――――――――
testReport.PrintToPrinter(1, False, 0, 0)
――――――――
プレビュー表示時
――――――――
frmPreview.crView.ReportSource = testReport
※プレビュー表示用のフォームを準備し、フォーム上にCrystalDecisions.Windows.Forms.CrystalReportsViewerを配置し、表示させております。
同一用紙サイズでも開発環境と配布環境では、その用紙サイズの値は異なります。定型サイズ (A4, A3 等) は、同一値ですが、ユーザー定義サイズはまったく異なる値になります。
[マイクロソフトのサイト (132239)|http://support.microsoft.com/kb/132239/ja] に Windows 環境のプリンタの用紙サイズの値を取得できるサンプル プログラムが掲載されています。これを使うと同一機種プリンタ、同一用紙サイズでも動作環境により値が異なることが確認できます。
Crystal Reports もレポートのデザイン時に設定された用紙サイズは、用紙名称で保存しているわけでないので、配布環境に同一用紙名称が存在しても、値が異なれば、別な用紙サイズで印刷されることになります。
まずは、動作環境の用紙サイズの値を調べて、その値を PrintOptions の PaperSize に設定して印刷することになると思います。
更新が無いので answered に変更させて頂きます。
SCN フォーラムモデレーター
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
87 | |
10 | |
10 | |
9 | |
7 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.