Creating Dynamic Page Content with Tiles

Last Updated: 07/18/2016 Introduced in Verision: 2.0

Note: this applies to the Decisions 3.2 and older versions.

Portal pages can display dynamic page content with the use of Tile components. Tiles can be placed on any portal page, but the content for each tile must generated by a flow. To display dynamic content, create a flow the outputs a Tile Return data object containing the content you would like to display. In the Page Designer, place a Tile component that corresponds to the type of Tile generated by your flow, then configure the Tile component to listen to your flow.

Example

In our example, we will replace the folder header data component of a Car folder’s Alternative View with a more succinct Tile display.

tileAdded

 

We will begin by creating the flow which will populate our Tile. We will navigate to a Designer folder and click the Create Flow button.

createFlow

 

In the resulting New Flow pop-up, we will name our flow “Get Car Tile” and click OK.

nameFlow

 

To get our Car data, this flow must be provided with the FolderId of the Car folder. When our Tile component uses this flow, it will provide the FolderId for us, but our flow must be configured to accept it. For this reason, we will begin by defining a flow input called FolderId with a type of String, and then click Save.

editInput

 

Next, we will use this FolderId to get the details of the Car folder. We will find the Get Car component in the Toolbox tab, under the category Integration > Folder Extension Data Structures > Car.

getCar

 

For the Get Car component, we will map FolderId to Id and rename the output to “Car”.

mapInput

 

Next, we will turn the details of our Car folder into HTML for display in our Tile. For this, we will use the Custom Merge [NVelocity] component. It can be found in the Toolbox tab, under the category Data > Text.

customMerge

 

In the Properties tab, we will define the inputs used by the Custom Merge [NVelocity] component. In the Merge Setup > Template field, we will type the HTML content of our Tile, using $FieldName syntax to define the dynamic variables in our Tile.

Once we’ve written our HTML, the Custom Merge [NVelocty] component will detect the dynamic variables in our template and create inputs into which we’ll map our Car’s data.

htmlTemplate

 

In the Mapping Editor, we will map the properties of our Car folder to the respective fields in our template.

mapVars

 

Next we will turn the HTML we’ve generated into a TileReturn object. We will find the Create Tile Return component in the Toolbox tab, under the category Communication > Dashboards.

tileReturn

 

In the Tile Setup section of the Properties tab, we will set Tile Type Name to TileHTMLText.

tileHTML

 

In the Mapping Editor, we will set the background color of our tile to white by setting the Color field’s mapping to type to Constant and selecting white in the Value selector. We will define the HTML content of our tile by mapping MergedString to HtmlText.

tileMap

 

In the end, we want this flow to output a TileReturn object for use in our portal page, so we will select the End Step and define an Output called “TileReturn” with a type of TileReturn.

outputTile

 

We will map the TileData output from our Create Tile Return component to the TileReturn output.

This will complete our flow, so we will save it and close the Flow Designer.

mapOutput

 

Next, we will display the output of our Get Car Tile flow. We will navigate to the location of our portal page: System > Common Data Elements > Folder Behavior Actions > Transportation.CarFolderBehavior. We will select the Alternate View page and click the Edit link to open it in the Page Designer.

editAltView

 

We will delete the Folder Header Data component and replace it with the Tile HTML component. We will find in the Toolbox tab, under the category Basic > Tiles.

addTileToPage

 

Next, we will define the flow which provides the content for our Tile. In the Flow To Execute section of the Properties tab, we will select the Get Car Tile flow.

pickTileFlow

 

This completes our changes to the Alternate View page, so we will save it and close the Page Designer.

savePage

 

When we navigate back to our Car folder and select the Alternate View, we will see our HTML displayed in a Tile where the folder header data once was.

tileAdded

 

Additional Resources