TDAWhereExpression

Overview

The base abstract class for classes that represent WHERE expression tree nodes: * TDABetweenExpression represents expression that checks belonging to a range of values; * TDABinaryExpression combines two other expressions with a binary operator (such as equality or binary logical operators); * TDAConstantExpression - the constant values that appear in an expression are represented through objects of this class; * TDAFieldExpression represents the part of expression containing table field names; * TDAListExpression is a complex expression, represented by a list of expressions; * TDAMacroExpression represents a call to a macro function, which will be processed by Macro Processor. * TDANullExpression represents NULL values used in the expression; * TDAParameterExpression - the parameters (variables) of an expression are represented through objects of this class; * TDAUnaryExpression represents expressions, based in the application of a unary operator (like the change of sign or logical negation) to another, inner expression;

This class is used to dynamically build WHERE statements from code (Dynamic Where feature of Data Abstract).

Location

  • Unit: uDACore.pas

Descendants

 

DoValidate  protected

Raised exception if aRaiseException is set

procedure DoValidate(aRaiseException: boolean; aName: string)

Parameters:

  • aRaiseException: specifies should the exception be raised or not.
  • aName: Name of property

ParseException  protected

Raises EDAWhereParseXmlException.

procedure ParseException(aName: string)

Parameters:

  • aName: property name.

ParseExpression (IXmlNode, string): TDAWhereExpression  protected overload

Calls ParseException if xr is nil, otherwise calls overload ParseException.

function ParseExpression(xr: IXmlNode; aName: string): TDAWhereExpression

Parameters:

  • xr: source node.
  • aName: Name of property

ParseExpression (IXmlNode): TDAWhereExpression  overload

Creates new Where expression from XML node.

class function ParseExpression(xr: IXmlNode): TDAWhereExpression

Parameters:

  • xr: given XML node.

ReadFromXml  virtual abstract

Reads where expression from the XML.

procedure ReadFromXml(xr: IXmlNode)

Parameters:

  • xr: source node

Validate  virtual

Validates properties of expression.

procedure Validate

WriteToXml  virtual abstract

Writes where expression to the XML.

procedure WriteToXml(sw: IXmlNode)

Parameters:

  • sw: destination node

 

ParseExpression (IXmlNode): TDAWhereExpression  overload

Creates new Where expression from XML node.

class function ParseExpression(xr: IXmlNode): TDAWhereExpression

Parameters:

  • xr: given XML node.

 

DoValidate  protected

Raised exception if aRaiseException is set

procedure DoValidate(aRaiseException: boolean; aName: string)

Parameters:

  • aRaiseException: specifies should the exception be raised or not.
  • aName: Name of property

ParseException  protected

Raises EDAWhereParseXmlException.

procedure ParseException(aName: string)

Parameters:

  • aName: property name.

ParseExpression (IXmlNode, string): TDAWhereExpression  protected overload

Calls ParseException if xr is nil, otherwise calls overload ParseException.

function ParseExpression(xr: IXmlNode; aName: string): TDAWhereExpression

Parameters:

  • xr: source node.
  • aName: Name of property

ReadFromXml  virtual abstract

Reads where expression from the XML.

procedure ReadFromXml(xr: IXmlNode)

Parameters:

  • xr: source node

Validate  virtual

Validates properties of expression.

procedure Validate

WriteToXml  virtual abstract

Writes where expression to the XML.

procedure WriteToXml(sw: IXmlNode)

Parameters:

  • sw: destination node

Descendants