Hi All,

 

Just wanted to share a requirement which I recently worked on using different master pages and then need to use different master pages dynamically, based on some conditions.  But we cannot generally hide a master page, so taught of so many ways and finally came up with this idea. Here is the step by step procedure, which I followed to achieve this

 

  1. Create a variable (which triggers master page) in interface

Image 1.png

  2. Create a table with one field in it, in Code initialization part of interface

Image 1.png

3. Then we need to create number of tables in global data section according to the number of master pages needed, i.e. If you have 2 master pages, then we need to create 2 tables.

 

Image 1.png

4. Code Initialization: Place below logic
Populate it_vbap table // Some Data
wa_mast
-t1 = '1'.
IF trigger = 1. // If trigger is 1, then it triggers first master page, else second
APPEND wa_mast to it_master1.
ELSE.
APPEND wa_mast to it_master2.
ENDIF.

 

5. Now create a form using this interface

6. Design two master pages

7. Create a subform.  Set it properties as 'flowed'.  Bind it to one of the tables, say itab_master1.  Set maximum repetition to 1 and remove minimum(which will be set by default)

Image 1.png

8. In pagination set the properties, such that it is on master page 1 (Page1 in our case)

 

Image 1.png

 

9. Now copy first subform and paste again.  In second subform bind it to other internal table and in pagination set to page 2

Image 1.png

Image 1.png

 

10. Activate it and execute it. If trigger is '1', then it will trigger first master page

Image 1.png

Image 1.png

if trigger <> 1, then it triggers second master page.

Image 1.png

Image 1.png

 

Hope this helps.

The video below shows an example of using an Adobe Interactive Forms within a Web Dynpro page

 

 

Here In this example, barcode generated is a combination of Personnel Number and Trip Number.

 

Go to Transaction SFP.

 

Create an Interface with two parameters GV_PERNR & GV_REINR under Import.

Save and Activate the Interface.

 

Create an form and Drag and Drop the GV_PERNR and GV_REINR Values from Interface on the left side to Context on the right side.

 

Goto Layout Tab.

 

Goto Palettes -> Library.

 

Under Barcodes, select the type of Barcode – I have selected Code 128.

 

Place it in the Form. Adjust the size of the barcode as required.

 

Drag and drop GV_PERNR and GV_REINR in the form.

 

For Barcode, maintain the Data length as 18 (Personnel number – 8 & Trip Number - 10)

img1.jpg

Barcode value is combination of Personnel Number and Trip Number.

Form Calc Language is used to generate the Barcode Number so the Value is selected as ‘Calculated-Read Only’.

img2.jpg
Form Calc Code is written to generate Barcode. It is written under Initialize Event.

img3.jpg

img4.jpg    

Save and Activate the Form.

 

Execute the Form.

 

Input:

Provide the inputs – Personnel Number – 00000001 & Trip Number - 0000001234

 

Click on Execute.

img5.jpg

Enter the Output Device and Click on Print Preview.

img6.jpg

Output:

 

Barcode is generated which is a combination of Personnel Number and Trip Number.

img7.jpg

This blog explains about the logic which can be used to print the sum of previous page totals in next page of SAP Adobe forms as “Carry Forward”.

Knowledge on creating simple SAP Adobe forms with a table is required before proceeding with the below logic.

 

Scenario:

 

Page1

              Amount
10.11
10.12
10.13
Carry Forward :30.36

 

 

Page2

Carry Forward :30.36
Amount
4.00
4.00
2.00
2.00
2.00
Carry Forward :44.36

 

 

Page3

Carry Forward :44.36
Amount
1.00
1.00
1.00
1.00
1.00
Carry Forward :49.36

 

Solution:

1.      1. Create a table with header, body and add a footer row in Form Layout.

 

2.      2. Give a name ‘ABC’ to the body row cell for which the totaling should be carried out. This cell can be of type Decimal Field. The values for this field ‘ABC’ in body row would be populated from an internal table from driver program. If the internal table has multiple records, the table contents would be flowed to the next page.

 

3.      3. In the table footer row, create a minimum of two cells ‘DEF’ and ‘GHI’. The Numeric field cell ‘DEF’ (let’s call this Subtotal cell) can be used to hold page-wise subtotal from ‘ABC’ cell (let’s call this value cell). Ensure that the Subtotal cell has Integer as the data format. The Numeric field cell ‘GHI’ (let’s call this Carry forward cell) can be used to hold sum of all subtotals from previous pages and current page.

 

4.      4. Within the ‘Calculate’ event of Subtotal cell, choose Language as ‘JavaScript’ and Run At as ‘Client’.

 

Write the below JavaScript code in Script editor:

----- data.ITEM_PAGE1.S1.Table1.FooterRow.DEF::calculate: - (JavaScript, client) -------------------

var fields = xfa.layout.pageContent(xfa.layout.page(this)-1, "field", 0);

var total= new Number;

for (var i=0; i<=fields.length-1; i++)

{

if (fields.item(i).name == "ABC")

{

total = parseInt(total) + parseInt(fields.item(i).rawValue);

}

}

    this.rawValue = total;

 

 

In the above code snippet, “xfa.layout.page(this)-1would mean current page. The first line of code would capture all the field names in current page. The second line declares a variable to hold the subtotal. The ‘For’ loop checks if there is a field in current page that matches the name “ABC”. If there is a match, all the values of value cell (ABC) from current page are added into the variable. The last line assigns the calculated subtotal to the subtotal cell “DEF”.

 

NOTE:  parseIntconverts a variable’s value into integer. Remember that the cell ‘DEF’ is also of type Integer.

 

5.      5. Within the ‘Calculate’ event of Carry forward cell, choose Language as ‘JavaScript’ and Run At as ‘Client’.

 

Write the below JavaScript code in Script editor:

----- data.ITEM_PAGE1.S1.Table1.FooterRow.GHI::calculate: - (JavaScript, client) -------------------

var fields = xfa.layout.pageContent(xfa.layout.page(this)-1, "field", 0);

var total= new Number;

for (var i=0; i<=fields.length-1; i++)

{

if (fields.item(i).name == "DEF")

{

total = parseInt(fields.item(i).rawValue);

}

}

    this.rawValue = total;

var fields2 = xfa.layout.pageContent(xfa.layout.page(this)-2, "field", 0);

var total2= new Number;

for (var i=0; i<=fields2.length-1; i++)

{

if (fields2.item(i).name == "GHI")

{

total2 = parseInt(fields2.item(i).rawValue);

}

}

    this.rawValue = total + total2;

 

 

In the above code snippet, “xfa.layout.page(this)-1would mean current page. The first line of code would capture all the field names in current page. The second line declares a variable to hold the subtotal. The ‘For’ loop checks if there is a field in current page that matches the name “DEF”. If there is a match, the value of Subtotal cell (DEF) from current page is assigned to a variable called ‘Total’.

 

xfa.layout.page(this)-2” would mean previous page. ‘Fields2’ would capture all the field names in previous page. The second line declares another variable called ‘Total2’ to hold the sum of subtotals from previous page. The ‘For’ loop checks if there is a field in previous page that matches the name “GHI”. If there is a match, the value of Subtotal cell (DEF) from current page is added to the sum of subtotals from previous page and assigns this to a variable called ‘Total2’. The last line assigns the calculated Carry Forward to the Carry Forward cell “GHI”.

 

NOTE:  parseIntconverts a variable’s value into integer. Remember that the cell ‘GHI’ is also of type Integer.

 

6.     6. The sum of subtotals from previous page as Carry forward thus displayed in current page can also be displayed in next page.

 

7.     7. In Next page, create a Numeric field similar to ‘GHI’. Within the ‘Calculate’ event of this Carry forward cell, choose Language as ‘JavaScript’ and Run At as ‘Client’.

 

Write the below JavaScript code in Script editor:

----- data.#pageSet[0].Page2.#subform[4].GHI::calculate: - (JavaScript, client) --------------------

var fields2 = xfa.layout.pageContent(xfa.layout.page(this)-2, "field", 0);

var total2= new Number;

for (var i=0; i<=fields2.length-1; i++)

{

if (fields2.item(i).name == "GHI")

{

total2 = parseInt(fields2.item(i).rawValue);

}

}

    this.rawValue = total2;

 

8.      8. The Carry Forward thus displayed in Next page can be made invisible in last page by adding the below code:

for (var i=0; i<=fields2.length-1; i++)

{

if (fields2.item(i).name == "JKL")

{

    this.presence = "hidden";

}

}

NOTE: In the above code, “JKL” refers to a field name that is displayed in ‘Last Page – 1’.

Chris Scott

Adobe eForms and SAP HANA

Posted by Chris Scott Apr 19, 2013

We've been discussing over a number of months the benefits of SAP eForms with HANA, and although this wasn't exactly at the top of anybody's list, we decided to accelerate our thoughts when SAP announced Business Suite on HANA.

 

There is going to be a session at Sapphire in Orlando Adobe eForms and SAP HANA: The Next Generation where this topic will be explored in more detail, but I thought I'd share my thoughts in advance of that session.

 

SAP Business Suite on HANA (SoH)

 

The first point to clarify is that SAP eForms isn't going to sit natively on HANA, but as part of SAP Business Suite.  That's because it relies on the NetWeaver application server. So really we need to start off our thoughts with what SoH offers to organizations.

 

In a nutshell, the benefits appear to based around the acceleration of key business processes, and in particular with specific tasks that traditionally SAP ERP has taken time to process.  Tasks like backorder re-processing, stock reporting, purchase order lists - those reports that you either run in the background or be very careful about your selection criteria before hitting the 'Execute' pushbutton!

 

Specific examples include:

  • The ability to perform unstructured searching
  • Real-time reporting - no need to shift data into SAP BW
  • Faster MRP and APO
  • Reduced reconciliation for financial close

 

Since there will be a near-instant response when running complex reports, then there is a much reduced need for pre-selection to limit the data returned.

In my mind this means fewer of those moments where staff set a report running and then go for a coffee while it runs.  Who would have thought it - companies reduce their coffee costs through implementing SAP HANA

 

As organizations make the move to SoH, for the coffee saving or otherwise, they can be confident that SAP eForms will continue to be supported on the new platform.

 

SAP Interactive Forms by Adobe

 

SAP Interactive Forms by Adobe relies on 2 components:

  • Adobe Document Services (ADS), which is a Java stack component.  This is not part of SoH, and must be hosted separated.
  • The pdf object and associated classes/methods to call ADS, which are ABAP stack components, and are thus delivered as part of SoH.

 

Response times for PDF eForm render and submission are not likely to improve through the introduction of SoH, because a significant contribution to response times is made by ADS, network speed and the client machine speed.

 

Forms Lifecycle Manager

 

Forms Lifecycle Manager (FLM) provides HTML / HTML5 eForms, which are much faster to render than PDF-based eForms, since the amount of data transferred to the client machine is much smaller, and the forms run in the browser rather than within the Adobe Reader plug-in.

 

This means that FLM eForms can be deployed to mobile devices with no extra development and no mobile infrastructure.

 

FLM also can be used to manage PDF eForms, or a mix of PDF and HTML, depending on the business scenario.  In order to render PDF eForms, FLM uses SAP Interactive Forms by Adobe out-of-the-box.  No development of form interfaces or webDynpros is required, since FLM handles the integration of the form and the deployment of the web page automatically.

 

System Landscape

 

FLM installs as an ABAP Add-on onto SoH using standard SAP installation tools (SPAM/SAINT).

 

For PDF forms, an RFC connection to the SAP system on which ADS is installed is required.

 

eForms_and_SoH.png
System Landscape for SAP eForms on HANA

 

EForm performance


If fast rendering is your main objective, then use HTML/HTML5 eforms, since this requires no call to ADS and PDF document render.

 

HTML/HTML5 eform rendering times on SoH are comparable to performance on standard SAP NetWeaver (i.e. very fast!)

 

Use Cases


HANA does not enable the creation of forms including huge amounts of data, but it enables an eform to process a huge amount of data in real time before rendering.  So eforms can be designed to contain summary data, collated in real time, to enable better decision support.

 

This might be filling drop-down list boxes with pre-filtered data, or processing all open eforms alongside database records to show the impact of an ‘approve’ or ‘reject’ decision, be it for vacation requests, resource allocation to projects, purchase order approval or invoice verification.

 

Roadmap


Arch has tested FLM on SoH and will support this from June 2013.   Arch is waiting for SAP to provide SoH accreditation for FLM, and this is expected to be completed Q2 2013.

In adobe form if you want to have one link which opens another link or pdf file.

Then below mention procedure can help you in simple manner.

A hyperlink (or link) is a word, group of words, or image that you can click on to jump to another document.

When you move the cursor over a link in a Web page, the arrow will turn into a little hand.

Now follow the procedure.

 

Go to palettes choose-> script editor

Now click on the hierarchy->body page

Write code:

<a href="url">Link text</a>

Example

<a href="http://scn.sap.com/">Visit SAP</a>

This will display like this: visit SAP

Clicking on this hyperlink will send the user to Visit SAP homepage.

 

Tip: The "Link text" doesn't have to be text. It can be an image or any other HTML element.

 

In layout create one text and provide text name (link text).

Save and activate. Now execute the adobe form.

 

Regards,

Ankit Rai

SAP ABAP Consultant  

Ever had that problem after so many years and months of using Adobe livecycle and SFP code all of the sudden it went haywired!

Crashed and OLE error!

 

Frustrated and tried reninstalling

Adobe reader

SAP Gui

Ms SQL server 2008

And livecycle itself.

 

But no solution

 

No matter what version.

No matter what problem i believe that the problem lies in the initial folder where the livecycle created the folder under

 

C:\Documents and Settings\your_user_name\Application Data\Adobe\Designer

 

your_user_name = this is your username used by your windows.

 

Solution:-

 

Just rename your Designer

to Designer_backup

or

you can choose to delete it.

 

TaDA! problem solved and please do comment if you think my solution works

 

http://marknsap.blogspot.com/2013/04/adobe-livecycle-designer-common-crash.html

As tablet devices become used more widely for business transactions, it can be argued that the interactive PDF form has now had its day, and will be replaced by device-friendly html or on-device apps.  In this update I consider what the future may be for the PDF form.

 

Firstly, mobile is here.  It might not have disseminated down to lots of companies or processes, but the tablet is going to be a key business device, and it is absolutely essential for user technologies to work on these devices.  Right now that rules out PDF, as the mobile version of Adobe Reader does not support user interaction.  And in the future it rules out PDF too.  Adobe are not suggesting that they will ever support interactive PDF on mobile devices, and even if they did, the devices already have built-in PDF viewers, and so there  is little incentive for users to install the app.  There is little chance of an Adobe Reader app ever reaching the saturation they managed in the desktop world.

 

The clear and (only) alternative is HTML5.  For this, the only app required is the browser that is supplied with the device, and so HTML-based forms are easy for users to adopt.

 

If we look at the evidence from SAP:

  • HR Renewal.  For HCM Processes and Forms, SAP have introduced webdynpro forms to replace PDF forms
  • Adobe Document Services.  SAP and Adobe have announced that they are working on extending ADS to render HTML5 in addition to PDF
  • SAPUI5.  SAP now has an HTML5 focus for their browser-based user interfaces.

 

In the past we had many reasons for advocating PDF as the best technology for interactive forms, but increasingly those reasons are less relevant.  For example:

 

  • Paper-like interface.   In the past, a huge selling point was that the PDF could look just like the paper form it was replacing.  However, users are now very familiar with mobile and web-based tools.
  • Same on any screen.  A PDF form looks exactly the same on any screen because Adobe Reader is installed on the machine.  However, our expectation is now that the interface should dynamically change to make best use of the device screen.
  • Same on any printer. A PDF form looks exactly the same when printed, regardless of the printer.  However, we are printing fewer and fewer forms.
  • Digital signatures.  A PDF form can capture a digital signature.  However, practically, either the form is being filled by an employee, who can authenticate by Single Sign On, or by a business partner, who is not likely to have/use a digital signature.

 

So, many of the old selling points for PDF have lost strength over the last 5 years.  Also, the entire look and feel of many PDF forms now appears a little old fashioned.   Users expect fewer fields, controls like sliders and controls that work with touch-screen ‘gestures’.

 

image.jpg

 

Does is this the start of the end for PDF?  Well, perhaps.  It’s certainly a pretty damning indictment.  Perhaps the PDF form will become increasingly more of a point solution.

 

So why are we not abandoning it completely?  Let’s look at where PDF works well:

  • Development Effort. We find PDF forms easier to build that the HTML equivalent, because HTML looks different on different browsers, and because different browsers support different HTML5 tags.
  • Off-line forms. Put simply, PDF forms can go off-line, and HTML forms can’t.   At some stage this might be possible, but an app will be required on each client machine.  So for forms that go across the firewall to business partners, the PDF form capability cannot yet be replicated in HTML.
  • Save locally. In many form processes it is very powerful to be able to save the form locally, where it can be viewed again without connection to a server.
  • Archive.  Since the PDF is a complete document, it lends itself well to being archived and subsequently retrieved from the archive intact.

 

Firstly, I can see PDF remaining an important option for highly regulated industries that have audit and compliance requirements.  And also I can see many requirements, such as account applications, employment applications, new supplier forms that will continue to be best served by a PDF form approach.

 

So let’s not sound the death knell just yet.

 

Capture.JPG

We can have many validations in adobe forms.

 

One such validation can be performed on the date format.

 

Lets say you hav chosen the date field and want to select a display pattern which does not exists Then go to edit pattern, create a pattern there for eg dd.mmm.yy. Then again goto display pattern for the date field and select the pattern just created in edit pattern. In validate pattern please again select the newly created date pattern,

 

So if its an interactive form and somebody tries to enter the date as some characters, it will throw the validation error.

 

Rgds,

Nitin.

There are typically 2 types of digital signatures which we can use in our forms for e-signing )a cool term i thought of inventing for adobe forms ):

 

PKCS#12 digital ID file: When ever we create this file, we are asked to save it in a location and to enter password, So basically this signature is password protected,

Windows certification store: This is just a normal signature stored at a windows defined location and then we can use it without entering any password. So in other words this signature is a bit less secured.

 

Rgds,

Nitin.

Make an Insert button on the layout and inside the click event of the form, please write the following code:

 

var instmgr = data.Bodypage.[TableName].DATA.instanceManager;     
var inst = instmgr.addInstance(1);
var toind = data.Bodypage.[TableName].DATA.index + 1; (Add the rows row 2nd postion)
var frmind = inst.index;

instmgr.moveInstance(frmind, toind);

 

 

There you can do this.

 

Rgds,

Nitin.

This is a very small example on how to put a conditional break in Adobe forms. As the name defines, conditional break means, Break when some condition is satisfied.

Let consider this example. For an employee table which is to be printed in the form, there is a requirement, that a page should contain only details for one employee describing one para graph after his details.

 

For this we can have a table created in interface for the employee, containing emp id, emp name, emp status, etc, etc....

We will use this table in the layout of the form. Then select the data section of Data view for the table, goto object and under that select pagination. There we will have conditional break and and edit button against it. Click on the EDIT button, we will get a script editor, In that click plus button and then click Insert Sample Expression button and then select Emp ID. A statement will automatically come, which will say something like Data[-1].empid ne data.empid . Then select Before radio button for BREAK and for TO select Top of Next Page. Then say OK. Activate and execute the form.

 

You will see for every emp id the details pertaining to it are on a new page og the pdf rendered when executed.

 

Please add anything else as comments on to this.

You all are welcome for your replies.

 

Rgds,

Nitin.

I was changing one print form and made it interactive by making the fields user entered optional and then filling the Fillable parameter as X in docparams structure while executing the form.

 

I could see that when I gave font size as 9 and family as arial to the text field ( which is going to be interactive ) and execute the form; the text which i manually enter becomes Times New Roman and size 12 ( i check this by copying the interactive text which i entered and pasting in a word document).

 

This is really strange. I am not sure why this is happening. I tried using form calc scripts to change the font size and family but in vain.

 

If any body has any idea on this, please comment on this blog. Otherwise I will also keep looking on this, and post the update if found any.

 

Rgds,

Nitin.

In this series of blogs I discuss where FLM differs to HCM P&F, to explain why customers are choosing the pay the extra for FLM.

 

In parts 1 and 2 of this series, I have compared the FLM approach to the HCM P&F approach, highlighting where FLM adds value and addresses some of the reported issues with HCM P&F.

 

In part 3 of this update I will take a look at the HR Renewal functionality and describe how that can play a key part alongside FLM for a complete e-forms solution for SAP HCM.

 

HR Renewal 1

 

From Enhancement Pack 6, SAP has started to introduce more on-line HR functionality.

This involves a number of changes:

i) New 'Corbu' theme' for ESS and MSS.

http://scn.sap.com/servlet/JiveServlet/showImage/38-65034-91551/ESS+Profile.png

ii) HR Professional functionality - pushing SAPGUI transactions like PA30 out to a web portal, with a more user-friendly on-line format.

This also includes a graphical organisational mapping tool, potentially replacing customers' own investment in Nikisa.

 

http://scn.sap.com/servlet/JiveServlet/showImage/38-67535-107316/image003.png

iii) A new web-dynpro form designer, to offer web dynpro forms as an alternative to PDF forms.

 

http://scn.sap.com/servlet/JiveServlet/showImage/38-67535-107317/image005.png

 

HR Renewal clearly is a huge step forward in terms of usability for the HR Professional user.  However, in terms of HR forms, the underlying HCM P&F framework has not been changed, and so the comparison I have made between FLM and HCM P&F in the previous parts of this series remains valid.

 

Customers must not confuse the new functionality, which is directed in the main towards HR administrator uses, with the previously-delivered PDF-based forms which are typically not accessed by HR administrators.  The target market for HR forms are typically employee and managers - such forms can be delivered as an extension to ESS / MSS or in some cases instead of a full-blown ESS/MSS roll-out.  So providing a better user interface for the HR Professional will have a limited impact in many organisations.

 

Although HR Renewal includes a web dynpro form designer tool, of course the types of form this lends itself too are simple compared to the forms possible in HTML or with Adobe LiveCycle Design.  So the new web dynpro forms are limited - limited in dynamic capability (such as dynamically changing field attributes or calling web services), limited in SAP update (only support HCM P&F updates) and limited in business scenario (no offline or mobile capability).

 

The new SAP Corbu theme is being incorporated into SAPGUI, SAP Netweaver Business Client and all new functionality.  It is not merely related to the HR Renewal functionality.   Here is how FLM looks with the new theme:

 

flm_in_nmbc1.JPG

FLM in SAP Netweaver Business Client, with Corbu look and feel and swim-lane navigation

 

The current* FLM Portal still uses the older blue colour scheme, but can be accessed through NWBC and give a great user experience.

 

*A new SAPUI5 forms portal is planned for Q1 2013

flm_in_nmbc2.JPG

Simple FLM-based form in SAP Netweaver Business Client

 

 

FLM is a cross-application form server for SAP, supporting on-line, off-line and mobile forms.  Together with SAP Interactive Forms by Adobe it is part of SAP’s e-forms strategy.

 

FLM provides the e-forms solution for customers with requirements for forms reaching more employees, more devices and supporting more processes.  With FLM customers can model any process, not just forms for SAP HR updates.  We see examples where customers post Employee Expense Forms as Vendor Invoice Receipts.  With FLM this is easy, and of course it is not possible at all with HCM P&F.

 

FLM also adds future-proofing to forms processes, since the xml interface will support HTML5 or other emerging forms technologies.

 

The best solution for customers is to use HR Renewal 1 together with FLM.  For example, HR Administrators would use HR Renewal 1 to navigate to an object (such as an Employee, Position, Organizational Unit etc) and then hit a link to generate an FLM form for that object.  The form process, which could involve mobile and off-line access, would be managed within FLM.  In this way, no HCM P&F customization would be required.

 

Employee forms could be triggered similarly from ESS.  Standard FLM screens such as Forms Saved As Draft, My Form History etc can also be reach using a URL hyperlink embedded into an ESS screen.

 

The great news for SAP customers is that they can build form processes with FLM and start using them BEFORE implementing HR Renewal 1 in their organizations.  They can add links to the forms into the now, using many different triggering scenarios, and then add these into the HR Renewal screens during the subsequent ECC upgrade process.

 

 

E-forms Everywhere

SAP e-forms, involving the strategic combination of Forms Lifecycle Manager and SAP Interactive Forms by Adobe, provides an end-to-end solution to develop, deploy and manage e-forms.  Those forms simplify the end-user interaction with SAP business processes in on-line, off-line and mobile scenarios.

In this series of blogs I discuss where FLM differs to HCM P&F, to explain why customers are choosing the pay the extra for FLM.

 

In part 2 of this update I will set out in more detail some of the differences between the HCM P&F and FLM approaches to building, using and managing SAP e-forms.

 

Design Philosophy

 

HCM P&F

  • The design philosophy is that the form is a thin UI that effectively sits in front of the SAP transaction.  In this way the PDF is interchangeable with a web dynpro as it adds no particular value.
  • Each form is effectively hooked into SAP HR.
  • Includes pre-delivered form definitions/processes/services.
  • Framework for ‘codeless’ form processes.  However, the SAP IMG configuration is very complex, and customers feed back that when the pre-delivered service does not meet their requirements, then the development and ongoing maintenance can be very difficult.
  • Includes pre-delivered form templates.  These often include a mixture of JavaScript and Form Calc scripting, and this makes them more difficult to maintain.
  • The new 'HR Renewal' functionality provides a web dynpro alternative to PDF forms.  This is described in part 3 of this series.
  • The design lends itself to simple SAP updates rather than complex HR processes.

 

hcm p&f form3.JPG.pngDelivered HCM P&F form : Very simple, with a paper-like look and feel

 

FLM

  • The design philosophy is that the form is a separate object in the SAP database like other SAP ‘documents’ that move through a series of statuses.  This means that the form is auditable and can be reported on separate to the SAP update.  Also the form process can typically touch more users – it is not a front-end to a SAP transaction.
  • FLM includes no pre-delivered forms and processes but lots of samples, including JavaScript snippets.  So with FLM customers get 'pieces of the jigsaw' rather than entire processes.
  • FLM form development always requires IMG configuration and simple ABAP user-exit.  The FLM SAP HR plug-in greatly reduces ABAP development for simple form processes.
  • FLM is designed to reduce JavaScript in 3 ways:
    i) JavaScript can be centrally maintained in the IMG and injected into the forms at run-time.
    ii) FLM includes configuration tables to change form object attributes based on form status, so fields can become read-only or hidden without scripting.
    iii) FLM includes a user-exit so you can add presentation logic in ABAP instead of JavaScript.
  • FLM supports both PDF and HTML forms, providing an on-line, off-line or mobile solution for any forms process.
  • The design lends itself to both simple and complex HR forms and processes.

 

flm form3.JPG.png

Sample FLM form: Vacation Request, works on touch-screens and mobile devices

 

Flexibility

 

HCM P&F

  • Can be used for SAP HR updates (action-based, either OM or PA) only.
  • It is generally not possible for forms to go ‘off-line’ and reach employees who are non-SAP users.
  • Heavy reliance on SAP Workflow to build processes, but there are constraints in what form data can reach the ‘workflow container’.
  • Every notification process has to be developed.

 

FLM

  • FLM is cross-application.
  • It can be used for any process regardless of the SAP update, and even processes with no SAP update
  • Any FLM form can go off-line to reach non-SAP users
  • No reliance on SAP Workflow, and all form data is always available for all routing logic / user-exits.
  • Automatic notification e-mails, reminder e-mails and form escalations can be configured with no development.

 

 

Form Launching

 

HCM P&F

Forms are launched from a SAP Enterprise Portal web dynpro, enabling pre-selection of an object (such as position ID) before rendering the form.

 

FLM

Forms can be triggered in a number of ways:

  • From a web dynpro-based 'form launcher', similar to the HCM P&F Approach
  • From the delivered 'FLM Portal'
  • From a URL hyperlink embedded into an Intranet page / Microsoft Sharepoint / SAP Business Client / SAPGUI etc.
  • From a URL hyperlink built in graphical organizational mapping tools such as Aquire OrgPublisher (or the one embedded in HR Renewal 1)

orgPub1.jpg

Launching an FLM form from OrgPublisher

 

Performance

 

HCM P&F

  • HCM P&F uses a heavyweight framework for collecting data and serving forms.  This means that a lot of code has to be run each time a form is rendered, which can impact system performance.
  • Adobe Document Service (ADS) has documented performance issues which can be overcome to a degree by form design.

 

FLM

  • FLM uses a lightweight framework for collecting data and server forms, and so performance issues are unlikely.
  • FLM includes an ADS performance workbench so developers can test ADS rendering speed.  Plus, in a situation where ADS is just too slow then with FLM we can switch to HDS and use an HTML form template instead of a PDF form template.

 

 

Usability

 

HCM P&F

  • Customers report usability issues as the SAP real-estate on the screen results in a ‘letterbox’ view of the form.

hcm2.jpg

Example HCM P&F form showing limited screen estate dedicated to the form

 

  • The result tends to be very simple forms for single updates that tend to have issues for the occasional user and don’t deliver a great user experience.

hcm1.jpg

Example HCM P&F form showing how form is viewed 'through a letterbox'

 

  • WIth HR Renewal, SAP is now providing a pure web dynpro alternative to PDF-based e-forms, with a new designer product. This should improve the usability of the e-forms on PCs.  SAP do not intend to support web dynpro for mobile devices.

 

FLM

  • FLM is designed to make the best use of the screen to maximise the user experience.

flm2.jpg

Example FLM form showing how most of the screen is reserved for the form

 

  • The result tends to be larger form processes reaching more users, with highly dynamic forms providing a great user experience.

flm1.jpg

Example FLM form using sliders

 

  • Since FLM supports pure HTML forms without any reliance on web dynpro, forms can be used on mobile devices.

 

So the nature of the two approaches is very different, with HCM P&F effectively 'screwed in' to an HR transaction and a SAP Workflow, and FLM being free of these constraints and can be used for any forms process.  HCM P&F provides pre-delivered solutions for on-line, PC-based forms.  FLM provides 'pieces of the jigsaw' for simple or complex forms that can work on-line, off-line or on mobile devices.

 

In the final part of this series I will take a look at the HR Renewal functionality and describe how that can play a key part alongside FLM for a complete e-forms solution for SAP HCM.

 

 

E-forms Everywhere

SAP e-forms, involving the strategic combination of Forms Lifecycle Manager and SAP Interactive Forms by Adobe, provides an end-to-end solution to develop, deploy and manage e-forms.  Those forms simplify the end-user interaction with SAP business processes in on-line, off-line and mobile scenarios.

Filter Blog

By author: By date:
By tag: