Vous êtes sur la page 1sur 43

SAP NetWeaver Know-How Network Conference Call

Tips & Tricks for FOX Formulas in BW-BPS

Marc F. Bernard
Platinum Consultant SAP NetWeaver RIG Americas SAP Labs, LLC

Thursday, March 10, 2005

Learning Objectives
Determine the correct design for a planning function Understand how BPS formulas work Design formulas the right way Resolve performance problems or avoid them in the first place

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 2

How to Design a Planning Function


The following holds for EVERY planning function: Define the business scenario for the planning function. Determine the proper level i.e. the level of aggregation in the InfoCube that is needed for the business scenario. You have to identify the proper characteristics and key figures. Write down some sample records in that level. Write down how the data records should look like after executing the planning function. Identify the fields in the data records that are changed or used for calculation by the planning function. These are the fields to be changed in the planning function. Identify the type of planning function (predefined type, formula (FOX), exit) and configure the planning function.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 3

Example for a Planning Function


Business scenario: You want to copy the amount for each product from the current year to the next year. Level: We use an InfoCube with 0PRODUCT and 0FISCYEAR as characteristics and 0AMOUNT as key figure.

0PRODUCT 0001 0002

0FISCYEAR 2010 2010

0AMOUNT 100 200

Before

0PRODUCT 0001 0001 0002 0002

0FISCYEAR 2010 2011 2010 2011

0AMOUNT 100 100 200 200

After

Field(s) to be changed
SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 4

Planning Functions Subsets: Example


Sample data records:
0PRODUCT 0001 0001 0002 0002 0FISCYEAR 2010 2011 2010 2011 0AMOUNT 100 100 200 200

Fields to be changed Empty Year Product All

Fields for grouping All Product Year Empty

Number of calls/records 4 calls, one record per call 2 calls, records (1+2) and (3+4) 2 calls, records (1+3) and (2+4) 1 call, all records

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 5

Flowchart for Planning Functions

Start of Execution Data Selection Build Subsets from Selected Data Phase 1 Reference Data Initialize Function (Add Subsets) FOREACH Subset. Phase 2 Execute Function ENDFOR. End of Execution

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 6

Types of Generic Functions


BW-BPS provides the following generic planning functions:
Distribute
Copy Copy to Several Target Objects By Key By Key from Sender to Receiver By Reference Data By Reference Data from Sender to Receiver

Copy

Delete
Delete Based on Values Delete Invalid Combinations

Currency Translation Unit of Measure Conversion

Revaluation Forecast Repost


Repost Based on Values Repost Characteristic Relationships

Formulas (FOX) Exit Function

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 7

Complexity vs. Functionality

Predefined Functions

Formulas (FOX)

Exits

Complexity, Functionality

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 8

When to Use Formulas (FOX)

There is no predefined planning function that does the job. The task cannot be done in one standard planning function but several planning functions/sequence are needed. The customizing of a standard planning function becomes to complicated.

Performance: Most of the time it is faster to have one fox formula doing the job than a number of planning functions.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 9

How to Implement Formulas (FOX)

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 10

FOX Formulas Definition


Definition: Formulas define how transaction data is to be processed in order to generate plan data. Formula functions enable you to use extended mathematical functions to calculate plan data. In addition to different calculation functions, which you can use for value assignment in formulas, there is also the possibility to model complex flow structures with the formula language FOX (FOrmula eXtensions).

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 11

FOX Formulas Basics


How to specify a record in a formula:
You use { }-operands to access transaction data. Syntax: {field to be changed 1, field to be changed 2, , field t.b.c. n} If "key figure name" is a field to be changed, then each key figure in a record can be addressed individually. If "key figure name" is not in the fields to be changed, then all key figures of the data record will be changed according to the formula. Use F4-help for entering { }-operands.

How to read and write data:


To read data, put the { }-operand on the right hand side of equations. To write data, put the { }-operand on the left hand side of equations.

Do not forget the "." at the end of each statement.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 12

FOX Formulas Help (F1 and F4)

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 13

FOX Formulas Basic Examples


Example 1: Calculate sales amount from sales quantity and a fixed price
Field(s) to be changed: Key figure name Formula: {0AMOUNT} = {0QUANTITY} * 100. Note: If key figure is the only field to be changed, you do not need the { } brackets: 0AMOUNT = 0QUANTITY * 100.

Example 2: For each product copy data from the current year (2005) to the next year (2006)
Field(s) to be changed: Fiscal Year Formula: {2006} = {2005}. Note: You do not have to care about the product because of the subsets ("automatic FOREACH")!

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 14

Some Elements of FOX Formulas


* Comments
start in the first column of a row and only have a length of a row

Working with Local Variables: DATA varname TYPE typename.


typename I (Integer) or F (Floating Point) or name of an InfoObject

Using Time Characteristics TMLV( Characteristic, Offset )


offset: to add for example one year you would select 1 as offset

Using Planning Area Variables: DATA LocalVariable TYPE InfoObject. LocalVariable = VARV('name of global variable'). Conditional Statements IF ELSEIF ENDIF.

Loop Constructs DO ENDDO.


Needs explicit EXIT Condition

All elements are explained in documentation

ELSEIF if you want to integrate several alternatives

IF ELSE ENDIF.
ELSE if no condition mentioned before works

Error and Information Messages MESSAGE Tnnn(class)


T = E (Error) or I (Information) nnn = Number of message in message class class = Customer defined message class

FOREACH ENDFOR.
Ending, if last selected characteristic value or key figure is reached

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 15

FOX Formulas Foreach Statement


You have to define a local variable:
DATA year TYPE 0fiscyear.

Use this variable in the Foreach Statement:


FOREACH year. {year} = {2004} * 1.05. ENDFOR.

The values for YEAR are taken from the records in the selection of the planning package. Assume we have data records for year 2005 and 2006.
First loop: YEAR is replaced with 2005, system calculates {2005} = {2004} * 1.05. Second loop: YEAR is replaced with 2006, system calculates {2006} = {2004} * 1.05.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 16

FOX Formulas Variables


Example of formula using one planning area variable and three local variables:
DATA ZCURPER TYPE 0FISCPER. DATA ZFCPER TYPE 0FISCPER. DATA COUNTER TYPE I. * Copy current period to the next 5 forecast periods ZCURPER = VARV('PERCUR'). DO. COUNTER = COUNTER + 1. ZFCPER = TMVL(ZCURPER,COUNTER).

{0COPASLQTY,ZFCPER,RFC} = {0COPASLQTY,ZCURPER,ACT}. IF COUNTER = 5. EXIT. ENDIF. ENDDO.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 17

FOX Formulas How to test


Create small packages (e.g. 2 records). Create layouts for all packages: Put the fields to be changed in the key columns, the key figures in the data columns, and the remaining characteristics in the header. The layout looks like a data record. Execute the planning function using the trace ("execute with trace"). Send messages with the relevant values. Have a look at the details in the system messages.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 18

Execute a Planning Function

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 19

Execute a Planning Function with Trace

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 20

FOX Formulas How to Optimize


The idea is to reduce the complexity of the formula, without changing the result of the calculation. Less FOX coding leads to less ABAP coding that the system has to process and therefore faster execution times. There are two main targets for optimization:
1. Formula Operands 2. Foreach Loops

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 21

Real-world Example
Fields to be changed:

{ Key figure, Cost Element, Version, Planning Item, Planning Area }

Parameter group:

* Cash Discount = (Base Revenue - Price Adjustment) * 2% DATA C TYPE 0COSTELMNT. DATA V TYPE 0VERSION. DATA P TYPE ZPLANITEM. FOREACH C,V,P. {0AMOUNT,0000415001,V,CASHDISC,PA000004} = ( {0AMOUNT,0000400001,V,CUSTSALES,PA000004} -

{0AMOUNT,0000410001,V,PRICADJDIS,PA000004} + {0AMOUNT,0000405002,V,PRICADJBKT,PA000004} ) * 0.02. ENDFOR.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 22

Optimization 1: "Fields to be changed"


Find all characteristics that are restricted to only one value in the formula. This means that the characteristic is NOT being changed and therefore should be removed from the "fields to be changed".

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 23

Optimization 1: Example
Optimization 1: "Fields to be changed" that are not changed

Remove from "Fields to be changed": Key figure = 0AMOUNT Remove from "Fields to be changed": Version = V Remove from "Fields to be changed": Planning Area = 'PA000004'

Fields to be changed: { Cost Element, Planning Item }

Parameter group: * Cash Discount = (Base Revenue - Price Adjustment) * 2% DATA C TYPE 0COSTELMNT. DATA P TYPE ZPLANITEM. FOREACH C,P. {0000415001,CASHDISC} = ( {0000400001,CUSTSALES} -

{0000410001,PRICADJDIS} + {0000405002,PRICADJBKT} ) * 0.02. ENDFOR.


SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 24

Optimization 2: "Formula selection"


Determine the selections i.e. the characteristic combinations that are changed by the formula and compare it against the planning level. There can be several cases:
Perfect match (best case) Level selection is equal to the formula selection. The system will read only data that is actually being changed. Level selection is bigger (worst case) The system will read more data than required by the function. Level selection is smaller (error) The formula potentially generates records that are not part of the package, which could lead to an error message.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 25

Optimization 2: Example
Optimization 2 A: "Formula selections (excl. reference data)" that are different than level

Restrict level to formula selection: Key figure Level: = 0AMOUNT, ZPRICEADJ, ZUNCOLLAR Formula: = 0AMOUNT

Level contains more key figures than necessary

Restrict level to formula selection: Cost Element Level: No restriction Formula: = '0000415001'

Level is not restricted on Cost Element but formula changes only one Cost Element

Optimization 2 B: "Formula selections (incl. reference data)" that are different than level Optimization works same way as 2A but tries to combine two database selections.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 26

Optimization 3: "Conditions"
Optimization 3 A: If the condition is equal to the level restriction, then the condition can be removed.

Optimization 3 B: If there's only one condition it can be merged with the level selection.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 27

Optimization 4: "Formula operands"


It is not necessary to write to the same result operand several times. It's also not necessary to read the same reference operand several times. Instead, the operands should be stored temporarily using local variables (DATA).

Optimization 4 A: Based on result data only Optimization 4 B: Based on reference data only

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 28

Optimization 4: Example
Fields to be changed: { Material, Planning Item }

Parameter group (BEFORE): DATA M TYPE 0MATERIAL. {#,TOTALSALES} = 0. FOREACH M.

If there are 1.000 materials, then TOTALSALES has to be read and updated 1.000 times

{#,TOTALSALES} = {#,TOTALSALES} + {M,CUSTSALES}. ENDFOR.

Parameter group (AFTER): DATA M TYPE 0MATERIAL. DATA TOTAL TYPE F. TOTAL = 0. FOREACH M. TOTAL = TOTAL + {M,CUSTSALES}. ENDFOR. {#,TOTALSALES} = TOTAL.
SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 29

There's only one update of TOTALSALES independed of the number of materials

Optimization 5: "Operands in Foreach Loops"


If an operand is used in an foreach loop but does not depend on any foreach variable, then the operand is being processed too often and therefore should be moved before (reference data) or after (result data) the foreach loop.

Optimization 5 A: Based on result data only Optimization 5 B: Based on reference data only

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 30

Optimization 5: Example
Fields to be changed: { Cost Element, Planning Item }

Parameter group (BEFORE): * Cash Discount = (Base Revenue - Price Adjustment) * 2% DATA C TYPE 0COSTELMNT. DATA P TYPE ZPLANITEM. FOREACH C,P. {0000415001,CASHDISC} = ( {0000400001,CUSTSALES} -

CASHDISC is updated inside the loop although it does not depend on C or P.

{0000410001,PRICADJDIS} + {0000405002,PRICADJBKT} ) * 0.02. ENDFOR.

The other operands are read inside the loop although they don't depend on C or P.

Parameter group (AFTER): {0000415001,CASHDISC} = ( {0000400001,CUSTSALES} -

{0000410001,PRICADJDIS} + {0000405002,PRICADJBKT} ) * 0.02.

Ultimately the complete Foreach loop can be removed.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 31

Optimization 6: "Formulas on Multi Planning Areas"


If the formulas is using data of only one planning area but is defined on a multi area, then the complete formula should be moved to the single basis planning area.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 32

Optimization 7: "Nested Loops"


Use nested FOREACH statements only if necessary. Use FOREACH VAR1,VAR2, ..., VARn wherever it is possible. Example: Records
0PRODUCT 0001 FOREACH product. FOREACH year. ... ENDFOR. ENDFOR. 0PRODUCT 0001 0001 0002 0002 0FISCYEAR 2010 2011 2010 2011 0AMOUNT 10 0 0 20 0PRODUCT 0001 0002 0FISCYEAR 2010 2011 0AMOUNT 10 20 FOREACH product, year. ENDFOR. 0002 0FISCYEAR 2010 2011 0AMOUNT 10 20

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 33

Optimization 8: "If Statements"


If Statements versus Conditions - when to use which:
When the logic depends on variables with ranges, several values or hierarchy nodes (defined on the planning area), then use conditions. When using if-statements you only have one parameter group and thus only one formula. Therefore the formula is easier to understand.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 34

Tip 9: "Naming Conventions"


Use naming conventions for local FOX variables, e.g.:
CHA_ for characteristics, KYF_ for key figure values, VAR_ for global (BPS) variables, ATR_... for attributes, INT_ for integer numbers, DAT_... for dates, TIM_... for times.

Add comments to the formula.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 35

Tip 9: Example
Fields to be changed: { Key figure name, Posting period, Version }

* Posting period and total amount DATA CHA_0FISCPER3 TYPE 0FISCPER3. DATA KYF_TOTAL TYPE F.

* BPS version (via variable) DATA VAR_ZBPSVER TYPE 0VERSION.

* Actual period (attribute of BPS version) DATA ATR_ZACTPER TYPE 0FISCPER3.

* Get actual period from BPS version (via variable) VAR_ZBPSVER = VARV( 'ZBPSVER' ). ATR_ZACTPER = ATRV( 'ZACTPER', VAR_ZBPSVER ). * Get total to be distributed greater than actual period KYF_TOTAL = 0. FOREACH CHA_0FISCPER3. IF CHA_0FISCPER3 > ATR_ZACTPER. KYF_TOTAL = KYF_TOTAL + {0AMOUNT,CHA_0FISCPER3,VAR_ZBPSVER}. ENDIF. ENDFOR.
SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 36

Tip 10: "Reference Data"


If you set a local variable for a characteristic using TMVL, ATRV, or ATRVT and use this variable in a reference data operand (right side of formula), then the system ignores any restrictions for this characteristic when reading the reference data form the database. This can lead to major performance problems! Check the BPS statistics for very long database selection for reference data. Check that SAP note 729362 is implemented (or BW 3.5 SP 2). However, there's no easy workaround.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 37

Tip 10: Example


Fields to be changed: { Company, Version }

* Company DATA CHA_0COMPANY TYPE 0COMPANY. * Source version (attribute of company) DATA ATR_SVERSION TYPE SVERSION. * Target version (variable) DATA VAR_TVERSION TYPE 0VERSION.

Business Case: Copy data into a target version and each company potentially has a different source version.

* Get target version from variable VAR_TVERSION = VARV( 'TVERSION' ).

* Copy data from source to target version FOREACH CHA_0COMPANY.

Source version is set via attribute (ATRV) and then used in operand to read reference data. System will read ALL versions since it can't know which ones would be required!

ATR_SVERSION = ATRV( 'SVERSION', CHA_0COMPANY ). {CHA_0COMPANY,VAR_TVERSION} = {CHA_0COMPANY,ATR_SVERSION} . ENDFOR.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 38

Tip 11: "Endless Loops"


Save the formula before testing! Otherwise you loose your work if the program goes into an endless loop and you have to stop the program. To stop a session after having programmed an "endless loop" (for example a do loop without exit statement), select "Stop Session" from the SAPGUI system menu or go to transaction SM50 and choose Program/Mode Program Cancel.

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 39

Tip 12: "Performance Analysis"


Always do a performance analysis before you start optimizing.

Use various statistics to determine the cause of performance issues:


BPS Statistics (transaction BPS_STAT0) BW Statistics (table RSDDSTAT) SQL Trace (transaction ST05) ABAP Performance Trace (transaction SE30) Workload Statistic (transaction STAD)

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 40

Key Learnings
Follow the steps on "how to design a planning function" Use subsets to your advantage Remember the tips for implementing and optimizing FOX formulas Always determine the root cause first before starting to optimize

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 41

Copyright 2005 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, and Informix are trademarks or registered trademarks of IBM Corporation 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. MaxDB is a trademark of MySQL AB, Sweden. 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.

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

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 42

Copyright 2005 SAP AG. Alle Rechte vorbehalten


Weitergabe und Vervielfltigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrckliche schriftliche Genehmigung durch SAP AG nicht gestattet. In dieser Publikation enthaltene Informationen knnen ohne vorherige Ankndigung gendert werden. Die von SAP AG oder deren Vertriebsfirmen angebotenen Softwareprodukte knnen Softwarekomponenten auch anderer Softwarehersteller enthalten. Microsoft, Windows, Outlook, und PowerPoint sind eingetragene Marken der 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, und Informix sind Marken oder eingetragene Marken der IBM Corporation in den USA und/oder anderen Lndern. Oracle ist eine eingetragene Marke der Oracle Corporation. UNIX, X/Open, OSF/1, und Motif sind eingetragene Marken der Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, und MultiWin sind Marken oder eingetragene Marken von Citrix Systems, Inc. HTML, XML, XHTML und W3C sind Marken oder eingetragene Marken des W3C, World Wide Web Consortium, Massachusetts Institute of Technology. Java ist eine eingetragene Marke von Sun Microsystems, Inc. JavaScript ist eine eingetragene Marke der Sun Microsystems, Inc., verwendet unter der Lizenz der von Netscape entwickelten und implementierten Technologie. MaxDB ist eine Marke von MySQL AB, Schweden. SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver und weitere im Text erwhnte SAP-Produkte und -Dienstleistungen sowie die entsprechenden Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und anderen Lndern weltweit. Alle anderen Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen. Die Angaben im Text sind unverbindlich und dienen lediglich zu Informationszwecken. Produkte knnen lnderspezifische Unterschiede aufweisen.

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

SAP AG 2005, Tips & Tricks for FOX Formulas in BW-BPS, Marc F. Bernard / 43

Vous aimerez peut-être aussi