As delivered, the 'Add to' functionality - Add to Homepage, Add to NavBar, Add to Favorites, which is available in the New User Interface (NUI) is all or nothing. That is how it works as designed in PeopleTools.
What this means is that, we cannot simply remove access to 'Add to Homepage...' while allowing access to 'Add to NavBar' and/or 'Add to Favorites'. Basically there is no granularity in the security access. The access to the 'Add to' functionality is mainly controlled via the following weblib from a security point of view:
WEBLIB_PTNUI.PT_BUTTON_PIN.FieldFormula.IScript_SavePin
Note: There are some other configurations that may impact the display of the 'Add to' options. Refer MOS Doc ID 1983068.1 for more details.
My Oracle Support Reference Documents
E-FLUID: How To Restrict Users From Adding Homepages or Tiles in Fluid Homepages (Doc ID 1983068.1)
Bug 26290030: THE ADD TO FUNCTIONALITY NEEDS ENHANCEMENT
Clearly, this is not ideal. I worked on a requirement recently to decouple the security for the 'Add to' functionality. This also seems to be a common request among other PeopleSoft customers as well. For example: https://community.oracle.com/message/14937074#14937074
Here are the steps to decouple the 'Add to' functionality.
Step 1: Create a custom weblib
The IScripts in this custom weblib are primarily for dummy purposes. We can see that there is no code in the IScript.
PeopleCode Snippet for Reference:
Step 2: Update IScript_ShowPinMenu
This customization will take care of the 'Add to' functionality in Classic.
PeopleCode Snippet for Reference
Step 3: Update PT_HEADERPAGE.Activate (Page PeopleCode)
This customization will take care of the 'Add to' functionality in Fluid.
PeopleCode Snippet for Reference
Step 4: Security Configuration
Provide Full Access to the following delivered IScripts:
WEBLIB_PTNUI.PT_BUTTON_PIN.FieldFormula.IScript_ShowPinMenu
WEBLIB_PTNUI.PT_BUTTON_PIN.FieldFormula.IScript_SavePin
This is to provide the delivered 'all or nothing' access to the delivered 'Add to' functionality.
Now we are ready to control the decoupled 'Add to' functionality using the custom weblibs. We can selectively provide granular access to the following custom weblibs based on our requirements.
Add to Homepage: WEBLIB_CSK_PIN.ISCRIPT1.FieldFormula.IScript_AddToHomepage
Add to NavBar: WEBLIB_CSK_PIN.ISCRIPT1.FieldFormula.IScript_AddToNavBar
Add to Favorites: WEBLIB_CSK_PIN.ISCRIPT1.FieldFormula.IScript_AddToFavorites
In the example below, I am choosing to provide access to 'Add to NavBar' and 'Add to Favorites' but not to 'Add to Homepage'.
Results
Fluid Page:
Classic Page:
Environment Details
- HCM 9.2 PUM Image 25
- PeopleTools 8.56.05
What this means is that, we cannot simply remove access to 'Add to Homepage...' while allowing access to 'Add to NavBar' and/or 'Add to Favorites'. Basically there is no granularity in the security access. The access to the 'Add to' functionality is mainly controlled via the following weblib from a security point of view:
WEBLIB_PTNUI.PT_BUTTON_PIN.FieldFormula.IScript_SavePin
Note: There are some other configurations that may impact the display of the 'Add to' options. Refer MOS Doc ID 1983068.1 for more details.
My Oracle Support Reference Documents
E-FLUID: How To Restrict Users From Adding Homepages or Tiles in Fluid Homepages (Doc ID 1983068.1)
Bug 26290030: THE ADD TO FUNCTIONALITY NEEDS ENHANCEMENT
Clearly, this is not ideal. I worked on a requirement recently to decouple the security for the 'Add to' functionality. This also seems to be a common request among other PeopleSoft customers as well. For example: https://community.oracle.com/message/14937074#14937074
Here are the steps to decouple the 'Add to' functionality.
Step 1: Create a custom weblib
The IScripts in this custom weblib are primarily for dummy purposes. We can see that there is no code in the IScript.
PeopleCode Snippet for Reference:
Step 2: Update IScript_ShowPinMenu
This customization will take care of the 'Add to' functionality in Classic.
PeopleCode Snippet for Reference
Step 3: Update PT_HEADERPAGE.Activate (Page PeopleCode)
This customization will take care of the 'Add to' functionality in Fluid.
PeopleCode Snippet for Reference
Step 4: Security Configuration
Provide Full Access to the following delivered IScripts:
WEBLIB_PTNUI.PT_BUTTON_PIN.FieldFormula.IScript_ShowPinMenu
WEBLIB_PTNUI.PT_BUTTON_PIN.FieldFormula.IScript_SavePin
This is to provide the delivered 'all or nothing' access to the delivered 'Add to' functionality.
Now we are ready to control the decoupled 'Add to' functionality using the custom weblibs. We can selectively provide granular access to the following custom weblibs based on our requirements.
Add to Homepage: WEBLIB_CSK_PIN.ISCRIPT1.FieldFormula.IScript_AddToHomepage
Add to NavBar: WEBLIB_CSK_PIN.ISCRIPT1.FieldFormula.IScript_AddToNavBar
Add to Favorites: WEBLIB_CSK_PIN.ISCRIPT1.FieldFormula.IScript_AddToFavorites
In the example below, I am choosing to provide access to 'Add to NavBar' and 'Add to Favorites' but not to 'Add to Homepage'.
Results
Fluid Page:
Classic Page:
Environment Details
- HCM 9.2 PUM Image 25
- PeopleTools 8.56.05
Hi Sasank,
ReplyDeleteAre you leading any session in Open World this year? Really enjoyed your presentation last year.
Hi Wendy - Thanks!. Unfortunately, no. I am not attending OpenWorld this year. Hope to make it next year.
DeleteI may be presenting a webinar in November via Quest. I will share the link once it is confirmed.
Ok Sasank, looking forward to the webinar and hope to see your session next Open World.
DeleteWendy - Here is the link to the webinar I will be presenting in November.
Deletehttps://questoraclecommunity.org/events/sig-meetings-calls/technology-sig-meeting-life-hacks-for-psft-fluid/
Hey Sasank,
ReplyDeleteIs there any way to add my favourite queries into the MyFav in fluid via code dynamically?
Great question. Here is a way I implemented a solution for this requirement:
Deletehttps://pe0ples0ft.blogspot.com/2019/06/psquery-as-favorites.html
Sasank,
ReplyDeleteQuestion: I added a new icon to the 9.2 FLuid Banner using a prvious post of yours (PT_HEADERPAGE) customization.
However I did not know how to add it to the DEFAULT_FLUID_HEADER for the banner for classic pages. Is that done via Define Header and Footer elements for a Theme?
Thank you.
@JeanneV - That is right. You will have to add it the 'Header Definition' for a similar customization to appear in Classic.
DeleteHere is a screenshot of the node in the tree structure that you will need to update depending on where you want to add your customization.
Also, can you share a link to the PT_HEEADERPAGE customization that you used for Fluid? I might be able to find an equivalent post for Classic (if I have one on that topic).
Forgot to add the link to the screenshot: https://snag.gy/CpyP0h.jpg
DeleteDoes this work in PeopleTools 8.57? Do you have to bounce the web and app server after making the update?
ReplyDeleteYes. This should work in PT 8.57 also. I have not tried it.
DeleteAre you running into any issues? You may require a bounce of the app server if the security is not reflecting.