cancel
Showing results for 
Search instead for 
Did you mean: 

SAP interactive form and FLM

Former Member
0 Kudos

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.

Accepted Solutions (1)

Accepted Solutions (1)

chris_scott
Active Participant
0 Kudos

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).

Former Member
0 Kudos

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..

chris_scott
Active Participant
0 Kudos

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.

Former Member
0 Kudos

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?

chris_scott
Active Participant
0 Kudos

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

Individual CPU thread Tuning

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

Parallelising ADS Processing

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

Template Optimization

Adobe Performance Guidelines

Review the following docuementation from Adobe on best design practices when developing your form template.

Check for JavaScript Errors

  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.

ABAP Optimization

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.

  1. Performing a Code Inspection during development and before unit testing

  2. Review Buffering or Indexing of Tables and how these are used

  3. Performing Run Time Analysis to identify bottle necks in single and multiple form rendering / posting

ADS Optimization (Server Settings)

Java Connectors

FLM Java Connectors

Check your FLM Java Connectors to ensure the Max sizes are high enough:

Maximum Pool Size:

Maximum Connections:

JCo RFC Provider

In Visual Administrator:  Server -> Services -> JCo RFC Provider

Properties:   

MaxConnections:

MaxProcesses:

System Landscape Directory (SLD)

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.

ADS Processes

Monitoring

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

Sizing

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.

Periodic Slow Render

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.

  1. Create a variant of program FP_PDF_TEST_00 - which returns the ADS version. 
  2. Set that variant as a background job to run at 0800 in the morning.

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.

Additional Info

Also see ADS  Problem Analysis for more ADS info.

Answers (0)