Each of the components you create in PeopleSoft has its own business case and user expectations behind it. You might want to allow user to save the pages for some components, in some cases it should be display only. There are scenarios where user coming into a component needs to go through the next or previous items listed in the search page without going back to the search page. Sometimes for some selected components user should be able to go back to the search page by clicking Return to Search button, but for some components it is not desired.
The question is how to enable or disable these buttons to the actual page which user sees. To address this scenario PeopleSoft has delivered some kind of facility by providing the options in the component properties in the Internet tab.
PeopleSoft Component Internet Properties
But these features may not be handy in all the scenarios. Enabling these properties will be static and will be applied across the components. What if you have a scenario where you have five pages in the component and you want to Enable the Save button for one page and not for the rest of the page?
document.getElementById("#ICSave").style.display = 'none';
Replace the code with the below piece of codes to hide other Tools delivered action buttons.
document.getElementById("#ICAdd").style.display = 'none';
document.getElementById("#ICUpdate").style.display = 'none';
Return To Search Button
document.getElementById("#ICList").style.visibility = "hidden";
document.getElementById("#ICSendNotify").style.visibility = "hidden";
Sometimes this page can be associated with multiple components and you want to hide the button in one component and not in another component. In such cases you can assign the HTML area to a record field and assign the HTML code dynamically using PeopleCode.
Even though you have these workarounds available, I advice to use it only if you do not have any other choice. Even if you use it, use this only for your Custom pages. If you modify the delivered page, it may impact your application support. The main drawback with this approach is, your page have a chance to get broken when you do a PeopleTools update or when you change your style sheets. As long as you have tested with your current page and the Tools release is going to be the same, you are somewhat in a safer zone.
So what are other safe options available? One option you can consider is to create your own custom buttons for Save, Add etc and disable the corresponding tools buttons from the component properties. Now you can hide or unhide these buttons using normal PeopleCode. But yes, this method comes with its own difficulty of writing the desired code for each of the functions to which the buttons are tagged. If you are planning to place these buttons on a delivered page, it is going to be considered as a customization and be aware of it.
I know this is not the end of the road. If you have any better alternative of achieving these functionalities, feel free to drop in your ideas in the comments section.