PeopleSoft applications support passing parameters in the URL for a given component so that you can pop someone directly into a purchase order, employee record, etc. This is tied directly into how row level security works in PeopleSoft, except that row level security is tied to the fields in a record that are flagged as unique keys, while search processing is tied to the fields that are flagged as search fieldsin the record definition in Application Designer.
However there are times when you want to pass in additional parameters. This could be either from some particular business use case (e.g. delivered page shows all detail, but sometimes you want to limit that) or even the case where the delivered page does not use regular row level security, but instead rolls it’s own, along with a bunch of search fields at level 0. The PeopleTools Process Monitor page is a good example of this, along with a good chunk of Financials.
The trick is to use the %Request object in PeopleCode to check if there are additional parameters that have been sent on the URL. If so, then take action appropriately.
Put something like this in your component’s Prebuild event or even on the page Activate event for the page that you’re working with.
Local String &sMyValue = %Request.GetParameter("myvalue");
If All(&sMyValue) Then
rem Do something with &sMyValue - like filtering the data on the page;
Keep in mind that, depending on where you place this logic, the default component processor logic may have already run.
Also, keep in mind that the %Request object is only valid during processing of online pages. It does not work when you call a component from a component interface.