You are on page 1of 96

Top 10 Recommendations when using

UWL

Ginger Gatling
SAP Labs, LLC
Agenda

1. Universal Worklist, what it is and when to use it


2. Configuring UWL for first time use, including delta pull
3. Personalization options for the end users
4. Update UWL look and feel
5. UWL action handlers
6. UWL API
7. Recommendations for substitution
8. Use with extended notifications
9. What’s next for UWL
10.Wrap-up

© SAP AG 2009 / 1
Agenda

1. Know when to use UWL 6. UWL API

2. Know personalization 7. Recommendations for


options for end users substitution

3. Update UWL look and feel 8. Use with extended


notifications
4. UWL task customization
9. Configure delta pull
5. UWL action handlers
10. What is next for UWL

© SAP 2009 / Page 2


Difference between UWL and SAP
Business Workflow

UWL is not part of SAP Business Workflow

UWL uses workflow API’s to read the inbox

SAP Business Workflow can be displayed to users:


SAP Business Workplace (SAP GUI)
SAP Business Workflow Workplace (SAP NetWeaver Business Client)
Extended notifications with Outlook / Lotus
Universal Worklist

© SAP 2009 / Page 3


1. When to use UWL

You have multiple SAP applications that use SAP Business Workflow
The same users have alerts and workflow tasks from multiple systems
You want a central task list for multiple systems (SAP and non-SAP)

Universal
SAP NetWeaver Worklist
Portal

SAP Business
KM Notifications Application
Application Non-SAP SAP NetWeaver
Workflow
System tasks BPM
System

Guided
Procedures
Alerts
Application
System

© SAP 2009 / Page 4


Skills you need to be successful in UWL

Customize UWL

Patience, must read online help

XML

Possibly Web Dynpro

Portal content directory and administration


UWL is a niche skill,
Java programming for API you will be very
popular

#1 issue with UWL


Underestimating skills needed
Not including UWL in overall project plan

© SAP 2009 / Page 5


2. Know personalization options for
end user
The Universal Worklist — “Out of the Box”

Standard
inbox
features:
Substitution

You can also:


Add attachments
View history

Standard
workflow
features:
Main launch action: Launch Forwarding
via button or via hyperlink Assignment
© SAP 2009 / Page 6
2. End user personalization

Column order
Sorting
Lines per page
Deadline indicators

Good or bad thing for end


users to do their own
personalization?
© SAP 2009 / Page 7
2. Filters for end users

© SAP 2009 / Page 8


3. Update UWL look and feel
Two options

1. Create a custom XML file

2. Use the UWL customizing wizard

© SAP 2009 / Page 9


UWL Configuration Wizard

The UWL Administration view


includes these wizards:
Define custom attributes and
customize the corresponding view

Define and configure what you


want to launch when an item is
clicked

Customize attributes and define


what you want to launch when an
item is clicked (both of the above
options)

Customize the look of the UWL


main page (tabs, etc.)

© SAP 2009 / Page 10


3. Update UWL look and feel
In just three steps…
1. Create a custom UWL XML configuration file (use the standard files as
examples) with your delta changes
2. Upload the file. You can upload multiple files and name them however
you wish (e.g., mycompany.PLM.<OurSystemAlias>).

3. Don’t forget to clear the Cache! Tip!


Using an XML editor is helpful, but not
essential – you can maintain your XML
file using WordPad if you wish.
Use the UWL Configuration DTD file to
check your XML syntax.
© SAP 2009 / Page 11
3. Change UWL Display

Change sort order


Property sortby in the View tag
Change column order
Property columnOrder in the View tag
Change durations for due date color coding
Properties dueDateSevere (turns due date red) and
dueDateWarning (turns due date yellow)
Note: Duration is in milliseconds (e.g., 86400000 = 1 day)

© SAP 2009 / Page 12


3. You can also hide unwanted
features
Completely hide unwanted features globally by adding
the Exclude from UWL Preview and Detail property

<Action name="launchSAPDetails" …
<Properties>
<Property
name="display_order_priority"
value="uwlExcludeFromPreviewDetail“
/>
</Properties></Action>

Tip!
A list of action names for standard
features is found in the UWL
configuration documentation.

Don’t hide it until you know


what it does!

© SAP 2009 / Page 13


3. Pass Comments from One Step to
the Next
Activate the standard Add Memo feature
View Memos shows automatically once a memo has been added to
a work item

© SAP 2009 / Page 14


3. Pass Comments from One Step to
the Next? (cont.)

1. Download the standard file uwl.webflow


2. Rename the file (e.g., mycompany.webflow)
3. Add the “Add Memo” action here:
<ItemType name="uwl.task.webflow" …
<Actions>
<Action reference="addMemo"/>
<Action reference=“manageAttachments” ….

4. Upload the file and clear the Cache

© SAP 2009 / Page 15


3. User decisions: You can enforce a
reason for rejection
Use the User Decision with Note style

A memo is
created and
automatically
passed to
subsequent
work items

Careful!
Comments are only
saved when an answer
button is pressed. Ask
users to use addMemo
to add comments when
forwarding.

© SAP 2009 / Page 16


3. Enforcing a reason for rejection

1. Copy the ItemType tag for your decision-based workflow task from
uwl.webflow.<OurSystemAlias>
<ItemType name=uwl.task.webflow.decision.TS99999999 …

2. Within the ItemType tag, add an Actions tag, with an Action tag for each button
<Actions> <Action name="approved" groupAction="yes" handler="UserDecisionHandler"
returnToDetailViewAllowed="yes" launchInNewWindow="no"> On the first button only:
<Properties> <Property name="UserDecisionNote" value="true"/> Turn on the note and set
up the note title
<Property name="decisionKey" value="1"/>
<Property name="UserDecisionTitle" value="Enter a Rejection Reason"/> </Properties>
<Descriptions default="Approved"/> </Action>
On the other
<Action name="rejected" groupAction="yes" handler="UserDecisionHandler" buttons:
returnToDetailViewAllowed="yes" launchInNewWindow="no"> Indicate if a
<Properties> <Property name="UserDecisionNote" value="mandatory"/> note is
mandatory
<Property name="decisionKey" value="2"/> </Properties>
<Descriptions default="Rejected"/> </Action> </Actions>

Get the correct values for the decisionKey by running function module
Tip! SAP_WAPI_DECISION_READ against any work item based on the
relevant workflow task

© SAP 2009 / Page 17


4. UWL task customization

Create your own process-specific filters


Filters show as Subviews if, and only if, the user has work items of that
process in his/her worklist
Filters automatically give a count of new/total number of work items

© SAP 2009 / Page 18


4: Task customization - add your
own columns
Add your own Custom Attributes

Tip! Try the UWL Configuration Wizard!

© SAP 2009 / Page 19


4: Mass processing

Use Multi-approval/rejection

Tip!
Save time by using the standard view WorkItemApprovalsView

© SAP 2009 / Page 20


4. How to create the subviews for
the tasks
1. Copy the ItemType tag for your workflow task from
uwl.webflow.<OurSystemAlias>
2. Copy the defaultView tag from file uwl.standard. Rename it, add a
description, and link it to your process-specific tasks.
<Views>
<View name=“OurShopCartView" selectionMode="SINGLESELECT" width="98%"
supportedItemTypes="uwl.task.webflow.TS10008126,uwl.task.web…. >
<Descriptions default=“Shopping Carts“/> …. </View> </Views>

3. Add the View tag for your business process to the end of the file – just
above </UWLConfiguration>
4. Change the default View of each process-specific task to your View
<ItemType name="uwl.task.webflow.TS10008126.<OurSystemAlias>"
connector="WebFlowConnector" defaultView=“OurShopCartView" …

Tip!
If there is no ItemType tag for your task in uwl.webflow.<OurSystemAlias>,
copy uwl.task.webflow.default from file uwl.webflow and change “default” to
your task ID “TS9999999”

© SAP 2009 / Page 21


4. XML for BUS1006 task
ItemType
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE UWLConfiguration PUBLIC '-//SAP//UWL1.0//EN' 'uwl_configuration.dtd' []>
<UWLConfiguration version="1.0">

<ItemTypes>
<ItemType name="uwl.task.webflow.TS9980791" connector="WebFlowConnector" defaultView="BusinessPartners"
defaultAction="defaultAction">
<ItemTypeCriteria externalType="TS9980791" connector="WebFlowConnector"/>
<CustomAttributes>
<CustomAttributeSource id="ABAP_BOR" objectIdHolder="externalObjectId" objectType="BUS1006"
cacheValidity="default">
<Attribute name="BUSINESSPARTNER" type="string" displayName="Business Partner"/>
<Attribute name="DESCRIPTION" type="string" displayName="Name"/>
<Attribute name="CATEGORY" type="string" displayName="Type of partner"/>
</CustomAttributeSource>
</CustomAttributes>
</ItemType>
</ItemTypes>

© SAP 2009 / Page 22


4. XML for BUS1006 task
Views

<Views>
<View name="BusinessPartners" selectionMode="SINGLESELECT" width="98%"
supportedItemTypes="uwl.task.webflow.TS9980791"
columnOrder="subject, isEscalated, creatorId, createdDate, priority, attachmentCount, dueDate, status, BUSINESSPARTNER,
CATEGORY, DESCRIPTION" >
<DisplayAttributes>
<DisplayAttribute name="BUSINESSPARTNER" type="string" sortable="no" maxTextWidth="0" headerVisible="yes">
<Descriptions default="Business Partner"/> </DisplayAttribute>
<DisplayAttribute name="DESCRIPTION" type="string" sortable="no" maxTextWidth="0" headerVisible="yes">
<Descriptions default="Name"/> </DisplayAttribute>
<DisplayAttribute name="CATEGORY" type="string" sortable="no" maxTextWidth="0" headerVisible="yes">
<Descriptions default="Type of partner"/> </DisplayAttribute>
</DisplayAttributes>
</View>
</Views>
</UWLConfiguration>

© SAP 2009 / Page 23


5. UWL by default knows how to
launch tasks
The default launch mechanism for all work items
sourced from an SAP Business Workflow is SAPGUI for
HTML, but you can override this.
Tips!
You can override the default
launch mechanism using any
of the following:
Special settings in the task
(e.g., DECISION.PROCESS
method)
Settings in transactions:
SWFVISU, WF_EXTSRV
Creating a custom UWL XML
configuration file
Globally in the PCD entry for
the UWL iView

Don’t forget to re-register


and clear the Cache!

© SAP 2009 / Page 24


5. UWL action handlers

Use action handlers to execute custom UI’s for the task

This is recommended but requires programming knowledge

Common handlers are Web Dynpro, BSP, Function Module, iView

© SAP 2009 / Page 25


5. Use action handlers to create a
custom forward button
Add your own actions using the IViewLauncher

Action handlers (e.g., create SAPAppLauncher

your own custom “Forward to SAPMiniAppLauncher

Superior” button calling your SAPIACLauncher

own custom function module


SAPWebDynproLauncher
SAPWebDynproABAPLauncher
using the SAPTransactionLauncher
FunctionModuleActionHandler) SAPBSPLauncher
ObjectLinkLauncher
ObjectNavigationLauncher
Tip! UrlLauncher
Make sure you read the UWL XhandlerLauncher
Advanced Configuration guide to
understand what properties are TerminatingEventHandler
relevant for each handler! FunctionModuleActionHandler
UpdatingContainerHandler
UserDecisionHandler
PortalEventLauncher

© SAP 2009 / Page 26


5. Use transaction code SWFVISU to
configure your action handler
You need to enter your application type and application ID
The application type pre-determines what other details are needed

Tip!
To apply the SWFVISU settings you need to:
• Re-register the system
• You will see a matching entry in the file uwl.webflow.MySystemAlias
Don’t forget to clear the Cache!

© SAP 2009 / Page 27


5. Recommendations for action
handler customization

Three major options when customizing tasks:


1. Manually create your XML and upload it

2. UWL wizard

3. Transaction code SWFVISU

Recommendation: Use SWFVISU when possible


SAP delivers tasks in SWFVISU

Easier to maintain than XML files

© SAP 2009 / Page 28


6. One Inbox for All Work – SAP and
Non-SAP
Include non-SAP work in the UWL by using the UWL
Java API to create your own UWL Connector

https://help.sap.com/javadocs/NW04S/current/uw/index.html

© SAP 2009 / Page 29


6. How Much Work Is It to use the
UWL API?
UWL API has the following parts:
1. Registration Service to register a unique ID for the non-SAP
“system ID”
2. UWL Connector Service to push and pull the worklist from the
non-SAP system and map it to the UWL item attributes
3. Action Handler Services to support any buttons you need
4. Attachment Connector Services to support any attachments you
need (optional)
5. UWL XML Configuration for your non-SAP item types

Estimated effort: 10-30 person days depending on depth of integration.


Basic integration is usually possible within 10-15 days.

© SAP 2009 / Page 30


6. But Has Any One Else Done This …

This has been implemented at a number of customers


already – and it’s the same approach as is used for the
standard connectors
Connectors already exist for:
WebFlow
Ad Hoc Workflow (Java Workflow)
Alerts
KM Action Inbox
Generic ABAP connector
SAP NetWeaver BPM
SAP NetWeaver MDM
SAP NetWeaver Guided Procedures

Publicly available details of how others did it:


SONiC Connector – available as part of the SONiC download (UWL does
not support this connector for lower versions than 7.02 and 7.2.)
UWL Connector for MDM
See SDN Blog www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/4762
RSS Feeds – presented at SAP TechEd
© SAP 2009 / Page 31
7. Substitution is done either in
provider systems or UWL
You can prevent users from creating/deleting
substitution rules in the Object Visualization section in
the Portal Content Directory

Tip!
To find the iView go to:
Portal Content > Content Provided by
SAP > End User Content > Standard
Portal Users > iViews >
This is valid only for standard iView. If you
have an iView assigned to particular
portal role, you have to go for that role.
© SAP 2009 / Page 32
7. Recommendations for
substitution

UWL is only for user based substitutes

Substitutions should be maintained (created,


modified and/or deleted) only centrally in UWL. If it
is maintained directly from the systems,
inconsistencies may occur with the UWL
substitutions.

Use HR A210 relationships for position based


substitutes

© SAP 2009 / Page 33


8. Extended Notifications

Use Extended Notifications to notify users of work, giving


hyperlinks to launch into the UWL. Avoids complex
integration issues with mail groupware versions.

© SAP 2009 / Page 34


8. Setting Up Extended
Notifications
Minimum setup of Extended Notifications in transaction
SWNCONFIG, then schedule a batch job for program
SWN_SELSEN (extended notification) or RSWNUWLSEL
1. Create a Delivery Schedule
2. Add a Subscription to Scenario WORKFLOW Category STANDARD
3. - Create a Schedule Selection for filter ALL_DELTA for SWN_SELSEN
- Create a Schedule Selection for filters DELTA and FULL for RSWNUWLSEN
4. Adjust the General Settings

© SAP 2009 / Page 35


8. Setting up Extended Notifications

Minimum changes for General Settings


Address priority:
Where do I want the email
address to come from?
Infotype 105/0010?
Transaction SU01?

UWL link and caption:


Hyperlink to the UWL

Sender name:
Make sure it identifies the
system/client to avoid
confusion during testing

Messages (NA) and


Dialog Texts (DT):
Used as header/footer of
the email notification

© SAP 2009 / Page 36


9. Configuring Delta Pull
UWL administration setup

Delta Pull Channel Refresh - Minimum value is 60 seconds


Without using the refresh feature, new items are fetched from the backend every
minute. Default: 60 seconds, 30 seconds for alerts.
No optimized pull take place if you leave the field empty or enter a negative
number.
Delta Pull Channel Snapshot – 1440 is one a day
All items at the current time are fetched from the backend (for example from the
SAP Business Workflow). The cache is synchronized thereafter.
New / modified / deleted / updated items are fetched every session (every log on)
if you leave the field value empty or enter a negative number.
© SAP 2009 / Page 37
9. Configuring Delta Pull
UWL_SERVICE user

© SAP 2009 / Page 38


9. Configuring Delta Pull
Note 133821 and Online Help

Define the following two batch jobs:

UWL_DELTA_PULL_1: ABAP report RSWNUWLSEL in FULL mode. Run


the job once a day.
UWL_DELTA_PULL_2: ABAP report RSWNUWLSEL in DELTA mode
Run the job every 1-3 minutes.

Note: external schedulers are not supported!

© SAP 2009 / Page 39


10. What is next for UWL

SAP NetWeaver 7.2 (ramp up planned 2009)


Real-time refresh upon task completion
Office notifications in UWL
Accessibility 3.0 standard
CCMS monitoring
Attribute loading improvements

SAP NetWeaver 7.02 (ramp up planned 2010)


Office notifications in UWL
Accessibility 3.0 standard
Attribute loading improvements
Real-time refresh upon task completion

© SAP 2009 / Page 40


UWL Strategy Tips

Consider what you will need for the long term (not just
for the first-phase workflows)
Consider how you want your users to use standard
features
Especially Substitution and Forwarding
One workflow inbox in the Portal – the UWL
Decide your corporate attitude towards the Windows GUI SAP
Business Workplace inbox (avoid supporting it if you can)
Don’t forget the obvious
Consistency in subject and detail text format

Don’t turn it off until you


understand what it does!

© SAP 2009 / Page 41


Debugging tip

In your Development Portal, turn on the UWL Support


Information in the Portal Content Directory. This can save you
a lot of time when configuring the UWL XML.

Support Information:
Appears immediately
below the work item
preview.

© SAP 2009 / Page 42


What We’ll Cover …

Why getting the business process right isn’t enough


Making the most of the UWL – “Out of the Box”
Quick win extensions to the UWL
More advanced extensions
Extended Notifications for mail integration
Strategy tips
Wrap-up

© SAP 2007-2008 / Page 43


UWL Strategy Tips

Consider what you will need for the long term (not just
for the first-phase workflows)
Consider how you want your users to use standard
features
Especially Substitution and Forwarding
One workflow inbox in the Portal – the UWL
Decide your corporate attitude towards the Windows GUI SAP
Business Workplace inbox (avoid supporting it if you can)
Don’t forget the obvious
Consistency in subject and detail text format

Don’t turn it off until you


understand what it does!

© SAP 2007-2008 / Page 44


Why Do Texts Matter So Much?

The no-control approach: A better way:


No consistency, not sortable, Sortable on action type, critical
critical information is buried information first, quicker to
assess and respond

© SAP 2007-2008 / Page 45


Give Yourself a Break …

In your Development Portal, turn on the UWL Support


Information in the Portal Content Directory. This can save you
a lot of time when configuring the UWL XML.

Support Information:
Appears immediately
below the work item
preview.

© SAP 2007-2008 / Page 46


Agenda

1. Initial configuration required on your system for SAP Business Workflow


2. Executing a workflow
3. Looking under the hood: workflow designer
4. Looking under the hood: standard tasks
5. Key terms
6. How users know they have a workflow task
7. How users can monitor their workflows
8. Substitution, how it works and why it is important
9. Wrap-up

© SAP AG 2009 / 47
Resources

Gatling, G; Rickayzen, A; Dart, J; Dick, E; Hilss, O;


Kaspoor, S; Kempf, S; Keohan, S;
Kosog, T; Medialle, P; Pokraka, M; Sabnani, S; Sedlmayr, J;
Sohn, T, Practical Workflow for SAP 2nd Edition (SAP
Press, June 2009)
Book on implementing SAP Business Workflow
Workflow FAQ Wiki on SDN
https://wiki.sdn.sap.com/wiki/display/HOME/SAP+Business+Workflo
w+FAQ
Workflow and UWL on SDN
https://www.sdn.sap.com/irj/sdn/nw-him
Docupedia wiki
https://cw.sdn.sap.com/community/docupedia
– Search “workflow substitution”
© SAP AG 2009 / 48
7 Key Points to Take Home

Configuring your system for SAP Business Workflow is required before you can use SAP
Business Workflow.

Workflow tasks include several standard tasks and steps in the overall process. Each
workflow and task is uniquely identified at runtime via a work item.

Options for users to access their work items include: SAP Business Workplace in SAP GUI,
Universal Worklist, SAP NetWeaver Business Client, and email clients such as Microsoft
Outlook and Lotus Notes.

Users use their outbox to know what workflows they have started and the status of all
workflows where they are a participant in the workflow.

Key terms you need to understand before starting a workflow project include business
objects, workflow tasks, standard tasks, work item, business objects, possible agent,
responsible agent, rules, containers, bindings, events.

At this point, you should consider the following for your workflow project: what business
objects will be involved, what tasks do you need, what users should be involved, how will you
know what users to include at runtime, how should the users receive their tasks, what
information do they need to execute their tasks.

Substitution needs to be included in the planning of your workflow.

© SAP AG 2009 / 49
Thank you!

How to contact me:


Ginger Gatling
Ginger.Gatling@sap.com

© SAP AG 2009 / 50
Key Points to Take Home

Don’t settle for UWL “Out of the Box”


Don’t leave usability up to your developers
Include UWL in your project plan and allocate time to
learn
Business process owners need to sign off on usability
As a minimum, set up UWL Filters to improve usability
Set enterprise-wide Workflow Standards to improve
consistency
Consider what you will need for the long term
Don’t turn it off until you know what it does

© SAP 2009 / Page 51


Resources – UWL Configuration

Advanced Configuration of UWL


http://help.sap.com/saphelp_nw70/helpdata/en/27/8be9f12c6746158328764a13c0ef99/fra
meset.htm

SDN UWL Blogs


www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_weblog&query=UWL&adv=false&sort
by=cm_rnd_rankvalue

SDN Extended Notification Blogs


www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_weblog&query=SWNCONFIG&adv=f
alse&sortby=cm_rnd_rankvalue

SAP SDN BPM and Workflow Forum


https://forums.sdn.sap.com/forum.jspa?forumID=146

UWL FAQ
https://wiki.sdn.sap.com/wiki/display/BPX/UWL+FAQ
SAP Press
Universal Worklist with SAP NetWeaver Portal
Practical Workflow for SAP, 2nd edition, due June 2009

© SAP 2009 / Page 52


Thank you!

©SAP
© SAP2007
2009 / Page
/ Page 53 53
Copyright 2009 SAP AG
All rights reserved
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP AG. The information contained herein may be changed without prior notice.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software
vendors.
SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, Duet, Business ByDesign, ByDesign, PartnerEdge and other
SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP
AG in Germany and in several other countries all over the world. All other product and service names mentioned and associated
logos displayed are the trademarks of their respective companies. Data contained in this document serves informational
purposes only. National product specifications may vary.

The information in this document is proprietary to SAP. This document is a preliminary version and not subject to your license
agreement or any other agreement with SAP. This document contains only intended strategies, developments, and
functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product
strategy, and/or development. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant
the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. This
document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties
of merchantability, fitness for a particular purpose, or non-infringement.
SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages
that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence.
The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you
may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages
nor provide any warranty whatsoever relating to third-party Web pages

© SAP 2009 / Page 54


Problem: Where Do I Start?

Solution: The Universal Worklist — “Out of the Box”

Standard
inbox
features:
Substitution

You can also:


Add attachments
View history

Standard
workflow
features:
Main launch action: Launch Forwarding
via button or via hyperlink Assignment
© SAP 2007-2008 / Page 55
Problem: We Just Upgraded and We
Need to Set Up the UWL Fast!
Solution: The minimum steps for setting up
the Universal Worklist
1. Go to System Administration > System Configuration > UWL Administration
2. Create an entry for your system using its System Alias
3. Register the system

© SAP 2007-2008 / Page 56


What Just Happened?

Register/re-register:
Generates the UWL XML configuration file
uwl.webflow.MySystemAlias, a delta file that adds specific
configuration for your workflow tasks to the standard
delivered files uwl.standard and uwl.webflow

Tips!
Re-register whenever you:
Create new workflow tasks
Make changes in transaction SWFVISU or WF_EXTSRV
Clear the Cache to make new changes appear:
After re-registering
After changing any UWL XML configuration file
Good practice is to clear the cache when there are no
logged on users (that could use UWL) on the portal.
© SAP 2007-2008 / Page 57
Where Do I See That?

You can view


and download all
UWL XML
configuration
files (and the
UWL
Configuration
DTD file) on the
Configuration
Content page in
the UWL
Administration
view. You can
also upload your
own custom
UWL XML
configuration
files.

© SAP 2007-2008 / Page 58


Problem: Why Does My Work Item
Launch a WebGUI Session?
Solution: The default launch mechanism for all work
items sourced from an SAP system is SAPGUI for HTML,
but you can override this.
Tips!
You can override the default
launch mechanism using any
of the following:
Special settings in the task
(e.g., DECISION.PROCESS
method)
Settings in transactions:
SWFVISU, WF_EXTSRV
Creating a custom UWL XML
configuration file
Globally in the PCD entry for
the UWL iView

Don’t forget to re-register


and clear the Cache!

© SAP 2007-2008 / Page 59


Problem: How Do I Launch a Web
Dynpro Application Instead?
Solution: Most SAP-based Web applications can be
launched by making an entry in the Task Visualization
section of transaction SWFVISU. You don’t even need to
change your workflow task!

© SAP 2007-2008 / Page 60


So What Do I Put in the Task
Visualization?
You need to enter your application type and application ID
The application type pre-determines what other details are needed

Tip!
To apply the SWFVISU settings you need to:
• Re-register the system
• You will see a matching entry in the file uwl.webflow.MySystemAlias
Don’t forget to clear the Cache!

© SAP 2007-2008 / Page 61


Problem: How Do I Launch Non-SAP
Web Applications (Web Services)?
Solution: Any Web service can be launched by making
an entry in the transaction WF_EXTSRV. You also use
this to generate a matching task to include in your
workflow.

© SAP 2007-2008 / Page 62


Problem: I Need to Hide Unwanted
Attachments
Solution: Unwanted attachments can be hidden globally
by making an entry in the Object Visualization section
of transaction SWVFISU
Enter the object type, visualization type NONE, and leave the method
name blank (very important!)

Tips!
To apply the SWFVISU settings you need to:
• Re-register the system
• Note: You won’t see any changes in the file uwl.webflow.MySystemAlias
Don’t forget to clear the Cache!

© SAP 2007-2008 / Page 63


Problem: We Want to Maintain
Substitutions Centrally
Solution: Prevent users from creating/deleting
substitution rules in the Object Visualization section in
the Portal Content Directory

Tip!
To find the iView go to:
Portal Content > Content Provided by
SAP > End User Content > Standard
Portal Users > iViews >

© SAP 2007-2008 / Page 64


How Hard Is It to Change the
Standard UWL?
Solution: Just three steps …
1. Create a custom UWL XML configuration file (use the standard files as
examples) with your delta changes
2. Upload the file. You can upload multiple files and name them however
you wish (e.g., mycompany.PLM.<OurSystemAlias>).

Tip!
Using an XML editor is helpful, but not
3. Don’t forget to clear the Cache! essential – you can maintain your XML
file using WordPad if you wish.
Use the UWL Configuration DTD file to
check your XML syntax.

© SAP 2007-2008 / Page 65


Problem: Is There a Wizard to Help?

Solution: The UWL Administration view


includes these wizards:

Define custom attributes and


customize the corresponding view

Define and configure what you


want to launch when an item is
clicked

Customize attributes and define


what you want to launch when an
item is clicked (both of the above
options)

Customize the look of the UWL


main page (tabs, etc.)

© SAP 2007-2008 / Page 66


Problem: How to Pass Comments
from One Step to the Next?
Solution: Activate the standard Add Memo feature
View Memos shows automatically once a memo has been added to
a work item

© SAP 2007-2008 / Page 67


Problem: How to Pass Comments
from One Step to the Next? (cont.)
1. Download the standard file uwl.webflow
2. Rename the file (e.g., mycompany.webflow)
3. Add the “Add Memo” action here:
<ItemType name="uwl.task.webflow" …
<Actions>
<Action reference="addMemo"/>
<Action reference=“manageAttachments” ….

4. Upload the file and clear the Cache

© SAP 2007-2008 / Page 68


Problem: How Do I Hide Unwanted
Features?
Solution: Completely hide unwanted features globally by
adding the Exclude from UWL Preview and Detail
property
<Action name="launchSAPDetails" …
<Properties>
<Property
name="display_order_priority"
value="uwlExcludeFromPreviewDetail“
/>
</Properties></Action>

Tip!
A list of action names for standard
features is found in the UWL
configuration documentation.

Don’t hide it until you know


what it does!

© SAP 2007-2008 / Page 69


Problem: How Do I Organize Work by
Business Process?
Solution: Create your own process-specific filters
Filters show as Subviews if, and only if, the user has work items of that
process in his/her worklist
Filters automatically give a count of new/total number of work items

© SAP 2007-2008 / Page 70


Problem: How Do I Organize Work by
Business Process? (cont.)
1. Copy the ItemType tag for your workflow task from
uwl.webflow.<OurSystemAlias>
2. Copy the defaultView tag from file uwl.standard. Rename it, add a
description, and link it to your process-specific tasks.
<Views>
<View name=“OurShopCartView" selectionMode="SINGLESELECT" width="98%"
supportedItemTypes="uwl.task.webflow.TS10008126,uwl.task.web…. >
<Descriptions default=“Shopping Carts“/> …. </View> </Views>

3. Add the View tag for your business process to the end of the file – just
above </UWLConfiguration>
4. Change the default View of each process-specific task to your View
<ItemType name="uwl.task.webflow.TS10008126.<OurSystemAlias>"
connector="WebFlowConnector" defaultView=“OurShopCartView" …

Tip!
If there is no ItemType tag for your task in uwl.webflow.<OurSystemAlias>,
copy uwl.task.webflow.default from file uwl.webflow and change “default” to
your task ID “TS9999999”

© SAP 2007-2008 / Page 71


What Else Can I Do with Filters?

Change sort order


Property sortby in the View tag
Change column order
Property columnOrder in the View tag
Change durations for due date color coding
Properties dueDateSevere (turns due date red) and
dueDateWarning (turns due date yellow)
Note: Duration is in milliseconds (e.g., 86400000 = 1 day)
Add columns (DisplayAttributes tag) – try the wizard!
Add buttons (Actions tag)
Add multi-approval/rejection

© SAP 2007-2008 / Page 72


Problem: Too Much Confusing SAP
Terminology
Solution: Rename the launch buttons for a specific
workflow task to make them process relevant (e.g.,
“Open TimeSheet” instead of “Launch WebDynpro”)

© SAP 2007-2008 / Page 73


Problem: Too Much Confusing SAP
Terminology (cont.)
1. Copy the ItemType tag for your workflow task from
uwl.webflow.<OurSystemAlias>
<ItemType name="uwl.task.webflow.TS10008126.<OurSystemAlias>“
connector="WebFlowConnector" defaultView= …

2. Find the relevant Action tag within your ItemType tag


<Action name="launchSAPAction" groupAction=""
handler="SAPTransactionLauncher" …

3. Add a Descriptions tag just before </Action>


<Descriptions default=“Open TimeSheet"/>

Tips!
If there is no ItemType tag for your task in uwl.webflow.<OurSystemAlias>, copy
uwl.task.webflow.default from file uwl.webflow and change “default” to your task ID
“TS9999999”
If there is no Action tag for your button, copy the relevant action tag from uwl.webflow
The Descriptions tag supports multiple languages (see the UWL Configuration DTD)

© SAP 2007-2008 / Page 74


What Else Can I Change for a
Specific Workflow Task?

Hide unwanted buttons


Set the property display_order_priority to
uwlExcludeFromPreviewDetail for a specific Action within the
ItemType
Change the launch mechanism
E.g., launch a transaction in WinGUI instead of WebGUI
Add extra fields (CustomAttributes tag) for display in
the View or to pass to the launch application
Try the UWL configuration wizard!
Add buttons (Actions tag)

© SAP 2007-2008 / Page 75


Problem: How to Enforce a
Rejection Reason?
Solution: Use the User Decision with Note style

A memo is
created and
automatically
passed to
subsequent
work items

Careful!
Comments are only
saved when an answer
button is pressed. Ask
users to use addMemo
to add comments when
forwarding.

© SAP 2007-2008 / Page 76


Problem: How to Enforce a
Rejection Reason? (cont.)
1. Copy the ItemType tag for your decision-based workflow task from
uwl.webflow.<OurSystemAlias>
<ItemType name=uwl.task.webflow.decision.TS99999999 …

2. Within the ItemType tag, add an Actions tag, with an Action tag for each button
<Actions> <Action name="approved" groupAction="yes" handler="UserDecisionHandler"
returnToDetailViewAllowed="yes" launchInNewWindow="no"> On the first button only:
<Properties> <Property name="UserDecisionNote" value="true"/> Turn on the note and set
up the note title
<Property name="decisionKey" value="1"/>
<Property name="UserDecisionTitle" value="Enter a Rejection Reason"/> </Properties>
<Descriptions default="Approved"/> </Action>
On the other
<Action name="rejected" groupAction="yes" handler="UserDecisionHandler" buttons:
returnToDetailViewAllowed="yes" launchInNewWindow="no"> Indicate if a
<Properties> <Property name="UserDecisionNote" value="mandatory"/> note is
mandatory
<Property name="decisionKey" value="2"/> </Properties>
<Descriptions default="Rejected"/> </Action> </Actions>

Get the correct values for the decisionKey by running function module
Tip! SAP_WAPI_DECISION_READ against any work item based on the
relevant workflow task

© SAP 2007-2008 / Page 77


Problem: How to Spot the Urgent/
Related Work?
Solution: Add your own Custom Attributes

Tip! Try the UWL Configuration Wizard!

© SAP 2007-2008 / Page 78


Problem: How Can We Approve/
Reject Quickly?

Solution: Use Multi-approval/rejection

Tip!
Save time by using the standard view WorkItemApprovalsView

© SAP 2007-2008 / Page 79


Problem: How Do We Add a Custom
Forwarding Button?
Solution: Add your own actions IViewLauncher

using the Action handlers (e.g., SAPAppLauncher

create your own custom SAPMiniAppLauncher

“Forward to Superior” button SAPIACLauncher

calling your own custom


SAPWebDynproLauncher
SAPWebDynproABAPLauncher
function module using the SAPTransactionLauncher
FunctionModuleActionHandler) SAPBSPLauncher
ObjectLinkLauncher
ObjectNavigationLauncher
Tip! UrlLauncher
Make sure you read the UWL XhandlerLauncher
Advanced Configuration guide to
understand what properties are TerminatingEventHandler
relevant for each handler! FunctionModuleActionHandler
UpdatingContainerHandler
UserDecisionHandler
PortalEventLauncher

© SAP 2007-2008 / Page 80


Problem: We Want Mails Sent by
Workflow Also in the UWL
Solution: Use the freeware SAP Office Notification Connector
(SONiC) developed by an SAP Regional Interest Group to view
SAPOffice mails in the Notifications tab of the UWL

Tip!
Learn more and download the SONiC
Connector from SDN:
www.sdn.sap.com/irj/sdn/go/portal/prt
root/docs/library/uuid/8525afd0-0d01-
0010-aaa0-ac6b9e3a2907

© SAP 2007-2008 / Page 81


Problem: We Want One Inbox for All
Work – SAP and Non-SAP
Solution: Include non-SAP work in the UWL by using the
UWL Java API to create your own UWL Connector

https://help.sap.com/javadocs/NW04S/current/uw/index.html

© SAP 2007-2008 / Page 82


Problem: How Much Work Is It to
Do This?
Solution: This has the following parts:
1. Registration Service to register a unique ID for the non-SAP
“system ID”
2. UWL Connector Service to push and pull the worklist from the
non-SAP system and map it to the UWL item attributes
3. Action Handler Services to support any buttons you need
4. Attachment Connector Services to support any attachments you
need (optional)
5. UWL XML Configuration for your non-SAP item types

Estimated effort: 10-30 person days depending on depth of integration.


Basic integration is usually possible within 10-15 days.

© SAP 2007-2008 / Page 83


Problem: But Has Any One Else
Done This …
Solution: This has been implemented at a number of
customers already – and it’s the same approach as is
used for the standard connectors
Connectors already exist for:
WebFlow
Ad Hoc Workflow (Java Workflow)
Alerts
KM Action Inbox
Generic ABAP connector
SAP NetWeaver BPM
SAP NetWeaver Guided Procedures
Publicly available details of how others did it:
SONiC Connector – available as part of the SONiC download
UWL Connector for MDM
See SDN Blog www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/4762
RSS Feeds – presented at SAP TechEd
© SAP 2007-2008 / Page 84
Problem: How Do I Get from My
Email Inbox to the UWL?
Solution: Use Extended Notifications to notify users of work,
giving hyperlinks to launch into the UWL. Avoids complex
integration issues with mail groupware versions.

© SAP 2007-2008 / Page 85


Problem: We Need to Set Up
Extended Notifications Fast
Solution: Minimum setup of Extended Notifications
in transaction SWNCONFIG, then schedule a batch
job for program SWN_SELSEN
1. Create a Delivery Schedule
2. Add a Subscription to Scenario WORKFLOW Category STANDARD
3. Create a Schedule Selection for filter ALL_DELTA
4. Adjust the General Settings

© SAP 2007-2008 / Page 86


Problem: What Do I Need to Change
in General Settings?
Solution: Minimum changes for General Settings
Address priority:
Where do I want the email
address to come from?
Infotype 105/0010?
Transaction SU01?

UWL link and caption:


Hyperlink to the UWL

Sender name:
Make sure it identifies the
system/client to avoid
confusion during testing

Messages (NA) and


Dialog Texts (DT):
Used as header/footer of
the email notification

© SAP 2007-2008 / Page 87


Problem: We Need Details but Not
SPAM
Solution: By default, emails are only sent if the user
has had work added to his/her inbox since the last
job run, and he/she has not yet executed the work
Additionally
setting Granularity
to One Message
Contains Multiple
Notifications in the
Subscription gives
a maximum of one
email per user per
job run, but with
sufficient detail to
assess the
urgency of the
work.

© SAP 2007-2008 / Page 88


Problem: We Want Faster
Notification of High-Priority Work
Solution: Use a Filter to nominate workflow tasks for
high-priority work. A delivery schedule and schedule
selection can then be created to send emails more
frequently for these tasks.

© SAP 2007-2008 / Page 89


What Else Can We Do with Extended
Notifications?
Send Reminders for outstanding work
Set the REMINDER_DAYS parameter for Scenario WORKFLOW
Category STANDARD
Send SMS rather than email
Set Delivery Type to SMS
Create Notifications for non-SAP work items or for
SAP mail
Copy handler CL_SWN_SCENARIO_WORKFLOW
Exclude certain users from getting any notifications
Create your own CL_SWN_SUBSCRIPTION
Change the email layout
Create your own copy of the Message Template BSP
application /SAP/BC/BSP/SAP/SWN_MESSAGE1/MAIN.DO

© SAP 2007-2008 / Page 90


What We’ll Cover …

Why getting the business process right isn’t enough


Making the most of the UWL – “Out of the Box”
Quick win extensions to the UWL
More advanced extensions
Extended Notifications for mail integration
Strategy tips
Wrap-up

© SAP 2007-2008 / Page 91


Resources – UWL Configuration

Advanced Configuration of UWL


http://help.sap.com/saphelp_nw70/helpdata/en/27/8be9f12c6746158328
764a13c0ef99/frameset.htm
SDN UWL Blogs
www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_weblog&query=UW
L&adv=false&sortby=cm_rnd_rankvalue

SDN Extended Notification Blogs


www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_weblog&query=SW
NCONFIG&adv=false&sortby=cm_rnd_rankvalue

SAP SDN BPM and Workflow Forum


https://forums.sdn.sap.com/forum.jspa?forumID=146

© SAP 2007-2008 / Page 92


7 Key Points to Take Home

Don’t settle for UWL “Out of the Box”


Don’t leave usability up to your developers
Business process owners need to sign off on usability
As a minimum, set up UWL Filters to improve usability
Set enterprise-wide Workflow Standards to improve
consistency
Consider what you will need for the long term
Don’t turn it off until you know what it does

© SAP 2007-2008 / Page 93


Your Turn!

Contact
Jocelyn Dart
Senior Consultant
Workflow, PPIM

SAP Australia
Level 1
168 Walker St.
North Sydney NSW 2060

M +61 412 390 267


E jocelyn.dart@sap.com

© SAP 2007-2008 / Page 94


Copyright 2007 - 2008 SAP AG
All rights reserved
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of
SAP AG. The information contained herein may be changed without prior notice.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software
vendors.
SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, Duet, Business ByDesign, ByDesign, PartnerEdge and other
SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP
AG in Germany and in several other countries all over the world. All other product and service names mentioned and associated
logos displayed are the trademarks of their respective companies. Data contained in this document serves informational
purposes only. National product specifications may vary.

The information in this document is proprietary to SAP. This document is a preliminary version and not subject to your license
agreement or any other agreement with SAP. This document contains only intended strategies, developments, and
functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product
strategy, and/or development. SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant
the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. This
document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties
of merchantability, fitness for a particular purpose, or non-infringement.
SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages
that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence.
The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you
may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages
nor provide any warranty whatsoever relating to third-party Web pages

© SAP 2007-2008 / Page 95

You might also like