Posts filed under 'SAP Articles'

Use SAPCPE for kernel update on NetWeaver 2004 AS Java by Yu-Nong Zhang (SAP)

Use SAPCPE for kernel update on NetWeaver 2004 AS Java
Yu-Nong Zhang SAP Employee
Business Card
Company: SAP AG
Posted on Dec. 04, 2006 03:28 PM in
Application Server, Business Intelligence (BI), Change Management, Enterprise Portal (EP), Knowledge Management (KM), SAP Exchange Infrastructure (XI), SAP NetWeaver Platform

Subscribe. Subscribe
Print. Print
Permalink Permalink

Have you ever tried to update an SAP NetWeaver 2004 Java Application Server with multiple instances? If yes, how did you patch the dialog instances (DIs)? I guess you ran the update tool SAPinst on every dialog instance host. SAPinst actually doesn’t do much about the DIs than just copying the new kernel binary files to the DI-individual executable directories. The Java applications running on top of the runtime engine will be synchronized out of the central database instance during the next startup. Thus applications are updated when the central instance is being updated. (That’s why the update of the central instance lasts longer.) You might have wondered why no automatic synchronization with kernel binaries can be done? Well, until the SP Stack 18 this function was not provided due to some architectural limitations with the SAP NetWeaver 2004 Java server. In SAP NetWeaver 2004s, this feature is automatically configured by the installation of dialog instances. There is another blog which deals with the kernel distribution on SAP NetWeaver 2004s Java application server. SAP has now down-ported this feature to NW04 and delivers the configuration service which is integrated in the patch tool (SAPinst) for NW04 Java engine with the SP stack 19.
Like in a NetWeaver 2004s Java system, the automated kernel distribution works with the kernel program SAPCPE which checks, and if necessary, copies newer version of the kernel binary files from the central kernel directory to the instance-individual executable directories. Die individual instances start from their own executable directories. You need perform the configuration service which comes with SAPinst of the SP level 19 or higher only once to enable SAPCPE. As the screen-shot below shows, you have to start SAPinst on the central instance host and choose the service Enable Automated Kernel Distribution Using SAPCPE. With some further specifications the function is configured for all future updates (You can download the Support Package Stack Guide for NW2004 for detail information about the configuration steps). Every time when the kernel binaries on the central instance have been updated, SAPCPE will replicate them to the dialog instances upon restart.
image
You should also take following restrictions or conditions that are significant for the proper functioning of the kernel replication into account:

  • The automated kernel replication and the configuration service for SAPCPE works only in Java-only systems, not in double-stack systems (ABAP+Java).
  • The Java-system cluster must be homogeneous. Dialog instances running on hosts with operation systems other than the central instance require different versions compiled for the individual operating systems. Due to file format incompatibility, kernel files for different operating systems are located on appropriate hosts. Therefore SAPCPE cannot simply replicate the version from the central instance.
  • All instances must be at least of SPS17. As mentioned earlier, the kernel replication was impossible for NW04 due to some architectural limitations. With SPS17, these limitations are remedied. Don’t be confused with the replication configuration service delivered with SPS19. The configuration service is included in patch tool (SAPinst) of SPS19 and above, but runtime systems of SPS17 already have the appropriate architecture to be configured for the automated replication. Therefore you can use the configuration service included in SPS19 to configure an SPS17 Java system.

I hope, the kernel replication function eases your daily work a little ;-)

 

 

 

Add comment December 30th, 2006

PCD III: Portal Content Model (PCM) by Daniel Wroblewski (SAP)

PCD III: Portal Content Model (PCM)
Daniel Wroblewski SAP Employee
Business Card
Company: SAP
Posted on Oct. 11, 2006 10:35 AM in
Enterprise Portal (EP)

Subscribe. Subscribe
Print. Print
Permalink Permalink

First, if your going to Tech Ed in Amsterdam next week, please stop by the Web Dynpro basics course (CD155) — I’ll be conducting a hands-on session on Web Dynpro-Portal integration. Not to be missed — I’ll be giving out candy to the developers who finish first or ask the most interesting questions.

Second, I’m sorry it took so long to return to blogging on portal development (in the middle of my series on the PCD).

Finally, let’s discuss PCM.

PCM (Portal Content Model) has existed for a while, but rarely is it discussed. PCM-related interfaces are used by portal developers, but usually without any understanding of what PCM is.

PCM is a set of interfaces that all portal objects must implement — at least if they want to be displayed in the Portal Catalog. The administration tools — most notably the Portal Content Studio — requires all portal objects to provide a few basic interfaces so that it can display them in the Portal Catalog.

The main provider until now, of course, has been the PCD, but there may be other providers of portal objects. So the portal needed a set of interfaces for portal objects that was not dependent on the PCD.

The interface that all portal objects must provide is IAdminBase, from which you can obtain the following interfaces:

  • IAttributeSet: Provides information on the attributes of the object, so these can be displayed in the Property Editor.
  • IPermission: Provides information about who has permission to modify and delete the object.
  • ICatalogNode: Provides additional information for displaying the object in the Portal Catalog, such as the URL for the image to display as the object icon.

To get a the IAdminBase of a portal object, just specify the administration aspect when performing a lookup for the object, as in the following example:


   Hashtable env = new Hashtable();

   env.put(Context.INITIAL_CONTEXT_FACTORY,
      IPcdContext.PCD_INITIAL_CONTEXT_FACTORY);
   env.put(Constants.REQUESTED_ASPECT, PcmConstants.ASPECT_ADMINISTRATION);
   env.put(Context.SECURITY_PRINCIPAL, request.getUser());

   InitialContext iCtx = null;
   String myRole = "portal_content/MyContent/Corporate";

   try {

      iCtx = new InitialContext(env);
      IAdminBase myAdmin = (IAdminBase)iCtx.lookup(myRole);
      IPermission myIview = (IPermission)myAdmin.getImplementation(IAdminBase.PERMISSION);

      String[] myPermissions = myIview.getAllPermissions();
      for (int i = 0; i < myPermissions.length; i++) {
         response.write(myPermissions[i] + "
");
      }
   }
   catch (Exception e) { }

The above code gets an IAdminBase for the specified portal object, then gets an IPermission object from this, and displays all the permissions assigned to this object.

Just a side note: Permissions are a little tricky, as there are PCD permissions, PCM permissions, and you could assign your own permissions to an object. More on this in my next blog.

All of this, including how to the key interfaces, is described in painstaking detail at Accessing the PCD.

Hopefully, I’ll see you all at Tech Ed.

Daniel Wroblewski is an information developer for SAP, focusing on documentation for portal developers.

Add comment December 30th, 2006

SCUA, the new and easy magical way to implement CUA by Gerlinde Zibulski

SCUA, the new and easy magical way to implement CUA
Gerlinde Zibulski SAP Employee
Business Card
Company: SAP Labs
Posted on Dec. 17, 2004 10:11 AM in
Application Server, Technologies

Subscribe. Subscribe
Print. Print
Permalink Permalink

What is the easy and simple way of activating Central User Administration (CUA)via SCUA? Customers that have implemented the Central User Administration in lower releases have had to read and skim through cookbooks and adhere to the different set-up procedures of the ALE landscape used to propagate the user data and input methods like UserClone in transaction WE20 (managing partner profiles), bearing in mind upper and lower cases for the different methods.

There is good news for you. The setup of CUA is now extremely simple and easy. All you have to do to activate the CUA, regardless of whether you want to set up a complete new CUA just add a new client to the CUA, is activate the CUA via transaction SCUA. So, no more fumbling in ALE configurations and partner profile management is needed!

The process, in short, is as follows:

1. Log on to the new child system and create a communication user for the CUA. Assign this user a customer copy of the following two roles: SAP_BC_USR_CUA_CLIENT, SAP_BC_USR_CUA_SETUP_CLIENT. The latter can be removed from the communication user after CUA activation.

2. Create the RFC connection(s) between central system and client.

3. Create a new logical system for the CUA client

4. Assign the logical system to a client

5. Go into transaction SCUA, enter the logical system and save. This will generate the ALE distribution model including partner profiles.

6. If you configure a CUA newly from scratch you have to customize the field distribution in transaction SCUM.

7. Migrate new users into your CUA central using transaction SCUG.

Let’s look at the details and do it. The CUA landscape we start with is as follows: We have a central system in client 100 on a Web Application Server stand-alone called TT1. We have two child systems in client 200 and 300. Now, we want to add client 400. So, how do we start? Create the communication user on client 400.

image

So, we log on to client 400 and create the communication user via transaction SU01.

image

This user has also been assigned the roles Z_SAP_BC_USR_CUA_CLIENT and Z_SAP_BC_USR_CUA_SETUP_CLIENT, which are custom copies of the pre-delivered SAP roles.

Now we have to create the RFC connection. To do this, we log onto the central system client 100 in system TT1 and go into transaction SM59.

image

We maintain the technical settings for the RFC connection.

image

And we maintain the communication user in this RFC connection.

What is the next step? To create a logical system for the new client 400. This is done in transaction SALE on the central system. Navigate to the menu path for logical systems and click on Define Logical System.

image

On the next screen enter a new value for TT1CLNT400 and save.

image

Then, go back with the green arrow and double-click on Assign Logical System to Client. On the next screen double-click on client 400.

image

Assign the logical system TT1CLNT400 to client 400.

Please note that the setup of the CUA landscape in our example spares us the burden of creating an RFC connection from the new daughter system client 400 back to the CUA central client 100, because we are in ONE system only, namely the TT1.

What is left to do? Well, all you have to do now is go into transaction SCUA, add the new child system TT1CLNT400 there, and click on save. Let us do it.

image

After you have saved your entries, you will see the following logs.

image

So, activities you formerly had to do yourself like creation and generation of the ALE partner model and input of methods in the ALE model are now done AUTOMATICALLY for you.

If you have not configured it yet, you can now maintain the field distribution in transaction SCUM. This transaction allows you to configure on a field level where you want to allow fields of the user master record to be maintained. Optionally you can just take the SAP defaults. So there is nothing to configure in transaction SCUM. The defaults will be distributed when you activate the CUA with transaction SCUA.

Then, you can migrate the users from child system 400 into the central system 100 using transaction SCUG.

For more information on CUA and how to implement it please take a look here: SAP Security Homepage” -> Security in Detail -> Identity Management -> Centralized Administration -> Cookbook: Central User Administration (Web AS ABAP 6.20 or higher release)

Hopefully, this weblog has shown how easy it has become to implement CUA. The crucial transaction SCUA has been powerfully enhanced, so that you are spared the burden of a lot of manual configuration. I hope you enjoy implementing CUA.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Gerlinde Zibulski is a Security Product Manager for SAP.

Add comment August 19th, 2006

ULM206: Landscape Strategies for the System Landscape Directory of SAP NetWeaver by Boris Zarske

ULM206: Landscape Strategies for the System Landscape Directory of SAP NetWeaver
Boris Zarske SAP Employee
Business Card
Company: SAP AG
Posted on Jul. 28, 2006 11:17 AM in
Application Server, Java Programming, SAP Exchange Infrastructure (XI), SAP NetWeaver Platform

URL: http://www.sapteched.com

Subscribe. Subscribe
Print. Print
Permalink Permalink

Landscape Strategies for SLD

“How many SLDs do I require?”

“Which applications rely on SLD data?”

“How can I synchronize my SLDs - today and in the future?”

“Where to run my SLD?”

Sound these questions familiar to you? Then, the SAP TechEd ‘06 session “Landscape Strategies for the System Landscape Directory of SAP NetWeaver” (ULM206) could be interesting for you!

Although system landscape directory of SAP NetWeaver (SLD) is defined as central provider of information about your system landscape, there are cases where you might require more than one SLD in your system landscape. Therefore, it is a good idea to think about a strategy how to introduce and run SLD in your system landscape.

After a short introduction to SLD itself, you will learn basic SLD concepts, options, relevant aspects, and examples how to integrate SLD in your landscape. Also, you will get an outlook to upcoming features that could influence your strategy as well.

As a result, you should get a foundation to analyze your requirements and decide how many SLDs you require, if/how to synchronize them and where to run them in your landscape.

My colleagues Matt Kangas (SAP TechEd ‘06 Las Vegas), Yu-Nong Zhang (SAP TechEd ‘06 Bangalore), and I (SAP TechEd ‘06 Amsterdam) are looking forward to welcome you in our session!

Boris Zarske is a Senior Product Specialist for SAP

Add comment August 19th, 2006

3-step Java Single Sign On by Troy Shane

3-step Java Single Sign On
Troy Shane
Business Card
Company: Clockwork Inc.
Posted on Aug. 08, 2006 11:38 PM in Application Server, Enterprise Portal (EP), SAP NetWeaver Platform

Subscribe. Subscribe
Print. Print
Permalink Permalink

Single-Sign on in your SAP Landscape has changed with the gradual introduction of the SAP Web AS Java for use with each of your applications. With the delivery of SAP’s most widely used J2EE application, the SAP NetWeaver Portal; and the use of the Web AS Java for many other Java applications being delivered by SAP, there is an increasing need for the Java Engines within your enterprise to be enabled for Single-Sign On.

Overview

This article will use a real-life, 3 step example of Integrating Single-Sign On between two SAP Portals, to illustrate how to use SAP Logon Tickets for J2EE Application SSO. Using this single-sign on capability, your users will be able to move seamlessly between your different SAP Web AS Java systems, without having to re-enter their passwords.

  • The Portals systems used in the example are both SAP NetWeaver Portal (NW04s) systems.
  • Both Portals use the same ABAP Central User Administration (CUA) system as their authentication source (User accounts already exist in this CUA system, and basic authorization is in place)
  • Both Portals User Management Engines (UME) are configured and allow logon using these user names, and generate SAP Logon tickets.

In this example, we are going to go through 3 basic steps in order to enable this SSO capability:

1. Key Exchange – As the basis for any of the SAP System Trust relationship, we will need to take the Public key from each of the SAP Systems and exchange them, to allow non-repudiation. This step allows each of the Portal system to be certain that the SAP Logon ticket it receives was really created by the System it has been told to trust.

2. User Store Adjustment – This is where you define which systems are to be trusted by the Enterprise Portal System. After Step 1, the Portal has the Pubic Key, but it still has not been told who to trust. Here we define a Trusted System with 3 parameters, so that it can match them to the proper key in the Keystore.

3. Adjust JAAS Login Module Stacks – After the trusted system has been defined, you still must adjust the login module stacks for two reasons:

  • You want to adjust them to tell the J2EE Engine what order it should interpret different login mechanisms, and what is sufficient (i.e., look for login ticket, then password, then digital certificate etc)
  • You want to identify very specifically which systems that the J2EE Engine will trust, from the list of systems defined in step 2.

The reason for the complexity of the steps #2 and #3 is that it allows you a level of granularity of control about who is able to log on to your SAP Web AS Java, without being challenged for a password. It may seem like a pain, but it’s a necessary one.

Step 1: Key Exchange

The first step in the Single Sign-On setup is the key exchange between the two Portals, enabling the Portals to ensure that the communication is coming from a trusted source.

Download

    1. In order to exchange the keys, first we must grab them by logging into each of the Portal’s with the Administrator user.

    2. You then navigate to the System Administration -> System Configuration -> Keystore Administration -> Content Tab

    image

    3. Once there, you select the “ticketKeyStore” and the “Certificate: testkey” Click on the:

    Download verify.der File” button, and name the file SIDverify.der (In our example: EP1verify.der). This is to distinguish the keys from each other when you have them saved on your file system and wish to upload them again.

    4. Repeat this procedure for the other portal system, EP2, and save the downloaded EP2verify.der file in the same directory as the first DER file.

Upload

    1. The next step in exchanging these keys is the upload of the corresponding keys into the other servers Keystore.

    2. Navigate to the System Administration -> System Configuration -> Keystore Administration -> Import Trusted Certificate tab.

    image

    3. In the EP2 system, click on the “Browse” button and navigate to the Ep1verify.der file that you downloaded earlier. Give it an appropriate alias, like EP1 and click on Upload.

    4. Once uploaded, log into the OTHER portal system as administrator, and repeat the steps, except this time uploading the Ep2verify.der file and using the Alias EP2.

That completes the Key exchange

Step 2: User Store Adjustment

Once you have exchanged the keys of the servers that are designated to trust each other, you will need to adjust their user stores, so that they are able to accept the SAP Logon tickets that are generated as cookies in the browser, by their counterpart portal upon the user initial login. This step defines which J2EE servers SAP Login tickets that the EvaluateLoginTicketModule will accept.

Open the Visual Admin Tool

    1. Log into J2EE Visual Admin tool on EP1

    2. Server node -> Services -> Security Provider

    3. Runtime -> User Management tab

    4. Click on Edit (pencil)

    5. Click on “Manage User Stores” button(Bottom-right hand corner)

    6. Select the “UME User Store” and corresponding “EvaluateLoginTicketModule“:

      image

      a. Click on “View/Change Properties

      b. Add in the three corresponding options for:

        Trustedsys1 = EP2,000

        Trustediss1 = CN=00,OU=EP2,OU=DE,O=mySAP.com Workplace,C=DE

        Trusteddn1 = CN=00,OU=EP2,OU=DE,O=mySAP.com Workplace,C=DE

      c. Once you have added the definition of the Portal J2EE System into the Login module, repeat the process on the other Portal System.

    Click OK.

    (Please Note that the parameters defined in this section need to correspond EXACTLY to the SID of the system, and the values laid out in the Keystore Administration under “DN of Owner” and “DN of issuer“. Copy and Paste the values from the actual Keystore iview, where possible, to avoid error.)

image

Step 3: Adjust JAAS Login Module Stacks

In order to instruct the J2EE Engine to accept SAP Logon Tickets generated by another J2EE Server, we need to be certain that our J2EE Server is set up to look for, interrogate and authenticate using other systems’ SAP Logon Tickets, before it challenges the user with a username and password.
The SAP JAAS (Java Authentication and Authorization Service) Login Modules define which J2EE Applications allow/check for which authentication options.

In our case, we will want the SAP Enterprise Portal to:

    i) Look for an SAP Logon Ticket, and allow authentication based on that, should it be valid.

    ii) Ask for a Username and Password.

    iii) If that username and password are correct, generate an SAP Logon ticket so that subsequent SAP ABAP Systems (R/3 for example) can be accessed without being further prompted for a username/password.

Open the Visual Admin Tool

    1) Log into J2EE Visual Admin tool on EP1

    2) Server node -> Services -> Security Provider

    3) Runtime -> Policy Configurations tab

    4) Select the Ticket Component

    5) You will see here the Login Module stack for the ticket authentication, and we will need to adjust the Evaluate Ticket login Module.

    6) Change to Edit Mode (pencil)

    7) Highlight the com.sap.security.core.server.jaas.EvaluateTicketLoginModule

    8) Click on Modify.

    9) Here you will see the module configured with the option ume.configuration.active = true

    10) We will need to add in the three parameters maintained in Step #2, when we adjusted the UME User Store:

      trustedsys1= EP2,000

      trustediss1= CN=00,OU=EP2,OU=DE,O=mySAP.com Workplace,C=DE

      trusteddn1= CN=00,OU=EP2,OU=DE,O=mySAP.com Workplace,C=DE

image

Summary

Once the J2EE Engines have each been restarted, and one of your users logs into one of the Portal systems, as long as they have the same user name in both systems, and you have followed the steps related above, they will not be prompted when they navigate from one Portal to another. (Please keep in mind that this SSO capability is dependent on the SAP Logon Ticket still existing, so you cannot log out of the Portal and expect this to still work.)

Enjoy!

Troy Shane is a Consultant in SAP Netweaver for www.clockwork.ca

Add comment August 19th, 2006

SP15: XML Content and Actions by Daniel Wroblewski

SP15: XML Content and Actions
Daniel Wroblewski SAP Employee
Business Card
Company: SAP
Posted on Jun. 13, 2006 01:28 PM in Enterprise Portal (EP)

Permalink

 

    Print. Print

It took 3 months, but finally here is the last blog about the major features that were added to SAP NetWeaver Portal 2004, SP15. 

Today we look at the changes to the XML Content and Actions tool, which lets you automate the creation of portal content. Instead of using the administration interfaces to create iViews, pages, worksets, roles and other portal objects, you can simply upload an XML file with all the information and — poof! — all you content is created.

The tool is good if you are designing content on a test machine, and then you want to create the content on another machine. Also, if you need to create a lot of objects that are similar — several roles with similar structure; you create the XML for one role, and simply duplicate it in the file and upload the file.

In addition, some companies design their content based on some back-end data, or use some tool (such as Excel) to define the content. From Excel, for example, you can then create a small conversion algorithm to export the Excel data to XML, and then upload the XML.

The tool is a lot like the PCD Inspector, in that it provides a type of backdoor for modifying PCD content. And like the PCD Inspector, you must be careful and check your XML, as you can create a lot of content — but also do a lot of other things, perhaps unintentionally, to harm the portal.

A Quick Review

Open the tool by going to System Administration –> Transport –> XML Content and Actions.

image

The import tool lets you upload a well-formed and valid XML file. After you export the file, the portal parses it and creates the portal objects and performs the actions defined in the XML. A report of the execution is displayed, showing what objects were created, what actions were performed, what sections did not parse correctly, and so forth.

image

How to Write XML to Create Content

The XML for the XML Content and Actions tool is, essentially, a collection of tags, possibly nested, and each tag defines an object to create, modify or delete. The type of object is specified by the handler name provided in the objectClass attribute.

For example, to create an iView, you specify com.sapportals.portal.iview.

You can also add tags, that specify an action — such as deleting all objects from a folder, running another script, or assigning users to groups. These tags are not nested.

The following is an example file that creates a folder, a workset in the folder, a page in the workset, and an iView in the page:


   
   

   
   

      
      

         
            
               
            
         

         
          template=”portal_content/com.sap.pct/admin.templates/pages/${namespace}.portalpagetemplate”
objectClass=”com.sapportals.portal.page” create_as=”1″
title=”User Data Import Page”>

            
            

               
                  
                     
                  
               
            
         
      
   

What’s New

The main addition in SP15 was the addition of an export tool, that lets you take existing content and create an XML file based on it. You can then take this XML file, modify as needed, and upload the file so that the content — or similar content — is created on the same portal, perhaps in a different area, or on another portal.

With the tool, you do not need to code XML by hand. You can design the skeleton of what you want and export it to XML. You can then modify the attributes, copy the elements to create additional objects, and so forth.

In addition, a large group of handlers were added in SP13, with which you still may not be familiar. The following objects can now be created:

  • Translation worklists
  • Related items (of iViews)
  • System aliases

The following actions can now be performed:

  • Run a script from within another script
  • Copy and mirror content
  • Assign users to groups and roles

Documentation

And, of course, we have a document that explains all the rules for building a valid XML file for the XML Content and Actions tool. It also lists all the objects you can create and all the actions that you can perform.

The documentation is located at How to Automate Content Creation via XML.

Daniel Wroblewski is an information developer for SAP, focusing on documentation for portal developers.

Add comment July 4th, 2006

Days in the Life: Situation Analysis from the point of view of a BPX by Helen Sunderland

Days in the Life: Situation Analysis from the point of view of a BPX
Helen Sunderland SAP Employee
Business Card
Company: SAP Canada Inc.
Posted on Jun. 26, 2006 10:00 AM in Business Process Expert

Permalink

    Print. Print

You’re a BPX, it’s Monday morning and you’ve arrived at a brand new client. You have a limited engagement of one week. Your mission: to produce documented recommendations for new technology supporting an existing business process requiring some redesign. How do you get the job done?

This scenario is a common occurrence to the Business Process Expert who functions as the ‘hired gun’. It is not uncommon for the BPX to be called into situations which require high- to mid-level analysis and a quick, but comprehensive set of recommendations as output.

To accomplish this task, the BPX must deal with the following factors:

- quickly developing a relationship with the client, to establish trust and credibility
- sorting through the business issues, often with little or no understanding of the client’s business or particular circumstances
- analyzing the technology in place and understanding the future of the landscape (i.e., upgrades, etc.)
- designing (at a high-level) various alternate solutions
- creating thorough recommendations (and the corresponding document).
How does a BPX quickly establish a relationship with a new client?
To establish trust and credibility, it is important for the BPX to become a ‘trusted advisor’ to the client as quickly as possible. Sometimes the client is aware of the BPX’s profile and history; however, regardless of the client’s prior knowledge, it is still imperative that a face-to-face relationship be established to increase the productivity of interaction between the client and BPX.

Clear communication is key between a BPX and any client, but particularly essential in a short-term assignment which results in ultimately influencing business change. Some of the tactics of a BPX for creating a relationship should include:

- listening attentively to the client (often they drop hints about the pains in their culture; sometimes they may actually be explicit)
- active listening: asking questions for clarity
- demonstrating forthrightness: be clear that you do not have a hidden agenda, and that you are working for them
- briefly outlining your own experience in two minutes or less, focusing on other occasions where you were a trusted advisor

Typically, this openness will precipitate a comfortable, receptive relationship which facilitates your getting the information you need to create your conclusions.
How can a BPX sort through business issues when he/she knows nothing of the client’s business?

This can be a tricky situation and often requires reliance on two things: your past experience and intuition. However, that’s sometimes easier said than done.

It is easy to feel like a fish out of water in a foreign environment, however one of the surest ways to gaining an understanding of the client’s business environment and issues is by listening for similarities to your own past experiences. Often situations, although radically different in exterior application, can be very similar in nature at their core.

By actively listening to the client and asking clarifying questions regarding business priorities and areas of greatest pain, a BPX can quickly get a sense of where the most urgent concerns exist. Generally, this will naturally become evidence to formulating recommendations.

It is critical to accumulate information that forms the “bigger picture” which includes the client’s culture, technical environment and political landscape. Having this bigger picture can direct the recommendations to solve very specific issues.
Analyzing the technical environment

While seemingly straightforward, it is often necessary to dig deep into the system landscape only to ensure that nonconforming systems are indeed identified in any formal architecture discussions. No one likes surprises at the end of an assignment where he/she discovers that there was a complete application built for one area of the business outside of the main landscape, which executed the exact requirements of the consulting assignment! Know all the players involved, even if you must unearth clues through your listening.

Also, ensure that a complete technical landscape is provided to you, inclusive of the go-forward plan for technical upgrades. This can impact the timing of implementation of your recommendations or can drive to a phased implementation approach.
Now that I have the information I need, how do I design the solutions?

This step typically involves your own personal style. Generally speaking, the recommended solutions will begin to become apparent throughout your discussions with the client. As the client unfolds their circumstance and explains their issues, the possible solutions often naturally ‘fall out’ of the analysis.

Again, the development of solutions is reliant on your own knowledge and experience, and in cases where some information may not be available, a healthy dose of your own intuition may be required. More often than not, implementation of similar solutions follows a similar path at its most fundamental level. Intuition, then, can be useful in making a best guess on high-level timing of a project or an approach to phasing-in a solution.
And, finally, I have to write the recommendations document: what should I address?

Typically, a comprehensive document should include the following sections:

- Introduction (why is this document being created) - Scoping Summary (when the exercise and occurred and what the general outcome was)
- Detailed Business Process Information of the specific scope reviewed
- Alternative Recommendations (a text description of the recommended solutions)
- Organizational Impact Assessment (how will the organization be affected)
- Interfaces (a brief description of any foreseen technical interfaces into the new solution)
- Security, Authorizations and Roles (how the new solution will impact who does what in the organization, both from a business and a technical point of view)
- Integration Points (what other parts of the business and technical landscape may be affected by the new solution)
- Training Requirements (at a high-level)
- Description of Improvements and Business Benefits (a brief summary)
- Resource Estimates of the main actions to be taken to implement the solution
- Proposed Timing of the Activities
- Issues (any issues within the organization which have been identified and must be addressed as part of the project)
- Key Success Factors (what will it take to make the project successful)
- Project Assumptions (what was assumed to create the recommendations and resource estimates)

Closing thoughts…
The expectation of the client is that the BPX has the knowledge, expertise, ability and confidence to ‘hit the ground running.’ This can be a tall order in politically difficult situations, however by sticking to the basics of analysis and design as discussed above, the BPX has excellent odds of being successful under most circumstances. These tactics have worked for me and for others. Honing one’s skills through repeated exercise is the key for owning the process of quick situation analysis.

 

 

 

Helen Sunderland is a senior SAP consultant specializing in Business Intelligence. Her role at clients primarily requires Business Process Expert skills and, as such, she is an advisor to the SAP Business Process eXpert Community.

Add comment July 4th, 2006

Geocode Business Partner with Google Maps by Gregor Wolf

Geocode Business Partner with Google Maps
Gregor Wolf
Business Card
Company: Siteco Beleuchtungstechnik GmbH
Posted on Jun. 27, 2006 06:13 AM in ABAP, Beyond SAP, Business Server Pages, Business Solutions, Interoperability, SAP NetWeaver Platform, Technologies

Permalink

    Print. Print

Update: Have also a look at Geocoding - the next step: Routing with Map24 AJAX API

Inspired by Eddy De Clercq’s SDN World Map and the German Podcast Pimp My Brain where they introduced me into Google Maps I’ve tried out to combine this with our SAP CRM People Centric User Interface (PC-UI). The result is this little BSP application which uses ABAP Object Persistence Service and Simple Transformations.

During my research about geocoding in a SAP environment I found Geocoding for BW and Geocoding for Business Partners. You find more information about this topic in the SPRO customizing transaction at SAP NetWeaver -> General Settings -> Set Geocoding. Unfortunately I’ve found no documentation how to implement this standard interface and I implemented my own. External Geocoding solutions can be found in the Partner Directory Solution Search. SAP Notes regarding Geocoding can be found in the OSS Application Area BC-SRV-GEO.

There is also an SDN Article “Using Geo Services with Web Dynpro” which uses the standard interface which calls external providers using the IGS.

But now let’s start to build our solution which will result in:

image

Preparation

Sign up to the Google Maps API

To use Google Maps you have to Sign up for the Google Maps API. You have to provide the web site URL which must exactly match your WebAS URL including the Port. I. e. http://webas.test.com:8000/. After the sign up you get a sample HTML Source which you can save locally and play around using the API Documentation.

Create Database Table for Geocoding Data

I’ve put all development objects together in the Package ZBPGOOGLEMAP:

image

Here I’ve created also the DB Table ZBPGEOCODE which will contain the Geocode information for a Business Partner (BP). To detect changes on the BP I also save Street, Street No., Postal Code and City in this table.

image

Create Persistent class for Geocoding Data

A long time ago I’ve read Thomas Jung’s Weblog on “ABAP Persistent Classes: Coding without SQL” but never tried it on my own. But here I’ve done it and created the Class ZCL_BPGEOCODE which is from Class Type “Persistent class”. All the rest is described in detail in the mentioned Blog. Be aware that you have to use the DB Table ZBPGEOCODE.

Transform Google KML to ABAP

I did not attend the ABAP Online Meet-up on Simple Transformations but it inspired me to use this to transform the return of the Geocoding HTTP Request into an ABAP Structure. To test the Transformation I first downloaded the result of this request to my local drive:

http://maps.google.com/maps/geo?q=Neurottstr.+15a,+Walldorf,+DE&output=xml&key=…

Don’t forget to use your key which you’ve got after sign up at Google Maps. The result of the request looks like this:

The main problem for me was the Namespace used by the Google KML Format. To get access to the components I had to add this line to the “xsl:transform” element:

Also be aware that the Values which should be transferred to ABAP Variables, Structures or Tables must be Uppercase. Here is the complete XSLT which I’ve saved as ZGOOGLE_GEOCODE_TO_ABAP:

When you test the Transformation you should get this result:

Implement the BSP

Now we can put the elements together and create the BSP Application ZBPMAP with the Page default.htm. Please maintain this Page Attributes:

Attribute Auto Typing Method Associated Type
address   TYPE STRING
bp X TYPE BU_PARTNER
mapcenter   TYPE STRING

Here is the layout:

Please note that you have to insert your Key. Finally the Event Handler OnInputProcessing:

Also here insert your own key to the generated URL. The result is this little BSP Application which provides a Map with a marker where our Business Partner is located.:

image

To combine this BSP with the PC-UI of CRM please have a look at my Blog: “Use CRM PCUI HTML viewer to call a custom URL”.

Gregor Wolf is the Webmaster of www.siteco.de and owner of Computerservice Wolf

Add comment July 1st, 2006

SAP Business One SDK Version 2005

SAP Business One SDK Version 2005

 

 

SAP Business One SDK enables partners and customers to extend and change the functionality of SAP Business One to create industry-specific functionalities, develop missing functionalities, and create interfaces with third party tools.

SAP Business One SDK Version 2005 consists of:

SAP Business One Data Interface API (DI API)

A collection of COM objects called business objects. These objects describe various methods for updating, retrieving, and manipulating data in the SAP Business One database.

SAP Business One User Interface API (UI API)

A collection of Distributed Component Object Mode (DCOM) objects that provide access to menus, forms and controls within these forms. DCOM is a standard interface for object communication in distributed applications

DI Server

A COM service running on a server that enables multiple clients to access and manipulate the SAP Business One company database, using SOAP version 1.1 messages.

DI Java Connector

An interface to DI API objects from Java. With Java Connector, you can conveniently get or set properties and invoke methods of the DI API objects with Java-bean-style code.

Additional development tools, Full documentation, and Samples.

 

 

Articles
Help Center
Code Samples
Articles

 

SAP Business One 2005 Release Notes (HTML 298.9 KB)

This document previews the new and enhanced features in SAP Business One 2005, designed to boost your company’s competitive edge through improved collaboration with customers, partners, suppliers, and distributors. In addition to many new and enhanced features, SAP Business One 2005 A includes major improvements to quality and stability.

SAP Business One and SDK 2005 Compatibility with Add-Ons (HTML 6.5KB)

Some changes in SAP Business One and the SAP Business One Software Development Kit for Release 2005 may cause compatibility issues with add-ons. This article provides you with important information about compatibility in order to ensure a smooth upgrade to the upcoming release.

User Interface Standards and Guidelines (PDF 2.2 MB)

The User Interface Standards and Guidelines provide best practices for designing an SAP Business One interface. They describe the structure and look of the interface and the rules used to execute the actions that affect the system.

Frequently Asked Questions on License in SAP Business One (HTML 298.9 KB)

This FAQ answers the most common questions about license issues in SAP Business One.

SDK Licensing Presentation (PDF 220.7 KB)

This presentation gives a brief overview of the new licensing mechanism and process of SAP Business One SDK.

 

Help Center

 

SDK Help Center 2005 (ZIP 39.4 MB)

The SAP Business One SDK 2005 help center provides detailed information about UI API, DI API, DI Server, User-Defined Object and Database Table Reference.

 

Code Samples

 

.NET Profiler Tool for SAP Business One (ZIP 970KB)

The SAP Business One SDK provides several programming interfaces to build your own add-on solutions. The use of these SDK interfaces requires you to follow some rules to guarantee the correct execution of your add-on. The .NET Profiler can help you to identify possible performance problems by tracing all UI-API and DI-API methods called from a .NET application and giving you the time spent on each SDK call. The .NET Profiler tool is one of the SAP Business One Test Environment (B1TE) tools.

TechEd Summit 2005 SDK Features Demo (ZIP 25.9KB)

This code sample shows how to work with forms by using the SAP Business One SDK. This sample was shown on the 2005 Tech Summit. This sample includes code showing how to: download a form designed by using Screen Painter (.srf format), use Grids, use Data Tables, use Choose From Lists, work with events in general, and add menus on Right Click event.

 

 

 

 

Page last updated 30 May 2006

Add comment June 25th, 2006

Obituary for ‘SAP NetWeaver Components’ 2003 – 2005 by Michael Eacrett

Obituary for ‘SAP NetWeaver Components’ 2003 – 2005
Michael Eacrett SAP Employee
Business Card
Company: SAP Labs, LLC
Posted on Jun. 17, 2006 07:44 AM in
ABAP, Business Intelligence (BI), Business Process Management, Enterprise Portal (EP), Integration and Certification, Java Programming, Knowledge Management (KM), Master Data Management (MDM), Mobile, SAP Exchange Infrastructure (XI), SAP NetWeaver Platform, Technologies, Application Server

Permalink

    Print. Print

I’m not sure if this should be an obituary or a eulogy entitled “Ode to SAP NetWeaver Components”? Anyway it got your attention and I should proceed. If you are involved with any SAP NetWeaver projects, this is essential for you to know.


In the late hours of October 28th 2005, the term ‘SAP NetWeaver components’ passed peacefully away into SAP product terminology history and was put to rest from future SAP NetWeaver use at SAP. They were the fortunate victims of the evolution of the single SAP NetWeaver platform. It was a very somber and poignant moment for the SAP NetWeaver teams as this page in SAP NetWeaver terminology closed and they joined other famous past terms like mySAP.com (remember the enjoy release smiley? sob sob!!), SAP R/3, SAP Basis, SAP R/2, etc.
Coincidently the date coincided with the birth of the SAP NetWeaver 2004s release of SAP NetWeaver (i.e. into the Ramp-up program).

image

Fortunately we opened a new page and SAP NetWeaver has a terminology succession plan! You may have seen a sneak preview of them at the ‘SAP NetWeaver, BW, and Portals’ conference, ASUG conferences, and our SAP TechEds.
‘SAP NetWeaver components’ have been succeeded by the IT-Practice & IT-Scenario concepts. SAP NetWeaver, the platform, will be rolled out based upon these concepts going forward. Therefore we strongly encourage you to become familiar with these new concepts as it will affect everyone who comes in contact with SAP NetWeaver or SAP NetWeaver powered by applications. They are already here!
For system administrators I suggest that you also look at the new “usage type” concept too.
My colleague, Matt Kangas, has a good introductory Blog on these concepts here. (https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/2731)
To see how IT Practices and IT Scenarios are implemented in the SAP Service Marketplace SAP NetWeaver home page click here (http://service.sap.com/netweaver)
For the people without access to the SAP Service Marketplace, for the information on the published IT Practices, click here (http://www.sap.com/solutions/netweaver/itpractices/index.epx)
And for information on the published IT Scenarios, click here (http://www.sap.com/solutions/businessmaps/6064CC13D46849EC8491E2308AA43795/index.epx)
Update: SDN is now moving to the IT Practice and IT Scenario view too: https://www.sdn.sap.com/irj/sdn/developerareas/itpractices

image
So you say, “What exactly went the way of the Dodo?” (kind of like a funeral crasher’s question “who was he? - I’m just here for the food and drinks!” ;-)
For those of you who don’t know what a funeral crasher is, it’s a wedding crasher who realized that you don’t have to bring a present to a Wake! A Dodo is a casualty of evolution or unintelligent design (not too politically correct I guess.. oops)

Well, the SAP NetWeaver components themselves evolved from the new dimension product names and were rolled into SAP NetWeaver in 2003. Unfortunately for historians the actual SAP NetWeaver component names also evolved in the short 3 years too – more times than Prince has changed his name! Did someone get paid per name change?
I’ll endeavor to explain the rationale for sending the components to the branding graveyard in the sky later in the post mortem at the end of the blog.
So moving on, here are the terms that will no longer be used going forward for describing SAP NetWeaver;

  • SAP NetWeaver Application Server (formerly SAP Web Application Server – SAP Web AS)
  • SAP NetWeaver Business Intelligence (formerly SAP Business Information Warehouse - SAP BW)
  • SAP NetWeaver Exchange Infrastructure (formerly SAP Exchange Infrastructure - SAP XI)
  • SAP NetWeaver Portal (formerly SAP Enterprise Portal – SAP EP)
  • SAP NetWeaver Mobile (formerly SAP Mobile Infrastructure – SAP MI)

    The astute readers will notice that SAP NetWeaver MDM escaped the axe, but this is only temporary until it is rolled into the SAP NetWeaver synchronized release and that’s a blog of its own on its roadmap!

Note that while the SAP NetWeaver components are no longer used by SAP for all NEW content delivered as of SAP NetWeaver 2004s, the ghost of SAP NetWeaver components past will still haunt the SAP websites and materials until SAP NetWeaver ’04 leaves maintenance (2013!). Now that’s some haunting!

As with every loss, some of the readers will have mixed feelings about this progress. We have already had some interactive discussions and we encourage feedback via SDN forums and blog discussions too - we will endeavor to follow up and to provide bereavement counseling ;-). Some of you will move on quickly to the new concepts, but some of you will have some difficulty with the loss and change – in particular the more mature SAP NetWeaver customers/partners who used these components before there was SAP NetWeaver (yes those exciting pioneer New Dimension days).
With regard to moving on, you will start to see the components phased out on SAP Service Marketplace, online help, SDN, and other SAP product information repositories – Just remember all new materials will be IT-Practice/IT Scenario based going forward. If you are looking for functionality grouping names to describe SAP NetWeaver, you still have the SAP NetWeaver ‘fridge’ with the ‘key capabilities’ listed. The fridge is not deceased, but it will continue to evolve as more capabilities are added … and there are more coming next year – of course!

The Post-Mortem:
    SAP NetWeaver components’ time has simply past, the meaning just gave out and we cannot use them to adequately describe the new integrated capabilities of SAP NetWeaver. The components segregated the technology platform into meaningful point-in-time ‘buckets’ but things have radically changed since their inception. With the new release of SAP NetWeaver (SAP NetWeaver 2004s) these buckets quite frankly do not adequately represent what IT is doing with SAP NetWeaver to deliver business solutions. SAP NetWeaver’s integration really blurs the lines between ‘old components’ and makes most of them irrelevant within the context of the platform. That is, the sum of all of the components into a whole platform means that the underlying technology can be reused and developed upon in any context. Essentially, the whole platform is greater than the sum of the parts (components).

    It’s a natural progression that occurs with most technology evolution, innovation and progress. The emphasis here is ‘progression’ as customers can easily utilize and expand using the the new IT Practice/IT Scenario concepts with their existing SAP NetWeaver deployments. No point in throwing the baby out with the bathwater!

    I’ll give a quick example:
    - In the past the SAP NetWeaver Business Intelligence (aka SAP BW) component represented data warehousing functionality running on the SAP NetWeaver Application Server (aka SAP Web AS) ABAP stack.
    - The BI capabilities of SAP NetWeaver 2004s are now built on technologies from other ‘old components’ of SAP NetWeaver and some clever new technology too! In short if we use the previous ‘component’ view, you will now need the SAP NetWeaver Portal running on the SAP NetWeaver Application Server Java stack with some special SAP NetWeaver BI Java capabilities in addition to the old SAP NetWeaver BI component to develop/deploy queries and analytical applications and to manage the Data Warehouse – Phew!. So doing the math…

    image

    Does the SAP NetWeaver BI component name still fit if you are using most of the technology of the platform?
    We don’t think so… so it’s time for the old terminology to die and a bigger, better concept to take its place.

    R.I.P.

Michael Eacrett is a SAP NetWeaver Product Manager.

Add comment June 21st, 2006

Previous Posts


Calendar

September 2010
M T W T F S S
« Dec    
 12345
6789101112
13141516171819
20212223242526
27282930  

Posts by Month

Posts by Category