Restricting substitution in UWL
Hi All
I learnt that the BADI WF_SUBSTITUTES can be used to modify the substitution parameters entered by the user in UWL.
However had some questions :
1) Should this BADI be coded in SRM or Portal side?
2) SAP has provided a standard implementation via class CL_EXM_IM_WF_SUBSTITUTE.
However when I set my debug point in this class & carried out substitution in Portal UWL, the code didn't stop.
So where exactly is this BADI is getting called.
Thanks
Kedar
Hi Kedar,
When testing the scenario please use the same user for the portal & backend. Set an External breakpoint in the BADi code and then open the portal and test.
Does this work?
Regards,
Eddie
Similar Messages
-
Dear.
I have the following doubt with the Manage Substitution Rules UWL :
Is posible have a rule in where Only some WF should go to the inbox of the substitute?
Ie. The Boss have process of Workfow of modules OM, TV, PA, PY that arrives at UWL, and the boss only need delegate to the substitute only the item for the process of WF of PY and PA for a date.
How can solve this?
RegardsYes there is something called Task classification!
You can do so via filtering or classification of tasks
read here
You will need to enable the support information in order to get the
associated task number that corresponds to the backend task.
If you wish to hide certain tasks, the easiest way to do it is to
redirect the task type that you want to hide to some unused item type.
You can create your own XML file and give
each task number its own entry in the XML
They each need to be given a different item type name. They can't
all be directed into the same item type since there would be
multiple conflicting definitions for that item type in the file.
No view definition is needed, you can just give it a garbage
defaultView name (HiddenView).
I have attached an example for you in the attachment area. This is
stored as a text file. Also,
Where you see the following:
systemId="<YOURSID>" externalType="<YOURTASK>" in the XML, this
obviously needs to be replaced with your sid and your task id which
you are looking to exclude.
For ex
For example, if it is the following task pasted below:
<ItemType name="uwl.task.webflow.TS01000096.SAP_R3_MUS"
connector="WebFlowConnector" defaultView="DefaultView"
defaultAction="launchSAPAction" executionMode="default">
If you were trying to hide this, you would write it in the XML file
as follows:
<ItemTypes>
<ItemType name="uwl.someHiddenType1"
connector="WebFlowConnector" defaultView="HiddenView">
<ItemTypeCriteria systemId="SAP_R3_MUS"
externalType="TS01000096" connector="WebFlowConnector"/>
</ItemType>
***************And for the next one:*********************
<ItemType name="uwl.someHiddenType2" connector="WebFlowConnector"
defaultView="HiddenView">
<ItemTypeCriteria systemId="SAP_R3_MUS"
externalType="TS01000097"
connector="WebFlowConnector"/>
</ItemType>
Classification
You can arrange tasks and workflows into various classes within the SAP
System. The classes professional, personal and disciplinary are
standard. The system checks the task class under the field name
TASK_CLASS in the authorization object S_WF_WI. This system uses this
authorization object to check the authorization for carrying out
specific actions on particular work items. The assignment of tasks to
classes is also important in the definition of substitutes. You can
also define that only those classes are displayed which refer to tasks
or workflows of a particular class. Take this into account when you
create new classes and assign tasks or workflows to the classes.
You can set this classification via:
SPRO
=> IMG
=> Basis Components
=> Business Management
=> SAP Business Workflow
=> Basic Settings
=> Maintain Task Classes.
Once the classification has been added as above you can then add this to
your task. Goto PFTS => Enter task ID => Change Mode => Menu: Addition
data => Classification.
See SAP online help at:
http://help.sap.
com/saphelp_nw70/helpdata/en/c5/e4b5eb453d11d189430000e829fbbd/framese
t.htm
[2] Substitute Profile
You can define one or more substitutes for working with the Business
Workplace. The authorizations of a substitute are determined by the
substitute profile which you assign to him/her when you set up the
substitution. A substitute profile comprises specific task classes.
Task classes describe individual tasks or standard tasks. This
assignment is made in the task definition. A user you have specified
can then log on as your substitute. "Your" work items are displayed to
the substitute in their Business Workplace with the restrictions
resulting from their substitute profile.
You can set the substitution profile via:
SPRO
=> IMG
=> Basis Components
=> Business Management
=> SAP Business Workflow
=> Basic Settings
=> Substitute Profile
=> Define Substitute Profile
or
See SAP online help at:
http://help.sap.
com/saphelp_nw70/helpdata/en/c5/e4b5eb453d11d189430000e829fbbd/framese
t.htm -
Error while activating substitue in UWL
Hello again,
I created a substitue profil "ESS" and a task classification "LEAVE".
I also assigned the classification "LEAVE" to the substitute profil "ESS".
Via TX pftc I made the task TS 12300097 (Approval Process) a "General Task" with classification "LEAVE".
When I switch on the substitution profil "ESS" in the UWL on portal side, I get the following error message:
System: AdhocSystem | Status:failed | Message: System does not support these tasks.
We are using SAP ECC 6.04 and the NetWeaver Portal.
Thank you.did you check these steps
You can arrange tasks and workflows into various classes within the SAP
System. The classes professional, personal and disciplinary are
standard. The system checks the task class under the field name
TASK_CLASS in the authorization object S_WF_WI. This system uses this
authorization object to check the authorization for carrying out
specific actions on particular work items. The assignment of tasks to
classes is also important in the definition of substitutes. You can
also define that only those classes are displayed which refer to tasks
or workflows of a particular class. Take this into account when you
create new classes and assign tasks or workflows to the classes.
You can set this classification via:
SPRO
=> IMG
=> Basis Components
=> Business Management
=> SAP Business Workflow
=> Basic Settings
=> Maintain Task Classes.
Once the classification has been added as above you can then add this to
your task. Goto PFTS => Enter task ID => Change Mode => Menu: Addition
data => Classification.
See SAP online help at:
http://help.sap.
com/saphelp_nw70/helpdata/en/c5/e4b5eb453d11d189430000e829fbbd/framese
t.htm
[2] Substitute Profile
You can define one or more substitutes for working with the Business
Workplace. The authorizations of a substitute are determined by the
substitute profile which you assign to him/her when you set up the
substitution. A substitute profile comprises specific task classes.
Task classes describe individual tasks or standard tasks. This
assignment is made in the task definition. A user you have specified
can then log on as your substitute. "Your" work items are displayed to
the substitute in their Business Workplace with the restrictions
resulting from their substitute profile.
You can set the substitution profile via:
SPRO
=> IMG
=> Basis Components
=> Business Management
=> SAP Business Workflow
=> Basic Settings
=> Substitute Profile
=> Define Substitute Profile
or
See SAP online help at:
http://help.sap.
com/saphelp_nw70/helpdata/en/c5/e4b5eb453d11d189430000e829fbbd/framese
t.htm -
Substitution in UWL from SPS12
Hi,
As SAP Mentioned that the User Substitution feature is availanle from SPS12 for KMC.
And as per the note of UWL they says for details to refer the End User Guide.
But there is no info about how to enable the substitution feature and also no clue in the Existing UWL Iviews.
Did any one tried to do the Substitution feature enabling in the Latest Patch of UWL?
Thanks & Regards
SumanthHi Raj,
Thanks for the info.
Actually we are also seeing the Manage Substitution Button ( After removing my Custom XML Files for field ordering and removing the tabs ).
But when we try to create the Substitution Rules we are getting the following message
"No system could activate this substitution rule."
And when i click the status link i am getting the follwing message as
UWL Substitution Status
Substitution Status
System Status Message
DEVCLNT100 Failed System does not support substitution methods
DEVCLNT100 is our Development System.
and with the following message
An error has occurred:
"Failed to process the request."
Please contact your system administrator.
Hide details
Web Dynpro client:
HTML Client
Web Dynpro client capabilities:
User agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322), version: null, DOM version: null, client type: msie6, client type profile: ie6, ActiveX: enabled, Cookies: enabled, Frames: enabled, Java applets: enabled, JavaScript: enabled, Tables: enabled, VB Script: enabled
Web Dynpro runtime:
Vendor: SAP, Build ID: 6.4012.00.0000.20050509073444.0000 (release=630_VAL_REL, buildtime=2005-05-09:20:05:04[UTC], changelist=346209, host=PWDFM026)
Web Dynpro code generators of DC sap.com/tckmcbc.uwl.ui~wd_ui:
SapDictionaryGenerationCore: 7.0000.00.0000.20050303175554.0000 (release=645_SP_REL, buildtime=2005-03-03:22:40:56[UTC], changelist=332622, host=PWDFM078.wdf.sap.corp)
SapMetamodelWebDynpro: 7.0000.00.0000.20050303183430.0000 (release=645_SP_REL, buildtime=2005-03-03:22:43:39[UTC], changelist=332697, host=PWDFM078.wdf.sap.corp)
SapMetamodelCore: 7.0000.00.0000.20050303175944.0000 (release=645_SP_REL, buildtime=2005-03-03:22:34:07[UTC], changelist=332637, host=PWDFM078.wdf.sap.corp)
SapWebDynproGenerationTemplates: 7.0000.00.0000.20050303183602.0000 (release=645_SP_REL, buildtime=2005-03-03:23:08:13[UTC], changelist=332723, host=pwdfm078)
SapWebDynproGenerationCTemplates: 7.0000.00.0000.20050303183602.0000 (release=645_SP_REL, buildtime=2005-03-03:23:08:13[UTC], changelist=332723, host=pwdfm078)
SapGenerationFrameworkCore: 7.0000.00.0000.20041227150042.0000 (release=645_SP_REL, buildtime=2005-03-03:22:33:33[UTC], changelist=316765, host=PWDFM078.wdf.sap.corp)
SapIdeWebDynproCheckLayer: 7.0000.00.0000.20050303183052.0000 (release=645_SP_REL, buildtime=2005-03-03:22:46:59[UTC], changelist=332684, host=PWDFM078.wdf.sap.corp)
SapMetamodelDictionary: 7.0000.00.0000.20041227150019.0000 (release=645_SP_REL, buildtime=2005-03-03:22:38:32[UTC], changelist=316761, host=PWDFM078.wdf.sap.corp)
SapMetamodelCommon: 7.0000.00.0000.20050303175944.0000 (release=645_SP_REL, buildtime=2005-03-03:22:34:15[UTC], changelist=332637, host=PWDFM078.wdf.sap.corp)
SapWebDynproGenerationCore: 7.0000.00.0000.20050303183052.0000 (release=645_SP_REL, buildtime=2005-03-03:22:47:19[UTC], changelist=332684, host=PWDFM078.wdf.sap.corp)
SapDictionaryGenerationTemplates: (unknown)
Web Dynpro code generators of DC sap.com/tcwddispwda:
No information available
Web Dynpro code generators of DC sap.com/tcwdcorecomp:
No information available
J2EE Engine:
6.40 patchlevel 89291.313
Java VM:
Java HotSpot(TM) Server VM, version: 1.4.2_08-b03, vendor: Sun Microsystems Inc.
Operating system:
Windows 2003, version: 5.2, architecture: x86
Error stacktrace:
java.lang.NullPointerException
at com.sap.netweaver.bc.uwl.ui.subst.SubstitutionStatus.onActionCloseWindow(SubstitutionStatus.java:208)
at com.sap.netweaver.bc.uwl.ui.subst.wdp.InternalSubstitutionStatus.wdInvokeEventHandler(InternalSubstitutionStatus.java:188)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.handleAction(WebDynproMainTask.java:101)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.handleActionEvent(WebDynproMainTask.java:304)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:649)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:252)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:55)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:392)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:345)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:323)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:865)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:240)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:159)
I am still investigating the problem. If you have any idea please let me know.
Thanks & Regards
Sumanth -
Maximum Number of Substitutions in UWL
What is the maxium number of substitutions you can set in the Universal Worklist?
Thanks
WBHi,
If a substitution works as a Dynamic iView, then the max number is 7.
Check : [Configuring iView Properties (in UWL Configuration Wizard)|https://help.sap.com/saphelp_nwce10/helpdata/en/0a/ad68c125ae496f8c04a25090bd2e3c/frameset.htm]
Cheers,
Remi -
Utility of Manage Substitution in UWL.
Hi,
What is the utility of the Manage Sustitution option in the UWL iview, why is this used?
I am getting a message.
" Substitution rule is not defined in the system" for a system when i click the Manage Subsitution.
Any clue, please advise.Hi ,
Through Substitution functionality in UWL , users can choose other people to fill in for them while they are on leave or ill.
on choosing a substitute , all the orginal user's tasks will appear in substitute worklist .
Manage Substitution rule is an feature available on context menu of UWL for original users to set up substitution.
Please refer following links
Re: Substitution in MSS
http://help.sap.com/erp2005_ehp_03/helpdata/EN/0b/1fc20097b74c41b38621ec2a9454bb/content.htm
also, search in portal and ERP Employee sef service forums for more information .
hope this helps .
Thanks,
Sahiba -
Removal of substitutions from UWL
Hi all,
I'm having problems with removing substitutions from the UWL. We are using a batch program that runs once a day and deletes certain substitutions (e.g. does that are not assigned to valid managers) from the table HRUS_D2.
My problem is that these substitutions remain visible in the UWL. I have checked the functions that are used by the UWL
-SAP_WAPI_SUBSTITUTES_GET
-SAP_WAPI_SUBSTITUTES_MAINTAIN
-SAP_WAPI_SUBSTITUTIONS_GET
but these only seem to check the table HRUS_D2. Is there any other place where the created substitutions are stored that I am not considering?
Thanks for your reply,
Freek van de GriendtHi Freek
You may want to take a look at OSS note 1020669.
Regards
K -
Send email (to MS Outlook) after substitution in UWL
Hi
We are using UWL on Portal for our workflows. We are using EP 7.0 (2004s) and ECC 6.0.
Our requirement is:
We should be sending an email to MS Outlook of the new user (substitute/delegate) when a substitution rule is created.
Can anyone help us with this requirement?
Regards,
AdityaHi,
Once the substitution done you will get the entry in the Table HRUS_D2. I think in the UWL you can configure to send email once you got entry in the table (not sure), check with EP Consultant.
If That is not working write a custom program, to send email to the substituted person based on the "From Date" entry in the HRUS_D2. Then schedule that program in background, once in a day if there is entry for today that program has to pick the user id and get the email id and send to the respective person via your custom mail sending program.
Regard,
Surjith -
Issue with Substitution in UWL
Hi Friends,
I have a problem with the substitution rules within the EP7.0 (our back end system is ECC6.0).
I have created a substitution rule and have set it active.
When I have a look later on to the management of substitution rules, i always get an error message: "Problems reported (repairable)" --> "Substitution rule is not defined in the system" . When I push "retry" the substitution rule is successfully registered again.
But the next time when I have a look onto it, i get the same error message.
What could be the issue. Please advice.
Regards,Hi,
Check the below link,
1) [Substitution|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/707439da-ead9-2910-5c97-af6ca0b6fbb1]
2) [User Substitution Utility |https://wiki.sdn.sap.com/wiki/x/0j0 ]
Regards,
Surjith -
Authorizations for substitution using UWL in MSS
Hi Experts,
We use substitution in universal Work list via the portal, and SAP has supplied an authorisation object S_WF_SUBST, which should mean that the substitute don't need the manager roles and structural profiles of the user who creates the substitution.
Do any of you have experience with this ?
Regards
CarstenHi,
Yes, SAP does not stop you from receiving substituted tasks. But you can put your own validations using BADIs.
See below link for more details.
http://learnhrabap.blogspot.com/2010/08/delegation-or-substitute-functionality.html -
How UWL support substitution in multiple backend scenario?
Hello experts,
We are using UWL with multiple backend - 3 ERPs. If I define a substitution rule in portal, I think this rule will be replicated in all the 3 ERPs otherwise my substitute in the backend could not get my work items in UWL. Is it correct? Do you have more information about this topic?
thank you for your help in advance!
Best Regards,
HuaiyangDear Huaiyang,
You are right, if you have multiple systems connected to UWL , then substitution set via UWL has been entered in all systems.
However it is not possible to restrict substition settings to a particular system. If the user set a substitution via UWL, then it will be set in all connected system as well. UWL set the substitution at backend level in the normal substituion table HRUS_D2.
Hope this helps.
BR
Richard -
Java.lang.NullPointerException in UWL Manage Substitutions application
Hi SDN,
I am using the standard application for Manage Substitutions. (Application is sap.com/tckmcbc.uwl.ui~wd_ui - UWLSubstitution)
When I try to create Rule using this application, and try to search for a nominee using the search, I am getting a java.lang.NullPointerException.
Can any one suggest on what I am missing ?
Thank You,
Raj
The trace is :
java.lang.NullPointerException
at com.sap.netweaver.kmc.people.wdpicker.PeoplePickerView.getContentLink(PeoplePickerView.java:643)
at com.sap.netweaver.kmc.people.wdpicker.PeopleFinderSingleView.search(PeopleFinderSingleView.java:601)
at com.sap.netweaver.kmc.people.wdpicker.PeopleFinderSingleView.onActionSearch(PeopleFinderSingleView.java:332)
at com.sap.netweaver.kmc.people.wdpicker.wdp.InternalPeopleFinderSingleView.wdInvokeEventHandler(InternalPeopleFinderSingleView.java:217)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335) ......Dear Raj
Pls go through below thread. It looks like your your issue
Substitution in UWL from SPS12
Thanks
Keshari -
BADI Workflow substitution - restrictions customization
Hello Friends,
I am currently working on a workflow approval migration Project on SAP ECC 6.0
I am trying to customize substitution process.
> I need to enforce end validity date while users are assigning substitutes.
> Based on activity groups/roles , I need to restrict substitution assignment.
End users would use : SBWP
and IT team would use RH_SUBSTITUTES_LIST program to maintain substitutes.
please suggest how this can be acheived .
Does a BADI implementation related to : WF_SUBSTITUTE would work ?
Or is there a BADI more appropriate for RH_SUBSTITUTES_LIST ?
thanks for your inputs.
Raghu V -
Assistance needed with Substitution customisation
I am currently working on a workflow approval migration Project on SAP ECC 6.0 ,trying to customize substitution process.
I need to enforce end validity date while users are assigning substitutes and based on activity groups/roles , I need to restrict substitution assignment.
End users would use : SBWP and IT team would use RH_SUBSTITUTES_LIST program to maintain substitutes.
I am not able to find a relevant BADI/user exit for the same .I tried WF_SUBSTITUTE ,but its only for UWL.
Please advice.
thanks
Raghu VI thought my request was rejected, I know i was posting a similar question which was asked earlier , But nobody had confirmed whether standard code modification was the only option .
However , I am proceeding to modify the standard code now .
Solution : I am modifying the Include : LRHW2I01 ( part of the RHW2 function group) to restrict validity end date for a particular substitution profile and a check to ensure the substitute has enough authorizations. -
Hi
Is substitution possible in MSS? we are in EP6. If so can someone tell what would be estimate time to set up substituion in MSS? Our client don't want direct access to Business Workplace.
Any hint would be greatly appreciated.
Thanks
Nashsubstitution possible in MSS
Hope you are mentioning workflow substitution.
You can perform substitution from UWL directly using "Manage Substitution" option. The option is available as a menu in the UWL itself (I think in older release it was a separate button).
Thanks,
Prasath N
Maybe you are looking for
-
Late 2011 17 Inch MacBook Pro Not Booting, Three Beeps When I hold "C"
my late 2011 mbp 17 inch will not boot. In safe mode with verbose it stops at the point looking for my hard drive. Disk utility in single user mode said the SSD has "keys out of order" and could not verify disk etc. However when I hold "c" aka tryi
-
How to keep an image "in place" within a document using Pages?
Here's what I want solved. When I position an image (like a jPeg photo) within a document I take a great amount of care as to how it looks in the layout. BUT, if I add a new line of text ABOVE the image, all the text moves, but the image stays in pla
-
Illustrator CC crashes after seconds while using InDesign CC
Hello, I have serious problems with Illustrator CC. I work on both a Mac (no problems at all) and Windows (problem occurs with Windows 8 and 8.1). I think it was since updating Illustrator that I can't use Illustrator in combination with InDesign any
-
POST Installation steps for SAP XI 7.0 SP06
Hi Experts , We are trying to install XI 7.0 SP06.We are suppose to carry out post installation steps but we are not able to locate a proper post installation guide for the same. We have succesfully installed XI 3.0 earlier .However XI 7.0 post inst
-
Is there any chance that Lightroom 2 might be able to read the proprietary changes that Capture NX2 writes into the Nikon NEF files? These two programs greatly substitute each other.