Skip to Content
Author's profile photo Ginger Gatling

Understanding how UWL gets work items from backend systems

If you are reading this blog, you are probably familiar with UWL and how it renders work items from SAP Business Workflow. In SAP NetWeaver 2004s a new delta pull mechanism has been introduced. First we will review how UWL pulls work items from backend systems in SAP NetWeaver 2004, then we will discuss the changes in SAP NetWeaver 2004s. UWL pull from backend systems in SAP NetWeaver 2004

  • When UWL pulls backend systems, the work items are stored in UWL cache. This cache is refreshed every 5 minutes.
  • Assume a user logs in at 10:00 AM. Work items are pulled by user ID. The user logs out at 10:02 AM and back in at 10:04 AM. The second time the user logs a call to the backend will not be made since it is within the cache timeframe. However, if the user logs in at 10:06 AM, the backend call will occur.
  • Users can also force a manual refresh of their work items.
  • This behaviour works the same for all versions of SAP backend application systems.

UWL pull from backend systems in SAP NetWeaver 2004s

  • The pulling no longer occurs for each user ID, users are bundled for backend pulls.
  • The behavior for the pull is configured in the UWL system configuration. The following screen shot shows the new fields in the UWL configuration.

image The two new fields are Pull Channel Delta Refresh Period and Snaphsot Refresh Period. Pull Channel Delta Refresh Period determines how often we should check to see if new items have entered the users inbox. It defaults to 60 seconds. If it is set to 0 or a negative number, no delta pull takes place. Snapshort Refresh Period refers to how often we should retrieve all items from the backend system. If left blank or negative, all work items are retrieved each time the user logs in. We recommend that the snapshot refresh occurs once a day.

  • In order to use the new delta pull:
    • Your backend must also be on SAP NetWeaver 2004s. (I know this means it could be awhile before you can try this out, but the application backend must be running on SAP NetWeaver 2004s.)
    • Specific background jobs in your backend must be scheduled (see details below).
  • Major benefits for the delta pull include:
    • It no longer pulls data for each user ID, users are grouped. Fifty users are used for one pull, which results in fewer logins to the backend system.
    • Response time for the user is greatly improved since there is not backend pull that occurs each time the user logs in.
    • The user still has the option to do a manual refresh.

The new delta pull and the required background jobs are explained very well in the online help. The most important points are:

  • UWL_SERVICE is a user ID created on the portal for you. UWL_SERVICE must also exist on your backend sysetm.
  • UWL_SERVICE must the be user ID on the backend system that runs background job RSWNUWLSEL. The online help discusses the required variants.

Recently when I registered a SAP NetWeaver 2004s backend on my UWL I received the message: “System TE3CLNT800 is not configured for optimized delta pull. Check the uwl_service user configuration.” This message will appear if either the background jobs are not scheduled, or UWL cannot tell that the background jobs are scheduled. The message no longer appears once I ensure the background jobs are scheduled to run via the user id UWL_SERVICE and that user is mapped to my portal user ID UWL_SERVICE. This feature brings us a significant improvement with UWL performance. SAP NetWeaver 2004s is still in ramp-up; ramp-up will end later this year.

Assigned Tags

      31 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member
      As usual, you have cut to the heart of the matter and provided the core information that will help keep us customers out of trouble as we upgrade to NW04s.

      Thanks Ginger!

      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hi John,
      Looking forward to when you can give it a try!
      All the best,
      Ginger
      Author's profile photo Former Member
      Former Member
      UWL previously completed work items will auto cleared/refresh from UWL cache which takes approximately 6-10secs
      (with UWL green message:Waiting for Updates) upon user's next re-logon or re-logon on the next day.

      We would appreciate if any advise to fine tune it to achieve an automatic refresh of the Inbox IMMEDIATELY with latest ECC workitems (Without-Waiting for updates of ~6-10secs) upon user's next re-logon to the ESS.

      - NW 7.0 SPS13.
      - ECC 6.0

      Many thks in advance.

      Steven

      Author's profile photo Former Member
      Former Member
      Check the iview properties of UWL. There is a property related to this.
      Author's profile photo Former Member
      Former Member
      Is there a workaround or other way of disabling or changing the 5 minute refresh of the cache in NW2004?
      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hi David,
      In NW2004 in the UWL administration screen you can change the cache refresh time.  If you go to System Admin - UWL administration - there is a place to change it (it changes the refresh for all systems).  Here is the link in online help that shows you where to do this in NW04.
      http://help.sap.com/saphelp_nw04/helpdata/en/66/f8d29fcdff400b86cc51c1fba459c1/frameset.htm

      thanks
      Ginger

      Author's profile photo Former Member
      Former Member
      Hi,
      Nice to know functionality.
      Is there a way to pull workitem from nonSAP systems like peoplesoft in 2004S?

      Thanks,
      Abdul Raheem S

      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hello Abdul,
      We are currently piloting an API to get non-SAP tasks in UWL.  When it is available, it should be available beginning with NW04, SP14.  If you're interesting in the pilot, please send me an email with your name, company, how you would use the API, when you would like to start.  We're currently creating a list of interested customers. You can reach me at ginger.gatling@sap.com.  Thanks!
      Author's profile photo Former Member
      Former Member
      Hi Ginger,
      great to hear that SAP is prepared to publish this API, but are you sure that it is planned for NW04 SP14? It is already out, and SP15 also. Probably you were thinking of NW2004s? We are interested in UWL API-s from both sides, our management demands integration of heterogenous workflows in UWL and integration of UWL itself in other applications too.
      Regards,
      Pavol
      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hello Pavol,
      When the API is available, it will be available from NW04 SP14 onwards.  It will not require you to be on NW04s or SP15. 

      As far as delivery, I don't know which version it will be officially delivered with,  but I hope it will be released on SDN so you can download and use it as long as you are on SP14 or above.

      Regards
      Ginger

      Author's profile photo Former Member
      Former Member
      Hi Ginger,

      We are seeing the following issue in UWL:
      If a user opens an item on the UWL, uses the close button on the browser window to close it, and then opens another item on the UWL list, the new window still pops up the details of the previous work item. Do you know if this is also a cache refresh issue? What can we do to fix this?

      Thanks,
      Sudha

      Author's profile photo Former Member
      Former Member
      Hi,

      Good blog.

      We are implementing WD ABAP-WF for our current project.But we got a small issue, we got to determine the WORKITEM Number from Universal Worklist inside our WD Application,So is there any Standard ABAP Class which does the same?

      Or is there other way to achieve the same.

      Please ignore this query, if it is irrelevant to this topic.

      Regards
      Raja Sekhar

      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hello Raja,
      Try this blog:  Create new UI's for existing workflow tasks with ABAP Web Dynpro and Universal Worklist!

      It discusses how the work item ID is a parameter to the WD ABAP.
      -ginger

      Author's profile photo Dagfinn Parnas
      Dagfinn Parnas
      Hi Ginger,

      Thanks for all the informative blogs about UWL.

      One question I have is how this delta pull is done when you have a clustered EP environment? Since the cached data is stored in the portal database retrieval of allready cached data is no problem, but how can we avoid that the delta pull isn't done once for each application servers (we have many)?

      Regards
      Dagfinn

      Author's profile photo Former Member
      Former Member
      Hi, The cache is stored in the database and is transparent with portal or R/3 clustering.
      Regards
      Jay Kapadia
      Author's profile photo Former Member
      Former Member
      Hi Ginger, It was great to meet you in SAP TechEd in India. The problems we are facing (I discussed this we a session on last day in Vegas with you) is as follows:
      1) There are multiple instances of the delta pull job which keep on running on R/3. This kind of hogs our system. We raised a ticket to SAP and they told us to increase the heap size of the R/3 app servers.
      2) uwl_service user do not log off properly. So what started happening was, uwl_service used up all the dialog instances of R/3 server and server started hanging for other users.

      Can you please help us on this? Otherwise I think this job has helped us a lot in increasing the efficiency of our jobs.

      Regards
      Jay Kapadia

      Author's profile photo Former Member
      Former Member
      Hi Ginger, It was great to meet you in SAP TechEd in USA. The problems we are facing (I discussed this we a session on last day in Vegas with you) is as follows:
      1) There are multiple instances of the delta pull job which keep on running on R/3. This kind of hogs our system. We raised a ticket to SAP and they told us to increase the heap size of the R/3 app servers.
      2) uwl_service user do not log off properly. So what started happening was, uwl_service used up all the dialog instances of R/3 server and server started hanging for other users.

      Can you please help us on this? Otherwise I think this job has helped us a lot in increasing the efficiency of our jobs.

      Regards
      Jay Kapadia

      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hello Jay,
      Could you please enter a SAP ticket on this, and perhaps post it in the forum - I don't know why this is happening and I haven't seen it before...but that is only based on my experience.  Please do a note search, enter a ticket, and post it in the forum.  Sorry I haven't seen it yet.
      -ginger
      Author's profile photo Former Member
      Former Member
      Hi Ginger,
      SAP has given a note 1105696 which changes some code in the UWL delta pull job. We have applied and it seems to work quickly now.

      Regards
      Jay Kapadia

      Author's profile photo Former Member
      Former Member
      Hi All,

      I am having a problem with UWL performance.
      When user clicks on a work its taking 2-3 mts to open that and when user approves or rejects again its taking 2-3 mts time to point back to UWL. Lets say if I change my Default Cache Validity Period to 1min, I think it leads more performance degradation. Can anyone guide on how to improve performance.

      Regards
      Praveen

      Author's profile photo Former Member
      Former Member
      We have a requirement where in user requires the tasks of two backend users to be displayed at a time through portal.Is there any way to do so.pls advice.
      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hello,
      This is not possible and breaks the license agreement.   If the user needs two tasks at runtime, then you can use secondary methods inthe design of the workflow.  However, both actions are for the same user.
      Regards
      Ginger
      Author's profile photo Former Member
      Former Member
      Hi Ginger,

      I just jumped into UWL and then found this blog talking about how UWL is pulling work items from backend system. Here is my problem:

      In our application, an employee needs to update his profile and then release it. Upon profile release, a workflow is triggered and a work item (task) is created for his supervisor to approve/reject his profile. This work item then shows up in the supervisor's UWL.

      Now comes to the issue. Before the supervisor gets a chance to look at and approve/reject, the employee goes back to the profile and updates and releases it again. So a second work item is created for the supervisor to approve/reject, consequently, in supervisor's UWL, 2 identical work items are listed.

      Is there a way to show only one work item in this case? I am guessing the better way is to cancel the first workflow since we don't need it anymore. Otherwise, all 2 work items will stay until supervisor approve/reject both of them to end the workflows. Is my understaning right?

      Thanks,
      Li

      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hello Li
      Sorry for the late reply on this one.   Yes - you are correct, when the second workflow starts, it should either have a check condition to know if there is already a work item for the change, or obsolete the first workflow.   You could put this question in the BPM/workflow forum and get various options on how to do it.  If it is another instance of the actual workflow, then the start condition will do it.  The other topion is do have a fork in the current workflow to listen for the event "profile updated" - if that happens, then this workflow should be set to obsolete. 

      It kind of depends if the work item text is outdated, or if the text in the inbox would work and just link to the newest update for the supervisor to review.  It would probably be best to completely remove the first one and the one in the inbox is always tied to the last change.

      I hope this helps a little - please pop this in the forum for more details if you are not sure how to implement it.

      Best regards
      Ginger

      Author's profile photo Ginger Gatling
      Ginger Gatling
      Blog Post Author
      Hello Everyone,
      I just this information from someone working on delta pull in the UK:

      - Broadly follow the help in
      http://help.sap.com/saphelp_nw04s/helpdata/en/ad/d64842d59fb430e10000000a155106/frameset.htm
      But with the following additions:
      - schedule RSWNUWLSEL as you would if not using extended notifications
      - Set up the delta pull from the portal side of things
      - stop the RSWNUWLSEL jobs
      - Set up extended notifications and schedule SWN_SELSEN

      I will write a full blog on this at a later time.

      Author's profile photo Former Member
      Former Member
      Hi Ginger,

      I am not able to forward KM Notifications from one user to another . I am sorry for posting other topics but i am not able to find any topic which related to my isssue.

      Regards,
      Gurprit Bhatia

      Author's profile photo Former Member
      Former Member
      I have configured UWL in CE7.1 server. But when I open the Universal Worklist from HOME:
      I get following error:
      Exception type:com.sap.netweaver.bc.uwl.connect.ConnectorException Message:Fri Jun 27 15:50:43 IST 2008
      (Connector) :com.sap.portal.connectivity.destinations.PortalDestinationsServiceException:Could not get connection for alias EC2. Contact your system administrator.

      I am noe getting what the issue can be. Hope you can help me out.

      Author's profile photo Darren Hague
      Darren Hague
      Poonam,

      You should post this message in the Portal forums, where you will most certainly get a quick answer. Blog comments aren't really the place for problem solving. 🙂

      Best regards,
      Darren

      Author's profile photo Former Member
      Former Member
      Hi Ginger,

      We are currently using 

      R/3 SAP_BASIS  640     0014     SAPKB64014     SAP Basis Component;
      Portal Netweaver 2004s SP10

      We have setup the service_user in R/3 with background jobs running with that. Can you confirm whether the delta pull mechanism works with the above versions or not?
      We see the report RSWNUWLSEL also exists in R/3.

      Thanks..
      Rao

      Author's profile photo Former Member
      Former Member
      Hi Ginger,

      This is a very informative blog.  Are there any available guidelines/best practices for setting the "Number of Users per Pull Channel" parameter?

      Thanks,

      Mike Price

      Author's profile photo Former Member
      Former Member
      Hi Ginger,

      I have configured the delta pull and I can see the browser page refreshing but new tasks are not updated. The Delta pull jobs are running, full once a day, deltas are every minute.

      If I select the refresh button, the new tasks will be updated. Any suggestions? Thanks!