Tuesday, May 24

SAP EP - Standard Portal Services

After reading this post, you will be able to answer the following questions.

What are available services in portal runtime?

What are the key components of user management engine ?

How to use the UM API to work with the user, group and role objects ?

What is the architecture of connector framework ?

How to use the connector gateway to connect to R/3 System and to RDBMS ?

Some of the Public Services of Portal Runtime are :

This service is used to diagnose problems and to return detailed information
about the problems identified. Depending on the target user, it is possible to define
simple or more complex logging. The logger provides a set of convenient methods for generating log messages.

JCo client service:
To connect to SAP Systems using RFC connections.

HTML Business for Java:
HTML Business for Java provides the user with an  efficient set of controls, similar to JavaSwing. The controls are based on servlets and JSP pages. The developer uses bean-like components or JSP tags. Renderer classes translate the components into HTML commands.

User Mapping:
User has different IDs in different systems. This service maps them all.

User Management:
User Information from the portal

Custom Navigation IViews or Hierarchies.

API for transforming XLS to XML document

Manage JCO Client access by implementing pooling and session timeout/logoff detection

Application Contentconverter:
Provides Factories to convert RSS to HTML and XML to HTML.

Application Contentconversion:
The Content Type Conversion Service offers API to add content converter capabilities to the response process.
Admin Logviewer:
search, filter, browser, download log files of the Platform.

Admin Logadmin:
manage logger configuration of the Platform.

EPCF Toolbox:
Java classes for EPCF integration

User-Agent (Browser) detection plus affiliation checker

System Landscape: Get information about the system landscape iView Service: iViews/Pages/Systems semantic layer

What is UME ? UME is the central storage place for user and role information of all Java and ABAP applications that use UME. Persistence manager is responsible for writing the data to and reading the data from the correct data source. The application is unaware from which data source is the data being read or written to.

Various sources of data storage for UME are possible. Some are : SAP R/3 system, LDAP, Database etc.

It may happen that that the data source which is being used by UME is also required by some other system like SRM. In such a case a replication of the user information present at the persistence has to be made. This task is handled by the replication manager.

Two main packages in which almost all of the APIs of UME are covered is :

Com.sap.security.api and com.sap.security.api.acl

IUser, IGroup and Irole are present in com.sap.security.api. Also UMFactory and IUserAccount are present in this package.

IAcl and IAclManager are present in the com.sap.security.api.acl.

User Management factory

Applications can access all the functionality of UME through com.sap.security.api.UMFactory

Various other factories can be obtained from the UMFactory.

UME Objects are identified by Unique IDs. IUserFActory can be used to create, delete, search users. Also you can perform mass commit/rollback on a set of users The Iuser Object contains all the information about a user. Name, UniqueID, LDAP attributes, display name etc.

If you want to Modify a User Information, Use the IUserMaint Object. By using the Iuser, you can obtain information about the logged in user. Also you can obtain information about another User. You can obtain information about other User if you know UniueID of the user.

For more information methods of IUserFactory and Iuser APIs,Visit Methods of IuserFactory and Iuser APIs

Related Articles:

Portal Eventing and Navigation
Portal Look and Feel - Branding the Portal
How to Develop Portal Applications
SAP EP-Developing portal content and assigning permissions
SAP EP-Role maintenance
SAP EP-How to make Enterprise Portal highly available
SAP Material Management Introduction
SAP EP-J2EE architechture

Thursday, May 19

Portal Eventing and Navigation

SAP Enterprise Portal provides a single point of access to various applications and data present in the enterprise. SAP Web Dynpro Java is the technology which is used to create huge business applications. These applications can be integrated in SAP enterprise portal. How does the integration between Web Dynpro java applications and the sap enterprise portal take place. The answer is iviews. Iviews are programs created in java which are capable of displaying data from variety of resources like sap R/3 transactions, sap web dynpro java, sap web dynpro abap applications, BW reports, web services etc.

Once you have created a web dynpro java application, you can create a web dynpro java iview in portal and provide the name of web dynpro application as reference. You need to make sure that web dynpro java component is available on the web application server from where iview is going to pick up the web dynpro application data and display on the sap netweaver portal. Communication between various views in a web dynpro java application take place using the navigation plugs.

Suppose there are two separate iviews or 2 separate web dynpro java applications each having one view. Now these applications want to communicate or the a portal user wants to display one web dynpro application on the fire of an event from the other application. This can be done by portal eventing. But if there are many communications in case there are many views in a single web dynpro application, portal eventing is not recommended. In such a case, plugs should be fired to navigate from one view to another view. Plugging is feature of web dynpro technology using which navigation between views become easy.

How to raise an event in portal ?
Wdportaleventing.fire(“urn:com.sap.tc.test”, “testWDEvent”, “paramter”);
An event is generally fired in the evnthandellar method of a web dynpro action.
The first parameter in the fire method is namespace, second parameter is the event name and the third parameter is the web dynpro action which is mapped with the portal event.
How to subscribe to a portal event ?
Wdportaleventing.subscribe(“urn:com.sap.tc.webdynpro.test”, “TestWdEvent”, “wdThis.wdgettesteventaction()”);
The above line of code is generally placed in the wdDoinit() method of the web dynpro hook methods.

How to unsubscribe from an event in web dynpro java ?
Wdportaleventing.unsubscribe(“urn:com.sap.tc.webdynpro.test”, “TestWdEvent”, “wdThis.wdgettesteventaction()”);
The above line of code is generally placed in the wdDoExit() method of the web dynpro hook methods.

There are 3 types of navigation possible in Enterprise portal.

Object based navigation

If the navigation is performed to a pecific target, it is called absolute navigation.
Following parameters are used for the above method:

Navigation target : This specifies the navigation target URL
Mode: specifies whether the navigation target is displayed in the same browser window of another window. Three options are possible here. Show is place, Show external, Show External Portal
History Mode: Specifies how the navigation is visible in the navigation history in the page title bar
Target Title : sets the title of the history in the navigation history bar
Context URL : specifies the navigation context.

The problem with absolute navigation is that, if the target is moved to a new location, navigation will fail.
For this navigation should be performed to a relative target. This is done using the following line of code.

3 main parameters are used in this method. BaseURL, LevelsUP and path.
BaseURL : It specifies the starting point of relative navigation.
LevelsUP: Specifies how many levels to up in the navigation hierarchy.
Path : Specifies the path down the navigation hierarchy to go after going up from the number of levels sspecified by the levelsUp Parameter form the baseURL.

Object Base Navigation can be called by using following line of code

The following parameters are used for this method.
System : specifies the system to which business object is assigned.
BusinessObjType : Specifies a business Object.
Operation : specifies an operation of the business object.
BusinessParameters : additional parameters.

Related Articles :

Portal Look and Feel - Branding the Portal
How to Develop Portal Applications
SAP EP-Developing portal content and assigning permissions
SAP EP-Role maintenance
SAP EP-How to make Enterprise Portal highly available
SAP Material Management Introduction
SAP EP-J2EE architechture
SAP EP - Standard Portal Services

Wednesday, May 4

WD4A-Format the Values appearing on value Axis of Business Graphic

Web Dynpro ABAP has a great feature  of displaying data in a graph. This is possible by using the Business Graphic UI element of web dynpro ABAP. There are various types of graphs possible. Some of them are bar, area, portfolio, point, column diagram, histogram etc. one beatifully created graph is shown in the image below.
There are mainly two things a developer has to know while creating a business graph. The series and the category. What appears on the X axis is called category and the what appears on the Y axis is called the series. There are two types of series in web dynpro ABAP viz simple series and complex series. When the developer knows what all values need to be plotted and exactly how many series will be required at the design time, simple series is used. In this post I will discuss simple series mainly.
The above shown graph is a stacked graph. There are various ways in a chart type can be represented. One important thing to notice in the above graph is the format of the Y Axis values. There is a property called format in the Y Axis or the value axis. When we specify a particular format, all values displayed on the Y axis are displayed in that format. How do we specify a format. To specify a format, there is a syntax. Ideally, Y Axis would have numbers. But due to specific requirements, text can be appended before and after the number.

This is how it can be done.
Put the free text in inverted commas. If you want to create space between the free text and the other text or the number, put spaces in the inverted commas after the free text. For example :

$Abs$Sep10" USD" gives the label 1234.5689 USD for a value of 1,234.56.

“The percentage value is “$Percent0.“ %“ gives the label The percentage value is 25 %.

Related Articles :

Basics of Web Dynpro ABAP
ABAP Data Types and Objects
ABAP Statements
WD4A - Topics to be covered in the upcoming posts
WD4A - Introduction
WDA - SAP Logon Procedures
WD4A-Navigate from one view to another and back to previous view
WD4A - How to Calculate next 12 months from current month in web dynpro ABAP
WD4A - Validate Inputs in a web dynpro ABAP Application