I’ve been getting a lot of feedback from workflow consultants about just how useful the simple forms feature is becoming. This powerful feature has been available with WebFlow since R/3 4.6D, is very easy to try out, and has lots of helpful wizards and tools. Here’s a brief overview, so that you — and your end-users — don’t miss out on the fun.
Simple forms1 are exactly that — WebFlow allows you to generate electronic forms with a minimum of fuss, and get a whole lot of features bundled automatically with a consistent user interface.
The tradeoff is that the forms as currently generated use dynpro technology, so they do not automatically blend in with other user interfaces such as Business Server Pages. However, they can be rendered with the GUI for HTML or converted to Internet Transactions (ITS) for use in a Web browser. These forms also display some process information directly (more on this later), so if you’re looking to use them via SAP Enterprise Portal, they are particularly useful in simple inboxes where process information is not otherwise immediately visible to the user.2
Ultimately, simple forms are just one more option for bringing users into your workflows. It is a good choice in scenarios where (1) you need to transform an existing paper form into electronic format, (2) a variety of users need access to the data with minimal training, and (3) you need a very simple, straightforward display of data.
When Do Electronic Forms Replace Transactions?
Electronic forms are nothing more than the software equivalent of paper forms. In contrast, transactions are far more sophisticated data displays that allow users to navigate through various screens, views, or data details. They also provide additional functions that can act upon the data.
While transactions are great tools for your power users, they can be a source of anxiety for the occasional user who simply needs to fill in some fields or glance at the screen and move the data along. So simple forms are an ideal way to gather information from those more infrequent, less technical, or non-specialized users.
Although simple forms offer very limited features, this is actually a benefit. The lack of complex navigation makes it clear to users that they are viewing all the data at a glance, without worrying about hidden information. Fewer functions means less to go wrong, and minimal or no training, which typically makes casual users very happy and helps ensure these forms easily gain acceptance. From the business stakeholder’s point of view, this ability to integrate users with little or no training is becoming increasingly important. With mergers, acquisitions, turnovers, layoffs, early retirement, and workforce fluctuations of all kinds, it’s more and more likely that you’ll be working with users with a variety of experience — and that you’ll have only a brief period before these users must be up and running.
The limitations of simple forms do not exclude very simple navigation, such as scrolling down a particularly long form. But when it comes to designing your own forms, take care not to meander away from the goal — simplicity.
What Can Users Achieve with Simple Forms?
With this approach, simple forms are generated for a straightforward display of your business data. An example is shown in Figure 1. In addition to the display of the form data, they also provide:
- Support for the ABAP data dictionary, so context-sensitive Help and pick lists (F4 help) are automatically generated.
- One or two useful buttons, such as Save or Approve, depending on the type of form you choose.
- Two tabstrips that are automatically generated to show process and context. These two tabs will be automatically displayed in every simple form you generate.
||Simple Forms Present Both Data and Process/Context Informatoin
Are we dangerously close to overly sophisticated navigation? Absolutely not! The process and context tabs are simply the electronic equivalent of flipping over a paper form to read the explanations or “for internal use” information on the other side. These are the only tabstrips generated, and they are always in the same position with the same information.
In fact, this generic process-context information — the familiar look and feel — is one reason these forms are so popular. After users fill out these forms a couple times, they will understand that they can always “flip” to the work item description to check what to do, and then return to input the data. Or they can add an attachment, check how long they have to perform the task, or forward the form to someone else. Easy as pie.
Simple forms can be used in all sorts of process-oriented situations. You can use the forms to trigger a workflow or to process data within a workflow.3 They enable non-experts to collect data collaboratively, as shown in Figure 2 (below). In this example, everyone adds to the form before it is eventually checked for consistency and posted to the SAP system as clean data. If the data is rejected by the SAP system, it can be corrected in the form and posted back. The data can even be posted in a Wf-XML message to another workflow system.
||A Scenario Using Simple Forms for Casual and Expert Users
How Do You Create Simple Forms?
These forms are easy on developers, too — including those with no workflow experience. The data in a form is based on a single data dictionary structure. No data binding is necessary, and all the form data is kept in one place.
Note that before you can generate a form, you’ll need a data dictionary structure that matches your business requirements in terms of data content, and you’ll need to add this structure element to your container definition. You can either reuse an existing SAP structure or create your own using existing data dictionary elements, so that context-sensitive help and F4 pick-lists are supported.
Make sure that the workflow is configured to store the container data in XML format. This keeps the container storage small and increases the performance of the workflow.
From that point on, developing these forms is straightforward. Use the “simple forms creation” wizard to generate the form, specifying your data dictionary structure as the data source and indicating whether the form is used for displaying, editing, or approving data. This last step simply generates the necessary buttons (Save, Approve, Reject, etc.).
You can now use the screen painter to tidy up the form, remove unnecessary items, and rearrange the elements within the form. Once you have saved and activated the form, you can use it within the workflow immediately. You can even reuse it by specifying different contexts (such as approval instead of edit), making it extremely easy and low-maintenance (and thus cost-effective) for use in a workflow.
If you need a different view of the same data — and therefore a new form — simply use the wizard again to generate a second version of the form based on the same data structures.
When generating a simple form, be sure to include at least one element in the structure - but not visible in the form itself - that allows you to control the fields displayed in the form.
This way, you can generate a single form that can display different views of the same data. For example, some fields can be disabled for input, or even made invisible, depending on the end-user's role. Using one generic form cuts down maintenancedramatically and ensures familiarity in the user interface.
If you are familiar with the ABAP screen editor for creating dynpros, you can even use this technique for rapid prototyping. Using the workflow engine, you can also take advantage of the features provided by the engine itself (such as attachments or queries). This can help you convince stakeholders to avoid adding too much detailed process logic to the workflow definition itself. Instead, you can cover their requirements by using the features already provided by the workflow engine, and avoid significant development investments in time and labor.
How Are Simple Forms Deployed In a Workflow?
Deployment is straightforward. If you are using the Windows or GUI for HTML user interface, then the form can be used without any additional client installation. The SAP Enterprise Portal Universal Worklist, the Windows Business Workplace, and the ITS Web Inbox are all capable of launching the form.
If you want a new ITS rendering of the form so that users can access it from their Web browser, you can generate this directly from the form step in the workflow. Of course, you will then have to “pretty up” the form to match your standard Web UI, but once again, all the standard SAP features and the generic process features of WebFlow will be at your service.
Note that the form automatically supports a locking mechanism to prevent two users from working on the same data simultaneously, and to preclude the first user’s data from being inadvertently overwritten by a second user.
Although this simply avoids having data inadvertently overwritten, it’s even more sophisticated than you might imagine. Data locking is not done at the work-item level, so although users cannot work on the data simultaneously, several users can work in parallel on the same form over a prolonged period of time. Every time a user executes a work item, he indirectly locks the form for the duration of the work item execution. This prevents other users from working on it while he updates it, and allows him to see co-workers’ previous amendments. When he saves his data and exits the work item, the lock is released so that other colleagues can work on the data.
For you workflow gurus, you’ll find it useful to know that data is transferred to and from the workflow container directly. It is not transferred to the work item container, which ensures the consistency of the data and improves performance.
Whether or not you train users in the advanced capabilities of the SAP user interface will depend on your goals and users’ familiarity with SAP software. However, you will be pleasantly surprised by how these intuitive and consistent forms are readily accepted by users even with no SAP experience.
For more information, a detailed step-by-step guide to generating simple forms has been kindly provided by Jocelyn Dart of SAP Australia and is available to SAP customers and partners for download from the WebFlow service marketplace at http://service.sap.com/webflow.
1 Simple forms are available for use on the SAP Web Application Server.
2 For example, in the Universal Worklist of SAP Enterprise Portal, where the iView doesn't contain process information.
3 Depending on whether you generate a start-form in the workflow definition's header or add a simple form step in the workflow definition.
Alan Rickayzen has been with SAP since 1992 and in data processing since 1988. Since 1995, he has been performing development work as well as process technology consulting for various major US customers, and, as a result, he has amassed a good deal of technical knowledge in collaborative process technology. Alan Rickayzen is co-author of the book Practical Workflow for SAP, available at http://store.sapinsider.wispubs.com, and may be contacted at firstname.lastname@example.org.