Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
troy_cronin2
Active Contributor

Introduction


A recommendation was recently put to me through an SCN Associate regarding the possibility of developing a blog posting which covers the Portal and the Context Navigation Panel (CNP). I believe covering a blog on this topic base is a great suggestion and can perhaps help offer additional insight into the "inner workings" behind the Enterprise Portal and the element containers which support it's overall functionality :cool: .



So what is the Context Navigation Panel?

The Context Navigation Panel is also referred to on some occasions as the Contextual Navigation Panel and the CNP for short. All three naming references are in association to the same instrument container on the Enterprise Portal. As we know with different complex Netweaver environments different naming references and abbreviations can cause a great deal of confusion therefore to keeps things in perspective in this instance we can draw all three names to the same element.

  • The Context Navigation Panel (CNP) is essentially a configuration container displaying navigation nodes within the Enterprise Portal (EP) and is holstered within the DTN within the left hand column of the Portal UI.
  • As a default standard the Contextual Navigation Panel displays all Workcenter Roles.
  • You can consider the Contextual Navigation Panel as the means through which Roles are displayed to end-users in the Detailed Level Navigation.

Roles displayed by Default?

As mentioned above as a standard the Context Navigation Panel (CNP) presents users with Workcenter Roles without the requirement of any pre-configuration.

  • Workcenter Roles are essentially the context navigation units in association to the Enterprise Portal. In layman's terms end-users interact with such navigation units through the form of pages/iViews, worksets, folders, and documentation units.
  • There are two types of roles in association to the Context Navigation Panel (CNP) which are (1) Workcenter Roles & (2) Freestyle roles.
  • A Workcenter Roles shares common trains with that of a freestyle role although Workcenter Roles are primarily utilized to define and conjoin Portal interaction and layout in accordance to business requirements.
  • Freestyles Roles as the name suggests are in true essence are more flexible and free willed in scope.


Creating & Editing Workcenter Roles: (Determines What Will Appear in the Navigation Panel)

Remember


  • The default setting of the CNP means that all Workcenter Roles are displayed within the navigation panel without any additional reconfiguration.

Context Navigation Panel Vs Detailed Navigation iView

The means in which Workcenter Roles are displayed to users by default is through the CNP (Contextual Navigation Panel). If required you can change this approach of display to to the "Detailed Navigation iView".

  1. Login to the portal from desktop.
  2. http://<host>:<port>/portal
  3. Navigate to the "Ajax Framework Page".
  4. Within the "Ajax Detailed Navigation" iView in the Ajax Framework Page.
  5. Locate the "Navigation Panel Mode" property setting.
  6. Set the parameter to "Always Use Detailed Navigation iView".

You can perform this check and review via the path below:

  • PCD Path: pcd:portal_content/every_user/general/defaultAjaxframeworkContent/com.sap.portal.AFPpage

Configuration changes determine the way in which content elements is presented to our Portal Users and the means of which such presentation is defined is dependent on user preference and business requirements. The Navigation Panel (in which the CNP/DTN) operate contains Navigation iViews which operate based on the information displayed within the Portal Content Area.

  • The Navigation iView will only appear if it is handling content assigned to a users task.

Important

When creating a content that contains navigation nodes with the same merge priority, same sort priority and even the same node name, it can on some occasions cause inconsistent nodes ordering because that the order in this situation depends on what will be the node order in query result from the database and this result changes from query to query.


Customizing the Display?


As with any Portal protocol that involves editing/creation, careful planning and diligence is required. After all we do not want to create themes which contribute negatively in terms of aesthetic appeal to the overall look and feel of the Enterprise Portal.


So you have taken the decision to go and create a custom theme using the Theme Editor. Through utilization of the Theme Editor you are able to create multiple themes for all Portal Users. Each theme you create (custom theme) is based upon a SAP Standard Theme template with which you tailor the visual elements to meet your own organizational business requirements.


The CNP & Navigation Panel is of no difference and you may need to perform some customizing in order to tailor the display to your liking.


For example you might want to change the color coding, background images or general balance of display.


  • Adjusting these parameters requires a knowledge of how the specific parameters are mapped to Runtime Stylesheet definitions

Some elements of the DTN itself are composed of PNG images which means they are separate parts from the one entire background of Detailed Navigation Pane.

To clarify the AFP DTN is rendered using images, so you can brand it by replacing the images rather than setting background colours (this gives the more attractive 3-D style to the AFP). For instance, you can set the background image for a selected item using the 'URL to Background Image of Down State of Item' element in the 'Outer Frame of AJAX Framework Page' > 'Detailed Navigation' area.

Regarding the Ajax Framework Page itself in true essence it is nested above normal portal Outer Frame which means you have to do 'TLN' and 'DTN' customizing against 'Outer Frame of AJAX Framework Page' instead of 'Portal Outer Frame'.

As per our product design, the Ajax Framework Page 'DTN' is rendered using images, so you can ONLY brand it by replacing the images rather than setting background colours.


Issues With Branding (Customizing e.g. Color Changes)


You should be able to achieve the desired look and feel by modifying the theme parameter using the Update Customer Portal Theme Parameters tool - this allows adjusting of theme parameters that are not exposed in the theme editor.

  1. Navigate to Support > Support Desk > Update Customer Portal Theme Parameters.
  2. From the drop down menu labeled 'Browser' choose 'default'.
  3. From the drop down menu labeled 'Parameter' choose 'AFPDtnTextColor'
  4. After choosing a parameter all themes that can be adjusted appear below the parameter.
  5. After you have adjusted all neccessary parameters press "Set Value" and "Save and Generate".
  6. If the changes do not become visible immediately, delete the browser cache, open the theme you have adjusted in the theme editor and press there "SAVE" too.

  • The primary point of analysis here is to locate the correct theme class.


For the AJAX setup the relevant parameters are:


  • AFPDtnSubViewItemNormal,
  • AFPDtnSubViewItemHoverColor,
  • AFPDtnSubViewItemDownColor.


Removing the Contextual Navigation Panel?

You can indeed removed the Contextual Navigation Panel if better suited to your business requirements and operational setup.

  • Through Removing the 'Contextual Navigation Panel' value from 'Navigation Panel Mode' within the DTN you remove the subsequent display from the Ajax Framework Page (AFP).

Are you missing Roles?

On some occasions problematic scenarios can arise with the CNP which can relate to missing role types or invalid displays in terms of levels and entry points.

If this behavior is noted in your system environment there are a few methods of analysis to follow to try and eliminate potential root sources and pinpoint the exact cause of the issue.

Firstly especially in the case of a recently performed upgrade check the following:

  • Is the issue occurring for each and every user/in all Web Browser Platforms?
  • Is the scenario reproducible in all Portal Theme/Framework combinations?

Now after performing the analysis steps outlined above and you still find the Portal Roles are missing we need to dig a little deeper to identify the root source.

If you have recently performed an upgrade and jumped significantly in terms of versions e.g. 7.0 -> 7.4 check whether the old navigation cache is disabled.

  • Open the browser and navigate to: http://host:port/irj/servlet/prt/portal/prtroot/com.sap.portal.navigation.service.NavigationCacheMonitor
  • If the "Cache" property is displayed as enabled,
  • Open the Administrator setup and navigate to: Global Configuration -> Server -> com.sap.portal.prt.sapj2ee.prt
  • Set the portal.navigation.cache.enable property to false
  • Save the modification (click in on update and on the "Floppy" button).
  • Restart the cluster.
  • System administration >> system configuration >> services >> application com.sap.portal.navigation.service use.hashed.urls >> Set to " false "
  • System administration  >> cache management >> navigation cache >> clear

In the case of an upgrade next in order to check file synchronization has been successful you can follow SAP Note: 710663 to set the bootstrap properties to FORCE in order to force a file synch. The bootstrap module of J2EE Engine 6.30/6.40/7.0 is responsible for keeping the file system files up to date with all the updates performed in the database. It has one functional property that should be modified in order to achieve different goals on the system. The property's name is: element.resynch

  • The properties file for the bootstrap process is located under : <j2ee-home>\cluster\bootstrap\bootstrap.properties
  • Set to this property to:  force - totally ignores the local pre-computed values and recalculates all the local hashes from the files themselves. Any kind of change made on the binaries of the installation will be immediately detected and reverted. This mode runs slower than the default behavior and is most suitable for cleanup after any unattended modifications on the binaries.

Troubleshooting Reference Documentation: