SAP AG Enablement Kit for SAP NetWeaver Business Client – V1.30 How to Develop POWER Lists...
-
Upload
genevieve-barnet -
Category
Documents
-
view
236 -
download
5
Transcript of SAP AG Enablement Kit for SAP NetWeaver Business Client – V1.30 How to Develop POWER Lists...
SAP AG
Enablement Kit for SAP NetWeaver Business Client – V1.30
How to Develop POWER Lists Overview
Role
The POWER List: Technical Background
APPLID
POWER List Framework
Feeder Class
BackendDatabase POWER List Cache
POWER Lists are based on a well defined framework
How to Create a POWER List: Concept
POWER List Framework
Feeder Class
POWER List Cache
GET_OBJECT_DEFINITON
GET_OBJECTS
Define a container to store data provided by data retrievals
1
2
Mandatory Steps
Define data retrieval (e.g. database select, function module)
How to Create a POWER List: Concept
POWER List Framework
Feeder Class
POWER List Cache
GET_ACTIONS
GET_ACTION_CONF
GET_SELECTION_CRITERIA
Optional Steps
Define buttons and their explicit actions
Define confirmation messages for explicit actions
Define selection criteria that can be used to define new queries against your Feeder
3
4 GET_FIELD_CATALOG
Define the field catalog to be used for query results table display
GET_DETAIL_COMP
Define detail component area which can be used to improve visualization of selected data
HANDLE_ACTIONS&5
6
7
How to Create a POWER List: Concept
DESIGN DEVELOP TESTGO LIVE
How to Create a POWER List: Technical Flow
With transaction SE24, a new POWER List can be developed based on the POWER List framework
Transaction SE24 <POWER List Name> “Create” “Ok”
TransactionSE24
TransactionSE24
The interface “IF_POWL_FEEDER” provides all necessary methods to start building a new POWER List
How to Create a POWER List: Technical Flow
How to Create a POWER List: Technical Flow
The tab “Methods” offers all “IF_POWL_FEEDER”-related methods
1
2
3
4
5
5
6
7
How to Create a POWER List: Technical Flow
Double-click on specific method to open up the editor
Top frame shows all possible parameters provided by the method
Registering a POWER List & Making it Visible
TransactionFPB_MAINTAIN_HIER
TransactionFPB_MAINTAIN_HIER
TransactionPOWL_TYPE
TransactionPOWL_TYPE
TransactionPOWL_TYPER
TransactionPOWL_TYPER
Defining a Query
TransactionPOWL_QUERY
TransactionPOWL_QUERY
“SAVE”
Default Query Parameters & Settings
Making a New Query Visible
TransactionPOWL_QUERYR
TransactionPOWL_QUERYR
Testing Your POWER List Using the SAP Menu (1)
Use your Application ID
It‘s necessary to select the parameter APPLID via input help!
Testing Your POWER List Using the SAP Menu (2)
Connecting a POWER List to a Role
Testing the POWER List
Defining OBN Targets: Technical Background
User’s Role
Transaction A
Business Object Repository
Business Object
Target Definition(BO Name)
(BO Operation)
Button (defined by GET_ACTION & ACTION_HANDLER) calls transaction via target definition in role business object)
Button (defined by GET_ACTION & ACTION_HANDLER) calls transaction via target definition in role business object)
Defining OBN Targets: General Concept
Role
Transaction
Business Object
Repository
Business Object
Business Object “KYK_DISP_CHAN_QUOTES”
APPLID
Business Object “KYK-OPS-SD-ORDERS”
Transaction SWO1
Transaction PFCG
Define business object and dedicated methods
1
2
Mandatory Steps
Add specific transaction to the role
Transaction PFCG3Add business object to the specific transaction and specify parameters in “Details for NetWeaver Business Client”
Prerequisites
Reminder: POWER List with GET ACTION & HANDLE ACTION needs to be defined
OBN allows to launch applications from a POWL with the needed parameters.If all parameters of the target application are passed the selection screen is skipped by NWBC.
© SAP 2007 / Page 20
Defining OBN Targets: Transaction SWO1
The Business Object Methods are used as hooks by the OBN Framework. Enhance existing Business Objects or create new Business Objects.
Start Transaction SWO1:
© SAP 2007 / Page 21
Start Transaction PFCG and add the target transaction, Choose Details for NetWeaver Business Client*
Defining OBN Targets: Transaction PFCG
* The menu entry is still called Additional Details in SAP ERP 6.0 EhP3
© SAP 2007 / Page 22
Use this column to define the parameters needed by
the target application
Use this column to define the mapped
values. Use {} in order to define the parameters which contain the values (dynamic version).
Not using {} defines fixed values
Data from the related Business Object
Dynpro information of thetarget application
Maintain the Parameter mapping in the Details for
NetWeaver Business Client of the target application
Defining OBN Targets: Transaction PFCG, Details for NetWeaver Business Client
© SAP 2007 / Page 23
Defining OBN Targets: Triggering OBN in Feeder Class: Method if_powl_feeder~handle_action
METHOD if_powl_feeder~handle_action.
DATA: ls_portal_actions TYPE powl_follow_up_sty, ls_namevalue TYPE powl_namevalue_sty.
FIELD-SYMBOLS: <fs_result> LIKE LINE OF me->mt_result, <fs_selected> TYPE rstabix.
READ TABLE c_selected ASSIGNING <fs_selected> INDEX 1. READ TABLE c_result_tab ASSIGNING <fs_result> INDEX <fs_selected>-
tabix.
ls_namevalue-key = 'MaterialDocumentNo'. ls_namevalue-value = <fs_result>-mblnr.
APPEND ls_namevalue TO ls_portal_actions-parameters.
ls_namevalue-key = 'MaterialDocYear'. ls_namevalue-value = <fs_result>-mjahr.
APPEND ls_namevalue TO ls_portal_actions-parameters.
ls_portal_actions-bo_name = 'KYK_MM_MATDOC'. ls_portal_actions-bo_system = /kyk/cl_service_powl=>GC_OBN_SYSTEM.
CASE i_actionid. WHEN 'DISPLAY'.
ls_portal_actions-bo_op_name = 'Display'. WHEN 'CANCEL'.
ls_portal_actions-bo_op_name = 'Cancel_Mat_Doc'. WHEN 'POST'.
ls_portal_actions-bo_op_name = 'Post_Ret_Delv'. ENDCASE.
ls_portal_actions-fire_wdevent = 'X'. e_portal_actions = ls_portal_actions.
ENDMETHOD.
i_actionid:Defined in
IF_POWL_FEEDER~GET_ACTIONS
1
2
3
Parameters which need to be defined in the business object
(SWO1) and mapped in the role
Reference to Business Object
Methods which need to be
defined in the business object
(SWO1)
Defining Business Objects in Transaction SWO1
1
2
3
In SWO1 Choose Details to get the Object Name
Select the relevant method and Choose Parameters
© SAP 2007 / Page 25
Defining OBN Targets: POWL as navigation target (1)
You can call a POWL via OBN like a usual WD application
Create an entry in the role menu WD application = POWL APPLID = application ID of the target possibly set REFRESHQ = X
Define a method in your BOR object with parameters you need: QNAME – name of the target admin query (which must be defined) that is to be shown:
mandatory if the POWL has several types! QSELPARA – if you want to dynamically set the selection parameters (see next slide)
Associate the BOR method with the role entry (additional details)
If you want to start the POWL only via OBN set the „hidden“ flag if the target POWL serves as homepage too, set the „homepage“ flag
© SAP 2007 / Page 26
Defining OBN Targets: POWL as navigation target (2), how to set the query parameters
In the coding of the calling application you have to do following:
data: lt_selpara TYPE rsparams_tt, ls_selpara TYPE rsparams.
ls_selpara-selname = 'SD_SAKNR'. "#EC NOTEXTls_selpara-kind = 'P'.ls_selpara-sign = 'I'.ls_selpara-option = 'EQ'.
ls_selpara-low = <fs_result>-saknr.INSERT ls_selpara INTO TABLE lt_selpara.
CALL FUNCTION 'POWL_ENCODE_SELPARA' EXPORTING
i_selpara = lt_selpara IMPORTING
e_selpara_string = ld_selpara_string.
fill selection table of type rsparams_tt with desired values:
encode the selection table with the function module POWL_ENCODE_SELPARA into string:
pass the string as parameter QSELPARA via OBN:
DATA: ls_portal_actions TYPE powl_follow_up_sty, ls_namevalue TYPE powl_namevalue_sty.
ls_namevalue-key = 'QSELPARA'. "#EC NOTEXTls_namevalue-value = ld_selpara_string.
INSERT ls_namevalue INTO TABLE ls_portal_actions-parameters.
desired value
selection criteria of the target POWL
ls_namevalue-key = 'QNAME'. "#EC NOTEXTls_namevalue-value = gc_items_all.
INSERT ls_namevalue INTO TABLE ls_portal_actions-parameters.
pass the query name as parameter QNAME via OBN:
admin query of the target POWL
© SAP 2007 / Page 27
Tips (possible error sources)
The user has to have assigned the employee role (SAP_AIO_EMPLOYEE-S, SAP_BPR_EMPLOYEE-S or SAP_NBPR_NBPR-S) which provides some generic authorization and functionality.
The OBN targets defined by a POWL have to be part of the same role as the POWL, otherwise an OBN error occurs when the user selects the corresponding button in the POWL.
© 2010 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, Clear Enterprise, SAP BusinessObjects Explorer, 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 SAP France in the United States and in other countries.
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.
The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior written permission of SAP AG.
This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments, and functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice.
SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. This document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability, fitness for a particular purpose, or non-infringement.
SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence.
The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages.