Datasnap.Provider.TCustomProvider.RowRequest

From RAD Studio API Documentation
Jump to: navigation, search

[–] Properties
Type: function
Visibility: public
Source:
Datasnap.Provider.pas
Datasnap.Provider.hpp
Unit: Datasnap.Provider
Parent: TCustomProvider

Delphi

function RowRequest(const Row: OleVariant; RequestType: Integer;
var OwnerData: OleVariant): OleVariant; virtual;

C++

virtual System::OleVariant __fastcall RowRequest(const System::OleVariant &Row, int RequestType, System::OleVariant &OwnerData);

Description

Returns information from a specified record.

RowRequest is called automatically in response to the client dataset's FetchBlobs, FetchDetails, or RefreshRecord method. It generates a BeforeRowRequest event, assembles the requested information, and generates an AfterRowRequest event.

The Row parameter is an OleVariant that describes the record about which information is requested. It enables the provider to locate the record of interest.

The RequestType parameter indicates the type of information required. It is an integer version of the TFetchOptions type. (Its an integer because the value must be marshaled over an IAppServer interface). In Delphi, to convert the TFetchOptions value to the appropriate integer, use the Ord function. In C++, to combine TFetchOption values, use the bitwise "or" operator. For example:



Ord(foBlobs) + Ord(foDetails);



foBlobs || foDetails



RowRequest returns the requested information in a delta packet.

As implemented in TCustomProvider, RowRequest always returns NULL. Descendant classes override this method to return the requested data.

See Also