on 06-30-2010 10:27 AM
Hi Experts,
I create dynamic tabs and inside each tab I create interactive form with PDF data inside to display PDF. After running for a while, the CPU goes up and PC hang. What could be the problem for this? (I'm using IE7)
Thanks,
- Anthony -
Thank you for your help!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Keep in mind that all tab (visible or not) are rendered on the client side. So depending upon how many forms/tabs you have, this could lead to a lot of active instances fo the Adobe Reader. You might want to reconsider you design knowing this. Perhaps a server side tab switch (swapping between the actual inner view of the tab and EMTPYVIEW) so that only one active tab is rendered on the client side.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Thomas,
Thank you for your reply!
I've re-designed it in a way that only one instance of Adobe Reader in the current selected tab. Whenever user choose another tab, I remove Adobe Reader from that tab and create in the new selected tab. The problem still exists. I don't know what and where exactly problem is. This is excerpt code in WDDOMODIFYVIEW to remove interactive form first and all tabs later. Do you see any problem with this piece of code?
Be noted that the IE get hang only (CPU 100%) when I run it for a while, meanings select selecte items in view1 and pdf preview in view2, back to view 1 to select other items go to view2 to preview pdf....
data: lo_f type ref to cl_wd_interactive_form,
lo_tabstrip type ref to cl_wd_tabstrip,
lo_tab type ref to cl_wd_tab,
ls_pdftab type wd_this->element_pdftab.
if lo_tabstrip->has_tabs( ) = 'X'.
" Remove adobe reader in the old tab
if ls_pdftab-old_tab is not initial.
lo_tab = lo_tabstrip->get_tab( id = ls_pdftab-old_tab ).
if lo_tab is not initial.
lo_f ?= lo_tab->get_content( ).
if lo_f is not initial.
lo_f->unset__parent( ).
lo_f->unregister_from_view( ).
free lo_f.
endif.
endif.
endif.
" Remove all tabs
lo_tabstrip->remove_all_tabs( ).
endif.
Thanks,
- Anthony -
I wasn't actually suggesting such an approach in WDDOMODIFYVIEW. There is a much easier way to do this by performing your tab switch on the server, placing a separate view/viewcontainerUIElement into each tab, setting the when visible lifetime setting on each individual view, and firing a plug to swap between the real view and EMPTYVIEW for visible/non-visible tabs.
Either way, you application is better off only rendering the visible tab elements. Sorry it didn't solve your CPU usage. I suppose there could be a bug in Adobe Reader. Make sure you are on the latest SAP supported version. Otherwise you might want to open a support ticket.
Hi Thomas,
Thank you for your suggestion!
I would like to let you know that with Adobe Reader 9.3 , IE7/8 even with one interactive form and no dynamic tab it still causes the IE hang. I uninstalled the Adobe reader 9.3 and install version 8.0, it works perfect. As you guess this could be a bug in the client side which belongs to Adobe / SAP.
Thanks,
- Anthony -
User | Count |
---|---|
87 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.