Showing posts with label Tile Wizard. Show all posts
Showing posts with label Tile Wizard. Show all posts

Tuesday, January 11, 2022

Hiding Tiles

At a conference several years ago, a friend and I were discussing PeopleSoft Fluid. Fluid was new at the time, so my friend was sharing his vision for making Fluid better. One of his ideas was to dynamically hide tiles. For example, if an employee has an Onboarding event, show the onboarding tile. Likewise, if a student has holds or "To Do's," then show a tile. I thought this was a fantastic idea and came up with a few ways to make this happen. If you are using PeopleTools 8.54 through 8.58, here are some options:

  • Use Dynamic Role Rules to add/remove a role that grants access to the target tile. This is the easiest approach and the most adopted method for dynamic access to tiles. For this to work properly, a tile should be marked as required.
  • Use Event Mapping to hide a tile. The PeopleSoft tile homepage is a cleverly formatted Fluid DIV Grid. Each tile represents one row in a grid. Through PageActivate Event Mapping, we can selectively show or hide rows by setting a row's Visible property. As you iterate over the list of rows, evaluate criteria and set the row's visbility accordingly.

What about 8.59? Why did I recommend these strategies for 8.58 and earlier and not 8.59? There is a new PeopleTools 8.59 feature that lets you configure a tile's visibility. Tammy Boyles from Oracle Product Management shared about how HCM uses this new feature last month. Here are the steps:

  1. Create an App Class that extends PTGP_APPCLASS_TILE:API:TileAppFilter.
  2. Put your conditional logic in the IsTileVisible method, returning True to show or False to hide.
  3. Add the content reference attribute TILEAPPFILTER to your tile's content reference.
  4. Open the appropriate homepage content reference and mark the tile as required.

Once you configure a TILEAPPFILTER attribute, the tile will no longer show in the "Personalize Homepage" list of available tiles, so users may no longer add or remove this tile. Therefore, a tile that has a TILEAPPFILTER attribute must be marked as required.

Do you want to see an example? Join us on November 18th, 2021 for Configuration Day 2021 to see this and many other new 8.59 features in action.

At JSMpros, we teach PeopleTools topics like this every week. In fact, this specific topic is part of our continuously updated Configure, Don't Customize course. Be sure to check out our website for more information about this and many other PeopleTools topics.

Wednesday, April 15, 2020

Fluid Navigation Collection Tile Parameters

The Fluid navigation paradigm starts with role-based homepages and usually finishes with business process-based tiles. And, the most common way to build a business process-based tile is with a Navigation Collection published through Tile Wizard. Now I'm going to ask a question with an obvious answer. OK, so here goes, Do you build them in Dev, Test, or Production? And, I'm sure you answered, "Development, of course." Nicely done! What about migration? Here's the really cool thing: Navigation Collections are just portal registry structures, so we can migrate them just like any content reference: add them to a project. I've seen several comments and posts discussing this.

Now, perform a quick search for PTPPB_GROUPLET. Did you find anything interesting? Here, let me summarize: PTPPB_GROUPLET is an ADS used to migrate Tile Wizard metadata. Next question: Do you need to migrate Navigation Collection Tile Wizard metadata? There is a bit of debate around this one, but the real answer is: It depends. Many Tile Wizard data types depend on Tile Wizard metadata at runtime, but Navigation Collections do not. Tile Wizard is just a tool we use to create the Navigation Collection's content reference. A Navigation Collection Tile Wizard tile is actually processed through a special Activity Guide template, not through a Tile Wizard runtime. So to answer the question, no, you don't need to migrate Navigation Collection Tile Wizard metadata for a Navigation Collection Tile to work properly.

I'm going to ask you another question: Do you think you might want to use Tile Wizard to maintain your Navigation Collection tile? If yes, then you may want to think about migrating Navigation Collection Tiles through PTPPB_GROUPLET. Why? Most of us periodically copy Production over Dev. If we want our Dev resources to persist, we must migrate them to production. Otherwise, we'll lose the ability to maintain Tile Wizard metadata post copy. So no, you don't need to copy Navigation Collection Tile Wizard metadata for Navigation Collection tiles to work. But Yes, you should copy Tile Wizard metadata if you want to be able to maintain your Navigation Collections going forward.

OK, so maybe it is too late, and you now find yourself with Navigation Collection Tiles with no Tile Wizard metadata. Can you still maintain them? While reviewing CS PUM 16, I found myself in this exact situation. It appears that CS includes several Navigation Collection tiles in a "demo" category, but no Tile Wizard metadata. Fortunately, all Navigation Collection Tile metadata is stored with the content reference. All we have to do is manually update the content reference. Here is a list of the parameters, values, and descriptions of each. First, let's start with a sample content reference Portal URL:

c/NUI_FRAMEWORK.PT_AGSTARTPAGE_NUI.GBL?CONTEXTIDPARAMS=TEMPLATE_ID:PTPPNAVCOL&scname=ADMN_TILE_ADMINISTRATION&PanelCollapsible=Y&PTPPB_GROUPLET_ID=JSM_TILE_MAINT&CRefName=ADMN_NAVCOLL_1

This URL starts pretty normal, listing the Fluid Activity guide component as the starting point. Next, like any Activity Guide, we see the Activity Guide template ID. Everything after that is the domain of the Tile Wizard. Here is a list of URL attributes we can change to alter the behavior of our Navigation Collection tile:

TEMPLATE_ID
PTPPNAVCOL for "optimized" and PTPPNONOPT for "non-optimized"
scname
Navigation Collection ID (the real "name", a folder CREF ID)
PanelCollapsible
Y: Include the collapsible button beside the left panel.

The rest of the URL doesn't seem to matter.

Each week, you can find Jim Marion teaching a PeopleTools class somewhere on planet earth. Register for one of his upcoming classes at jsmpros.com.