Beruflich Dokumente
Kultur Dokumente
CUSTOMER
Document Version: 1/2013
Copyright
© 2013 SAP AG or an SAP affiliate company. 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.
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 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. Please see
http://www.sap.com/corporate-en/legal/copyright/index.epx#trademark for additional trademark
information and notices.
This technical reference guides you through the necessary activities using Utilities-specific examples.
Extend
Enhance
Duplicate
This guide focuses on Enhance. Enhance is the method we recommend for customers and partners.
You define your enhancement elements in your own namespaces and these enhancement elements
refer to the SAP standard enterprise service.
The enhancement method described in this document does not modify standard enterprise
services.
Prerequisites
You need advanced knowledge of SAP enterprise services and their integration with business logic
and semantics.
For a general description on how to enhance SAP enterprise services and a comprehensive
description of the different enhancement methods, we recommend reading the Enterprise Services
Enhancement Guide published in the SAP Community Network (SCN).
To access the SAP Community Network, you must register and agree to the terms and conditions of
its use.
Example
The Utilities-specific example used throughout this technical reference describes the following
scenario:
1. Creating a product, product version, software unit, software component version (SWCV), and
an enhancement software component version (EnSWCV)
For more information, see the Enterprise Services Enhancement Guide in the SCN, chapter
2.1.1. – Creating a Product, Product Version, Software Unit, SWC, and EnSWCV in SLD.
To use the enhanced objects from namespaces of the underlying software component
version (SWCV), you create a dependency between the EnSWCV and the SWCV from which
you must enhance the service operation.
For more information, see the Enterprise Services Enhancement Guide in the SCN, chapter
2.2. – Defining Dependencies Between SWCV and EnSWCV in SLD.
Example
For the Utilities-specific example used throughout this technical reference, the procedure is as
follows:
Name ENHANCEMENTUNIT_IS_UT
Version 0.9
Defining Dependencies
You must import the EnSWCV (enhancement software component version) defined in the
SLD into the Enterprise Services Repository (ESR).
For more information, see the Enterprise Services Enhancement Guide in the SCN, chapter
3.1 – Importing an EnSWCV into ESR. Note that the activities described there work
differently with release 7.1 onward. For the current procedure, refer to the Utilities example.
2. Creating a namespace
To identify the objects in the SWCV before you develop an enhancement structure in the
EnSWCV, you must create a new namespace in the ESR.
For more information, see the Enterprise Services Enhancement Guide in the SCN, chapter
3.2 – Creating a Namespace in EnSWCV.
To add a new field to an existing data type, you must create an enhancement data type in
the SWCV.
Example
To import the EnSWCV from SLD to the ESR for the Utilities-specific example used throughout this
technical reference, the procedure is as follows:
Integration Repository
5. Choose Display.
1. Select a unique name such as the URL of the company, together with some
additional information to identify the application.
Namespace http://dummy-is-ut.com/xi/XI
2. In the Change Lists tab, right-click to open the context menu and choose Activate.
Namespace Definition
To add the new optional field FUNKID to the existing intermediate data type
UtilsDvceERPSmrtMtrCrteReqUtilsDvce, create an enhancement data type.
For more information, see the Enterprise Services Enhancement Guide in the SCN, chapter 4.1 –
Generating an Enhancement Proxy Structure and 4.2 – BAdI Implementation.
Example
For the Utilities-specific example used throughout this technical reference, the following activities are
necessary in the back-end system:
2. In the EnSWCV, navigate to your namespace and choose the folder Data Type
Enhancement.
The system needs a prefix to make the enhancement proxy unique within the
application.
The ABAP system generates an append structure for the service node that is to be
enhanced.
The system automatically adds the fields from the enhancement to the Web Services
Description Language (WSDL) as optional fields.
Package EE_SE_UDM
BAdI ISU_SE_DEVICESMCRTRCO_ASYNC
o Inbound Processing
o Outbound Processing
BAdI Implementation
Testing
To test the enhancement, create a new smart meter device in the backend system using the Create
Device transaction (transaction IQ01) and check that your new field is available in the generated
XML message.
Check the generated XML message using the Integration Engine Monitoring (transaction
SXMB_MONI).
Check the availability of the new field in the external view of the Service Consumer (or
Service Provider) using the ABAP Workbench (transaction SE80).