SAP Customer Connection for SAP Workflow
Thanks to the "SAP Customer Connection for SAP NetWeaver Workflow 2015" program last year, dozens of improvements have been collected, evaluated and largely accepted by SAP. During the past months, some of these improvements have been made available via OSS notes .
At the last webinar on the status of the program it was reported that more SAP Workflow improvements can be expected. It was stated that SAP Workflow is the standard tool for automating procedures. This remains the case in S/4HANA.
What is the SAP Customer Connection program ?
The SAP Customer Connection program is a program aimed at improving SAP products and solutions. It offers SAP customers the opportunity to suggest improvements and optimizations. These proposed improvements are assessed and implemented by SAP and released as notes and support packages.
The program is structured through focus areas with input being sought from the member focus groups within SAP user groups and communities.
The immediate goal of the program is to collect so-called improvement proposals (Improvement Requests or IRs) from user organizations to get gradual and continuous improvement of existing products. The desire is to achieve this with as much customer input as possible. The results are assessed for feasibility and desirability and be made available as soon as possible via SAP Notes and Service & Enhancement Packages.
The kick-off of the program took place on February 13, 2015. Afterwards the improvement requests were collected and evaluated and the selected IRs were developed. On August 27, 2015, the results of the selection were shared by the SAP team, after which a part of the improvements have been made available progressively. On January 11, 2016 some of the improvements were explained. The explanations by IR have been added to the underlying text.
Of the 90 submitted proposals for improvement 72 are qualified. Of qualified improvement proposals after review by SAP in the end 31 were selected and are realized in the short term. These 31 improvement proposals are discussed in this document.
Completed proposals for improvement
This section discusses the improvement requests (IRs) short listed in the official description.
D8590 - Add a counter to the sub folders in the workplace
Description: The users want to know how many work items they have in each folder (for a task) in the workflow inbox. In the current situation only the number for the entire inbox is shown. The number of work items can give important information about a process. If for instance the number increases rapidly, there may be a problem in a process and action has to be taken. When the number of work items is visible, the information is available at a glance.
D8581 - Increase the number of lines in the condition editor
Status: Delivered via note 2185487
Description: Currently the workflow condition editor has only 2 lines in the bottom of the editor for writing the conditions in, this makes editing or viewing the conditions difficult. We can go to a more detailed editor, but the default editor is not so bad, simply increase the box at the bottom to 4 lines, or if you are filling generous maybe even 5.
D8578 - Extend event linkage for forward navigation on function modules
Status: Delivered via note 2185723
Description: On the maintenance in SWETYPV for an event type coupling a double click / F2 should lead to the SE37 of the maintained function module.
D8542 - Allow WF Administrators and developer to forward work items to themselves.
Status: Delivered via note 2188631
Description: Allow the customer to have a global setting 'Allow WF Admin to forward to self' (or something like that) so that the workflow developers and administrators don't have to go to elaborate measures to execute a work item. In SAP GUI applications, this is not so hard. You can drill down into the work item, choose change, and execute. The problem is in environments where work items are delivered to the Portal (UWL, Fiori, whatever).
D8438 - Add workflow version to the Where-Used list
Status: Delivered via 2201971
Description: When you want to know in which workflow-definitions a specific single task is used (to change e.g. the binding), you can use the ‘where-used’ button. However the result is all workflow-definitions no matter what version. It would be nice to have some kind of indication to show whether or not the task is used in the latest workflow version.
D8404 - Automatic alignment of the workflow model
Status: Delivered via note 2201454
Description: When a workflow model is viewed it usually looks messy. With the Align option the appearance can be improved. The alignment should be done automatically when viewing a model.
D8351 - No default generation of elements in the workflow container
Status: Delivered via note 2200416
Description: When a new standard task is added in a workflow step, the system proposes to create elements in the workflow container, based on the task container elements, and to bind these. This is almost never desirable. However, because this is default it is often done by accident or by inexperienced workflow consultants, leading to garbage in the container. The request is to make the generation of elements in the workflow container not default anymore or to make it dependent on a user parameter.
D8339 - Admin: Debugging-mode for background tasks
Status: Delivered via note 2197117
Description: The SWUS transaction should be enhanced with a switch, so that a particular single-step work item execution halts for debugging in background mode. For example a breakpoint option that allows tRFC debugging in the execution context. It is usually sufficient to provide such a feature on a single-test basis and not throughout a complete workflow execution.
D8301 - Chronological View in Technical Log as a User Setting
Status: Delivered via note 2188655
Description: The technical WF log always defaults into Tree View and there is no way to configure to default to the alternative Chronological View. In my opinion the Chronological View is far more practical and useful and it's frustrating to always have to switch. Please make this a user setting
D8299 - Provide a BAPI to control Forwarding
Description: Provide a BAPI to control / validate the agents to which a work item can be forwarded. The only options are "general forwarding" or "forwarding to Possible agents". Often forwarding should be restricted to within Company Code or within Financial approval band etc.
D8258 - SWEL Default Layout
Status: Delivered via note 2203647
Description: In SWEL for some reason the 'Default setting' checkbox is greyed out & it would help save time if it was enabled to go right to the Layout I mostly use every time.
D8242 - Workflow Builder: Enhanced container operations
Status: Delivered via note 2188696
Description: Nearly on every larger workflow implementation I need some string or table operations, where I'm in the need to provide a background method or functional method to work with it. They're usually generic, so I can copy & paste some of the coding, but sometimes it'd be just easier not to provide some coding.1. String concatenation with variable separator (CONCATENATE s1 s2 INTO result [SEPARATED BY separator]) 2. Retrieve the number of lines in an internal table (DESCRIBE TABLE itab LINES n) 3. Retrieve the length of a given string (n = STRLEN( s1 )) 4. Composing lines of an internal table into a single character string, i.e. CONCATENATE LINES OF itab INTO s. 5. Decomposing a characters string with separator into itab, i.e. SPLIT s AT c INTO TABLE itab.
D7991 - WAPI support for decision with automatic note
Status: Delivered via note 1964571
Description: Latest version of decision task (TS00008267) includes support to make adding a note to a particular decision required. Unfortunately the Workflow API's (WAPI's) have not been enhanced to support this. There is no standard method to identify decisions that require notes, nor to include a note with a decision from the WAPI's. See comments on attached post.
D7782 - Shortcut to the admin options from the workflow log/swia/task display
Status: Delivered via note 2186821
Description: In order to go to the workflow administration options from the log we need to go to the task display -> go to -> technical work item display -> edit -> change. A shortcut from SWIA/logs/task display(and no, the current 'ctrl +shift +F6' is not short and only goes halfway ) will be very useful and save time and effort from the workflow admin (especially after some system error when you sometimes have to do multiple corrections)
D7689 - Display the event who canceled the workflow in the logs
Status: Delivered via note 2200908
Description: Being able to set a cancel by event in the workflow header is a very useful option, it saves space on the DB and wakes the workflow templates easier to read (less need for forks) however during runtime if a workflow is canceled by en event there is no clear display of this in the workflow logs. We request that the cancellation will be displayed clearly in the log. (add a flag with the option to do so in the workflow template) This will also be useful for regular wait for events steps (although for these the problem can be bypassed).
D7688 - Workflow notifications admin SWNADMIN/SWNCONFIG - enable sending by user groups
Status: Delivered via note 2202595
Description: Currently subscriptions in the workflow extended notifications can only be sent to all users or to a specific user, enable the subscription to be set to a user group (SUGR) or by the users of an authorization.
D7539 - Send mail step error when no recipients
Status: Delivered via note 2250126
Description: If there are no recipients to a send mail step (or the mail notification options of a regular task) it will set the workflow to error status and will not continue to the next step. However in most cases the mail is not a process stopper and the workflow should continue to the next approver even if the mail was not sent. do not set the workflow to error and simply skip the step or enable determining the behavior in the send mail step of the workflow builder (a check box - "skip sending if no recipients" with the default set to skip).
D7534 - G.O.S workflow overview auto refresh
Status: Delivered via note 2184630
Description: When returning to the global object services screen after going to the regular log the data is not refreshed, this could lead to errors since the user is viewing out of date data if a change was made when he/she were viewing the log automatically refresh the screen when returning will solve this issue.
D7525 - Version management for SWO1 BOR editor
Status: Delivered via note 2249861
Description: The only way to get version management for the business object is to take the program name and go to transaction SE38, not like regular ABAP code. I would like to request that the utilities -> version -> version management will be enabled in the BOR editor, the same as in the regular ABAP editor.
D7522 - Enable WF-Admin to be specified (via SWU3) to a rule or responsibility
Status: Delivered via note 2191614
Description: Customers at SAP TechEd generally agreed that they use the 'User' selection when specifying a WF Admin through SWu3. They don't use jobs, positions, or work centers (or heaven forbid, org units).The flexibility to use a specific Role (PFAC), Rule, or responsibility would give great flexibility to customers.
Approved, not yet completed improvement proposals
The following proposals for improvement have been identified and agreed to be released in the short term.
D8331 - Facilitate 'Advance with dialog' even when there are background steps in between
Description: Often a dialog step is followed by a background step and then a dialog step again for the same user. Currently the user has to go back to the inbox to select the new work item, because 'Advance with dialog' is only possible when dialog steps follow each other. It would be helpful for the user when advancing with dialog is also possible after a background step.
D8241 - Workflow Builder: More integration of ABAP Objects implementation
Description: I have summarized some ABAP Objects integration into SAP Business Workflow: 1. A static functional method call in container operation doesn't raise a warning message, when used incorrectly. The expression Z_CL_TOOLBOX=>concatenate( iv_s1 = &CHAR1& iv_s2 = &CHAR2& ) is syntactically correct (no message), but the executions runs into an internal dump, as there's no instance in used, but only a class-based one. 2. Excluded Agents cannot be set with a functional method, only plain container element allowed. This should be enhanced to functional methods, too.3. A workflow that acts as a template for various subtypes must reference to a full ABAP class only, although the class design would require an abstract class.4. There's a dummy constructor call during the workflow editor, when container-operations are entered to an ABAP Class. This prevents other meaningful concepts, when a public constructor is required. This calls should be completely removed from the Workflow Builder, so that an ABAP Class with a private constructor can be used5. Interfaces that include the IF_WORKFLOW interfaces cannot be fully used, yet, although the LPOR( ) call would had to return the real class instance. So a later instantiation won't be a problem then. Having no interfaces available restricts the Class hierarchy, as basically interfaces cannot be fully used, and multiple inheritance is not present, the Workflow-related class hierarchy tend to get very deeply.6. In the event type coupling, the receiver-FM and check-FM should also call an instance method of the affected class, to the check can be included into the ABAP Class, instead of separating that coding from a function group.7. A system-wide delegation is not implemented as known with the BOR workflows: This is a missing feature when working with workflows at a larger scale (like > 4 production systems, where you'd need some special cases implemented for some target systems). Although the class hierarchy could offer a sub-typing, it is somewhat difficult to bring in the subtype to Workflow, as the type is specified upon event creation, which is usually hard-coded at some place. For that matter, I've implemented delegation in a singleton concept, based on a generic FIND_BY_LPOR() implementation. Within that method, FIND_BY_LPOR will switch to a dynamic class instantiation, once a customizing entry on an ABAP Class delegation was found. This is working fine, but such functionality should be available in the SAP Standard as well, as it is a common pain point.8. A workflow singleton design pattern should be provided by a default implementation.
D8217 - Make all functional modules of SAP-WAPI interface 'released for customer'
Description: Since the FM's are part of official recommended SAP Workflow interface, it would be appropriate release status for these FM's. It would also simplify getting support for SAP WAPI issues.
D7988 - Allow Shortcut of Transaction being send from send mail step
Description: Allow Shortcut of Transaction being send from send mail step. An example can be the PO is approved and The notification user wishes to see the PO by hitting a shortcut to SAP. The same thing will be very useful for Escalation message where we send a reminder that a work item is in your Inbox.
D7681 - Update the display of the decision task
Description: The decision tasks user screen has not been updated since it's creation which I think was 1996 and it shows! This screen is a main work tool for a lot of process in the organization and usually it’s the major/heavy users who work in the ECC that use it. The decisions are displayed by button spread all over the screen, there is no way to display tables and there isn't even a BADI or a user exit to change the display (there is a BADI only for the preview screen).Although there is an option to approve via mail and/or the new FIORI applications but they are for a different type of users: managers, once in a while users etc.
D7666 - Show the approver name in all the workflow log
Description: The approver name (actual agent) is displayed in the G.O.S display and the preview in the workflow outbox, however it is not displayed in the regular and technical logs (shows only the work item creator name). Please show it in all the logs.
D7665 - Enable the WF_SUBSTITUTE BADI for SAP business workplace
Description: The WF_SUBSTITUTE BADI is a very good way for restricting the substitution of users, however it is only used by the SAP WAPIs, Enable the use of the BADI in the SAP business workplace as well.
D7532 - Multiple Substitutions for the same user but different substitution profiles
Description: Currently it isn’t possible to assign substitution to the same user using different substitution profiles. E.g. a customer has 6 Substitution Profiles. If an employee goes on vacation, it is currently only possible to assign exactly ONE of them to 6 different people, OR assign all 6 to the same person.
D7523 - Add a date type dynamic column in the business workplace
Description: The only current options are – leave the field in date form dd.mm.yyyy which can't be sorted or change the display to yyyymmdd which looks strange to the users. I find it difficult to explain to the users that such a powerful tool as SAP workflow cannot sort a field by date format. We request that a date / time dynamic column will be added to the display.
D7519 - Event Linkage switch to prohibit multiple workflows
Description: Many customers have to resort to Check Functions or extra steps in their workflows because there is no simple way to prohibit multiple workflows from kicking off on the same object/event combo. Add a switch to the Event Linkage table which says 'Prohibit multiple workflow instances' and have this switch perform the task of calling SAP_WAPI_WORKITEMS_TO_OBJECT and mark linkage in yellow if the event/object pair try to fire multiple times.
D7515 - Add logging of substitutes
Description: There is a log in the system for almost everything: entering a work item, completing it, forwarding it etc., but no log for entering the work item as a substitute. And there is no log of the substitution creation/deletion and by whom. Sometimes a user asks why user 'A' did the task when he is not the person responsible to do it, and the answer is that it's because he entered as a substitute of the person responsible but there is no log in the system and if the substitution was deleted there might be no way of knowing the reason. We request that entering a work item as a substitute will be logged.
For questions or additional information on this topic please contact us.