on 02-16-2012 3:35 PM
<h4>Problem</h4>
Crystal Reports Viewer occasionally leaves reports faded or blank under InternetExplorer v.9.
Bug has been already mentioned in other threads:
[Blank Report in IE9|http://forums.sdn.sap.com/thread.jspa?messageID=11030449]
[Crystal Report not visible when using IE9|http://forums.sdn.sap.com/thread.jspa?messageID=10897810]
[Opacity error displaying some reports|http://forums.sdn.sap.com/thread.jspa?threadID=2074124]
<h4>Reason</h4>
CR Viewer uses MochiKit JavaScript library v.1.4 for client operations, having bug in MochiKit.DOM.setOpacity function (New.js):
filter:alpha style is used to set 100% opacity under IE, although IE9 has abandoned this property support and switched to CSS3 standards:
if (value == 1) {
if(MochiKit.Base.isIE())
element.style.cssText = cssText.replace(/filter: ?alpha\([^\)]*\);?/gi, '');
<h4>Resolution</h4>
1. Fix MochiKit library to perform unconditional style.opacity maintenance in MochiKit.DOM.setStyle function;
2. Or use MochiKit.Style.setOpacity function that doesn't have this bug.
<h3>Question</h3>
When this fix can be applied and released for CR for VS2010 package?
The arguable "bug" / non support of IE9 may be resolved in Service Pack 3 (ETA.; mid year).
Ludek
Follow us on Twitter http://twitter.com/SAPCRNetSup
Got Enhancement ideas? Try the [SAP Idea Place|https://ideas.sap.com/community/products_and_solutions/crystalreports]
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
This is not considered to be a bug. See the [Supported Platforms|http://www.sdn.sap.com/irj/sdn/index?rid=/library/uuid/e06b8953-a62b-2d10-38b9-ca71f747e2b1] documentation. IE 9 is not on the list of supported browsers...
Rather, this is an enhancement that is planned to be implemented in SP3 - no guarantees though - not my place to do so.
- Ludek
Apologies. Did not realize they actually squeezed IE 9 support into SP 2. As long as you do have SP 2 installed, then we'd need to dig into the following a bit more:
Crystal Reports Viewer occasionally leaves reports faded or blank under InternetExplorer v.9.
The "occassionally" being important. E.g.; How do we define the "occassionally" so that it is predictable. If I create an escalation for R&D and tell em that this is an occasional issue, they'll just laugh and return it to me. So;
1) How do I reproduce the issue?
2) How do I reproduce it consistently?
3) Is the issue with one report or any number of reports?
4) Running some report where the issue occurs, then re-running that same report, the issue goes away? Re-running that same report again, the issue may, or not come back?
5) Would you be able to provide screenshots of the issue?
- Ludek
The bug is permanent. I have already described its reason, location and solution for SAP developers in my original post.
MochiKit.DOM.setOpacity function (New.js) sets both filter and opacity styles for partial values under IE:
MochiKit.DOM.setStyle(element, {opacity: value});
if (MochiKit.Base.isIE()) {
MochiKit.DOM.setStyle(element, {filter: MochiKit.DOM.getStyle(element, 'filter') + 'alpha(opacity=' + value * 100 + ')' });
but clears only filter for 100% opacity:
if (value == 1) {
if(MochiKit.Base.isIE())
element.style.cssText = cssText.replace(/filter: ?alpha\([^\)]*\);?/gi, '');
Thus IE9, supporting CSS3 standards, never shows report with 100% opacity (see ReportPage._iframe style).
It is only occasionally noticeable for a human eye - and it depends on the processor load. If animation goes smooth, opacity is left at 0.99 value. Otherwise it can be left at 0.5 (faded) or 0.0 (blank).
Try to render report while processor is 100% loaded - you'll see the problem.
P.S.
"R&D just laugh at occasional issues" - that explains it...
Meanwhile, following workaround can be used on pages with CR Viewer
CR Viewer pages are referenced in CRV__UI._reportAlbum._views array of ReportView objects. Fade-in effect is applied to ReportView.reportPage._iframe container of the selected page.
Adjust onload handler to restore report page opacity (with 0.5 sec delay - for rendering effects to be completed):
MochiKit.Style.setOpacity(CRV__UI._reportAlbum.getSelectedView().reportPage._iframe, 1);
It also makes sense to substitute MochiKit.DOM.setOpacity with MochiKit.Style.setOpacity function in the same handler to avoid possible opacity problems during further report processing:
MochiKit.DOM.setOpacity = MochiKit.Style.setOpacity;
Although my last post has been kindly unanswered, it has been verified that SAP team has applied the bug fix to Service Pack 3 (not mentioned in the release fixes).
User | Count |
---|---|
85 | |
10 | |
10 | |
10 | |
7 | |
6 | |
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.