Blueprint Channels are not loaded when accessed through another channel
search cancel

Blueprint Channels are not loaded when accessed through another channel

book

Article ID: 422349

calendar_today

Updated On:

Products

Clarity PPM On Premise Clarity PPM SaaS

Issue/Introduction

Blueprint Channels are not loaded when accessed through another channel
 
STEPS TO REPRODUCE:
  1. Go to MUX > Administration > Blueprints
  2. Create an Investment Hierarchy blueprint
    • Name: Standard Investment Hierarchy with Projects channel
  3.  Add a channel to the Projects Grid
    • Channel URL: /pm/#/projects/common?puiFullscreen=on&puiHidePPMTabs=on
  4. MUX Hierarchies > Create a Hierarchy and link it to the blueprint above
  5. Certify that the channel works
    • Note URL: http://myClarityURL/pm/#/hierarchy/5001002/investments/channel/5001000
  6. Go to Classic PPM > Studio > Objects > Page object
  7. Create a string type attribute with max size of 2000:
    • Name: Page ID
    • Attribute ID: o_page_id
    • API Attribute ID: o_page_id
  8. Go to MUX > Administration > Blueprints
  9. Create a Page blueprint and add a channel
    • Name: Page to hierarchies
    • Channel URL: /pm/#/${o_page_id}?puiFullscreen=on
  10. MUX Pages > Add the Page Id and Blueprint fields to the grid
    • Link the page to the blueprint created
    • Populate the Page ID with the resulting hierarchy on Step5: hierarchy/5001002/investments/channel/5001000
  11. Open the page and go to the channel
  12. The Step 5 hierarchy tabs are loaded
  13. Navigate through the tabs
Expected Results: All tabs load correctly
Actual results: Other tabs than the channel load. Channel tab is blank

Environment

Clarity 16.3.1 to 16.4.0

Cause

This was analyzed by Engineering through DE180165

Resolution

The Engineering team resolved this as being the intended design.

When the browser sees same or similar URLs being opened in an iframe, it blocks the iframe page to avoid the risk of infinite recursion. Refer the official doc (Infinite Recursion section) for more information.

As a workaround we can pass a query parameter on one of the iframes (channels) so that the browser thinks they are sufficiently different from one another

Use the following channel URL instead of the one set at Step3 on the Steps to Reproduce above:

/pm/?a=1#/projects/common?puiFullscreen=on&puiHidePPMTabs=on 

The change made is passing a query parameter (a=1) before the # in the URL.

The Engineering team does not endorse opening channels within channels.