You are on page 1of 17

SAP DATAFEED Interface AG

SAP Treasury

SAP

Version 2.0 28.07.1997


July 1997

Dr. Andreas Gebauer, Silvia Gruben


1

SAP AG Treasury

SAP DATAFEED Interface

SAP

Copyright Copyright 1997 S A P AG. All rights reserved.

Neither this document nor any part of it may be copied or reproduced in any form or by any means, or translated into another language, without the prior consent of SAP AG.

SAP AG makes no warranties or representations with respect to the content hereof and specifically disclaims any implied warranties of merchantability or fitness for any particular purpose. SAP AG assumes no responsibility for any errors that may appear in this document. The information contained in this document is subject to change without notice. SAP AG reserves the right to make any such changes without obligation to notify any person of such revision or changes. SAP AG makes no commitment to keep the information contained herein up to date.

SAP is a registered trademark of SAP AG.

July 1997

SAP DATAFEED Interface AG

SAP Treasury

SAP

Contents
1. General Information ........................................................................................................... 4 1.1 General Requirements ..................................................................................................... 4 1.2 Functions.......................................................................................................................... 4 1.3 Technology....................................................................................................................... 4 1.4 Partner Concept ............................................................................................................... 5 1.5 Certification Requirements .............................................................................................. 5 2. Overall System Architecture .............................................................................................. 6 2.1 Overview ........................................................................................................................... 6 2.2 Application Scenario 1..................................................................................................... 6 2.3 Application Scenario 2..................................................................................................... 8 2.4 Application Scenario 3..................................................................................................... 9 3. Additional Functions of the Datafeed Interface................................................................ 9 3.1 Overview ........................................................................................................................... 9 3.2 Market Data/Error Buffer .................................................................................................. 9 3.3 Translation Table Settings............................................................................................. 10 3.4 User Log ......................................................................................................................... 11 3.4.1 Display ..................................................................................................................... 11 3.4.2 User Log Archive ...................................................................................................... 11 3.5 File Interface ................................................................................................................... 12 4. Technical Description of Transfer Structures ................................................................ 12 4.1 Structure of the Table for Requesting Market Data...................................................... 12 4.2 Structure of the Table for Delivering Market Data ........................................................ 13 4.3 Calling up External Functions from the SAP R/3 System ............................................ 14 4.4 Calling up SAP R/3 Functions from External Systems (Transactional RFC) .............. 15 5. Error Processing .............................................................................................................. 16

July 1997

SAP AG Treasury

SAP DATAFEED Interface

SAP

1. General Information
1.1 General Requirements
As part of its R/3 client/server software solution, SAP has developed an application for the treasury area (SAP R/3 TR). The applications main task is to manage treasury transactions. Besides position management, this includes monitoring and valuing positions on an ongoing basis. To help the user work more efficiently, SAP R/3 TR supports an interface that allows the user to transfer the market data required for valuation into the SAP System automatically. This interface is called a datafeed interface. SAP aims to make it an open, universal interface, via which every provider of datafeed platform systems can export market data into the SAP R/3 TR System. This document describes how external datafeed programs must be configured to allow them to transfer market data to the SAP R/3 TR System. The datafeed interface was first made available to all customers with SAP R/3 TR Release 3.0D.

1.2 Functions
In SAP R/3 TR Release 4.0A, the datafeed interface supports the following transfer functions: Transfer of exchange rates Transfer of security price information (stocks, bonds) Transfer of reference interest rates (e.g. LIBOR, FIBOR) Transfer of index values Transfer of volatilities ( for currencies, securities, interest rates and indexes) Transfer of forwards Transfer of commodities The data can be transferred real-time using Remote Function Call (RFC) (see Section 2), or by means of a file interface in datafeed notation (see Section 3.5).

Note: SAP plans to support the transfer of additional market data types in later releases.

1.3 Technology
From Release 3.0D, data can be transferred between the external interface program and the SAP R/3 TR datafeed module either synchronously, with direct program-to-program communication, or asynchronously (transactional link). The SAP R/3 TR datafeed module sets up the communication link when it requests the price/rate information. The advantage of this processing method is that the SAP R/3 TR datafeed module can call up the required market data independently, and vary the volume of data it requests according to its own processing capacity and processing times. To obtain market data, the SAP R/3 TR datafeed module calls up an external interface
4 July 1997

SAP DATAFEED Interface AG

SAP Treasury

SAP

program that requests the market data from the datafeed server and returns it to the SAP R/3 TR System. This program is provided by the partner, and is executed outside the SAP R/3 System. The link is based on SAPs synchronous Remote Function Call (sRFC) technology. The technical details and the requirements the interface software must meet to be compatible with the RFC are described in the handbook entitled SAP Remote Function Call (RFC) Interface. Releases 3.0D and above allow asynchronous buffered data transmission between the SAP R/3 TR datafeed module and external partner programs using transactional RFC (tRFC). When this transmission method is used, the partner is responsible for updating the requested market data on a continual basis according to SAP specifications (times, frequencies).

1.4 Partner Concept


To ensure that our customers have flexible and reliable datafeed links, SAP works with selected partners. The tasks are assigned as follows: As part of its standard package, SAP provides the technical tools, in particular the RFC Software Library and the RFC program stub required to link up the SAP R/3 System to external partner software. In addition, the market data transferred to the SAP R/3 TR datafeed interface is incorporated into the treasury transactions in the SAP R/3 TR application modules. The Partners are responsible for providing the complete software package for the external interface, including processing logic, communication between the SAP R/3 System and the partner, and configuration of the interface as described in this document. In particular, the partner is the first to be contacted by the customer if communication errors occur. SAP plans to implement a partner certification procedure. The procedure will examine whether the partner meets the requirements to link external systems to the SAP R/3 System successfully, using the technology described above.

1.5 Certification Requirements


SAP will either grant a full certificate or qualified certificates, depending on whether a partner supports all the functions or only some of them. Qualified certificates contain a list of the functions supported. At least one of the transfer functions must be via sRFC. Note: The certificate specifies the technology supported (sRFC, tRFC).

July 1997

SAP AG Treasury

SAP DATAFEED Interface

SAP

2. Overall System Architecture


2.1 Overview
This section explains the overall system architecture and relates it to typical business scenarios. The following graphic illustrates the overall architecture of the integrated systems.

Datafeed Architecture
SAP R/3 Applications
TR-TM TR-MRM ...
Treasury Market Risk Management Management

Datafeed Provider

Operative SAP tables

R e Market q data u buffer e s t Translation


table

R e p l y Reply

Information providers

External interface program RFC

Datafeed Server Log Datafeed Server


R

Selective Refresh
SAP AG
XXYYY / 22 - 1

Request

Overall architecture of the integrated systems

2.2 Application Scenario 1


Objective: Import market data for yield curves within the SAP R/3 TR-MRM Market Risk Management Module. In the TR-MRM application module, the way yield curves are defined plays a significant role. Reference interest rates (such as LIBOR and FIBOR) are used for short-term evaluations, as they are for inter-bank money market trading. For long-term evaluations, bonds, futures or options are commonly used. Both current and historical market data are required to value the positions for the specified yield curves. The TR-MRM module manages the yield curves and the link to the current market data. Process: TR-MRM requests current market data from the SAP R/3 TR datafeed module by calling up the internal SAP R/3 function module (FM) TB_DATAFEED_RATE_REQUEST. The TR-MRM application module transfers a table of requirements in R/3 notation to the function module. The SAP R/3 TR user defines the type, number and names of the treasury instruments, as well as the required instrument properties. This is done in the TR-MRM module when the user defines the yield curve in R/3 notation (for example, name of the reference interest rate or security ID + stock exchange + rate/price type).
6 July 1997

SAP DATAFEED Interface AG

SAP Treasury

SAP

The function module first converts the the market data request in R/3 notation into datafeed notation by means of a translation table (Table VTB_DFCU in the SAP Data Dictionary). The datafeed notation contains the instruments, the data source (producer) and the instrument properties for which current values are being requested. A property describes which item of information about an instrument is being requested from the external interface program. Examples of properties are: BID, ASK, FIRST, LAST, HIGH, LOW, YR_LOW, YR_HIGH. The property names are defined by the SAP R/3 TR user as part of TR-MRM Customizing. Part of the function module TB_DATAFEED_RATE_REQUEST uses the RFC method. This means that the function module calls up the external interface program of the partner (data provider) using the CALL FUNCTION <ext. function name> DESTINATION <partner destination>. The table of requested instruments, data sources (producers) and corresponding instrument properties defined in the R/3 System is transferred to the partners interface program. This part of the internal SAP R/3 System function module TB_DATAFEED_RATE_REQUEST is an RFC client, and thus forms an interface to the external interface program(s) outside the SAP R/3 System. The external interface program acts as an RFC server and market data supplier. The function module TB_DATAFEED_RATE_REQUEST can also be called up to read the values exclusively from the market data buffer. In this case, the market data is retrieved by a separate report program (RFTBDF07). Note: RFC method: The SAP function module is responsible for setting up the link to the external datafeed program.

To call up the partner functions, the internal SAP R/3 function module uses two parameters that identify the program to be called up: the name of the function within the partner program (<ext. function name>) and the RFC destination defined in the R/3 System (<partner destination>). The RFC destination is used to define the technical details of the partner program to be called up, and is defined in the R/3-System via transaction SM59 (Display and Maintain RFC Destinations). The line structure of the table of requirements REQUEST is described in structure VTB_DFREQ in the SAP Data Dictionary (see Section 4.1 of this document). A further table, ANSWER, is used to return the market values from the external datafeed program to the SAP R/3 System. The structure of the table is defined in the SAP Data Dictionary under VTB_DFANS, and corresponds to the structure of the table of requirements. However, it also includes additional fields for transferring the market values identified by the external datafeed program (see Section 4.2). When the external interface program is called up, this table is initially empty. The external program processes the market data requirements that have been transferred to it in the table of requirements REQUEST. It determines the values for the requested instrument properties and puts them into the return table ANSWER. During this time, it must make sure that the communication link to the R/3 function module that called it up remains open, since the function module waits for either the market values or an error message (sRFC). The communication link is deactivated when the data are returned from the external partner program to the function module in the R/3 System that called it up. Note: When the requested data has been transmitted, the R/3 System deactivates the link. The content of the keys in the table ANSWER for the instrument, the data source (producer) and the property must match those in the table of requirements REQUEST. If errors occur, the customer needs to follow the procedure for error processing (see Section 5). The market data supplied in datafeed notation is translated back into R/3 notation by means of a translation table, and made available to the TR-MRM application in the form of an internal table. In addition, the market data buffer can be used to analyze the market data obtained or the error situation. The market data/error buffer always stores the last external request on a particular date. The function module TB_DATAFEED_RATE_REQUEST does not update the SAP R/3 market data tables. This is the responsibility of the application module (here: TRMRM).
July 1997 7

SAP AG Treasury

SAP DATAFEED Interface

SAP

2.3 Application Scenario 2


Objective: Daily import of closing security prices into the TR-SE Securities application module, storing them in the R/3 market data tables at the same time. The application module TR-SE Securities is a comprehensive solution for securities management. Examples of securities positions are stocks, subscription rights, investment certificates, participation certificates, interest-bearing securities, convertible bonds, warrant bonds and options. To value and manage these positions, market data are essential. Historical price/rate trends must be available in graphic form to support the decision-making process, which means that real-time market data need to be stored in the R/3 market data tables. For large portfolios (>1000 security prices), SAP recommends calling up the closing security prices as a batch (for example, during the night) to improve the system performance and permissioning times. Process: In the R/3 System, the closing security rates/prices are requested as a batch using report program RFTBDF07. The program can also be called up online, allowing the user to display or print the answer list. However, we can only recommend this for small amounts of data. Note (synchronous RFC): When large volumes of data are being called up, the report program can take a long time to run. If the program has been called up online, this can lead to a timeout and program termination, since the standard runtime for an online program is set to only a few minutes. To run program tests, this can be avoided by increasing the parameter rdisp/max_wpruntime on the corresponding SAP R/3 application server. However, SAP recommends always using batch mode to call up larger volumes of data (>200 market prices). Note (asynchronous/transactional RFC): To call up large volumes of data, it is advisable to use asynchronous RFC. Here, the communication link is deactivated as soon as the table of requirements has been transferred to the external program. When the external program is ready to deliver data, it calls up the R/3 function module TB_DATAFEED_RATE_RECEIVE_ASYN and transmits the requested data (see Section 4.4). A special SAP R/3 user must be configured to allow the partner program access to the R/3 System (user category CPIC, authorization F_DTFEED_ALL).

Within the R/3 System, the report program RFTBDF07 calls up the function module TB_DATAFEED_RATE_UPDATE. The selection criteria in the report program are translated into a table of requirements in R/3 notation. The function module TB_DATAFEED_RATE_UPDATE works in the same way as the function module TB_DATAFEED_RATE_REQUEST, so that the process described for application scenario 1 also applies here. In addition, TB_DATAFEED_RATE_UPDATE triggers a selective automatic update of the R/3 market data tables. In application scenario 2, the R/3 security price table is filled with the closing prices if the corresponding update indicators have been flagged in the translation table. When program RFTBDF07 has finished running, the closing security prices that have been transferred can be used directly by the TR-SE application module. To list the market data transferred or any error messages, the user can refer to the spool list of report program RFTBDF07, or to the market data and error buffer.

July 1997

SAP DATAFEED Interface AG

SAP Treasury

SAP

2.4 Application Scenario 3


Objective: Continuous transfer of market data (such as exchange rates for valuing portfolio positions), for specified periods at defined times. The SAP R/3 System controls the orders, whilst the partner initiates the deliveries. Examples: bid/ask rate USD/DEM bid/ask rate ITL/DEM closing rate KWD/DEM every current rate immediately 4 times a day: 6, 12, 18, 24 hrs, once a day.

Note: At present, this function is only available if special versions of report RFTBDF07 are scheduled.

3. Additional Functions of the Datafeed Interface


3.1 Overview
The additional functions of the datafeed interface are geared to enable our customers to work effectively and efficiently. These functions can be divided into four areas: Management of the market data/error buffer: Both the current market data and any errors that occurred when the market data was last transmitted can be listed and analyzed. In addition, the market data buffer can be updated. This means that all or selected market values defined in the translation table can be called up via the datafeed interface. From Release 3.0D, SAP provides two report programs within the SAP R/3 TR datafeed interface for this purpose. Setting up the translation table: Before the datafeed interface can be used, the SAP R/3 TR user must first specify which market values are to be obtained. SAP provides a report program that reads the R/3 master data defined by the customer and enters it automatically into the translation table (constructing the R/3 notation). The customer must have entered the master data in TR before the program is run. For each table entry in R/3 notation, the customer must then enter the corresponding datafeed notation. The datafeed partner must support the customer by providing relevant documentation and answering any queries. SAP provides a report program for the securities area that can customize the translation table automatically by importing a file created by the partner comprising the securities ID numbers and the corresponding instrument names. Note: To obtain certification for the function Transfer of securities prices, the partner must offer customizing support. User log: SAPs partners have a legitimate interest in knowing who obtains their market data via the datafeed interface. SAP has written a report program the customer can run to display or print the user log, which can be forwarded to the partner upon request. The customer can also archive the user log. File interface: SAP has developed a report program, with which any market data (current, historical) in datafeed notation can be transferred into the SAP R/3 TR datafeed module and into the TR application modules.

3.2 Market Data/Error Buffer


To display the market data, the customer can call up report program RFTBDF00. The market data can be displayed and printed selectively. Market data are updated using report program RFTBDF07. The market data selected are obtained via the datafeed interface and written to the market data buffer. The R/3 market data
July 1997 9

SAP AG Treasury

SAP DATAFEED Interface

SAP

tables (for example, for exchange rates or security prices) are only updated by this report program if the update indicator has been flagged on the selection screen. An error and/or market data list can be generated, if required. Note: If an error occurs, the partner must return an error code. For more details, refer to Section 5 (Error Processing).

3.3 Translation Table Settings


The R/3 master data are copied to the translation table using report program RFTBDF03. At present, exchange rates, security master records, reference interest rates and indexes are copied to the translation table automatically. Note: In SAP R/3, master record information is assigned to classes. The following classes for automatic translation table customizing are entered into the translation table when the R/3 master data are copied: '01' Currencies '02' Securities '03' Interest rates '04' Indexes Note: SAP plans to provide functions to transfer addtional market data master records automatically in later releases.

Manual customizing by the customer/partner When the R/3 master data have been copied to the translation table, the customer can enter the datafeed notation manually, with the partners support (Table VTB_DFCU). In the securities area, automatic customizing is supported. Note for our partners: From Release 3.0D, partners must provide detailed documentation of their software. For each certified transfer function, the partner must provide the following (in paper form or as an online query facility in the partner system): Description of the instrument keys that can be called up via the datafeed interface. (If necessary, this must be done separately for each datafeed that can be called up.) Description of all the available data sources (producers) and their semantic meaning for the R/3 customer. Description of all the instrument properties that can be called up and their semantic meaning. The documentation should include a reference indicating where the R/3 customer can get additional information from the partner (stating the appropriate partner support team/hotline). The partner is the first to be contacted if the customer experiences problems setting up the datafeed notation (instrument, data source/producer, instrument properties).

Automatic Customizing support In the securities area, the translation table can be customized automatically, using the securities ID held in the securities master record as a key. To support this function, the partner must make a file available, in which the securities ID number and the corresponding instrument (including stock exchange prefix/suffix) are listed line by line. This file is read by the TR report program RFTBDF05, and the instrument keys are transferred to the translation table automatically. Note for our R/3 customers: From Release 3.0D, the customer must have defined the class data and allocated the security to the relevant stock exchange and quoted currency. If this has
10 July 1997

SAP DATAFEED Interface AG

SAP Treasury

SAP

not been done, report program RFTBDF05 cannot customize the translation table automatically. File format for report program RFTBDF05: Description Instrument key Data source /producer Security ID number Type CHAR CHAR CHAR Length 20 15 13 Example =FSAG QFRecord 716460

Notes for our partners: Each line in the file must be structured in this way. No other lines are permitted! Each field must be filled, and any unutilized characters must be filled up with spaces to make up the field length. Tabulators are not permitted! The partner is responsible for ensuring that the structure of this file is correct, and is the first to be contacted by the customer when problems occur with this report program. To be certified for the function Transfer of security price information, the partner is required to support report program RFTBDF05. Note: SAP plans to provide an intelligent Customizing interface for a later release.

Report program RFTBDF08 is used to check the translation table. The program determines whether all the datafeed parameters have been entered or whether individual fields are still empty. If there are any empty fields, no market data can be obtained, and the report program outputs a corresponding error message.

3.4 User Log


Each time the SAP R/3 TR datafeed interface is called up, this is recorded in the user log. The R/3 user can then display or print the user log, or download it as an ASCII file. The R/3 user should archive the user log on a regular basis to avoid overflowing the database table.

3.4.1 Display
Report program RFTBDF02 allows the SAP R/3 TR user to display or print the user log. If the partner requires an overview of all the market data obtained by the R/3 customer, the partner must request the information from the customer. The R/3 customer can print the user log for a past period and send it to the partner.

3.4.2 User Log Archive


The user log is a log file that is updated continually. It is thus advisable to reorganize the file at regular intervals. The SAP R/3 TR user can archive the user log by calling up the R/3 transaction SARA, and entering the object name DATAFDLOG. There is report program for each archive function. However, the R/3 user does not need to know the program, as they are called up by the transaction SARA. SAP provides two variants of each report: SAP_PRODUCTIVE and SAP_TEST. SAP_PRODUCTIVE archives the user log, SAP_TEST performs a test run. The archive functions/report programs are: User log archive (report program RFTBDF09): The data is written to an external operating system file. Read an archive (report program RFTBDF10): The R/3 System reads an external operating
July 1997 11

SAP AG Treasury

SAP DATAFEED Interface

SAP

system file in DATAFDLOG archive format. Delete an archive (report program RFTBDF11): The archived data are deleted from the R/3 database. Import archive (report program RFTBDF12): The R/3 System reads an external file in DATAFDLOG archive format; the user log is imported back to the R/3 database. During the archiving production run, the transaction SARA first archives the user logs and then runs the deletion program. For this reason, the R/3 user should always call up the transaction SARA to perform the archive function. There is separate, detailed documentation that describes the SARA transaction and the prerequisites for using the archiving function. (e.g. configuration of the archive file names).

3.5 File Interface


SAP has developed a file interface to transfer market data that is no longer available on the datafeed platform into the SAP R/3 System. Both current and historical market data in datafeed notation can be imported. Report program RFTBDF06 triggers the file import, and expects an input file with the price data. The file must be in the following format: Description Instrument key Instrument property Date Time Value of the instrument property Currency Type CHAR CHAR CHAR (DDMMYYYY) CHAR (HHMMSS) CHAR CHAR Length 20 15 08 06 20 5 Example =FSAG CLOSE 10091995 173003 250.03 DEM

Note for our partners: Each line in the file must be structured in this way. Any other lines are not permitted! Each of the fields must be filled, and any unutilized characters must be filled up with spaces to make up the field length. Tabulators are not permitted! The partner is responsible for ensuring that the structure of this file is correct, and is the first to be contacted by the customer when problems occur with this report program. Note for our partners: In later releases there may be minor changes to this format.

4. Technical Description of Transfer Structures


Two transfer structures are used to facilitate communication between the external partner and the SAP R/3 TR datafeed interface. One transfer structure is used to request market data, and the other to deliver the market values.

4.1 Structure of the Table for Requesting Market Data


The internal SAP R/3 name for the table is VTB_DFREQ. It is structured as follows: Name RINID1 Meaning Instrument Type CHAR Length 20 Req./ Opt. R Explanation Name of the instrument

12

July 1997

SAP DATAFEED Interface AG

SAP Treasury

SAP

RINID2 SPRPTY

Data source Property, value

CHAR CHAR DATS TIMS DATS TIMS CHAR

15 15 8 6 8 6 12

R R O O O O R

Producer = Source Instrument property for historical data (YYYYMMDD) for historical data (HHMMSS) for historical data (YYYYMMDD) for historical data (HHMMSS) Name of the SAP R/3 user requesting market data

DFROMD From date ATE DFROM TIME From time

DTO To date DATE DTO TIME UNAME To time SAP user ID

The table for requesting market data is filled by the SAP R/3 System using the translation table.

4.2 Structure of the Table for Delivering Market Data


The internal SAP R/3 name for the table is VTB_DFANS. It is structured as follows: Name RINID1 RINID2 SPRPTY SSTATS Meaning Instrument Data source Property, Value Status Type CHAR CHAR CHAR CHAR Length 20 15 15 2 Req./ Opt. R R R R Explanation Instrument name Producer = Source Instrument property requested Value ' ' <> Meaning ok Error (see Section 5)

ERROR RSUPID RCONID RCONCN DATE TIME VALUE

Error text Provider ID Contributor ID Contributor country Contribution date Contribution time Value

CHAR CHAR CHAR CHAR DATS TIMS CHAR CHAR CHAR CHAR CHAR

80 10 10 5 8 6 20 5 5 7 7

R R O O R R R R*/O R R

Error message, if status <> ok. Name of data provider (e.g. 'telerate', 'VWD', Reuters...) Name of contributor Country of contributor Format: YYYYMMDD Format: HHMMSS Alphanumeric or numeric values, left justification *Currency key, only required for security price information Price notation (for securities) Only required for currencies Only required for currencies
13

CURRENCY Currency MKIND CFFACT CTFACT


July 1997

Price notation From currency factor To currency factor

SAP AG Treasury

SAP DATAFEED Interface

SAP

UNAME

SAP User-ID

CHAR

12

Name of the SAP R/3 user requesting market data (copy from table of requirements) Required for volatilities. Here: term in days

RZUSATZ

Additional field

CHAR

10

Notes for our partners: Numeric values: Decimal places must be separated from the whole number with a period. Decimal places must be in decimal form (for example 0.375). Fractions (for example 3/8) are not permitted. If fields overflow, decimal places can be omitted. If the SSTATS (status) entry is <> OK, 'N/A' must be entered in the VALUE field. If required, the table structures described above will be adapted and enhanced in a later release.

4.3 Calling up External Functions from the SAP R/3 System


1. Synchronous RFC: The external program is called up as follows: CALL FUNCTION <Name of external program> DESTINATION <RFC destination> EXPORTING feedname history update TABLES answer request EXCEPTIONS system_failure communication_failure datafeed_failure. The external program name and the RFC destination can both be customized in the SAP R/3 System, which means that the partner can define these variable names freely. feedname: history: update: CHAR 10: CHAR 1: CHAR 1: name used for the datafeed in the R/3 System (for example TELERATE, REUTERS) Flag which indicates whether historical data are to be called up (X) or not( ) Flag which indicates whether the system is to request the data as a snapshot (update = ) or trigger a real-time datafeed request(X). If a snapshot is requested, the partner only needs to supply the market data once. If a real-time datafeed request is initialized, the partner is responsible for supplying up-to-date rates and prices on continual basis. The structure type of the table ANSWER is VTB_DFANS, and the structure type of table REQUEST is VTB_DFREQ.

2. Asynchronous (transactional) RFC: CALL FUNCTION <name of external program> IN BACKGROUND TASK
14 July 1997

SAP DATAFEED Interface AG

SAP Treasury

SAP

DESTINATION EXPORTING

TABLES

<RFC destination> feedname history update request.

The external program name and the RFC destination can both be customized in the SAP R/3 System, which means that the partner can define these variable names freely. feedname: history: update: CHAR 10: CHAR 1: CHAR 1: Name for the datafeed in the R/3 System Flag which indicates whether historical data are to be called up (X) or not( ) Flag which indicates whether the system is to request the data as a snapshot (update = ) or trigger a real-time datafeed request(X). If a snapshot is requested, the partner only needs to supply the market data once. If a real-time datafeed request is initialized, the partner is responsible for supplying up-to-date rates and prices on continual basis.

The structure type of table REQUEST is VTB_DFREQ.

4.4 Calling up SAP R/3 Functions from External Systems (Transactional RFC)
1. Delivery of market data. Definition in the SAP R/3 System: FUNCTION TB_DATAFED_RATE_RECEIVE_ASYNC IMPORTING feedname history update TABLES answer EXCEPTIONS no_authority update_error empty_table invalid_feedname.

feedname: history:

CHAR 10: CHAR 1:

Name for the datafeed in the R/3 System Flag which indicates whether historical data are to be called up (X) or not( ) Flag which indicates whether the operational SAP tables are to be updated (X) or not ( ).

update:

CHAR 1:

The structure type of the table ANSWER is VTB_DFANS. The partner can call up the EXCEPTIONS to allow him to react to errors. 2. Initialization of real-time data transmission. Definition in the SAP R/3 System: FUNCTION IMPORTING TABLES TB_DATAFED_RATE_REQUEST_REALTIM feedname request error error_doku EXCEPTIONS

no_authority
15

July 1997

SAP AG Treasury

SAP DATAFEED Interface

SAP

empty_table invalid_feedname internal_error. The partner can call up the real-time data requirements defined in the R/3 System. These are returned in table REQUEST. Error messages are returned in the table ERROR and detailed error documentation is returned in the table ERROR_DOKU (optional, advisable for external TRACE).

5. Error Processing
As from Release 3.0D, the following error messages are defined in the R/3 System for error processing. The error messages must be returned in the SSTATS field for each record in the answer structure: ok. C SAP R/3 Datafeed Customizing: Entry of datafeed parameters incomplete. Customizing of the SAP R/3 System must be changed. Remedy: Maintain the translation table in Customizing. Note: Error code can only be used by SAP. E SAP R/3 Datafeed-Customizing: Incorrect entries in the translation tables, see the long error text! Note: Error code can only be used by SAP. W SAP R/3 Datafeed market data monitoring: Rate/price differs too greatly from the last rate/price delivered. Remedy: If required, adjust the rate/price manually. Note: If necessary, the market data monitoring function can be adapted by increasing the difference tolerated. Note: Error code can only be used by SAP.

The error name range 50..99 is reserved for the partners. The partners can use this range freely. The partner must return an appropriate error message along with the error code.

Note for our partners: If the external interface program delivers error codes that lie outside the name range 50..99, certification cannot be granted. If such an error arises for the first time with a productive R/3 customer, SAP reserves the right to revoke an existing certificate.

16

July 1997

SAP DATAFEED Interface AG

SAP Treasury

SAP

Get information for certificate


Description The partner receives a test protocol. If certification is successful, issue of a certificate and logo will be set in action. Preparation Realize SAP certification employees: 1. Maintain the certification status in the partner database (PDB). 2. Issue certificate number (Partner Database) . The following information is required from the partner: 1. Exact product name and release 2. Exact name of partner company 3. Exact description of hardware platform 4. Operating systems and release 5. Exact description of the partners or third partys trademark that is to be observed Check Further Hints Address of Technology Marketing: SAP AG Dr. Martin Hofmann Technology Marketing Postfach 1461 D-69185 Walldorf phone#: 0049-6227-343254 FAX#: 0049-6227-341616

July 1997

17