いくつかのカスタム機能を処理するために、Crystal Reports Viewer アプレットをラップする 10 年前のアプレットがあります。設計どおりにレポートを表示および印刷し、十分に機能しました。Web アプリはデータ選択を提供し、HTML を生成して、AJAX 呼び出しを介して正しいパラメーターでアプレットを呼び出します。
(これまでのところ) 次の問題を経験しているユーザーが1 人います。アプレットを生成してレポートを表示した後、レポートを印刷します。印刷ダイアログが表示されると、キャンセルしても、次のことが機能しなくなります。
- 生成されたアプレット HTML を消去することになっている[閉じる]リンクが機能しなくなりました。
- 他のページへのナビゲーション リンクが機能しなくなりました。マウスがそれらの上に置かれると適切に暗くなりますが、ブラウザーはそれらをクリックしても反応しません。
- ウィンドウを閉じることはできません。
- 右上隅のXをクリックして、
- システム メニューをクリックして [閉じる] を選択すると、
- タスク バーのエントリを右クリックして [閉じる]を選択するか、または
- ファイル/終了メニュー項目を呼び出そうとすることによって(ファイルメニューが無効になっていると思います);
- ウィンドウのタイトルバーをクリックしても、アクティブに見えなくなりました。
ウィンドウを閉じるには、タスク マネージャを起動して iexplore プロセスを終了する必要があります。
これは、アプレットがフォーカスを保持している別の機会である可能性がありますが、そうすべきではありません:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4838000
Javaバグベースで見つけることができなくなったバグに折りたたまれていると報告されています。
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4918282
カスタム アプレットが何らかの方法で元の Crystal Reports アプレットを呼び出している可能性がありますが、私自身はこのコードを開発したのではなく、コードを駆動するラッパーだけを開発しました。
ある種のダイアログが IE ウィンドウの背後に表示されるケースはないと思います。これは複数のシステムで発生すると考えるべきであり、これはこのユーザーに固有のもののようですが、システムはストック イメージの 1 つに似ています。
また、印刷が完了するまで IE ウィンドウをロックするという報告もあります。解決策は、印刷を別のスレッドに置くことです。私の場合、実際に印刷する必要はありません。 [印刷] ダイアログを呼び出してからキャンセルすると、バグのある動作が発生します。
ここで何が起こっているのかを理解し、可能であればこのユーザーのために物事を実行したいと思います。同様の経験の報告や、これまで見逃していた指示をいただければ幸いです。
バージョンノート:
- Win XP Pro: 5.1.2700 SP 2 ビルド 2600
- IE: 7.0.5730.13
- Java JRE: 1.6.0_31-b05
- プリンター: Imagistics 2500 USBプリンター(オフチャンス)