User Tools

  • Vistasource Document Library

RTW Functions

RTW adds several functions to Microsoft® Excel. Most of the them are wrappers and simply call the Microsoft® Excel RTD function. The other functions aide in the handling of data.

For more information about the RTD function, see Subscribe or Publish. Publishing is only available with the RTW RMDS engines.

In Microsoft® Excel, select Formulas → Insert Functions → Select a Category → Vistasource RTW.

In versions prior to Microsoft® Excel® 2007, select Insert → Function on the Microsoft® Excel menu bar to display the Insert Function dialog box. Select the Vistasource RTW category to display the RTW functions. The functions are listed in alphabetical order:

RTS and RTINSERT

These functions call the RTD function with the required default arguments, plus the given arguments. In this way, redundant arguments are hidden, exposing only the data that is important to you. See the following sections for more detail.

If using RTSHARE, go to RTSHARE Functions.

RTS

Subscribes to data using the specified engine.

=RTS(“engine”,“service”, “record”, “field1”,“ field2”,..“.fieldN”)

The arguments Engine, Service, Record ,Field1 are obligatory. The maximum number of fields is 51 (24 for Excel versions prior to 2007).
EXAMPLE
=RTS("vsRMDS2","IDN", "MSFT.O", "ASK")

RTS (Engine-Specific)

Subscribes to data using the RTW engine indicated by its suffix:

Functions
RTS_RFA RTS_SFC RTS_BLOOM RTS_NF RTS_WEB RTS_DEMO

=RTS_<engine>(“service”, “record”, “field1”,“ field2”,..“.fieldN”)

The arguments Service, Record, Field1 are obligatory. The maximum number of fields is 51 (24 for Excel versions prior to 2007).
EXAMPLE
=RTS_RFA("IDN", "MSFT.O", "ASK")

RTINSERT

(RTW RMDS engines only)

Publishes data using the specified engine. See also Publish for more information about using four-part subject names (publishing) and two-part subject names (contributing).

=RTINSERT(“value”,“engine”,“service”, “record”, “field1”, “field2”,… “fieldN”)

The arguments Value, Engine, Service, Record, Field1 are obligatory. The maximum number of fields is 51 (24 for Excel versions prior to 2007).
EXAMPLE
=RTINSERT(C15,"vsRMDS2","DTS", "MYREC", "BID")
When inserting values with RTINSERT, the output cell may show an initial #N/A, This is intrinsic to how an RTD server works, data is not dropped. As soon as the actual value is available, OK is displayed, indicating that the insert was successful. For more information see: msdn.microsoft.com

RTINSERT (Engine-Specific)

Publishes data using the engine indicated by its suffix. See also Publish for more information about using four-part subject names (publishing) and two-part subject names (contributing).

Functions
RTINSERT_RFA RTINSERT_SFC

=RTINSERT_<engine>(“value”,“service”, “record”, “field1”, “field2”,… “fieldN”)

The arguments Value(s), Record, Field1 are obligatory. The maximum number of fields is 51 (24 for Excel versions prior to 2007).
EXAMPLE
=RTINSERT_RFA (C15, "DTS", "MYREC", "BID")
When inserting values with RTINSERT_RFA or RTINSERT_SFC, respectively, the output cell may show an initial #N/A, This is intrinsic to how an RTD server works, data is not dropped. As soon as the actual value is available, OK is displayed, indicating that the insert was successful. For more information see: msdn.microsoft.com

PARSE_DATA

PARSE_DATA works around some of the limitations of RTD when subscribing to multiple fields in the same RTD formula (see Microsoft KB article 286258).

=PARSE_DATA(RTD(“vistasource.rtdserver”,,“rt”,“engine”,“service,”record“,”field1“,”field2“…“fieldN”))

EXAMPLE

This example uses both PARSE_DATA and RTS_RFA functions:

{=PARSE_DATA(RTS_RFA("IDN","MSFT.O", "BID", "ASK"))}
For PARSE_DATA to work properly, the “Decimal separator” in Microsoft Excel needs to be set to ”.“ (period), and the “Thousands separator” needs to be ”,“ (comma). To verify these settings, please check Excel Options → Advanced → System Separators.

To edit an array formula, select the entire output range, place the cursor in the edit line, edit, and then press Ctrl-Shift-Return. If an attempt is made to edit a single cell in the range, a message box displays indicating the cell cannot be edited because it is the output of an array formula.

PACKAGE_DATA

PACKAGE_DATA works around a limitation of RTD when publishing multiple fields in the same RTD formula
(see Microsoft KB article 286258). Publishing is only available with the RTW RMDS (RFA) and RTW RMDS (SFC) engines.

PACKAGE_DATA must be used when publishing multiple fields with rtinsert.

=RTD(“vistasource.rtdserver”,,”rtinsert“,PACKAGE_DATA(value1:value2),”engine“,”service“,”record“,”field1“,”field2“,”fieldN“)

Additionally, PACKAGE_DATA can be used to pass an array of field names to the RTD function.

EXAMPLES

Using PACKAGE_DATA for publishing an array of field values with rtinsert:

=RTINSERT_RFA(PACKAGE_DATA(D3:D4), "DTS","MYREC","BID","ASK")

where D3 contains the value for BID, D4 contains the value for ASK, and DTS (Data Transformation System) is the name of the service to which you are publishing.

Using PACKAGE_DATA for passing both an array of field values and field names:

=RTD("vistasource.rtdserver",,"rtinsert",PACKAGE_DATA(D3:D4),"vsRMDS2","DTS","SH.ANY.MyRec.NaE",PACKAGE_DATA(C3:C4))

in which case BID would be in C3 and ASK would be in C4, and DTS (Data Transformation System) is the name of the service to which you are publishing.

Using PACKAGE_DATA together with PARSE_DATA:

=PARSE_DATA(RTS_RFA("IDN", "MSFT.O", PACKAGE_DATA(A1:A2)))

where A1 contains BID and A2 contains ASK.

PARSE_BULK

(RTW Bloomberg only)

Allows parsing bulk data from the Bloomberg data distribution system that is retrieved via an RTD function. In Bloomberg, the bulk format data type is used to return multi-element or multi-dimensional data. In conjunction with an RTD array formula, this function displays bulk data in a user-friendly format instead of as one string in a cell. See also PARSE_BULK in the RTW Bloomberg engine help for more details.

=PARSE_BULK(RTD( “Vistasource.RTDServer”,,”rt“,Engine,Record Type,Record,Field))

EXAMPLE
=PARSE_BULK(RTD("vistasource.rtdserver",,"rt","axbloom", "TICKERX"," UKX Index","INDX_MEMBERS"))

To edit an array formula, select the entire output range, place the cursor in the edit line, edit, and then press Ctrl-Shift-Return. If an attempt is made to edit a single cell in the range, a message box displays indicating the cell cannot be edited because it is the output of an array formula.