short presentation title

26
BOPF Extensibility SAP AG, 2012

Upload: others

Post on 03-Oct-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

BOPF Extensibility

SAP AG, 2012

© 2012 SAP AG. All rights reserved. 2

Disclaimer

This presentation outlines our general product direction and should not be relied on inmaking a purchase decision. This presentation is not subject to your licenseagreement or any other agreement with SAP. SAP has no obligation to pursue anycourse of business outlined in this presentation or to develop or release anyfunctionality mentioned in this presentation. This presentation and SAP's strategy andpossible future developments are subject to change and may be changed by SAP atany time for any reason without notice. This document is provided without a warrantyof any kind, either express or implied, including but not limited to, the impliedwarranties of merchantability, fitness for a particular purpose, or non-infringement.SAP assumes no responsibility for errors or omissions in this document, except ifsuch damages were caused by SAP intentionally or grossly negligent.

© 2012 SAP AG. All rights reserved. 3

Agenda

1. Introduction

2. Enhancement Objects (Definition & Model)

3. Enabling an existing Business Object for Extensibility

4. Creation of an Enhancement Object

5. Creation of a Custom Business Object

© 2012 SAP AG. All rights reserved. 4

IntroductionEnhancement Object

A business object delivered by the SAP covers generic requirements.If there are specific requirements, additional logic and structure information can beadded later on by partners and customers via an enhancement.An enhancement always refers to a business object or an other enhancement.

InvoiceBusiness

Object

InvoiceBusiness

Object

InvoiceBusiness

Object

SAP’s PartnerCustomer

Partner’s Enhancement Object

Customer’s Enhancement Object

© 2012 SAP AG. All rights reserved. 5

IntroductionCustom Business Objects

If a partner or customer needs own business entities, that are only loosely coupledwith existing Business Objects, they can implemented by the help of own CustomBusiness Objects.

InvoiceBusiness

Object

InvoiceBusiness

Object

SAP’s Partner Customer

Partner’sCustom

BusinessObjects

InvoiceBusiness

Object

Customer ‘sCustom

BusinessObject

Partner’sCustom

BusinessObjects

© 2012 SAP AG. All rights reserved. 6

Agenda

1. Introduction

2. Enhancement Objects (Definition & Model)

3. Enabling an existing Business Object for Extensibility

4. Creation of an Enhancement Object

5. Creation of a Custom Business Object

© 2012 SAP AG. All rights reserved. 7

Enhancement ObjectsDefinition (1/2)

Enhancement Objects contain additional business logic and model information,which is related to a certain business object or an enhancement. The referredobject is called Base Object (e.g. ExtA is the base object of ExtC).Enhancements can built up hierarchies, the root object is called Core Object

BO

ExtA ExtB

ExtC ExtD

Core Object= Base Object of ExtB= Base Object of ExtA

Base Object of ExtC

© 2012 SAP AG. All rights reserved. 8

Enhance-ment

Enhancement ObjectsDefinition (2/2)

At design time, the core business object and the enhancement objects are clearlyseparated entities. They can be separately maintained and transported.At runtime, all enhancements of a core business object are melt with their corebusiness objects to one single business object (one shared memory configuration).Thus only core business objects (containing the enhancement’s stuff) can be usedat runtime.

CoreBO

(a) Design Time View (b) Runtime View

CoreBO

© 2012 SAP AG. All rights reserved. 9

Enhancement Object ModelPre-, Core- and Post Actions

• After the Action Validation Check, the Pre Actions are executed always before the BasicAction. Finally the Post Actions are executed.

• Only the Basic Action is allowed to fill ET_FAILED_KEY, but not Pre Actions or PostActions. If a Basic Action has filled ET_FAILED_KEY, those instances are not handed overto its Post Action.

• In case of a instance Basic Action, the post action is not called at all if there are only failedkeys. In case of a static Basic Action, the Post Action is instead always called.

Enhancement Object

Core ObjectAction

Validation

Pre Action

Base Action

Post Action

© 2012 SAP AG. All rights reserved. 10

Enhancement Object ModelDetermination Patterns

• Derive dependent data immediately after modificationCorresponds to AfterModify Determination Time

• Derivce dependent data before savingCorresponds to Finalize (Save) Determination Time

• Fill transient attributes of persistent nodesCombines both AfterModify and AfterLoading Determination Time to recalculate transientattributes while first loading and changing related fields afterwards.

• Derive Instances of Transient NodesCorresponds to BeforeRetrieve Determinations and is invoked as soon as the transientrequest node is accessed. Only available if a transient node is part of the BO.

• Create PropertiesUse this to create dynamic property determinations. Static properties are not yet supported.

Determinations of the Base Object are always executed before Determinations of theEnhancement Object configured to the same determination time.

© 2012 SAP AG. All rights reserved. 11

Agenda

1. Introduction

2. Enhancement Objects (Definition & Model)

3. Enabling an existing Business Object for Extensibility

4. Creation of an Enhancement Object

5. Creation of a Custom Business Object

© 2012 SAP AG. All rights reserved. 12

Enabling an existing Business Object for ExtensibilityBusiness Object Level (1/4)

Each business object (and enhancement), which shall be extended later on must beconfigured as extensible. Otherwise no extension can be created!

© 2012 SAP AG. All rights reserved. 13

Enabling an existing Business Object for ExtensibilityNode Level (2/4)

If a business object is maintained as extensible, each node which shall be extensible mustalso be checked.

Extensible nodes can be extended with:- Additional subnodes- Additional actions- Additional determination (are executed after one’s of the core)- Additional consistency validations (are executed after one’s of the core)- Additional queries

© 2012 SAP AG. All rights reserved. 14

Enabling an existing Business Object for ExtensibilityAction Level (3/4)

Each Action, which shall be extended in future, must be selected as extensible. It allows:

• Add Action Validations to that action

• Add Pre Actions, which are executed always before that action is executed

• Add Post Actions, which are executed always after that action is executed

© 2012 SAP AG. All rights reserved. 15

Enabling an existing Business Object for ExtensibilityEnabling Field Extensibility (1/2)

1. Ensure that all DDICs involved have the right enhancement category (either „Can beenhanced character-like“ or „Can be enhanced character-like or numeric“)

2. Create the „Extension Include“ Structure and include it into the „Persistent Structure“. Itshould have a „dummy“ component of type char1 to be appended later on. The „ExtensionInclude (Transient)“ structure should be correspondingly created in case of transientextension fields. See Exercise Slideset for more details.

Persistent Structure Transient Structure

Combined Structure

Database Table

Extension Include Extension Include (Transient)

© 2012 SAP AG. All rights reserved. 16

Enabling an existing Business Object for ExtensibilityEnabling Field Extensibility (2/2)

The „Extension Include“ Structure needs to be created containing a dummy field ofCHAR1.

The „persistent structure“includes the „extension include“– the „transient structure“ wouldincludes the „extension include(transient)“.

The „extension include“ structurehas a „dummy“ field typed aschar1.

A new „extension include“structure needs to be created inthe base object

© 2012 SAP AG. All rights reserved. 17

Agenda

1. Introduction

2. Enhancement Objects (Definition & Model)

3. Enabling an existing Business Object for Extensibility

4. Creation of an Enhancement Object

5. Creation of a Custom Business Object

© 2012 SAP AG. All rights reserved. 18

Creation of an EnhancementBusiness Object Builder (BOB): Scope & Limitations

The transaction Business Object Builder (“BOB”) is the successor of the BOPF EnhancementWorkbench (“BOPF_EWB”) available with SAP_BS_FND 7.02, > SP10; SAP_BS_FND 7.31>SP 5.

• Creation of New Custom Business Objects: SAP_BS_FND 7.31 SP05

• Not Possible: Binding of Association, Static Properties (dynamic properties possible),Alternative Keys, Eventing, S&AM, Value Helps

• Possible: Determinations, Validations, Nodes, Actions (basic/pre/post), Queries,Implemented Association possible since SAP_BS_FND 7.47 SP04, SAP_BS_FND 7.31SP08, SAP_BS_FND 7.02 SP12

• Check http://scn.sap.com/docs/DOC-45559 to get a feature overview

© 2012 SAP AG. All rights reserved. 19

Creation of an EnhancementStart Business Object Builder (BOB)

1. Start transaction “BOB”(SAP_BS_FND 7.02, >SP10; SAP_BS_FND7.31 >SP 5)otherwise starttransaction“BOPF_EWB”.

2. Select the object to beenhanced in the menu

3. Continue and finish thewizard

© 2012 SAP AG. All rights reserved. 20

Creation of an EnhancementBusiness Object Builder: Node Browser

The node browser displays…- Nodes created in this enhancement (blue)*- Extensible nodes belonging to one of the base objects (black)*- Non-extensible nodes belonging to one of the base objects (grey)

*You can use the context menu in order to extend this node

© 2012 SAP AG. All rights reserved. 21

Creation of an Extension ObjectBusiness Object Builder: Entity Browser

The entity browser displays…- Extensible entities belonging to the core object (black)*- Entities created in this enhancement object (blue)*

*You can use the context menu in order to extend this entity

© 2012 SAP AG. All rights reserved. 22

Creation of an Extension ObjectUsing Field Extensibility

1. Open the extension include of the Base Object’s node in transaction se11.2. Open menu “GoTo > Append Structure” and create append structure (name it like the

extension BO’s name)3. Open the Enhancement BO and regenerate the Constant Interface. Now the extension

fields are part of the constant interface of the Enhancement BO.

© 2012 SAP AG. All rights reserved. 23

Agenda

1. Introduction

2. Enhancement Objects

3. Enabling an existing Business Object for Extensibility

4. Creation of an Enhancement Object

5. Creation of a Custom Business Object

© 2012 SAP AG. All rights reserved. 24

Creation of a Custom ObjectBusiness Object Builder

1. Start transaction “BOB” (SAP_BS_FND 7.02, > SP10; SAP_BS_FND 7.31 >SP5). This feature is not available in lower releases or in the “BOPF_EWB”.

2. Click on “Custom Business Object” and follow the wizard

Thank you

© 2012 SAP AG. All rights reserved. 26

© 2012 SAP AG. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any purposewithout the express permission of SAP AG. The information contained herein may bechanged without prior notice.

Some software products marketed by SAP AG and its distributors contain proprietarysoftware components of other software vendors.

Microsoft, Windows, Excel, Outlook, PowerPoint, Silverlight, and Visual Studio areregistered trademarks of Microsoft Corporation.

IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x,System z, System z10, z10, z/VM, z/OS, OS/390, zEnterprise, PowerVM, PowerArchitecture, Power Systems, POWER7, POWER6+, POWER6, POWER, PowerHA,pureScale, PowerPC, BladeCenter, System Storage, Storwize, XIV, GPFS, HACMP,RETAIN, DB2 Connect, RACF, Redbooks, OS/2, AIX, Intelligent Miner, WebSphere, Tivoli,Informix, and Smarter Planet are trademarks or registered trademarks of IBM Corporation.

Linux is the registered trademark of Linus Torvalds in the United States and other countries.

Adobe, the Adobe logo, Acrobat, PostScript, and Reader are trademarks or registeredtrademarks of Adobe Systems Incorporated in the United States and other countries.

Oracle and Java are registered trademarks of Oracle and its affiliates.

UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.

Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWinare 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.

Apple, App Store, iBooks, iPad, iPhone, iPhoto, iPod, iTunes, Multi-Touch, Objective-C,Retina, Safari, Siri, and Xcode are trademarks or registered trademarks of Apple Inc.

IOS is a registered trademark of Cisco Systems Inc.

RIM, BlackBerry, BBM, BlackBerry Curve, BlackBerry Bold, BlackBerry Pearl, BlackBerryTorch, BlackBerry Storm, BlackBerry Storm2, BlackBerry PlayBook, and BlackBerry AppWorld are trademarks or registered trademarks of Research in Motion Limited.

Google App Engine, Google Apps, Google Checkout, Google Data API, Google Maps,Google Mobile Ads, Google Mobile Updater, Google Mobile, Google Store, Google Sync,Google Updater, Google Voice, Google Mail, Gmail, YouTube, Dalvik and Android aretrademarks or registered trademarks of Google Inc.

INTERMEC is a registered trademark of Intermec Technologies Corporation.

Wi-Fi is a registered trademark of Wi-Fi Alliance.

Bluetooth is a registered trademark of Bluetooth SIG Inc.

Motorola is a registered trademark of Motorola Trademark Holdings LLC.

Computop is a registered trademark of Computop Wirtschaftsinformatik GmbH.

SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer,StreamWork, SAP HANA, and other SAP products and services mentioned herein as wellas their respective logos are trademarks or registered trademarks of SAP AG in Germanyand other countries.

Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, CrystalDecisions, Web Intelligence, Xcelsius, and other Business Objects products and servicesmentioned herein as well as their respective logos are trademarks or registered trademarksof Business Objects Software Ltd. Business Objects is an SAP company.

Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybaseproducts and services mentioned herein as well as their respective logos are trademarks orregistered trademarks of Sybase Inc. Sybase is an SAP company.

Crossgate, m@gic EDDY, B2B 360°, and B2B 360° Services are registered trademarksof Crossgate AG in Germany and other countries. Crossgate is an SAP company.

All other product and service names mentioned are the trademarks of their respectivecompanies. Data contained in this document serves informational purposes only. Nationalproduct specifications may vary.

The information in this document is proprietary to SAP. No part of this document may bereproduced, copied, or transmitted in any form or for any purpose without the express priorwritten permission of SAP AG.