0% found this document useful (0 votes)
59 views

Web Service Tool UIU Configuration FAQ: Target Audience

Web Service Tool UIU Configuration FAQ SAP CRM 7. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Java is a registered trademark of sun microsystems, Inc., used under license for technology invented and implemented by netscape.

Uploaded by

sapbooks
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
59 views

Web Service Tool UIU Configuration FAQ: Target Audience

Web Service Tool UIU Configuration FAQ SAP CRM 7. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Java is a registered trademark of sun microsystems, Inc., used under license for technology invented and implemented by netscape.

Uploaded by

sapbooks
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

Web Service Tool UIU Configuration FAQ

SAP CRM 7.0


Target Audience System administrators Technology consultants

Document version: 1.1 December 2008

SAP AG Dietmar-Hopp-Allee 16 69190 Walldorf Germany T +49/18 05/34 34 24 F +49/18 05/34 34 20 www.sap.com

Copyright 2007 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, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix, i5/OS, POWER, POWER5, OpenPower and PowerPC are trademarks or registered trademarks of IBM Corporation. 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. SAP Library document classification: PUBLIC 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. MaxDB is a trademark of MySQL AB, Sweden. Any Java Source Code delivered with this product is only to be used by SAPs Support Services and may not be modified or altered in any way. Documentation in the SAP Service Marketplace You can find this documentation at the following address:
http://service.sap.com/

SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, 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 in several other countries all over the world. 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. These materials are subject to change without notice. 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.

Disclaimer Some components of this product are based on Java. Any code change in these components may cause unpredictable and severe malfunctions and is therefore expressively prohibited, as is any decompilation of these components.

Terms for Included Open Source Software


This SAP software contains also the third party open source software products listed below. Please note that for these third party products the following special terms and conditions shall apply. 1. This software was developed using ANTLR. 2. gSOAP Part of the software embedded in this product is gSOAP software. Portions created by gSOAP are Copyright (C) 2001-2004 Robert A. van Engelen, Genivia inc. All Rights Reserved. THE SOFTWARE IN THIS PRODUCT WAS IN PART PROVIDED BY GENIVIA INC AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 3. SAP License Agreement for STLport SAP License Agreement for STLPort between SAP Aktiengesellschaft Systems, Applications, Products in Data Processing Neurottstrasse 16 69190 Walldorf, Germany (hereinafter: SAP) and you

(hereinafter: Customer) a) Subject Matter of the Agreement A) SAP grants Customer a non-exclusive, non-transferrable, royalty-free license to use the STLport.org C++ library (STLport) and its documentation without fee. B) By downloading, using, or copying STLport or any portion thereof Customer agrees to abide by the intellectual property laws, and to all of the terms and conditions of this Agreement. C) The Customer may distribute binaries compiled with STLport (whether original or modified) without any royalties or restrictions. D) Customer shall maintain the following copyright and permissions notices on STLport sources and its documentation unchanged: Copyright 2001 SAP AG E) The Customer may distribute original or modified STLport sources, provided that: o The conditions indicated in the above permissions notice are met; o The following copyright notices are retained when present, and conditions provided in accompanying permission notices are met: Copyright 1994 Hewlett-Packard Company Copyright 1996,97 Silicon Graphics Computer Systems Inc. Copyright 1997 Moscow Center for SPARC Technology. Copyright 1999,2000 Boris Fomitchev Copyright 2001 SAP AG Permission to use, copy, modify, distribute and sell this software and its documentation for any purposes is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Hewlett-Packard Company makes no representations about the suitability of this software for any purpose. It is provided as is without express or implied warranty.

Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Silicon Graphics makes no representations about the suitability of this software for any purpose. It is provided as is without express or implied warranty. Permission to use, copy, modify, distribute and sell this software and its documentation for any purposes is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Moscow Center for SPARC makes no representations about the suitability of this software for any purpose. It is provided as is without express or implied warranty. Boris Fomitchev makes no representations about the suitability of this software for any purpose. This material is provided "as is", with absolutely no warranty expressed or implied. Any use is at your own risk. Permission to use or copy this software for any purpose is hereby granted without fee, provided the above notices are retained on all copies. Permission to modify the code and to distribute modified code is granted, provided the above notices are retained, and a notice that the code was modified is included with the above copyright notice. Permission to use, copy, modify, distribute and sell this software and its documentation for any purposes is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. SAP makes no representations about the suitability of this software for any purpose. It is provided with a

limited warranty and liability as set forth in the License Agreement distributed with this copy. SAP offers this liability and warranty obligations only towards its customers and only referring to its modifications. b) Support and Maintenance SAP does not provide software maintenance for the STLport. Software maintenance of the STLport therefore shall be not included. All other services shall be charged according to the rates for services quoted in the SAP List of Prices and Conditions and shall be subject to a separate contract. c) Exclusion of warranty As the STLport is transferred to the Customer on a loan basis and free of charge, SAP cannot guarantee that the STLport is error-free, without material defects or suitable for a specific application under third-party rights. Technical data, sales brochures, advertising text and quality descriptions produced by SAP do not indicate any assurance of particular attributes. d) Limited Liability A) Irrespective of the legal reasons, SAP shall only be liable for damage, including unauthorized operation, if this (i) can be compensated under the Product Liability Act or (ii) if caused due to gross negligence or intent by SAP or (iii) if based on the failure of a guaranteed attribute. B) If SAP is liable for gross negligence or intent caused by employees who are neither agents or managerial employees of SAP, the total liability for such damage and a maximum limit on the scope of any such damage shall depend on the extent to which its occurrence ought to have anticipated by SAP when concluding the contract, due to the circumstances known to it at that point in time representing a typical transfer of the software. C) In the case of Art. 4.2 above, SAP shall not be liable for indirect damage, consequential damage caused by a defect or lost profit.

D) SAP and the Customer agree that the typical foreseeable extent of damage shall under no circumstances exceed EUR 5,000. E) The Customer shall take adequate measures for the protection of data and programs, in particular by making backup copies at the minimum intervals recommended by SAP. SAP shall not be liable for the loss of data and its recovery, notwithstanding the other limitations of the present Art. 4 if this loss could have been avoided by observing this obligation.

F) The exclusion or the limitation of claims in accordance with the present Art. 4 includes claims against employees or agents of SAP. 4. Adobe Document Services Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and / or other countries. For information on Third Party software delivered with Adobe document services and Adobe LiveCycle Designer, see SAP Note 854621.

Typographic Conventions
Type Style Example Text Description Words or characters quoted from the screen. These include field names, screen titles, pushbuttons labels, menu names, menu paths, and menu options. Cross-references to other documentation Example text Emphasized words or phrases in body text, graphic titles, and table titles Technical names of system objects. These include report names, program names, transaction codes, table names, and key concepts of a programming language when they are surrounded by body text, for example, SELECT and INCLUDE. Output on the screen. This includes file and directory names and their paths, messages, names of variables and parameters, source text, and names of installation, upgrade and database tools. Exact user entry. These are words or characters that you enter in the system exactly as they appear in the documentation. Variable user entry. Angle brackets indicate that you replace these words and characters with appropriate entries to make entries in the system. Keys on the keyboard, for example, F2 or ENTER.

Icons
Icon Meaning Caution Example Note Recommendation Syntax

EXAMPLE TEXT

Additional icons are used in SAP Library documentation to help you identify different types of information at a glance. For more information, see Help on Help General Information Classes and Information Classes for Business Information Warehouse on the first page of any version of SAP Library.

Example text

Example text

<Example text>

EXAMPLE TEXT

Contents
1 Business Objects and Supported Operations .................................8
1.1 Restrictions in Create and Change Operations ................................... 8
1.1.1 Root Objects ............................................................................................................ 8 1.1.2 Access Objects ........................................................................................................ 9 1.1.3 Dependent Objects................................................................................................. 10 1.1.4 Query/Query Result Objects................................................................................... 11

1.2 Example: Changes to BOL Component Implementation to Support Stateless Service ......................................................................... 11 1.3 Explanation of Logical Key and Other Interfaces.............................. 13 1.4 Use of Action Code and Controller Table .......................................... 13

<December 2008>

1 Business Objects and Supported Operations

1 Business Objects and Supported Operations


Supported operations for each kind of object in specific business object implementation may differ. The sections below can help you determine if an object can be marked to support a given operation. Object Kind Root Object Access Object Dependent Object Query Object Query Result Object Dynamic Query Object Create Yes Yes Yes X X X Read Yes Yes Yes X X X Query X X X Yes Yes Yes Change Yes Yes Yes X X X

1.1 Restrictions in Create and Change Operations


Web services supported by the Open Service Tool are stateless. Each service call is independent of its predecessors in terms of data hold on the server (ABAP system). This means that data on the server is re-released after each request and cannot be used in subsequent calls. It is not possible to create transactions spanning multiple service calls within one transaction context, or to store data on the server and use this data in subsequent service calls. Example A user determines pricing conditions in a call, and wants to reuse the server-side context data in a subsequent call when creating an order. The pricing conditions are not kept in the context on the server, so the data cannot be reused. The user must store the data used in multiple service calls on the CRM WebClient UI. For example, the user can create a business partner using the first service call and pass the business partner ID to create an order in the next call.

1.1.1 Root Objects


Read operation is not supported if a given BOL root object meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new root objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which root objects are used at runtime. For example, root object A always needs to be instantiated, but at runtime either root object B or root object C is used. Business methods are used for the read operation instead of the READ method. This means that you define your own method, for example with the name READ_CASE, which is used on the UI instead of the redefinition of READ. It is acceptable to use business methods for additional functionality or inside of the READ method.

<December 2008>

1 Business Objects and Supported Operations

The root object is dynamic. Create operation is not supported if a given BOL root object meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new root objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which root objects are used at runtime. For example, root object A always needs to be instantiated, but at runtime either root object B or root object C is used. Business methods are used for the create operation instead of the CREATE method. This means that you define your own method, for example with the name CREATE_CASE, which is used on the UI instead of the redefinition of CREATE. It is acceptable to use business methods for additional functionality or inside of the CREATE method. The root object is dynamic. The web service is stateless. For more information, see Example: Changes to BOL Component Implementation to Support Stateless Service [page 11]. Change operation is not supported if a given BOL root object meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new root objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which root objects are used at runtime. For example, root object A always needs to be instantiated, but at runtime either root object B or root object C is used. Business methods are used for modification instead of the MODIFY method. This means that you define your own method, for example with the name MODIFY_CASE, which is used on the UI instead of the redefinition of MODIFY. It is acceptable to use business methods for additional functionality or inside of the MODIFY method. The root object is dynamic. The web service is stateless. For more information, see Example: Changes to BOL Component Implementation to Support Stateless Service [page 11].

1.1.2 Access Objects


Read operation is not supported if a given BOL access object meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new access objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which access objects are used at runtime. Business methods are used for the read operation instead of the READ method. This means that you define your own method, for example with the name READ_CASE,

<December 2008>

1 Business Objects and Supported Operations

which is used on the UI instead of the redefinition of READ. It is acceptable to use business methods for additional functionality or inside of the READ method. Create operation is not supported if a given BOL access object meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new access objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which access objects are used at runtime. Business methods are used for the create operation instead of the CREATE method. This means that you define your own method, for example with the name CREATE_CASE, which is used on the UI instead of the redefinition of CREATE. It is acceptable to use business methods for additional functionality or inside of the CREATE method. The web service is stateless. For more information, see Example: Changes to BOL Component Implementation to Support Stateless Service [page 11]. Change operation is not supported if a given BOL access object meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new access objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which access objects are used at runtime. Business methods are used for modification instead of the MODIFY method. This means that you define your own method, for example with the name MODIFY_CASE, which is used on the UI instead of the redefinition of MODIFY. It is acceptable to use business methods for additional functionality or inside of the MODIFY method. The web service is stateless. For more information, see Example: Changes to BOL Component Implementation to Support Stateless Service [page 11].

1.1.3 Dependent Objects


Read operation is not supported if a given BOL dependent object meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new dependent objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which dependent objects are used at runtime. Business methods are used for the read operation instead of the READ method. This means that you define your own method, for example with the name READ_CASE, which is used on the UI instead of the redefinition of READ. It is acceptable to use business methods for additional functionality or inside of the READ method. The dependent object is dynamic. Create operation is not supported if a given BOL dependent object meets one or more of the following conditions:

10

<December 2008>

1 Business Objects and Supported Operations

The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new dependent objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which dependent objects are used at runtime. Business methods are used for the create operation instead of the CREATE method. This means that you define your own method, for example with the name CREATE_CASE, which is used on the UI instead of the redefinition of CREATE. It is acceptable to use business methods for additional functionality or inside of the CREATE method. The dependent object is dynamic. The web service is stateless. For more information, see Example: Changes to BOL Component Implementation to Support Stateless Service [page 11]. Change operation is not supported if a given BOL dependent object meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data (a known example is Conditions). The model is not fixed at design time and new dependent objects are added to the model depending on runtime data (a known example is Conditions). At design time it is not clear which dependent objects are used at runtime. Business methods are used for modification instead of the MODIFY method. This means that you define your own method, for example with the name MODIFY_CASE, which is used on the UI instead of the redefinition of MODIFY. It is acceptable to use business methods for additional functionality or inside of the MODIFY method. The dependent object is dynamic. The web service is stateless. For more information, see Example: Changes to BOL Component Implementation to Support Stateless Service [page 11].

1.1.4 Query/Query Result Objects


A given query or query result object cannot be supported if it meets one or more of the following conditions: The attribute structure is not fixed at design time and new fields are generated in the attribute structure depending on runtime data. The model is not fixed at design time and new query objects are added to the model depending on runtime data (a known example is Conditions). The query object has no fixed result object at design time.

1.2 Example: Changes to BOL Component Implementation to Support Stateless Service


Syntax In GET method, we read data from buffer. If no data, load data from DB to buffer. WRONG: In MODIFY method, we use data in buffer.

<December 2008>

11

1 Business Objects and Supported Operations

CORRECT: In MODIFY method, we use data in buffer. If no data, load data from DB to buffer.

GET Method

Call: call method me->get_hierarchy importing et_hierarchy = lt_hierarchy.

Where: method GET_HIERARCHY.

*** Declare local variables field-symbols: <fs_tree> type ty_hierarchy_tree.

*** Get tree from buffer, if not in buffer, read from DB read table gt_case_hierarchy assigning <fs_tree> with key case_guid = gv_crm_case_api_ref->gv_case_guid. if sy-subrc ne 0. me->build_tree_table( ). " -----> Read data from DB

read table gt_case_hierarchy assigning <fs_tree> with key case_guid = gv_crm_case_api_ref->gv_case_guid. endif. et_hierarchy = <fs_tree>-record_tree. endmethod.

MODIFY Method

Before: WRONG read table gt_case_hierarchy assigning <fs_tree> with key case_guid = gv_crm_case_api_ref->gv_case_guid.

After: CORRECT call method me->get_hierarchy importing

12

<December 2008>

1 Business Objects and Supported Operations

et_hierarchy = lt_hierarchy.

1.3 Explanation of Logical Key and Other Interfaces


For more information, see Web Service Tool UIU Contribution Interfaces.

1.4 Use of Action Code and Controller Table


When using a generated web service (create or change) the field Action Code and the Controller table can be filled for every substructure: Action Code For a create service it is not required to fill the action code (but it can be filled with 01). For a change service the action code needs to be filled out based on the following values: Root Object 02 (Change) Child Object: 01 (Create) The child object needs to be created. 02 (Change) The child object is being changed or any child of the child is sending data. For each node that is sending data, all of the parents up to the root object also need their action code filled in. 03 (Delete) The child object needs to be deleted. The following matrix shows the allowed action code of child nodes depending on the parent action code: Parent Child: 01 Child: 02 Child: 03 01 X 02 X X X 03 X -

X = combination allowed - = combination not allowed The action codes 04, 05, and 06 are not supported by the web service tool. Controller Table The user needs to fill out this Controller table explicitly with the fields that are sent as empty. This way, the web service user does not have to send all fields in a substructure for change (for example, if only the last name needs to be changed, only the last name needs to be sent). If the last name should be empty, LASTNAME needs to be entered in the Controller table by the user.

<December 2008>

13

You might also like