ABAP Add-On: Usage & Packaging

Similar documents
POWL: Infoset Generation with Web Dynpro ABAP

Easy Lookup in Process Integration 7.1

Standalone BW System Refresh

This article explains the steps to create a Move-in letter using Print Workbench and SAPScripts.

Integration of Web Dynpro for ABAP Application in Microsoft Share Point Portal

Purpose of Goods Receipt Message indicator in Purchase Orders

Server Connectivity and Data Load from Non SAP System to BW

Creating Custom SU01 Transaction Code with Display and Password Reset Buttons

How to Default Variant Created for Report Developed In Report Painter/Writer

Internationalization in WebDynpro ABAP Applications

Graphical Mapping Technique in SAP NetWeaver Process Integration

SDN Community Contribution

A Step-by-Step Guide on IDoc-ALE between Two SAP Servers

Using Radio Buttons in Web Template

ecatt Part 6 System Data Container

MDM Import Manager - Taxonomy Data (Attribute Text Values) Part 3

Creating, Configuring and Testing a Web Service Based on a Function Module

ABAP HR: Standard Info Type Enhancement

Limitation in BAPI Scheduling Agreement (SA) Create or Change

SAP NETWEAVER - TRANSPORT MANAGEMENT

Creation of Sets in SAP-ABAP, How to Read them INI SAP-ABAP Reports

Dynamically Enable / Disable Fields in Table Maintenance Generator

Material Listing and Exclusion

About ITAB Duplicate_Key (SAP lrsaods) Runtime Error

A Step-by-Step Guide on IDoc-to-File Using Business Service in the XI Integration Directory

Material Master Archiving in Simple Method

Linking Documents with Web Templates

Step By Step Procedure to Implement Soap to JDBC Scenario

Open Text DocuLink Configuration - To Access Documents which are Archived using SAP

MDM Syndication and Importing Configurations and Automation

SDN Community Contribution

Creating Rules in Process Composer and using them in Process

MDM Syndicator: Custom Items Tab

How to Create Top of List and End of List of the ALV Output in Web Dynpro for ABAP

ABAP: Table Maintenance Events

SDN Community Contribution

Web Dynpro: Coloring Table Conditionally

A Step-by-Step Guide on IDoc-to- JDBC Using Business Service in the XI Integration Directory

How to Reference External JAR Files in Web Dynpro DC in SAP NW Portal 7.3

Displaying SAP Transaction as Internet Application in Portal

Step By Step: the Process of Selective Deletion from a DSO

SAP IS-U Migration Workbench: Step by Step EMIGALL

Dialog Windows in WebDynpro ABAP Applications

Table Row Popup in Web Dynpro Component

Web Dynpro ABAP: Changing ALV Contents and Saving in Database

E-Sourcing System Copy [System refresh from Production to existing Development]

Information Broadcasting Part 3 Scheduling the First Report

Printer Landscape Made Easy!!

Creation of Key Figures with Higher Decimal Place Precision

Steps to Activate ALE Delta for Custom Master Datasource Created on ZTable

Step by Step Procedure for DSO Creation

Administrating ABAP+JAVA and SLD Problems of SAP PI 7.1

How to Create Tables in MaxDB using SQL Studio

Generate Export Data Source

Web Dynpro ABAP: Dynamic Table

Setting up Connection between BW and R/3 for Data Load

Financial Statement Version into PDF Reader

Freely Programmed Help- Web Dynpro

DB Connect with Delta Mechanism

SDN Community Contribution

Creating Multiple Methods/Operations and Exposing BAPI as a Webservice

B2B Integration Using Seeburger AS2 Adapter with PI 7.1 Ehp1

Security Optimization Self Service A Real-life Example

Fetching User Details from the Portal and Displaying it in Web Dynpro with Authentication in the Portal

Triggering the Process Chains at Particular Date using Events

Table Properties and Table Popin

Step by Step Guide on How to Use Cell Definition in BEx Query

External Driver Configuration in Process Integration 7.1 Using JSPM

SAP BusinessObjects Translation Manager Functionality and Use

How to use Boolean Operations in the Formula as Subsidiary for IF Condition

Recreating BIA Indexes to Address the Growth of Fact Index Table

Extracting Missing Fields of Data Source Which Are Present In Their Extract Structure

SUP: Personalization Keys and Synchronize Parameter

Load Info Cube in SCM 5.0 (BI 7.0)

Maintaining Roles and Authorizations in BI7.0 - RSECADMIN

Solution to the Challenges in Pivoting

Data Source Replication and Activation of Transfer Structures

Upload Image file from system in Web dynpro view

Custom Password Reset Tool in SAP Enterprise Portal Using Web Dynpro for Java

Analysis Process Designer (APD) Step by Step Business Intelligence

Data Extraction & DS Enhancement in SAP BI Step by Step

SDN Community Contribution

Implementing Customer Exit Reporting Variables as Methods

Troubleshooting Your ABAP Programs: Using Coverage Analyzer

Step-By-Step guide to Virtual InfoCube Implementation

Data Mining: Decision Trees

Federated Portal Network Remote Role Assignment Step-by- Step Configuration

How to Configure User Status in mysap SRM

Step by Step Guide for PI Server Start and Stop Procedure

Using Nested Exception Aggregation in BEx Reports- Scenario

SAP Technical Upgrade Tips and Tricks

Reading Enhanced DataSource fields for the Remote Cube

Replacement Path: Explained with an Illustrated Example

How to Create and Execute Dynamic Operating System Scripts With XI

SMT (Service Mapping Tool)

Customized Transaction to Trigger Process Chain from Failed Step

Data Flow During Different Update Mode in LO Cockpit

How to Create View on Different Tables and Load Data through Generic Datasource based on that View

Data Mining: Scoring (Linear Regression)

Routines in SAP BI 7.0 Transformations

Transcription:

Applies to: SAP NetWeaver higher than 4000 ABAP For more information, visit the SAP Integration & Certification Center homepage. Summary This article is dedicated to ABAP ADD-ON. The article elaborates features, usage and advantages of ABAP- Add-On. We will also see packaging of ABAP Add-On using SAP AAK. Author: Ms. Deepika Singh Company: L&T Infotech Created on: 12 January 2009 Author Bio Deepika Singh is an ABAP consultant working in L&T Infotech. 2009 SAP AG 1

Table of Contents Introduction...3 What is ADD-ON?...3 What is AAK?...3 Advantages of Delivering Software as Add-On:...4 Few More Pre-Requisites:...4 How we make ADD-ON using AAK?...5 What we do in development system?...6 Maintaining the namespace...6 Creating Software Component...7 Checking system change option (SE03)...9 Assigning package to software component...11 What all we do in Consolidation system?...11 Creating Delivery Request...11 Naming Convention...12 Creating Change Piece List...12 Creating Component Piece List...19 Creating Exchange Component Piece List...20 Releasing the Delivery Component...21 Creating Delivery Package from component list using software delivery Assembler...21 Registration and PAT file generation....23 Generation of password...24 Confirmation and Final Release of Delivery...25 Related Content...27 Disclaimer and Liability Notice...28 2009 SAP AG 2

Introduction This tutorial is intended to explain the Creation of ABAP Add-On Installation Package Using ADD-ON Assembly Kit (AAK). We get to know the prerequisites for using AAK and an introduction into working with the same. This article also briefs us, the relevant steps for creating a delivery request and registering it as an installable package. What is ADD-ON? Add-On is one of the means of delivering our software to the client. It s a package which contains the entire requests specific to a development and is made using an Add-On assembly Kit which has to be installed to the server prior to packaging. We can deliver software that is supplementary to the SAP standard in different ways, namely: In the form of transport requests As Add-Ons Add-Ons are not allowed to modify SAP Kernel objects or SAP Basis objects, and are not dependent on a specific database or operating system. Third-party software vendors may purchase an SAP development license and the ABAP workbench in order to enhance SAP applications with Add-Ons. Because these third-party ABAP Add-Ons are to be transported into existing SAP customer code with their own registered namespaces, SAP offers the ABAP certification program to ensure that the installation adheres to SAP guidelines and runs smoothly. What is AAK? AAK is a tool that allows packaging of ABAP Add-Ons developed by Independent Software Vendors (ISV).Once an ABAP Add-on is packaged using AAK; it can easily be installed and upgraded in the customer s system. One of the important features of AAK is that it performs syntax check during packaging and thus enables us to deliver an error free package. The SAP Add-On Assembly Kit (AAK) was introduced to SAP customers with SAP R/3 Release 4.6C and is recommended for proper distribution of any ABAP Add-On. It is available to third-party vendors as part of the ABAP certification process and conveniently packages the Add-On for easy implementation in an SAP system landscape. 2009 SAP AG 3

Advantages of Delivering Software as Add-On: Compared to the alternative of delivering software with transport requests, add-ons offer the following advantages: Information about installation prerequisites While creating Add-On certain prerequisites are maintained, this avoids any errors/warnings while we import Add-On to any server. While making ADD-ON few prerequisites has to be set : 1. What SAP standard release do you want to develop the add-on in? 2. Which SAP standard releases do we want to support? 3. Maintenance strategy for the customer delivery 4. Necessity of modifications to the SAP standard 5. Dependencies with other ADD-ONs 6. Language in which the ADD-ON has to be delivered Information about the installation sequence All the transport requests contained in the ADD-On are already in the sequence required so we don t face installations sequence problem later on. Conflicts with other software components can be resolved There are specific ADD-ONs called Conflict Resolution Transport (CRT) which resolves conflicts between SAP Support package and all the add-on deliveries for one add-on release. Conflicts with customer modifications can be resolved The installation or upgrade process is guaranteed Anonymization of the objects Visibility of the delivered software status Few More Pre-Requisites: Some software solution providers who integrate their products with SAP solutions decide to write an ABAP Add-on for more seamless integration or to add functionality or interfaces to the SAP solutions. ABAP development license is required to register our own namespace, to receive the Add-on Assembly Kit (AAK), and most importantly to re-sell our ABAP code. For developing our own ABAP code we should register a namespace with SAP and all our objects and development classes must be part of this namespace. Applications certified as ABAP Add-ONs will be listed in the online partner and product directory on SAP s Homepage. We must know how to install and copy SAP systems and work with transport and change requests. Basic knowledge of ABAP programming and software maintenance. ADD-ON doesn t support SAP Netweawer 2004. We must have two systems a development system and a consolidation system. We can set up these systems by either installing new ones or copying existing ones. System must have current SPAM/SAINT update installed. AAK must be installed in both the system. For both systems, we need to make settings: such as client layout and transport routes, set parameters for transport control program tp and set parameters LANGUAGE and LSM. Test system is also needed to perform final assembly and functional tests. The above mentioned pre-requisites are fulfilled and checked by BASIS team. 2009 SAP AG 4

How we make ADD-ON using AAK? The system landscape for add-on package consists of the development system say WB1 and the consolidation or quality assurance system W1C that also serves as Final Assembly system, as well as a temporary test system W1T. We will create delivery /SLOTEST/ADDON_100_620 in the consolidation system and after registering it as an installable package, we can test package SAPK-162COINSLOTEST in the test system. This is also the name of the package that we will deliver to our customers. After BASIS sets up all the systems and installs Add-On Assembly Kit, ABAP development starts: The main components of ADD-On Assembly Kit are Software Delivery Composer and Software Delivery Assembler. Software Delivery Composer: It is used to collect all the parts of our development and check for consistency. Software Delivery Assembler: It is used to convert the delivery into an installable package. 2009 SAP AG 5

What we do in development system? The transaction code for Software Delivery Composer is SSDC. Maintaining the namespace We maintain the namespace by choosing the tab Environment from the menu and choosing Create/Update Namespaces. We see a list of namespaces that are available in our system. Namespace should be between 4 and 8 characters, between two forward slashes. Click on New Entries. I have used the /SLOTEST/ namespace for this tutorial. We assign the namespace role as P (Producer) and role C (for recipient) in the development and consolidation system respectively.developemnt and repair license is entered and proper short text is maintained. The license number mentioned here are only for demonstration. 2009 SAP AG 6

Creating Software Component Name of the add-on software component is same as the namespace name. Following demo with screen shots shows how to create an Add-On Installation Package for software component SLOTEST in Release 100_620. The number 100 means that it is the first major release of the add-on:620 means that the add-on is based on SAP web AS (application server) 6.20. In transaction SSDC, Goto environment->create Add-On Software Component Following screen appears. Give Software Component name and press Execute. Enter 100_620 in the release field. To update the software component for the current release, choose Execute 2009 SAP AG 7

We transport the information about the software component by confirming the request. 2009 SAP AG 8

Checking system change option (SE03) This determines whether Repository objects and cross client object Customizing objects are modifiable or not.goto t-code SE03->Administration->Set System Change Option. 2009 SAP AG 9

To be able to create and change objects, the Global Setting, software component, and namespace for the development objects must be set to Modifiable. 2009 SAP AG 10

Assigning package to software component To develop an Add-On we create packages (SE80) and assign each package in the Add-On to the relevant software component (/SLOTEST/ in our demo).the package (created in ABAP workbench) is assigned software component SLOTEST. All the above mentioned steps are mandatory and done in development system. Development is over. For creating delivery, we transport the information about the software component and the namespace (i.e. Request DE1K900008 in our case) to the consolidation system. What all we do in Consolidation system? Development in consolidation server also starts with transaction code SSDC. Creating Delivery Request This consists of namespace prefix that has been reserved for our Add-On software component within two forward slashes, followed by free text. Give Delivery name and press Create. A pop up comes where we give short text for Delivery and its type. Since we are creating Installation package, select UPINS Installation/Upgrade as Delivery type. 2009 SAP AG 11

Naming Convention Since we defined Add-On version as 100_620, but there are only 3 characters available for the version name in delivery requests, it is recommended reflecting the long version name in the 3-character version name. SAP recommends deriving the first letter of the release number and the first two letters of the underlying Web AS release for the version name. System automatically takes 100 as version, so it informs that we have changed the version. Creating Change Piece List When we continue with the above dialog box after mentioning the version as 162, we get a pop up for creating Change Piece List. As per the naming convention, CH in SAPK-162CHINSLOTEST is for change of Change Piece List. Change Piece List is used to create an upgrade package for the Add-On delta upgrade and will only contain changes to the Add-On since the last delivery. Before we start composing the delivery, we should check the languages in which the Add-On will be delivered. To do this we choose tab Delivery Component. I have chosen my Add-On to be in German and English. 2009 SAP AG 12

To choose the delivery we define a preconfiguration for the change requests that we want to include in our delivery. Choose create/change Request Selection from the delivery component-preconfiguration menu. Since we want to create preconfiguration, we confirm it by selecting Yes. 2009 SAP AG 13

Mention the Source System (the development server) and select the transport of copies and save the configuration. Though Change Piece List is used to create an Add-On upgrade package, we still have to create change piece list because it is the basis for all other delivery requests that we need to create. So we must always create it and perform the objects check list very thoroughly. We include change requests in the Change Piece List. Before including the delivery requests, we need to flag them for the delivery. Click on the Flag Delivery Request icon or press (Control +F3).We get the following window: 2009 SAP AG 14

To flag the change requests according to the preconfiguration and time period specified, choose Execute. If suppose one of the flagged request turns out to be non-relevant we can exclude it from the delivery. Select that request and choose Execute Change Request from the Delivery Request menu. Mention the request number that is to be excluded. It comes under the Excluded Requests as shown below. We now include the flagged changed requests in the change piece list. To do these choose Include Change Requests. 2009 SAP AG 15

Once we collect all the change requests that are relevant for delivery we do the software delivery composer object list checks for the change piece lists. The checks avoid any installation and maintenance problems occurring later. To perform the checks, select the Change Piece List, In Delivery Request tab->object List check. Choose Check in the Dialog. 2009 SAP AG 16

The result screen displays each check with an overall result indicated by a traffic light icon. Additional messages exist for some checks that further specify the results. There is a question mark icon next to each check and a message that contains additional information about the check or the message. The handling of the checks results depends very much on the content of the delivery requests that we are checking. If the system suggests an action to correct an error i.e. remove an object from the delivery request or add an object to it, then an action icon is displayed next to the object name. We must check whether the suggested action is also correct one for our specific situation. The Forbidden object checks determine all objects in the delivery requests that must not be delivered in general,such as customer objects for example in my tutorial s case I removed R3TR VERS SLOTEST from the request because R3TR VERS object are not to be delivered, as these entries are made by the import tools. The last check whether the description of the software component is contained in the delivery request. This needs to be in the delivery request in all the languages in which the Add-On is delivered.here, the English and the German entries are translated and then included in the request (by correcting the entries.) 2009 SAP AG 17

Below attached screen shot shows the screen where I have corrected the relevant errors. After all the checks, we release the change piece list. Confirm that we want to release the delivery request. 2009 SAP AG 18

We are asked three options: We can choose whether we want to export with or without versioning or whether we do not want any object export and versioning to take place when the change piece list is released. Since we are creating an Add-On Installation package, we do not need the change piece list so we have to choose No Object Export or Versioning. Creating Component Piece List While creating the Add-On installation package we need Component Piece List as it contains all the objects in the Add-On. It is generated by choosing the Delivery Component tab->generate Component piece List. As per naming convention, CO in SAPK-162COINSLOTEST is for component in Component Piece List. It consists of the change piece list of the current Add-On release and the component piece list of the previous Add-On list. In our case since we are making the Add-On for the very first time, we only have the change piece list of the current Add-On release under component piece list. After performing the object list checks as mentioned above, we release the component list by choosing the option export with object versioning. 2009 SAP AG 19

Creating Exchange Component Piece List We need to generate exchange component piece list for Add-On exchange upgrade. Though we don t intent to create an Add-On package for SAP system upgrade still we need to generate this else software delivery composer cannot continue the delivery creation process. To create Exchange Component Piece list, select delivery component->generate Exchange Component Piece List. As per naming convention, EX in SAPK-162EXINSLOTEST is for Exchange in Exchange Component Piece List. Exchange component piece list consists of component piece list of the current Add-On. Object check list is not required here. We release it directly without exporting it. 2009 SAP AG 20

Releasing the Delivery Component Finally we release the delivery component SLOTEST. A lock icon appears. This finishes composing the delivery with the Software delivery composer. Creating Delivery Package from component list using software delivery Assembler Software Delivery Assembler packs the exported data to the delivery request into a package format that can be imported, thus registering the package. We also define import conditions that set the prerequisites for importing a package correctly. We call software delivery assembler directly from within software delivery composer.to do so choose Register Delivery Request (by SDA,) for component piece list. SDA calls tab page AOI, which is used to create Add-On installation Package. It imports some attributes and imports conditions from software delivery composer such as name, release, short description of Add-On as well as the underlying SAP Basis release. We check the extended attributes and adjust them if necessary. 2009 SAP AG 21

In tab Extended Attributes: When we choose the attribute Editor for the extended attributes, it contains three extended attributes. COMP_TYPE is the assignment to the software component hirerachy.for the Add-On that are created using AAK, the value is always C and cannot be changed. LANGUAGE lists the abbreviations of languages in which the package is delivered. DE stands for German and English.In the NEED_SPAM _LEVEL field, we can enter any version of the SPAM/SAINT update that is required to install the current installation package. But we should always enter the current or highest version of the SPAM/SAINT. SEE_PNOTE attribute prompts our customers for a password. They need to enter the password before they can install the package. Since we cannot create SAP note ourselves Note 567695 exists for this purpose. This note informs our customers that they can find out the password by contacting their Add-On producers. We must inform our customers of this password, for example by mentioning it in the installations instructions for our Add-On. The import conditions page is used to specify the conditions that have to be met regarding additional components or packages when installing a package in the target system. All conditions in the source system are listed here. We must carefully check the conditions and delete the ones that we don t need. 2009 SAP AG 22

In the above screen shot, component SAP_APPL = T (for true) means that this component must be installed in release 600 in the target system so that our Add-On package can be installed. We leave all entries under Main Components unchanged.however; we need to remove some Add-On components that are not prerequisites. If our package requires certain Support Package level to be installed, we indicate this in the Support Package area. As we are interested only in installation package as of now so we our package doesn t require any specific Support Package levels. Registration and PAT file generation. After we check all the extended attributes and import conditions, we can register the package by choosing Register Package. 2009 SAP AG 23

The package gets registered and converted into an installable package format. The OCS file is now available in the transport subdirectory EPS/out. If we still want to check the package attributes after registration, we can do it in the Package List. To call it, we choose Package List from the Extra menu. Generation of password To generate password, choose Generate password from the extra menus. In the next dialog box we enter our package name SAPK-162COINSLOTEST in the OCS package field and give the note number 567695. Final PAT file obtained after registration that has to be imported to test server and tested. We have now finished creating and registering the Add-On Installation Package SAPK- 162COINSLOTEST.We now need to test our package and this includes installation tests as well as functional tests. For this we require a temporary test system. If we find errors, we can correct the delivery request and register the package again. Only when we are sure that all problems are solved, we confirm the delivery in Software Delivery Composer. 2009 SAP AG 24

Confirmation and Final Release of Delivery Once the testing is successful, confirm and finally release the Delivery Request /SLOTEST/ADDON_100_620. Finally the package is released in Software Delivery Assembler. To do this we choose, Register Delivery Request (by SDA locally).select the Package List icon in the toolbar. Enter /SLOTEST/ i.e. the software component name, select the package SAPK-162COINSLOTEST and choose release. The package is this way released and we can no longer change it. The lock icon indicates that the delivery has been confirmed and no further changes are allowed. We now release the in Software Delivery Assembler. To do this choose by SDA locally 2009 SAP AG 25

This completes my tutorial on Creating an Add-On Installation Package Using ADD-ON Assembly Kit. 2009 SAP AG 26

Related Content sdn.sap.com/irj/sdn/sdnservices/icc help.sap.com 2009 SAP AG 27

Disclaimer and Liability Notice This document may discuss sample coding or other information that does not include SAP official interfaces and therefore is not supported by SAP. Changes made based on this information are not supported and can be overwritten during an upgrade. SAP will not be held liable for any damages caused by using or misusing the information, code or methods suggested in this document, and anyone using these methods does so at his/her own risk. SAP offers no guarantees and assumes no responsibility or liability of any type with respect to the content of this technical article or code sample, including any liability resulting from incompatibility between the content within this document and the materials and services offered by SAP. You agree that you will not hold, or seek to hold, SAP responsible or liable with respect to the content of this document. 2009 SAP AG 28