Quantcast
Channel: SCN : Blog List - SAP Enterprise Portal
Viewing all 334 articles
Browse latest View live

EP: You have configured a Portal Activity Report & Page Hits are not recorded.

$
0
0

Background: The portal activity report mechanism is a great tool to obtain monitoring information for analyze and overview purposes across EP. In this instance you are using a configured Activity Report in the Enterprise Portal (EP) and notice the report findings are not displaying all of the pages that have been visited.


Overview:  Although the Portal pages were indeed visited, only one/two page hits are subsequently recorded and displayed in the report listing.


Version Backdrop: SAP NW 7.31 and Enterprise Portal 7.31

 

Reports Configuration + Revisiting Setup:  Navigate to the Service Configuration Editor. From the top-level navigation, choose System Administration -> System Configuration. In the detailed navigation, choose Service Configuration. The Service Configuration Editor is displayed. Open the configuration page for the data collection service. In the Portal Catalog, navigate to Applications > com.sap.portal/activityreport.core -> Services -> ActivityReport. Go to “Customer Activity Reports” -> “Daily Activity Report by Page”.


PAR.png


Why are the page hits not recorded? The correct Page Properties have not been defined.

 

How do we ensure these properties are corrected?  Open the Portal Activity Report configuration settings. Locate and find the Page Property labelled 'User Hits'. The default value in the system is set to 'No' and in order for the report to capture and record Page Hits the property should be changed to 'Yes'. Change the Property to 'Yes' as required and save. Reproduce the scenario and run the report again to see the new report.

 



EP: Work Protect Mode popup causes second tab

$
0
0

Background:  When you are navigating and performing actions in the Enterprise Portal (EP) you notice that the upon selecting "ok" on the Work Protect Mode popup, the application is opened in a second tab.

 

Overview:  The first tab from the previous step selection is still active in edit mode and the actions performed in this previous step result in that record continuing to be locked by the user.

 

screesnhot lad.jpg

 

 

Sample Scenario:  Login into the portal from desktop. http://<host>:<port>/portal Select an application Make a change but do not save (such as Purchase Requisition Message). Click on another tab The following message is shown: Your current page contains unsaved data. Do you want to continue with navigation and open a new window? OK or Cancel. Click OK - the application is opened in a second tab, the first tab remains active in edit mode and that record continues to be locked by the user.

 

 

Area of Interest: SAP NW Portal

 

Why: The Work Protect Mode options displayed in the popup are determined by the configurations maintained in the EPCF Service.

 

Overcoming this:  Go to: System Administration -> System Configuration -> Service Configuration -> Applications -> com.sap.portal.epcf.loader - > Services -> epcfloader. Set Workprotect.mode.default to one of the following values which suits the scenario requirement: (a) Protect unsaved data (open page in new window) (b) Discard unsaved data (open page in same window (c) Choose action in popup on unsaved data. Click on save.Right click on com.sap.portal.epcf.loader. Click on refresh.

How to set DOCTYPE on customized logon page EP 7.3, 7.4

$
0
0

After applying this instruction Customizing Logon Page on Portal 7.3 to customize logon screen you may need

to add specific doctype to logon page JSP or reset it's head.


This post describes how to set DOCTYPE on customized logon page in SAP EP 7.3,7.4,

clear html head, remove html body class etc.

 

Step 1. You will need some classes (fig.1), provided by SAP team to manipulate html elements.

You can find class EnhancedPortalResponse in "com.sapconsulting.portal.utils.html_api.jar" file which is packaged in Ajax Framework sample code available for download from SDN Code Exchange ([Ajax Framework Sample code|https://cw.sdn.sap.com/cw/groups/sap-portal-ajax-framework?view=overview]).

 

For more info about this jar please, refer to 4.1.1 Create a Portal Application in this guide http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/001bfa1a-958e-2e10-c2be-d914f673e21e?overridelayout=t…

 

fig.1 Standart SAP classes for HTML manipulation.

 

Step 2. Assuming that you have that custom component, there is still a question, how to instantiate EnhancedPortalResponse object on portal logon

JSP in login web-module. My suggestion is to use reflection. You will need next imports on JSP (clsses that we have created in step1) (fig.2):

fig.2 Logon web-module JSP imports.


Step 3. Add custom code to logonPage.jsp as in example on fig.3


fig.3 Code to set doctype, reset head, add some html elements.


A brief description about what goes on fig 3:

On line 12 we get class of an object that wraps EP runtime ordinary servlet request.

If user enters portal by adress  like HOST:PORT/irj/portal the type of this wrapper object will will be

com.sap.portal.prt.util.PortalServletRequestWrapper, but if user enters direct link e.g. to nwa : HOST:PORT/nwa, this object will be of other type (in our case we dont deep-cudtomize HOST:PORT/nwa logon page, justshow simple logon page for administrators without deep customization

so I will not describe how to get EnhancedPortalResponse in this situation)

 

Next on line 14 we get method of that wrapper object PortalServletRequestWrapper, make it accesible on 15 line, and invoke that method to recieve IPortalComponentRequest object.

 

Next on line 18 we invoke EnhancedPortalResponse constructor wich gets IPortalComponentRequest object as a parameter, and on lines 19-25 we are working with html head (resetting it, creating IE=edge meta tag, setDocTypeToXhtml10Transitional and even adding bootstrap.css).

 

Here you can find other examples of using EnhancedPortalResponse for html content manipulation http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/001bfa1a-958e-2e10-c2be-d914f673e21e?overridelayout=t…

 

Please, ask me in comments if you have questions about how to find SAP framework classes or what decompiler I used in this example etc.

EP: Attempting to change the Wording & Buttons of the Work Protect Mode Popup

$
0
0

Background: When you are navigating and performing actions in the Enterprise Portal (EP) you notice that the rendering of the message and the buttons contained within the Work Protect popup is different amongst web browser platforms.

 

Note: The issue occurs alongside the use of the Internet Explorer (IE), Chrome or the Firefox Web Browser Platforms.

 

screesnhot lad.jpg


Backdrop: SAP NW & Enterprise Portal

 

How the issue occurs: Login into the portal from desktop. http://<host>:<port>/portal Navigate to Configuration Management->Infrastructure->Application Modules. In the Module List select the WebModule "com.sap.portal.epcf.loader", then display its details.In the Web Module Details select the "Components"-tab and then search for "epcfloader" (Portal Service). When displaying Full Details for these portal services, you get following properties available (you may need scroll down): workprotect.mode.default, workprotect.mode.personalize, workprotect.window.features, workprotect.popup.layout (as of 7.0 EhP1 and 7.1 EhP1). Upon selecting the "workprotect.popup.layout" property which defines the layout of the WorkProtect Popup there are limitations for this property which prevent you from configuring a constant display amongst various web browser platforms.


 

11111.png

 

2.png

 

Why this occurs: The portal uses an OS API to display the browser specific popup.

 

Pointers on potentially changing the layout:  You can tailor the popup window size and features via customizations properties within the WebModule "com.sap.portal.epcf.loader".  In terms of customizing the WorkProtectMode's Wording and Buttons there is a limitation to the amount of tailoring which can be performed as from a graphical standpoint the presentation of the popup comes down to the Browsers interpretation.

EP: Web Dynpro Java applications appear to be created as a page instead of an iView

$
0
0

Background:  You have migrated a Web Dynpro Java application to version Netweaver 730 or higher.

 

Overview: When viewing the corresponding Web Dydnpro Java iView in the Portal Content Catalogue, this appears to be a Web Dynpro Page.

 

Affected Areas: NW 7.30+ & the Enterprise Portal

 

Seeing this behavior:  Logon to the Enterprise Portal.Navigate to Content Administration -> Portal Content Management -> Portal Content.Navigate to Web Dynpro Java Applications -> Java Application.Select the application for which you intend to create the iView.Copy the object and select ‘Paste as PCD Object’ to the required folder. The object appears as a Web Dynpro Page rather than an iView.

 

CK1.PNGCK2.PNG

 

Why:  From Netweaver 730 onwards the concept for Web Dynpro iViews has changed. They are now known as Web Dynpro Application Pages. The runtime behaviour is identical to that of the old Web Dynpro iViews. The icon representing the new Web Dynpro Application Pages now resemble more a page than an iView.

 

Note: As the functionality is the same for the new Web Dynpro Application Pages, you should use them in the same manner as per previous releases.

EP: KM Email links incorrect after System Copy

$
0
0

Background: After System Copy, email links generated from Knowledge Management (KM) are pointing to incorrect Portal URL.

 

Breakdown: This behaviour may affect links generated through the following functionalities: SendTo Mail, Notification Emails & Approval Emails.


Area Backdrop: EP Release Independent, SAP NetWeaver, SAP Composition Environment, Knowledge Management Content Management

 

Reproducing Scenario: Perform System Copy of the Enterprise Portal. Use any KM functionality which results in the sending of an email link pointing to a KM resource (subscription, approval workflow, etc). Link generated in email is pointing to original Portal URL instead of copy.

 

Why:  URL's for applications and various KM functionalities are constructed using various components including resource URIs, system addresses, and paths specified in the configuration of the URL Generator Service. While many of the properties in the service are configured to default values, the host parameter is unique to each Portal environment. This should be pointing to the Fully Qualified Domain Name (FQDN) of the Portal. After a System Copy this property will still be pointing to the FQDN of the source system and needs to be updated.


The Resolution:  Navigate to System Administration -> System Configuration -> Knowledge Management -> Content Management. Select -> Global Services. Select -> Show Advanced Options. Select -> URL Generator Service. Click -> Edit.  Set <Host> Parameter to the Fully Qualified Domain Name (Host Name + Port) of your Portal. Save changes.


kelly kba.PNG

EP: Issue with Collaboration Integration for SAP Netweaver EP 7.3 and higher

$
0
0

Background: Upon attempting to "Integrate Collaboration for SAP NetWeaver" in your system and SAP Netweaver Portal enviornment you encounter an issue with the loading operation of the collaboration portal room and profiles.

 

Error:   You encounter the error exception 'Error in communication with Collaboration room API ' when trying to load the profiles.


Backdrop:  SAP NetWeaver 7.30 & SAP NetWeaver 7.3X


Steps to Reproduce the scenario:  Login to the portal from desktop (http://<host>:<port>/portal). Navigate to SAP Customizing Implementation Guide -> Training and Event Management -> SAP Learning Solution -> Training Management -> Integration -> Collaboration Room for SAP NetWeaver -> Edit Room Profiles.   You then encounter the error "'Error in communication with Collaboration API room "to while accessing the profiles or SPRO transactions. Upon analyzing the log files you highlight the following error


Tables: null JCO.ServerThread-16 [11:16:23:779]: [JAV-LAYER] Exception in dispatchRequest( LSO_COL_GET_ROOM_PRIVACYTYPES):java.lang.RuntimeException: Bean LSO_COL_GET_ROOM_PRIVACYTYPES not found on host mo7366ux0027, ProgId =SAP_ECC_TrainingManagement: Object not found in lookup of LSO_COL_GET_ROOM_PRIVACYTYPES. at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest( RFCDefaultRequestHandler.java:121) at com.sap.engine.services.rfcengine.RFCJCOServer$J2EEApplicationRunnable.ru n(RFCJCOServer.java:267) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:1 85) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:302)Caused by: com.sap.engine.services.jndi.persistent.exceptions720.NameNotFoundExcepti on: Object not found in lookup of LSO_COL_GET_ROOM_PRIVACYTYPES. at com.sap.engine.services.jndi.implserver.ServerContextImpl.lookup(ServerContextImpl.java:641). 


Why: The reason for the occurrence of this issue is due to invalid configurations and property settings pertaining to the wrong system version guide.





old guide.PNG




Important Points & Resolution:  For 7.30 systems and upwards a new guide for Collaboration Room Integration with SAP NetWeaver has been developed.


For 7.30 & 7.40 Portals  please make sure you have configured the LSO Collaboration Rooms integration according to this guide: http://service.sap.com/support -> Release & Upgrade Info -> Installation & Upgrade Guides -> SAP Business Suite Applications -> SAP ERP -> SAP ERP 6.0 -> SAP ERP enhancement packages for SAP ERP 6.0 -> SAP ERP enhancement package 4 for SAP ERP 6.0 -> Installation Guide Collaboration for SAP Enterprise Learning.


correct guide.PNG


Remember:  This issue usually happens when you have configured a 7.30 or above portal the way it was described in the old guide (for 7.01 portal).The guide navigation (path) link outlined above describes the proper procedure for configuring LSO with a 7.30 and above releases of the SAP NetWeaver Portal.





EP: WPC Migration failing due the error ‘Error encountered migrating resource’ referencing the Site Content folder

$
0
0

Background: You are attempting to run the WPC migration and are encountering issues with the migration tool i.e. it stops functioning.


Obstacle: When attempting to run the migration you encounter an issue which prevents the process from running smoothly

 

What You See: Error encountered migrating resource: /wpccontent/Sites/WEBSITETRE/Site Content/Work4/ABCDXYZ Error encountered during processing: com.sap.portal.pcc.exceptions.PccDesignTimeException: Could not find object:pcd:com.sap.portal.pcc/StagingAreaId/WEBSITETRE/Site Content/Work4.

 

Environment Affected:KMC Web Page Composer, Enterprise Portal 7.30 , SAP NetWeaver Composition Environment

 

Steps Towards Encountering Issue: Log into Enterprise Portal. When attempting to run the WPC Migration and upon further inspection you identify two core error exception highlights pertaining to "Error encountered migrating resource" & "Error encountered during processing". After the WPC Migration fails to run and complete you attempt to run the WPC Migration Cleaner and then the WPC Standalone Migration tool manually. The error exceptions do not indicate an issue with the WPC Migration tool itself but rather the content to be migrated.


bloG10 WPC.PNG






 

Why: A webpage contained within the ‘Site Content’ folder is not a supported scenario.

 

Solution: If the WPC migration is failing and upon further inspection of the default trace file you note a reference of  ‘Error encountered migrating resource’ this indicates a discrepancy.This error  ‘Error encountered migrating resource’ message when pointing to content in the Site Content folder indicates a conflicting folder setup. Here you need to ensure that there are no web pages stored in the Site Content folder.


EP: KM Subscription Service Mail Document returns user unknown

$
0
0

Background: You are using the SAP Enterprise Portal and are utilizing Knowledge Management (KM) in a document sharing setup and a network file system repository.

 

Issue Being Encountered: Upon enabling the subscription service across various folders the subscription mail for changed documents returns a user unknown.

 

Areas Affected: EP Release Independent, SAP NetWeaver, SAP Composition Environment

 

bloG11 KMEmailSub.PNG

 

 

 

 

 

Steps To Encounter Issue: Login into the portal from desktop - http://<host>:<port>/portal. Check if the Subscription Service is enabled -> choose Content Management → Repository Services → (Show Advanced Options) → Subscription Service in the Configuration iView. If the service is enabled and a document change is performed e.g. updated/created/deleted a resource a subscription mail will be sent. The subscription mail is sent accordingly but the action is listed as being performed by 'unknown' rather than a UserID.


Why: File System Repositories don’t support resource properties alongside the modifiedBy property which is a restriction of File System Repository setup.


Solution: If the issue is occuring for all event types (deletion, creation, modification etc.) then is standard and expected behaviour when using subscriptions with File System Repository. The File System Repository does not support "Predefined properties" and the FS repository does not keep track of predefined properties like "last modified by" which is why you see changed by unknown in the notification mail.


EP: Web Dynpro Java applications appear to be created as a page instead of an iView in the Enterprise Portal

$
0
0

Background: You have migrated a Web Dynpro Java application to version Netweaver 730 or higher.


Behaviour Noticed:When viewing the corresponding Web Dydnpro Java iView in the Portal Content Catalogue, this appears to be a Web Dynpro Page.

 

Areas Affected:  Netweaver 730+ & Enterprise Portal

 

Reproducing The Behaviour: Logon to the Enterprise Portal. Navigate to Content Administration -> Portal Content Management -> Portal Content. Navigate to Web Dynpro Java Applications -> Java Application. Select the application for which you intend to create the iView. Copy the object and select ‘Paste as PCD Object’ to the required folder. The object appears as a Web Dynpro Page rather than an iView.

 


CK1.PNG

 

Why: From Netweaver 730 onwards the concept for Web Dynpro iViews has changed. They are now known as Web Dynpro Application Pages. The runtime behaviour is identical to that of the old Web Dynpro iViews. The icon representing the new Web Dynpro Application Pages now resemble more a page than an iView.

 

CK2.PNG

 

Summary: As the functionality is the same for the new Web Dynpro Application Pages, you should use them in the same manner as per previous releases.

Restrict Multiple sessions of same UserID in Portal

$
0
0

Background

 

In my recent project one of the Non functional requirements is to control the number of sessions a user can have, i,e if an user already has a session in portal a new session with the same userid shouldn't be allowed.

As per SAP Note 2052515 the one line answer is It is not possible to avoid multiple logons with the same user. 

This really stumped me as it is one of the key requirements with some financial implications. I can't spell the details as it's a confidential information.

Like all SAP Consultants we have forwarded this note to the client and have requested to handle this requirement outside portal (RSA Token etc).

I still believe handling it outside portal is a better solution but since I investigated this problem in some detail I would like to share my POC.

Let me make it clear from the outset that this solution uses Undocumented APIS,.


Investigation


While Searching on Google and SDN I came across many threads where people want to implement this, but at all the places the discussion ends with it's not a valid business requirement. Let me assure you it is .

While investigating this, I came across the NWA functionality Session Management (Resource Consumption)

b1.png


As you can see the WD JAVA application is showing the session information. I still had my doubts w.r.t  what will happen in a Clustered environment.

Like all developers I have a single node installation and I was not sure whether this application can show login details on multiple nodes in a cluster.

I confirmed this in the Preproduction environment in my client landscape that this application indeed shows sessions across nodes in a cluster.

I cannot share those screen shots as those are from client landscape but trust me it does .

Locating the DC (sap.com/tc~lm~itsam~ui~session~mngt~wd) and the jar (sap.com~tc~lm~itsam~ui~session~mngt~wd) was not very difficult but analysing it was a tedious task.

If you decompile the jar ,( Refer to my earlier blog Getting started with Netweaver 7.3 portal Part 2 - NWDS and Logon Page to know how to use jadeclipse.) you will find a number of classes. SessionMngt ,  SessionMngtView  and SessionManagementModel are the key classes.

I also found some useful information here:

Get list of all Logged in Users in SAP Netweaver 7.3 




Solution Design


Since my requirement is to stop the user from login if the same userid already has a portal session, I wanted to implement this in login module.

Here is what I planned:

1. Create a login module

2. Using the above API, check if an user has a HTTP session (Note that the user can have a P4 session also) don't allow him to login.

3. Modify the login page to show an appropriate error message.

 

Implementation

 

Please refer to my earlier blog on login module and it's implementation Getting started with Netweaver 7.3 portal Part 3 -  Logon Language and Login Module

I decompiled the BasicPasswordLoginModule and used the decompiled code to build my own login module.

I have added one method to check if the user already has a session.

 

public boolean userHasActiveSession()

{

    CompositeData data[]=null;

    try

    {

 

 

    SessionManagementModel model = new SessionManagementModel();

     data = model.getSessions();

    }

        catch(Exception ex)

        {

// If this block gets executed, this means there are some problem accessing the session data.

 

          LOCATION.debugT(ex.getMessage());

          return false;

 

        }

 

    if(data!=null)

    {

    for(int i=0;i<data.length;i++){

 

    if(data[i].get("UserName").toString().equalsIgnoreCase(name)

    &&

    data[i].get("RootContextID") != null) // This is important as there can be non HTTP sessions which won't have a context id assigned.

    {

    return true;

    //throwNewLoginException((new StringBuilder()).append("Active session exists for user").append(user.getName()).toString(), (byte)15);

    }

    }

    }

  return false;

}

 

This method is called after the user has been authenticated successfully (You don't want to show the error if someone is not entering right credentials).

 

/* To determine if there is already an active session*/

    if(userHasActiveSession())

    {

    //User already has an open session. Don't let him login.

    // The message here doesn't make any difference, it gets overwritten by the messages in the jars.

         throwNewLoginException((new StringBuilder()).append("Active session exists for user").append(user.getName()).toString(), (byte)15);

 

    }

/* Continue with life as usual*/

 

In case you have a prior experience with Login Modules you will know that The way SAP has developed it the error messages come from a JAR file and it's an error prone and tedious process to modify those jars and place it at server level.

Most amusing part is the method throwNewLoginException() takes a parameter of type String but doesn't make any use of it decompile the class com.sap.engine.interfaces.security.auth.AbstractLoginModule and see it yourself!!.

The only field it makes use of is the byte field. Now for same strange reason only a predefined numbers are allowed, so there is no extensibility here, Say with me Bad Design.

These predefined values are stored in the interface com.sap.engine.lib.security.LoginExceptionDetails.

I choose 15 as it resembles the situation I am handling.


public static final byte USER_ALREADY_LOGGED_IN = 15;


After I deployed my login module and tested it. I didn't get the expected result. I was able to open multiple sessions.

After checking the logs I found that the Guest user doesn't have permission to access the Bean.


Below action needs to be assigned to the Guest user for this code to work.


b2.png


With the Standard Login Page I got an in-line Error message, while trying to open another session


Authentication failed. Client is already authenticated as a different user


Not the message I was looking for.


I implemented my custom message using JQUERY and modifying the logonPage.jsp.


<script type="text/javascript">

 

$(document).ready(function()

{

var $d = $(".urTxtMsg").text();

if (($d.length != 0)&& ($d == 'Authentication failed. Client is already authenticated as a different user')) {

$(".urMsgBarErr").hide();

$(".urTxtMsg").text("New Session not allowed. You already have a running session!!");

//alert('Cannot create new session. You already have a running session!!');

  $(".urTxtMsg").dialog({

   title: "Error"

  });

}

});

</script>

 

Not very elegant, as we are doing a String comparison with a harcoded value. This will fail if user language is not English but hey this is just a POC

 

Tests



First Login

b3.png


Second Login Attempt


b4.png


Post Script


As I mentioned, This blog is result of a POC. It's not a full blown/tested/live solution.  Some key things to keep in mind:


1. Since HTTP is a stateless protocol the session management and session stickiness is implemented through cookies in SAP Portal. That's why if you are running a portal session in a browser say IE and open a new tab with the portal URL it won't be considered as a new session.

2. Consider a scenario where a User A accidentally closes the browser window, the server will not know that the session has been closed and it will not allow a new session for the same user till the session times out or an administrator closes the session.

3. I have not tested this solution in a clustered environment yet for obvious reasons (Need approvals etc). If someone can test and update it will be great. Incase I ever implement this in client environment I will update this blog.



Attachments

 

The sca export can be downloaded from the dropbox link. It has got all the Development components needed for this blog. You can import the sca in your NWDS and play around with it.

 

https://www.dropbox.com/sh/etm97uvth0rcbsd/AAC4jOapeW7y4yaWiTC-ssrOa?dl=0

 

Final Words

 

Please leave your feedback in comments, bouquets or brick-bats all are welcome.

Hindi As a Login Language in NW 7.4 Portal

$
0
0

Idea

 

The idea for this blog mail came from some emails from SDN friends who wanted to configured Hindi as a Login Language in SAP Portal.

Hindi is a new addition to the supported Languages for SAP Portal. Surprisingly there is no direct way as of today(Through Portal Personalization or UME) to switch the Language to Hindi. The Hindi option doesn't come in the value selector. Needless to say being an Indian I got hooked to the idea of configuring the Portal in my national language and hence this blog

 

Background Information

 

As Bill Gates famously said “I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it.” I am sure i fit the bill but was never approached by Bill . I started looking at SDN and Service Market place to find some quick fix.

SAP Note 1980421 is the place I started with. Alas the fine print in the note says "Note - This correction does not handle adding Hindi to User Management language lists (e.g. Identity Management, User Profile)."

I was left with no other option but to fall back to my tried and tested SAP Login Module solution as mentioned :

Adding Logon Language option on Portal Logon Page

Getting started with Netweaver 7.3 portal Part 3 - Logon Language and Login Module

 

During SDN migration these two blogs were spoiled and the code became unusable. I have received many emails asking for various jars and codes unfortunately I work on a VMBox and keep on changing my OS and loosing code . At the end of this blog is a drop box link which contains the sca export which is all anybody should need to implement this.

 

Implementation

 

The above mentioned blogs and the attached sca file should help you to set-up the projects and login module, so I won't waste your time and my energy repating myself . Some key points:

 

1. I extracted the language files from the jar file sap.com~tc~sec~ume~wd~uimodel where there is a file Languages_hi.properties but no entry has been made to set up Hindi as a language in files like Languages_en.properties or Languages.properties and that's the reason you won't get that option in Personalization or UME. Looks like SAP didn't pay the bonus to this particular developer  .

2. If you look at Languages_hi.properties the translations are maintained in Unicode. For your custom objects you will need to maintain these translations by yourself using Translation work bench. I am not sure how to put Unicode there. If any one has any idea please share it in comments.

3. Apparently for WebDynpro applications in nwa the translation for Hindi has not been maintained so they don't appear in Hindi.

4. I have maintained Hindi as a language option only for Languages.properties and Languages_en.properties so you will see the Hindi option in drop-down only if your browser Language is English or oh leave that bit that will confuse quite a few people. In lay man terms if your browser language is set to German or say Hebrew you won't see Hindi as an option.

 

Some Screen Shots

Login Page

c1.png

 

After Successful Login

 

c2.png

Logout Confirmation Popup

 

c3.png

 

If anyone knows who maintained the Hindi Translations. Convey my regards for him/her. He/She has done a damn Good job. Hindi is my first language but even I would have stumbled while translating some of the tabs. Hats off.

 

Attachments


The sca export can be downloaded from the drop box link. It has got all the Development components needed for this blog. You can import the sca in your NWDS and play around with it.


Dropbox - CTSDEV100_0.sca


Final Words


As always please leave your feedback in comments, bouquets or brick-bats all are welcome.

SAP Enterprise Portal on NetWeaver 7.5: Highlights

$
0
0

SAP Netweaver 7.5 was released during SAP TechEd Las Vegas two weeks ago. SAP NetWeaver is the technology platform and foundation for the SAP Business Suite and the SAP NetWeaver hubs such as SAP Enterprise Portal, SAP Business Warehouse and SAP Process Orchestration. For more information, have a look at the SAP NetWeaver 7.5 landing page.

 

These are the top 4 highlights of SAP Enterprise Portal based on SAP NetWeaver 7.5:

 

1. SAP Enterprise Portal UX renovation according to SAP Fiori UX paradigm:

  • SAP Fiori as the leading SAP Portal UX, also aligned with S/4 support and UX strategy for UI clients
  • Step-by-step enhancements according to SAP Fiori 2.0 UX paradigm (Fiori Overview Page, notifications and more)

 

2. S/4 HANA integration by supporting S/4 HANA content (analytical apps, factsheets) using remote catalogs feature.

 

(click on image for better reading)

blog_image.png

 

3. Cloud Services integrated into SAP Enterprise Portal by SAP Web IDE deployment plugin, enabling developers to create and deploy Fiori-like apps to the Portal.

 

4. Lean and simplified Portal

  • New Fiori SCA, allowing an easy and lean upgrade of Portal in the context of Fiori scenarios.
  • Deprecation of duplicated or non-used tools and functionality as part of a simplification project (for example the UI Theme Designer replacing the Theme Editor).

        For more information, see note 2204286

 

A detailed feature overview on Support Package Stack 00 of SAP NetWeaver 7.5 can be found in the Enterprise Portal release notes.

 

More information will follow end of November when Support Package Stack 1 will be released. Stay tuned!

EP: Monitoring The Portal - The Why & The How

$
0
0

Background: In a business environment which utilizes the Enterprise Portal (EP) as a central platform as we know the number of users can vary from a few hundred to a few thousand depending on the business setup. In true essence the SAP NetWeaver Portal is one of the cornerstones in the entire SAP NetWeaver architecture. Through web browser interfaces the EP is the conduit channel through which users begin going about their daily tasks and the portal itself provides such users with a central point of access for all work related procedures and processes.

 

EP Environment: With the EP offering users a single point of access to information, documents, enterprise applications, processes and services both inside and outside of an organization its understandably easy for a simple environment to become complex quite quickly in terms of a high level perspective. In short the Portal provides access to business processes and information, social collaboration and content management across various consumption channels. Also with the ever-growing number of mobile phone business users the Portal needs to be maintained in an optimal an efficient manner.

 

 

monitoring users.PNG

Why Monitor?


"Numbers have an important story to tell. They rely on you to give them a voice.” – Stephen Few


 

  1. View the system landscape from a high level.
  2. Identify areas of concern, usage statistics, security areas, etc.
  3. Pinpoint errors, low performance areas or bottlenecks.
  4. Planning for the future, are changes needed?
  5. Match requirements with setup, are you operating optimally?
  6. Capacity review
  7. Identify access trends

 

The Means of Monitoring

 

Various components, applications and services are shipped with the portal. There are various monitoring and log applications available for monitoring these objects. These applications check and monitor the portal in the background. Applications such as performance monitoring and activity tracing provide information about the status and help locate critical system events. You can use the information delivered by the monitoring, logging, and tracing applications to analyze the system and take appropriate action where necessary. The portal is installed as an application on the AS Java. Therefore, to understand the monitoring methodology and tool availability, see the section AS Java.


Monitoring Tools

The following list provides information on monitoring and logging functions and tools that you can use.

 

  1. Generic Request & Message Generator (GRMG)
  2. Performance Monitoring
  3. Parameter Reporting
  4. Portal Activity Report
  5. User Overview

 

Logging & Tracing

 

  • Activity Tracing: You can sequentially record the activities of individual portal users for a defined time span and then analyze the performance and errors for these activities. Activity tracing is activated and deactivated in the Visual Administrator for a given user or for all users.
  • Logging:  The portal is logged using the standard central logging system of the AS Java, consisting of the Log Manager and the Log Configuration Service

EP: KM Content is Slow

$
0
0

Background: You are utilizing the Enterprise Portal (EP) and the Knowledge Management (KM) service. You begin to notice that the Portal itself or KM related functionality appears slow in functionality e.g. upon navigating to -> Content Administration -> Select KM Content -> any structure selected appears slow and constrained.

 

First port of call: The first recommendation with any performance related issue is to check for visible errors or exceptions being thrown in the default trace error log files.

 

 

High Level Analysis:

 

With performance issues some core checks to assess include:

 

  1. Have there been system changes recently e.g. upgrades which may have prompted this issue to begin occurring?
  2. If so Post upgrade did you clear the portal caches/restart the portal service?
  3. Is this issue occurring for all users/in all web browser platform types?
  4. Are customization's/personalizations currently in place?


Analysis Findings

 

After performing the recommended checks you confirm and determine that the performance impairment is confined ONLY to KM i.e. the rest of the Portal functions accordingly.

 

KM Performance in General

 

The primary cause of performance impacts within the KMC is the activation of the AccessStatistic service on the KM repositories.

 

  • Check if the service is indeed activated in the configuration of the KM repository managers.

 

If so, we advise removing it wherever possible as it the recommendation in SAP Note 1025290.

 

After the configuration of these repository managers is updated with the removal of the AccessStatistic service a system restart will be required for the change to take effect.

 

After this, perform a retest to see if performance improves.

 

You can find additional information in the documentation outlined below:

 

Access Statistics Service

https://help.sap.com/saphelp_nw73/helpdata/en/2c/5c8daab70011d5993900508b6b8b11/content.htm

 

Repository Services

https://help.sap.com/saphelp_nw73ehp1/helpdata/en/69/d96b86a84611d5993600508b6b8b11/content.htm


EP: Monitoring The Portal - The Why & The How

$
0
0

Background:In a setup which involves business requirements managed and accessed through the Enterprise Portal landscapes and environments can quick become diverse and multiplex.

 

Backdrop:The SAP NetWeaver Portalis one of the building blocks in the SAP NetWeaver architecture. With a Web Browser, users can begin work once they have been authenticated in the portal which offers a single point of access to information, enterprise applications, and services both inside and outside an organization.


Expanding Viewpoint: When using SAP NetWeaver Portal, organizations can give their employees, customers, partners, and suppliers a single point of access to the company applications, services, and information needed for conducting daily work. In addition, the portal offers business users the capability to easily create and manage portal pages and to generate their own portal content.

 

Why Monitor & Analyse?

The alchemists in their search for gold discovered many other things of greater value -  Arthur Schopenhauer


monitoring users.PNG











What does active monitoring provide?


  • View and analyse usage statistics
  • Identify performance concerns and bottlenecks
  • Identify generic system operation constraints
  • Analyse user activities
  • Reporting
  • Usage trends


The means of monitoring: The Computer Centre Management System in the Solution Manager, SAP’s service and support platform ensures central and efficient monitoring of SAP Enterprise Portal. Log data is displayed and analysed centrally in the Log Viewer (service of the J2EE server).  You can also monitor specific data directly in the portal.


Different Monitoring Technologies:


EP: UWL Changing the Position of the Action Button(s)

$
0
0

Definition: The Universal Worklist (UWL) gives users unified and centralized way to access their work and the relevant information in the portal. It collects tasks and notifications from multiple provider systems – SAPBusiness Workflow, Collaboration Task, Alert Framework and Knowledge Management Recent Notifications - in one list for one-stop access.

 

The Buttons:A UWL Action defines an activity that can be performed in UWL. Actions can be defined for views and items. Item actions can be displayed in the item preview, detail view and UWLiView as action buttons. Item actions are also displayed as context menu items for a certain workitem. View actions displayed as buttons can have an effect on none, one or multiple selected items. Group actions can be used in views to render decision options directly as check boxes or radio buttons in the item rows, for example, for mass execution scenarios.

 

Button Placement: Before attempting to move the buttons in terms of place you need to ensure they are defined correctly. Do you have the action defined in the view?

 

Switching Placement (Sample):

 

<Views>

<View name="com.sap.pct.erp.mss.tra.view.TripCheckView" selectionMode="SINGLESELECT" width="98%" supportedItemTypes="uwl.task.webflow.decision.TS00008267" columnOrder="statusIcon, subject, priority, creatorId, createdDate,

dueDate, processor, forwardedDate, attachmentCount, detailIcon, APPROVE, REJECT" sortby="priority:descend, dueDate:ascend, createdDate:descend"

tableDesign="STANDARD" visibleRowCount="10" headerVisible="yes" queryRange="undefined" tableNavigationFooterVisible="yes" tableNavigationType="CUSTOMNAV" refresh="300" dueDateSevere="0" dueDateWarning="0" emphasizedItems="none"

displayOnlyDefinedAttributes="yes" dynamicCreationAllowed="yes" actionPosition="bottom"

referenceBundle="com.sap.pct.erp.mss.tra.TripCheck">

<Actions>

<Action reference= "<ACTION BUTTON NAME REQUIRED>"/>

</Actions>

</View>

</Views>

 

 

Where I have <ACTION BUTTON NAME REQUIRED> you should have something like forward, etc.

 

Also if you are using the UserDecisionHandler, you will find that the buttons will appear on the view based on the actionPosition in the xml reference.  Your view name will probably also be different, as I just used this one as an example. Please also remember after changing the XML file to clear the cache and re-register the system.


Important:


If your item type is defined like this: <ItemTypes> <ItemType name="uwl.task.webflow.TS10007947.SAP_SRM" connector="WebFlowConnector" defaultView="DefaultView" defaultAction="launchSAPAction" executionMode="default"> <ItemTypeCriteria systemId="SAP_SRM" externalType="TS10007947" connector="WebFlowConnector"/>

 

For task e.g TS10007947 the buttons will only appear in the context menu. For the buttons to appear in the bottom, you will need to use UserDecisionHandler. 


Buttons that are associated with the task actions will appear at the bottom of the view depending on the action position reference in the XML file as I mentioned above.

 

The nice thing about the Action Handlers is that you can re-customize them. You can make the task into a decision task in the backend and use the UserDecisionHandler to launch the task in a different way.


Please see the help documentation:


http://help.sap.com/saphelp_nw73/helpdata/en/4a/f9b39a7b721115e10000000a42189c/content.htm

EP: UWL No Action Button(s) appearing

$
0
0

Background:You are utilizing the Universal Worklist and notice that there are no action buttons for the workflow setup e.g. approval/rejection appearing. This change may have be noticed after completing a recent upgrade. From the end-users perspective the buttons are no longer appearing in the Preview Area and after further investigation you notice that the Action Buttons are in in fact placed within the "Context Menu". The action buttons should be viewable and accesible through the context menu. You access the context menu by clicking on the dropdown menu which is beside the task names. Select the task and then select the dropdown. Are the action buttons visible here?


Adding buttons to a description area must be done by defining them in the view.


Buttons of Interest: Approve, Reject, Print Preview, Forward, Resubmit, Assign to me.


Why have the buttons disappeared?  The UWL UI was changed in 7.10 and higher releases so the look and feel of the UWL is different. Some buttons have indeed been removed e.g. the "You Can Also" area has been removed. In this scenario the buttons will appear only if the buttons (actions) are explicity defined within the UWL View in the XML configuration file.


Important Point: The buttons are only in the preview area if UserDecisionHandler is used and the actions are EXPLICITLY defined in the views.

 

Property of Interest:<Property name="showButtonInPreviewArea" value="yes"/> Important: Add the property showButtonInPreviewArea property as recommended in SAP Note: 1803438 to all Action definitions.


Core Notes:  SAP Note:1730719 - Action buttons on UWL not visible after upgrade && SAP Note: 1803438 - Showing UWL item action as a button - only in context menu.



 

 




 

New SAP Fiori Launchpad on SAP Enterprise Portal Features in NetWeaver 7.40 SP13

$
0
0

This blog is for portal end-users and content administrators who would like to learn about the new features developed in the latest Enterprise Portal SP for FLP on EP, their added value, and the configuration required.

The new features include:

  • SAP Smart Business analytics and fact sheets access
  • Enhanced personalization capabilities of Home Page / Tile Catalog
  • SAP Fiori borders in iViews and pages
  • Hiding groups on Home Page
  • Etc.


1 SAP Smart Business Analytical Apps Consumption

 

Analytical apps are supported in the Fiori Launchpad. These apps present up-to-date data from HANA databases in the home page and thus let end-users monitor business activities and key performance indicators (KPIs) in real time (more information).

This is how the analytic tiles in My Home group might look like:

HPwithAnalytics.JPG


Prerequisites:

  1. SAP Web Dispatcheror any other reverse proxy,which is responsible to dispatch the requests between the ABAP FES and Java server (EP).  It has to be configured to access SAP HANA catalogs.
  2. For FES minimum required SP please refer to SAP note 2031108.


To enable this feature administrators have to follow the steps in SP16 blogfor Remote ABAP Content Consumption.

To manage HANA catalogs and groups the remote content editor is used.Both runtime and design-time HANA catalogs can be assigned to portal roles. The catalogs and groups can be defined in the SAP Fiori Launchpad Designer.

 

2 Search for SAP Fiori Fact Sheets

 

Fact sheets are applications that display contextual information and key facts about central objects of the SAP Business Suite, such as Customers or Suppliers. End-users can open a fact sheet tile and drill down into its details, or navigate from one fact sheet to its related fact sheets (more information here).


Prerequisites:

  1. SAP Web Dispatcheror any other reverse proxy, which is responsible to dispatch the requests between the ABAP FES and Java server (EP).  It has to be configured to access SAP HANA catalogs.
  2. For FES minimum required SP please refer to SAP note 2031108.

 

To enable this capability, administrators have to go toFramework Page Configuration, select Fiori Framework Page in dropdown list, check-in Enable Search for Fact Sheetscheckbox andsave:

FactSheetEnabled.JPG

 

In run-time an end-user will be able to search for the fact sheets using the enhanced Quick search bar:

FactSheetRT.JPG


FSSearch1.JPG


The search result looks as following:


FactSheetResult.JPG

3 SAP Fiori Borders in iViews and Pages

 

SAP Fiori borders allow to enhance end-user experience with portal iViews and pages. Portal administrators can enable the following:

  • Header bar - contains the iView/page title and a back button
  • Footer bar - can contain the following UI elements:

o Related Links– end-users select this option to open a popup window with the related links

o Dynamic Navigation– end-users select this option to open a popup window with a dynamic navigation iView/page

o Save as Tile– end-users save an iView/page as a tile to the Home page.


Procedure

In the portal, open an iView/page.

From the Show Category dropdown list, select Personalized Launcher and SAP Fiori Borders property:

HeadernFooterConfig.JPG


Note

  • For all iViews and pages except for SAPUI5 and SAP Fiori iViews, Header and footer bars is the default option.
  • For SAPUI5 and SAP Fiori iViews, No header and footer bars is the default option.
  • In the Launch in New Window property, select one of the following:
    • Display in Portal Content Area
    • Display in Separate Headerless Portal Window (standard mode).


SAP Fiori borders example:


OpprtunitiesWithBorder.JPG

 

 

4 Home Page Personalization Options

 

The configuration options are used by the administrators to provide end-users with various personalizing abilities for their home pages. If configured by an administrator, end-users can use:

  • Floating action
  • Option menu action
  • Hide/show groups.

The main switch Enable Personalization should be checked-in for other options to make an effect. If this option is switched off, in run-time there is no access to Tile Catalog and personalization actions:


PersSwitchOffConfig.JPG


NoPersonalization.JPG

4.1 Floating Action and Option Menu Action

 

If portal administrator enabled the following personalization options in FFP:

 

FloatingActionConfig.JPG

 

The end-users have floating action in the low right corner and Option menu action, both allowing to re-arrange the Home page:

 

FloatingActionRT.JPG

 

 

4.2  Hiding Groups on Home Page

 

If the option Enable Hide Groups in Option Menu is checkedin FFP configuration, the corresponding entry will appear in Option menu in the Home Page:


HideGroupsConfig.JPG


HideGroup.JPG


By choosing this option end-users can control the groups to be hidden/displayed on the Home Page:


HideGroupPopUp.JPG



5 Search Options in Tile Catalog and Home Page

 

Several options allow the administrators to control search abilities for end-users, both in Tile catalog and Home page.

In Tile Catalog there might be no search possibilities at all:


TileCatalogNoSearch.JPG


Or three search options in Tile Catalog due to the following configuration on FFP:


SearchConfig.JPG


End-user experience with full search and filter capabilities will look like this:


TileCatalogSearch.JPG


Enable Search Icon in Header Bar option is relevant also for the Home Page.



6 Resetting User Personalization

 

After end-users have logged on to the SAP Fiori Launchpad for the first time, any consequent changes made by administrators are not reflected in the home page.

Personalization Data Cleanup tool is used to clear personalization and reset the home page for end users.

Warning: Resetting user personalization also removes all changes on the Home page made by the end user. There is no Undo for this action.


Procedure

Navigate to System Administration -> Support -> PCD Tools -> Personalization Data Cleanup.

In the Search for field, type a user login ID, and choose Go.

Select com.sap.portal.navigation.flp.pl.UserData entry, and choose Remove Application Personalization.


PCDClean.JPG


7 Role Editor Enhancement


A new Device Groups column displays the device group object IDs defined for objects in a role. A new Remote Content table displays the SAP Fiori catalogs and SAP Fiori groups, assigned to the role.


RoleConfigEnhanced.JPG


8 Enabling Fiori Framework Page Extensions

 

The Fiori Framework Page core capabilities can be extended by enabling custom plugin to load when the SAP Fiori launchpad opens.

This allows the customers to extend the standard FLP functionality, with, for example, an additional action in Option menu, a custom footer, etc.

The extensions are activated by the following FFP configuration (details):

  • Custom SAPUI5 Module Plugin Name
  • Custom Plugin URL.


9 Embedding SAP UI5 Apps

 

Administrators can embed SAPUI5 applications directly into the SAP Fiori launchpad on Portal without iframes to get a better performance, a harmonized look-and-feel, and good support for mobile browsers.

SAP UI5 application can be hosted on the portal server (Web Resource Repository is a recommended location).

The embedding is enabled with the following iVIew properties (detailed description):

  • Embed iView in SAP Fiori Launchpad
  • SAPUI5 Component Name
  • SAPUI5 URL Path.

 

 

Watch also this product demo focusing on the end user features described in this blog:




For more information: see SAP Documentation.

Omission of Session Termination Window

$
0
0

Until now session termination in portal required appearance of the pop-up window every time user closed or refreshed the screen with Application Integration iView.

From now on there will be an option to suppress appearance of that pop-up windowwhen executing the above mentioned scenarios.

In the below video you will see how to omit a session termination pop-up

 

 

Please refer to SAP Note 2114932 for further details

Viewing all 334 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>