BPC Transports Whitepaper

16
SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com © 2009 SAP AG 1 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.

Transcript of BPC Transports Whitepaper

Page 1: BPC Transports Whitepaper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 1

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.

SummaryThis white paper covers the main aspects that should be considered while defining a transport strategy forSAP Business Planning and Consolidation. It describes the transport mechanisms and tools and provides anapproach for managing changes in the specific context of SAP BPC.

Author(s): Faycal CHRAIBI

Company: SAP

Created on: 24 April 2009

Author BioFaycal CHRAIBI is a NetWeaver Technical Architect at SAP and has been dealing with SOAand Enterprise SOA for a few years. He is highly interested by end to end processintegration, agility and efficient model driven architectures.

Page 2: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 2

Table of Contents

Applies to: .................................................................................................................................................................. 1

Summary .................................................................................................................................................................... 1

Author Bio .................................................................................................................................................................. 1

1. Transport concepts ............................................................................................................................................... 31.1 SAP BPC Architecture .................................................................................................................................... 31.2 Main concepts ................................................................................................................................................. 41.3 Changeability ................................................................................................................................................... 51.4 SAP BPC objects taxonomy ........................................................................................................................... 6

2. The Data Manager ................................................................................................................................................ 62.1 Custom Process Types ................................................................................................................................... 72.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 ................................................................................................................................ 156.1 Support packages for the .NET infrastructure ............................................................................................. 156.2 Support packages for SAP BPC (Netweaver infrastructure)...................................................................... 15

Copyright .................................................................................................................................................................. 16

Page 3: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 3

1. Transport concepts

1.1 SAP BPC Architecture

SAP Business Planning and Consolidation is a four layer application composed of a client stack, aserver side divided into the .NET Application front-end and the NetWeaver ABAP Application back-end, andthe database server.

In the SAP BPC for NetWeaver architecture, all the data and files are stored in the database (inopposition to the Microsoft version where files were on a file server). All these data and files are logicallystored 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 aninitial AppSet called ApShell. It is not recommended to make any modifications to the ApShell.

Page 4: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 4

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 BPCobjects is based on the TLOGO Framework (Transportable BI Objects).

The transports in SAP BPC are done through the transport of the whole AppSet. The transportoperations 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 datadescribing 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 arecompared and then a “todo list” is created in order to make the changes, according to the steps 2and 3.

The shadow tables contain all the metadata from the UJ* tables (BPC tables). No BI objects aretransported; they are recreated from the metadata that have been transported from the shadow tables inorder to create the todo list.

The only type of transport that is supported in SAP BPC is the transport of AppSets. It is notrecommended to create customizing requests using the standard BI tools. This could lead to a loss of data orleftover programs or reports.

At the end of a transport import, After Import tasks may be executed (step 4). For this purpose, thefunction RS_APPS_AFTER_IMPORT must be called. The tasks that should be executed will be maintainedin the table UJT_TRANS_STP.

Page 5: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 5

1.3 Changeability

As the transport in SAP BPC is realized through the copy of the whole AppSet, SAP has set the abilityto 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 oneenvironment to the other using the BPC transport tools. Objects in non productive environment areusually 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 bemodified. This is usually the case for productive environments. However SAP provides thepossibility to set specific types of objects changeability to D in a productive environment in order toallow their modification on the production system if needed.

The changeability for the objects can be modified by altering the property CHANGE_ID for each typeof object:

Page 6: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 6

1.4 SAP BPC objects taxonomy

SAP Business Planning and Consolidation brings new types of objects to complement those alreadyexisting in the TLOGO Framework. The table below lists all the objects and their TLOGO object ID and theirrecommended changeability.

2. The Data Manager

The data manager in SAP BPC is a module that helps managing, loading, transforming and manipulatingthe data.

Data manager is delivered with a set of packages that allow import, copy and move data within andacross 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.

Page 7: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 7

The following table provides a description of all the components in the data manager:

Object type Description

Data manager 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” whichallows to transfer data from a file to a cube, a cube to a cube or acube 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.. Theprocess chains are the foundations for packages

Transformation file An Excel workbook that defines the mappings for datatransformations

Conversion file An Excel workbook that defines conversions within datatransformations

2.1 Custom Process Types

SAP BPC offers, through the data manager, a series of packages in order to execute specificoperations like importing data from a flat file or an excel file into a cube. However, the need for morecomplex packages might arise.

In this case, SAP offers the ability to create its own packages which are process types (tasks) basedon the Process Chain Framework (which can be maintained through transaction RSPC).

Process chain example

Page 8: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 8

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 theIF_RSPC_TRANSPORT interface; otherwise they will not be picked up during the creation of thetransport request.

Note: the Custom Process Type should be moved to the BPC Packages (CPMBPC namespace) tomake 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. Thesecannot be transported from an environment to another hence, they will need to be uploaded manuallyby the Developers on each environment.

The management and versioning of these files across the different environments should be tracedseparately.

Note that the File Service in Data Manager is different from the File Service.

3. The File ServiceThe 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 storingthe 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 accessedusing transaction UJFS.

Page 9: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 9

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) inorder to define which locations must be transported.

Page 10: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 10

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 fordifferent TLOGO object types.

If we select PATTERN_ID 1 for Data Tables (TLOGO type DATT), we will display the current location ofthese objects and hence the pattern of files that should be transported.

In this case, all the files under the directory \ROOT\WEBFOLDERS\%APPSET%\%APP%\TEAMFILES\INSTALLATION\DATAMANGER\ will be transported.

This is defined through the * symbol which refers to “ALL”. The syntax here follows the Unix syntax for filemanipulation.

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 directory\ROOT\WEBFOLDERS\%APPSET%\SYSTEMLIBRARY\LOGIC LIBRARY will be transported.

Selecting the PATTERN_ID 4 for New files and Folders (NFIL), the table shows the following pattern:

Page 11: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 11

In this case, we only transport the directory structure to recreate it in the target system, but no file willbe transported according to this pattern.

If additional locations are created for storing new files (using UJFS), their matching pattern should bemaintained in the UJT_TRANS_FIL table in order to make them available for transport into the targetsystems. The same way, if any files were to be excluded from the transport, the pattern matching these filesshould be removed from the table.

4. SAP BPC Transport tools

As mentioned before, the transport is leveraging standard NetWeaver BI transport framework but thecontent is different. When making transports in SAP BPC, all the content of the AppShell whosechangeability is set to development is transported. Hence specific tools have been made available in order tocreate the transport requests.

The developers and functional consultants must create all their customizing requests using thetransaction UJBPCTR (or call the program UJT_CRT_BPC_TR via SE38).

From this screen, they can create three kind of requests:

Page 12: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 12

Insert or Modify request: This request will transport a change from the development environment tothe other environments. This action leads to the creation of a transport request after updating theshadow tables.Deletion request: This request will delete a specific change that has been applied in the targetenvironment. This action leads to the creation of a transport request after updating the shadowtables.Only update shadow table: This action will only commit changes into the shadow tables withoutcreating a transport request. This action will prove useful if a transport request has already beencreated but has not been released yet.

We may then choose the appropriate AppSet which should be transported. Optionally, we maychoose to release the request immediately.

Before being able to create a transport request for a specific AppSet, you should turn it offlineotherwise you will raise an exception.

The AppSet, in the target environment, should also be set offline when importing the transports. The holderof 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), theshadow 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 (viaSE38). This can also prove useful before releasing a request in order to make sure of isbeing transported into the target system.Delete the content of these tables using the program UJT_DLT_TRANS_DATA (viaSE38) in case the content of the tables is erroneous.

As this has been explained, when transporting an AppSet, only the meta-data describing the contentof the AppSet are being transported, no objects are being transported. These metadatas are being writteninto the shadow table.

As there is only one set of shadow tables per AppSet, you have to synchronize AppSet transportrequests among developers in order to avoid overlapping requests such as described in the followingsituation.

If user A makes a transport request for the Appset A1 but doesn’t release it, then user B makes atransport 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 theUser A2’s requestThe 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 theshadow tables created by user A2 already includes the modifications made by user A1 as this content is asnapshot of the current state of the AppSet.

Page 13: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 13

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 theworkflow 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 leveragingthe standard transport framework in SAP solutions.

The release manager can create the transport orders which will be used by the developers andfunctional consultants when creating their transport requests. Once the request has been released, therelease manager can then import the request into the target system.

The management of the transport orders in SAP BPC should comply with your transport strategyincluding tickets management and naming conventions. As the transport of BPC encapsulates the wholeAppSet, 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:

Page 14: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 14

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 perperiod 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 importrules for regular BI transports and SAP BPC transportsDefine specific schedules for BPC imports: As the AppSets must be offline in order to create atransport request and in order to import them into the target system, these operations should beexecuted when the system can be made unavailable to users. The schedule might change from anenvironment to the other.

In order to be able to execute the imports in the NetWeaver BI environment, the release manager isrequired 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 inthe transport process.

User type Role Profile

Release manager - S_RS_ALL

Consultant SAP_BPC_ADMIN S_RS_ALL

Page 15: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 15

6. Applying support packages

When applying support packages on SAP BPC for NetWeaver, the two server layers (.NET andNetWeaver) must be aligned on the same support package level. Thus, the application of all supportpackages 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 installingthe new available package. This upgrade is not incremental thus the whole .NET application is replaced withthe new version.

The installation has to be manually executed on all SAP BPC environments. Refer to the releasenote of the current SAP BPC version/support package in order to check if any post installation actions haveto be done.

The upgrade of the .NET application must be done after the ABAP stack has been updated to theappropriate support package level.

Updated howto guides might be available at the following location:https://www.sdn.sap.com/irj/scn/wiki?path=/x/zb4

6.2 Support packages for SAP BPC (Netweaver infrastructure)

The support packages for the NetWeaver stack of SAP BPC are applied using the SPAM (SupportPackages Manager). The application of the SPs complies with the standards of change request managementin SAP. Thus, they can be integrated with Solution Manager using the standard tools and methodologies.

Page 16: BPC Transports Whitepaper

SAP BPC for NetWeaver – Transports white paper

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com© 2009 SAP AG 16

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 SystemsIncorporated 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 ofCitrix Systems, Inc.

HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, MassachusettsInstitute 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 byNetscape.

SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP Business ByDesign, and other SAP products and services mentionedherein 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, andother Business Objects products and services mentioned herein as well as their respective logos are trademarks or registeredtrademarks 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 documentserves 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 ("SAPGroup") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors oromissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in theexpress warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting anadditional warranty.