on 07-18-2012 7:57 AM
Hi,
We have created SAP Interactive form in WebDynpro ABAP for Purchase Requisition Create/Change/Delete funtionality.
The work which is done in transactions ME51N/ME52N/ME53N, we are implementing all those things in one interactive form with one page only.
The form contains 4 dropdowns of 200 values populating from SAP and SAP submit is called 10 times from the form.
As the form includes all types of validations including 20 message boxes, It is taking time to load.
I have seen some posts on Forms Lifecycle manager..
Can we use that functionality here for performance??
How to use it ??
Please post the solution soon..
Thanks.
Hi Nupoor,
How big is the rendered PDF form and how long is it taking to load? If it's >500K or taking >3 seconds then you will need to make some template design changes or take a new approach, which could involve FLM.
Normally performance issues are caused by ADS (Adobe Document Service).
There is a host of information about designing good forms - so you should avoid long drop-down lists, overlapping form objects and large logos for example.
FLM includes a performance workbench for ADS so at design time you can see how long ADS takes to render the form, etc.
You might want to change your approach to restrict some of the drop-down lists. (For example you might be able to restrict the drop-down list for purchasing group based on the form initiator.)
For fields like material masters and vendors then you may want to use a web-service search, which can be instantaneous. In this example the supplier is found using a search but the material code is entered manually - which trggers a web-service to return the description. This is much faster than submitting the entire form to retrieve some extra data.
Your approach of 10 data submissions sounds horrendous in terms of usability: The user is likely to spend more time watching the wheel spin around than filling in the form. So I think I'd be advising some major re-design!
An FLM approach would certainly help. (For example, it is very rare that there is more than one submit.) But at the end of the day, you might need to separate out the 'create' form from the 'change' form.
FLM is a SAP endorsed business solution that is available from Arch (www.arch-global.com).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Chris,
Thanks for reply.
Our form is 350KB but taking more than 30 seconds to load.
Where will I get all the details aout FLM?
Like anything to be installed for it ? Or Where will I get some assignments on it?
Because I just heard about FLM and I tried to search but m getting only information on its advantages not on how to implement that feature in Webdynpro ABAP + ADOBE FORM..
Hi Nupoor,
You have to buy it - it is a third party product that installs into the SAP IMG.
With FLM there is no webdynpro development required at all, so one layer of complexity is removed. However you can still embed the form in a webdynpro if you choose.
Sounds like your form template is not too big which is good.
So now you might need to debug the call to the webdynpro to see what is taking all the time. If it is ADS then you can turn on the ADS logging which might give you some further clues.
Hi Chris,
Thanks for info.
Actualy we don't have time.
This form is to be deployed next month.
Can you suggest some other solution to reduce time?
How did you made those all editable fields of form to other color because by default it should be light blue right ??.
One more issue we have is with those scrollbars on Web browsers.
We have made width as 100% in WD so horizontal scroll bar at the bottom is removed but vertical scrollbars are still there on browser along with th adobe form scroll bar.
How to remove them?
Here are some notes from the FLM on-line help about ADS performance. (Sorry but some of the links will not work.)
Good luck and let me know how you get on (I'm off on vacation for 2 weeks so I'll not be able to help further.)
The colours are just set in the object properties in Adobe LiveCycle Designer. Then you don't have the 'highlight fields' set as default on Reader.
The scrollbars are not in your command, as the zoom settings on Adobe Reader and the web browser, combined with the display settings on the individual PC, and the height of the iView for the form all matter - so we normally change the iView size to be the 'best match' for most users / machines.
-------
ADS performance is a function of hardware, software and basis settings. The overwhelming majority of processing in ADS rendering is done on the java stack.
Performance improvements fall into 2 main categories, firstly making an individual CPU thread run more quickly, and secondly, providing more parallel CPU threads for ADS processing
Check there is no memory limitation on the machine at the OS layer. Processes to monitor are "PDFManipulation.exe" and "XMLForm.exe".
Run the ADS system on native 64-bit hardware. Even though some ADS modules are 32-bit, the overall performance can be improved by building on 64-bit hardware. Check SAP note 925741 for details of supported platforms.
Make the form templates as small as possible. Do not embed logos and use non-embedding fonts [TNR, Times, Arial, Helvetica and Courier] only
Java stacks can be clustered.
In the Visual Administrator, <SID> / ServerXX / Services / PDF Manipulation module - Low encryption, change the PoolMax setting to allow more CPU cores to run ADS process threads. Obviously this can have a detrimental effect on other services provided by the java stack. Similarly adjust 'XML Form Module' service via the VA. Always restart the java stack after these changes.
Please see SAP’s ADS Sizing Guide, ADS Configuration Guide and FLM Sizing Guide for more detail. Specifically Sections 4 of the ADS Sizing Guide which deals with Interact Forms and Section 17 of the Configuration guide which describes how to tune ADS.
https://www.sdn.sap.com/irj/sdn/adobe?rid=/webcontent/uuid/90355269-4d89-2a10-0bb9-f388704f1dcd
Review the following docuementation from Adobe on best design practices when developing your form template.
- Best Practices for Improving Performance in Dynamic PDF Forms [PDF Download]
- Improving the Performance of Adobe® LiveCycle™ Designer Forms [PDF Download]
In FLM the ADS trace level can be set in the Customer Code settings.Here set the trace level to highest which will instruct ADS to insert the pdf logging information into the PDF (ensure that the file log.pdf exists in the directory \\usr\sap\<SID>\SYS\global\AdobeDocumentServices\lib). Then when the form is rendered in the portal you can open attachments and retrieve the logging information which will be in the errors.pdf document.
During the render of the interactive form pre-population user exists will be called and on submisson posting adaptors. These must be written to run as fast as possible and repetative or inefficient calls to the SAP database should be avoided. The following activities should be the minimun steps taken by any developer to ensure good performance. To aid the developer they should always assume that a form will need to be rended many hundreds of times and in a matter of seconds.
Performing a Code Inspection during development and before unit testing
Review Buffering or Indexing of Tables and how these are used
Check your FLM Java Connectors to ensure the Max sizes are high enough:
Maximum Pool Size:
Maximum Connections:
In Visual Administrator: Server -> Services -> JCo RFC Provider
Properties:
MaxConnections:
MaxProcesses:
The FLM Java Connectors are registered with the SLD and each time the Java Connector is used the SLD is accessed to verify it validity. If you are using a Central SLD (or your SLD is on a different network or city or country even) you should consider using a local SLD (on the same Java Stack that the Java Connectors are configured) to speed up these checks.
Monitoring for ADS can be set on the Java Stack by following this guide:
http://help.sap.com/saphelp_nw70/helpdata/en/db/9d0641f753f523e10000000a155106/frameset.htm
You may also want to increase the number of ADS processes available. See section 17 of the ADS Configuration Guide.
In Visual Admin -> Services
PDF Manipulation Module:
Default PoolMax is 4
XML Form Module:
Default PoolMax is 2
These are CPU bound operating system level processes (not in the Java Stack) and should not exceed the number of CPU Cores available. You should also leave CPU capacity for anything else running on the system. If this is an FLM only box with 8 cores its safe to put XML Form Module up to 6 but make your own judgements.
The first time a form is run after a system restart or for the first time in the morning you may notice slow render times (over a minute) after which render times returning to normal.
What is happening is after a certain amount of idle time the ADS objects will be collected by the Java garbage collector and destroyed. In this situation when the next form is loaded all the objects will need to be recreated and loaded into memory. The same is true when the system restarts, ADS isn't loaded into memory until it is called.
If this is an issue for you the easiest way to over come it is to setup a simple and lightweight background job to run that keeps ADS loaded.
There is a great deal of configuration that can be done with Java Garbage Collector but we suggest you stick with SAP's recommendations in Note 723909 - Java VM settings for J2EE 6.40/7.0.
Also see ADS Problem Analysis for more ADS info.
User | Count |
---|---|
84 | |
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.