SAP BPC for NetWeaver – Transports white paper
Applies to: SAP Business Process and Consolidation for NetWeaver 7.0, based on a NetWeaver BI 7.01 platform.
Summary This white paper covers the main aspects that should be considered while defining a transport strategy for SAP Business Planning and Consolidation. It describes the transport mechanisms and tools and provides an approach for managing changes in the specific context of SAP BPC. Author(s): Faycal CHRAIBI Company: SAP Created on: 24 April 2009
Author Bio Faycal CHRAIBI is a NetWeaver Technical Architect at SAP and has been dealing with SOA and Enterprise SOA for a few years. He is highly interested by end to end process integration, agility and efficient model driven architectures.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 1
SAP BPC for NetWeaver – Transports white paper
Table of Contents Applies to: .................................................................................................................................................................. 1 Summary.................................................................................................................................................................... 1 Author Bio .................................................................................................................................................................. 1 1. Transport concepts ............................................................................................................................................... 3 1.1 SAP BPC Architecture .................................................................................................................................... 3 1.2 Main concepts ................................................................................................................................................. 4 1.3 Changeability ................................................................................................................................................... 5 1.4 SAP BPC objects taxonomy ........................................................................................................................... 6 2. The Data Manager ................................................................................................................................................ 6 2.1 Custom Process Types................................................................................................................................... 7 2.2 The File Service in Data Manager ................................................................................................................. 8 3. The File Service .................................................................................................................................................... 8 4. SAP BPC Transport tools ..................................................................................................................................11 5. Solution Manager and Change Request Management integration .................................................................13 6. Applying support packages ................................................................................................................................15 6.1 Support packages for the .NET infrastructure .............................................................................................15 6.2 Support packages for SAP BPC (Netweaver infrastructure)......................................................................15 Copyright ..................................................................................................................................................................16
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 2
SAP BPC for NetWeaver – Transports white paper
1. Transport concepts 1.1 SAP BPC Architecture
SAP Business Planning and Consolidation is a four layer application composed of a client stack, a server side divided into the .NET Application front-end and the NetWeaver ABAP Application back-end, and the database server.
In the SAP BPC for NetWeaver architecture, all the data and files are stored in the database (in opposition to the Microsoft version where files were on a file server). All these data and files are logically stored into an AppSet, which is a logical container for SAP BPC, equivalent to an SAP client.
A NetWeaver Business Intelligence client can hold one or several AppSets, which are copies of an initial AppSet called ApShell. It is not recommended to make any modifications to the ApShell.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 3
SAP BPC for NetWeaver – Transports white paper
1.2 Main concepts
SAP BPC for NetWeaver leverages the NetWeaver BI infrastructure for all the major features, including info-objects, extractors and the transport layer. Following this strategy, the transport of SAP BPC objects is based on the TLOGO Framework (Transportable BI Objects).
The transports in SAP BPC are done through the transport of the whole AppSet. The transport operations are done in two steps: Upon the creation of a customizing request, the content of the source AppSet are copied (snapshot) into the shadow tables UJT_TRANS_HDR and UJT_TRANS_OBJ, which contain all the meta data describing the objects on the AppSet (step 1 from the following schema). Upon the transport import, the content of the shadow tables and those of the target AppSet are compared and then a “todo list” is created in order to make the changes, according to the steps 2 and 3.
The shadow tables contain all the metadata from the UJ* tables (BPC tables). No BI objects are transported; they are recreated from the metadata that have been transported from the shadow tables in order to create the todo list.
The only type of transport that is supported in SAP BPC is the transport of AppSets. It is not recommended to create customizing requests using the standard BI tools. This could lead to a loss of data or leftover programs or reports.
At the end of a transport import, After Import tasks may be executed (step 4). For this purpose, the function RS_APPS_AFTER_IMPORT must be called. The tasks that should be executed will be maintained in the table UJT_TRANS_STP.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 4
SAP BPC for NetWeaver – Transports white paper
1.3 Changeability
As the transport in SAP BPC is realized through the copy of the whole AppSet, SAP has set the ability to restrict the transport of certain objects through their changeability.
The changeability for SAP BPC objects is maintained through the table UJT_TRANS_CHG (accessible through transaction SE16).
There are two levels of changeability: D (Development): The objects whose changeability is set to D can be transported from one environment to the other using the BPC transport tools. Objects in non productive environment are usually set to D, unless for specific cases (exclude a specific a type of object from a transport). P (Production): Objects whose changeability is set to P cannot be transported and cannot be modified. This is usually the case for productive environments. However SAP provides the possibility to set specific types of objects changeability to D in a productive environment in order to allow their modification on the production system if needed.
The changeability for the objects can be modified by altering the property CHANGE_ID for each type of object:
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 5
SAP BPC for NetWeaver – Transports white paper
1.4 SAP BPC objects taxonomy
SAP Business Planning and Consolidation brings new types of objects to complement those already existing in the TLOGO Framework. The table below lists all the objects and their TLOGO object ID and their recommended changeability.
2. The Data Manager The data manager in SAP BPC is a module that helps managing, loading, transforming and manipulating the data.
Data manager is delivered with a set of packages that allow import, copy and move data within and across applications. It also supports a complex mapping of transaction and master data files.
The data manager is based on the Process Chain Framework delivered in SAP NetWeaver BI.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 6
SAP BPC for NetWeaver – Transports white paper
The following table provides a description of all the components in the data manager:
Object type Data manager
Description A SAP BPC module used to load, transform and manipulate data.
Package
The operational unit that a user can execute for a data process (import, export).
Task / Process type
A module that deals with a specific functionality like “load” which allows to transfer data from a file to a cube, a cube to a cube or a cube to a file. These are built on the Process Chain Framework.
Process chain
A framework provided by BW that helps to schedule packages, maintain status of running packages, wrap tasks into packages.. The process chains are the foundations for packages
Transformation file
An Excel workbook transformations
that
defines
the
mappings
Conversion file
An Excel workbook transformations
that
defines
conversions
for
data
within
data
2.1 Custom Process Types
SAP BPC offers, through the data manager, a series of packages in order to execute specific operations like importing data from a flat file or an excel file into a cube. However, the need for more complex packages might arise.
In this case, SAP offers the ability to create its own packages which are process types (tasks) based on the Process Chain Framework (which can be maintained through transaction RSPC).
Process chain example
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 7
SAP BPC for NetWeaver – Transports white paper
Once the Custom Process Type is created, it can be encapsulated into a package (process variant) which is stored on the BI level and referenced onto the BPC packages.
In order to have these Custom Process Types transported, they must implement the IF_RSPC_TRANSPORT interface; otherwise they will not be picked up during the creation of the transport request.
Note: the Custom Process Type should be moved to the BPC Packages (CPMBPC namespace) to make it available for transport using SAP BPC transport tools.
2.2 The File Service in Data Manager
The file service within the Data Manager contains the transformation and the conversion files. These cannot be transported from an environment to another hence, they will need to be uploaded manually by the Developers on each environment.
The management and versioning of these files across the different environments should be traced separately.
Note that the File Service in Data Manager is different from the File Service.
3. The File Service The file service provides a core functionality in SAP Business Planning and Consolidation for storing files. It is used in almost all processes for managing the files, from saving in an Excel workbook to storing the Client Cache files. These files can either be uploaded or downloaded as needed.
All the files in the File Service are stored in the database, usually as BLOBs, they can be accessed using transaction UJFS.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 8
SAP BPC for NetWeaver – Transports white paper
The files stored in the File Service can be transported with the rest of the AppShell content. However, before they can be transported, the table UJT_TRANS_FIL must be maintained (TC: SE16) in order to define which locations must be transported.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 9
SAP BPC for NetWeaver – Transports white paper
Snapshot of the UJT_TRANS_FIL table content
For each each kind of TLOGO object, a location must be defined. A single location might be shared for different TLOGO object types.
If we select PATTERN_ID 1 for Data Tables (TLOGO type DATT), we will display the current location of these objects and hence the pattern of files that should be transported.
In this case, all the files under the directory \ROOT\WEBFOLDERS\%APPSET%\%APP%\TEAM FILES\INSTALLATION\DATAMANGER\ will be transported.
This is defined through the * symbol which refers to “ALL”. The syntax here follows the Unix syntax for file manipulation.
Now, if we select the PATTERN_ID 2 for K2 Scripts (K2SC), the table shows the following pattern:
In this case only the files with the extention LGF under the \ROOT\WEBFOLDERS\%APPSET%\SYSTEMLIBRARY\LOGIC LIBRARY will be transported.
directory
Selecting the PATTERN_ID 4 for New files and Folders (NFIL), the table shows the following pattern:
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 10
SAP BPC for NetWeaver – Transports white paper
In this case, we only transport the directory structure to recreate it in the target system, but no file will be transported according to this pattern.
If additional locations are created for storing new files (using UJFS), their matching pattern should be maintained in the UJT_TRANS_FIL table in order to make them available for transport into the target systems. The same way, if any files were to be excluded from the transport, the pattern matching these files should be removed from the table.
4. SAP BPC Transport tools As mentioned before, the transport is leveraging standard NetWeaver BI transport framework but the content is different. When making transports in SAP BPC, all the content of the AppShell whose changeability is set to development is transported. Hence specific tools have been made available in order to create the transport requests.
The developers and functional consultants must create all their customizing requests using the transaction UJBPCTR (or call the program UJT_CRT_BPC_TR via SE38).
From this screen, they can create three kind of requests:
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 11
SAP BPC for NetWeaver – Transports white paper
Insert or Modify request: This request will transport a change from the development environment to the other environments. This action leads to the creation of a transport request after updating the shadow tables. Deletion request: This request will delete a specific change that has been applied in the target environment. This action leads to the creation of a transport request after updating the shadow tables. Only update shadow table: This action will only commit changes into the shadow tables without creating a transport request. This action will prove useful if a transport request has already been created but has not been released yet.
We may then choose the appropriate AppSet which should be transported. Optionally, we may choose to release the request immediately.
Before being able to create a transport request for a specific AppSet, you should turn it offline otherwise you will raise an exception.
The AppSet, in the target environment, should also be set offline when importing the transports. The holder of this task must have access to SAP BPC Client in order to be able to turn the AppSet offline.
When creating a transport request, according to the schema in the Section 1.1 (main concepts), the shadow tables of the specific AppSet are filled with the appropriate meta-data.
You may then : Check the entries in these tables using the program UJT_CHECK_TABLE_ENTRIES (via SE38). This can also prove useful before releasing a request in order to make sure of is being transported into the target system. Delete the content of these tables using the program UJT_DLT_TRANS_DATA (via SE38) in case the content of the tables is erroneous.
As this has been explained, when transporting an AppSet, only the meta-data describing the content of the AppSet are being transported, no objects are being transported. These metadatas are being written into the shadow table.
As there is only one set of shadow tables per AppSet, you have to synchronize AppSet transport requests among developers in order to avoid overlapping requests such as described in the following situation.
If user A makes a transport request for the Appset A1 but doesn’t release it, then user B makes a transport request for the Appset A1 as well: The entries in the shadow tables created by User A1 are deleted and replaced by the entries from the User A2’s request The transport request for user A1 becomes equivalent to the one created by user A2
In this case, there is no need to release the two transports as they are equivalent. The content in the shadow tables created by user A2 already includes the modifications made by user A1 as this content is a snapshot of the current state of the AppSet.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 12
SAP BPC for NetWeaver – Transports white paper
The transport manager will only need to import the latest request to avoid duplicate imports.
5. Solution Manager and Change Request Management integration If you are managing the transports along the maintenance track through Solution Manager leveraging the workflow and status tracking capabilities offered by CHARM (Change Request Management).
A standard SAP BPC landscape usually looks like this:
The transports in SAP BPC have natural integration in the CHARM process as they are leveraging the standard transport framework in SAP solutions.
The release manager can create the transport orders which will be used by the developers and functional consultants when creating their transport requests. Once the request has been released, the release manager can then import the request into the target system.
The management of the transport orders in SAP BPC should comply with your transport strategy including tickets management and naming conventions. As the transport of BPC encapsulates the whole AppSet, you only need one customizing request per period per AppSet to transport all the changes.
An ideal scenario for transporting BPC objects would stage through these steps:
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 13
SAP BPC for NetWeaver – Transports white paper
Due to the specific way transports are done in SAP BPC, it is recommended to: Have periodic team meetings to synchronize the transport of the AppSet between consultants (BPC change committee). As the whole content of the AppSet is transported, only one TR per period is necessary to carry all changes into the target system. Create an independent Project in Solution Manager for SAP BPC in order to have distinct import rules for regular BI transports and SAP BPC transports Define specific schedules for BPC imports: As the AppSets must be offline in order to create a transport request and in order to import them into the target system, these operations should be executed when the system can be made unavailable to users. The schedule might change from an environment to the other.
In order to be able to execute the imports in the NetWeaver BI environment, the release manager is required to have the S_RS_ALL profile on these environments.
The following table describes the authorizations required by each type of users based on their role in the transport process.
User type
Role
Profile
Release manager
-
S_RS_ALL
Consultant
SAP_BPC_ADMIN
S_RS_ALL
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 14
SAP BPC for NetWeaver – Transports white paper
6. Applying support packages When applying support packages on SAP BPC for NetWeaver, the two server layers (.NET and NetWeaver) must be aligned on the same support package level. Thus, the application of all support packages must be done on a one-shot basis before the environment is made available to the users.
6.1 Support packages for the .NET infrastructure
The application of support packages in the .NET environment of SAP BPC goes through installing the new available package. This upgrade is not incremental thus the whole .NET application is replaced with the new version.
The installation has to be manually executed on all SAP BPC environments. Refer to the release note of the current SAP BPC version/support package in order to check if any post installation actions have to be done.
The upgrade of the .NET application must be done after the ABAP stack has been updated to the appropriate support package level.
Updated howto guides might https://www.sdn.sap.com/irj/scn/wiki?path=/x/zb4
be
available
at
the
following
location:
6.2 Support packages for SAP BPC (Netweaver infrastructure)
The support packages for the NetWeaver stack of SAP BPC are applied using the SPAM (Support Packages Manager). The application of the SPs complies with the standards of change request management in SAP. Thus, they can be integrated with Solution Manager using the standard tools and methodologies.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 15
SAP BPC for NetWeaver – Transports white paper
Copyright © Copyright 2009 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Excel, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, System z, System z10, System z9, z10, z9, iSeries, pSeries, xSeries, zSeries, eServer, z/VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390 Parallel Enterprise Server, PowerVM, Power Architecture, POWER6+, POWER6, POWER5+, POWER5, POWER, OpenPower, PowerPC, BatchPipes, BladeCenter, System Storage, GPFS, HACMP, RETAIN, DB2 Connect, RACF, Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX, Intelligent Miner, WebSphere, Netfinity, Tivoli and Informix are trademarks or registered trademarks of IBM Corporation. Linux is the registered trademark of Linus Torvalds in the U.S. and other countries. Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated in the United States and/or other countries. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP Business ByDesign, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and other countries. Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Business Objects S.A. in the United States and in other countries. Business Objects is an SAP company. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.
SAP COMMUNITY NETWORK © 2009 SAP AG
SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 16