MacroExpression
Overview
Instances of the MacroExpression class can be used to represent direct calls to the SQL function of the underlying database server.
For example: this SQL expression
DATEADD(DAY, 1, CURRENT_TIMESTAMP)
can be represented as
new MacroExpression("DATEADD",
new WhereExpression[] {
new MacroExpression("DAY"),
new ConstantExpression(1),
new MacroExpression("CURRENT_TIMESTAMP") });
Please note that a WhereExpression containing a MacroExpression cannot be used to perform Dynamic Where clauses due to security restrictions (allowing it would enable SQL injection attacks via Dynamic Where).
Instead, you can provide a custom DataService method that accepts the WhereExpression parameter and converts it into SQL using the ToSqlString method.
Location
- Reference: RemObjects.DataAbstract.dll
- Namespace: RemObjects.DataAbstract.Expressions
- Ancestry: WhereExpression | MacroExpression
constructor
Default parameterless constructor.
Required properties have to assigned in addition
constructor
MacroExpression()
init()
Sub New()
constructor (String)
Creates a new instance of the MacroExpression class.
constructor(name: String)
MacroExpression(String name)
init(_ name: String)
Sub New(name As String)
Parameters:
- name: Name of the macro expression
constructor (String, array of WhereExpression)
Creates a new instance of the MacroExpression class.
constructor(name: String; params values: array of WhereExpression)
MacroExpression(String name, params WhereExpression[] values)
init(_ name: String, _ values: WhereExpression...)
Sub New(name As String, ParamArray values As WhereExpression())
Parameters:
- name: Name of the macro expression
- values: Parameters
Add
Adds a provided WhereExpression instance to the list of macro parameter values.
method Add(value: WhereExpression)
void Add(WhereExpression value)
func Add(_ value: WhereExpression)
Sub Add(value As WhereExpression)
Parameters:
- value: The macro parameter to be added.
ApplyFieldMapping
Adjusts the field names in accordance with table names of fields in the given schema column mapping.
method ApplyFieldMapping(columnMappings: SchemaColumnMappingCollection)
void ApplyFieldMapping(SchemaColumnMappingCollection columnMappings)
func ApplyFieldMapping(_ columnMappings: SchemaColumnMappingCollection)
Sub ApplyFieldMapping(columnMappings As SchemaColumnMappingCollection)
Parameters:
- columnMappings:
ApplySourceTableNumber
Adjusts the source table number
method ApplySourceTableNumber(number: Int32): WhereExpression
WhereExpression ApplySourceTableNumber(Int32 number)
func ApplySourceTableNumber(_ number: Int32) -> WhereExpression
Function ApplySourceTableNumber(number As Int32) As WhereExpression
Parameters:
- number:
ApplyTableMapping
Adjusts the table names
method ApplyTableMapping(schemaTable: String; databaseTable: String)
void ApplyTableMapping(String schemaTable, String databaseTable)
func ApplyTableMapping(_ schemaTable: String, _ databaseTable: String)
Sub ApplyTableMapping(schemaTable As String, databaseTable As String)
Parameters:
- schemaTable:
- databaseTable:
ApplyTableNameOrAlias
Adjusts the table names
method ApplyTableNameOrAlias(name: String)
void ApplyTableNameOrAlias(String name)
func ApplyTableNameOrAlias(_ name: String)
Sub ApplyTableNameOrAlias(name As String)
Parameters:
- name:
Combine (WhereExpression, WhereExpression): WhereExpression (declared in WhereExpression)
Creates new BinaryExpression from given left
and right
operands, using operator And
.
class method Combine(left: WhereExpression; right: WhereExpression): WhereExpression
static WhereExpression Combine(WhereExpression left, WhereExpression right)
static func Combine(_ left: WhereExpression, _ right: WhereExpression) -> WhereExpression
Shared Function Combine(left As WhereExpression, right As WhereExpression) As WhereExpression
Parameters:
- left:
- right:
Combine (WhereExpression, WhereExpression, BinaryOperator): WhereExpression (declared in WhereExpression)
Creates new BinaryExpression from given left and right operands, using operator.
class method Combine(left: WhereExpression; right: WhereExpression; operator: BinaryOperator): WhereExpression
static WhereExpression Combine(WhereExpression left, WhereExpression right, BinaryOperator operator)
static func Combine(_ left: WhereExpression, _ right: WhereExpression, _ operator: BinaryOperator) -> WhereExpression
Shared Function Combine(left As WhereExpression, right As WhereExpression, operator As BinaryOperator) As WhereExpression
Parameters:
- left:
- right:
- operator:
Count
Gets a count of defined macro parameters.
property Count: Int32 read;
Int32 Count { get; }
var Count: Int32 { get{} }
ReadOnly Property Count() As Int32
DYN_WHERE_BETWEEN protected (declared in WhereExpression)
const DYN_WHERE_BETWEEN: String = 'between'
const String DYN_WHERE_BETWEEN = "between"
static let DYN_WHERE_BETWEEN: String = "between"
Const DYN_WHERE_BETWEEN As String = "between"
DYN_WHERE_BINARYOPERATION protected (declared in WhereExpression)
const DYN_WHERE_BINARYOPERATION: String = 'binaryoperation'
const String DYN_WHERE_BINARYOPERATION = "binaryoperation"
static let DYN_WHERE_BINARYOPERATION: String = "binaryoperation"
Const DYN_WHERE_BINARYOPERATION As String = "binaryoperation"
DYN_WHERE_CONSTANT protected (declared in WhereExpression)
const DYN_WHERE_CONSTANT: String = 'constant'
const String DYN_WHERE_CONSTANT = "constant"
static let DYN_WHERE_CONSTANT: String = "constant"
Const DYN_WHERE_CONSTANT As String = "constant"
DYN_WHERE_DATATYPE protected (declared in WhereExpression)
const DYN_WHERE_DATATYPE: String = 'datatype'
const String DYN_WHERE_DATATYPE = "datatype"
static let DYN_WHERE_DATATYPE: String = "datatype"
Const DYN_WHERE_DATATYPE As String = "datatype"
DYN_WHERE_DATETIMENOW protected (declared in WhereExpression)
const DYN_WHERE_DATETIMENOW: String = 'datetimenow'
const String DYN_WHERE_DATETIMENOW = "datetimenow"
static let DYN_WHERE_DATETIMENOW: String = "datetimenow"
Const DYN_WHERE_DATETIMENOW As String = "datetimenow"
DYN_WHERE_DATETIMEPART protected (declared in WhereExpression)
const DYN_WHERE_DATETIMEPART: String = 'datetimepart'
const String DYN_WHERE_DATETIMEPART = "datetimepart"
static let DYN_WHERE_DATETIMEPART: String = "datetimepart"
Const DYN_WHERE_DATETIMEPART As String = "datetimepart"
DYN_WHERE_DATETIMETODAY protected (declared in WhereExpression)
const DYN_WHERE_DATETIMETODAY: String = 'datetimetoday'
const String DYN_WHERE_DATETIMETODAY = "datetimetoday"
static let DYN_WHERE_DATETIMETODAY: String = "datetimetoday"
Const DYN_WHERE_DATETIMETODAY As String = "datetimetoday"
DYN_WHERE_EXPRESSION protected (declared in WhereExpression)
const DYN_WHERE_EXPRESSION: String = 'expression'
const String DYN_WHERE_EXPRESSION = "expression"
static let DYN_WHERE_EXPRESSION: String = "expression"
Const DYN_WHERE_EXPRESSION As String = "expression"
DYN_WHERE_FIELD protected (declared in WhereExpression)
const DYN_WHERE_FIELD: String = 'field'
const String DYN_WHERE_FIELD = "field"
static let DYN_WHERE_FIELD: String = "field"
Const DYN_WHERE_FIELD As String = "field"
DYN_WHERE_FUNCTION protected (declared in WhereExpression)
const DYN_WHERE_FUNCTION: String = 'function'
const String DYN_WHERE_FUNCTION = "function"
static let DYN_WHERE_FUNCTION: String = "function"
Const DYN_WHERE_FUNCTION As String = "function"
DYN_WHERE_ITEMS protected (declared in WhereExpression)
const DYN_WHERE_ITEMS: String = 'items'
const String DYN_WHERE_ITEMS = "items"
static let DYN_WHERE_ITEMS: String = "items"
Const DYN_WHERE_ITEMS As String = "items"
DYN_WHERE_KIND protected (declared in WhereExpression)
const DYN_WHERE_KIND: String = 'kind'
const String DYN_WHERE_KIND = "kind"
static let DYN_WHERE_KIND: String = "kind"
Const DYN_WHERE_KIND As String = "kind"
DYN_WHERE_LEFT protected (declared in WhereExpression)
const DYN_WHERE_LEFT: String = 'left'
const String DYN_WHERE_LEFT = "left"
static let DYN_WHERE_LEFT: String = "left"
Const DYN_WHERE_LEFT As String = "left"
DYN_WHERE_LIST protected (declared in WhereExpression)
const DYN_WHERE_LIST: String = 'list'
const String DYN_WHERE_LIST = "list"
static let DYN_WHERE_LIST: String = "list"
Const DYN_WHERE_LIST As String = "list"
DYN_WHERE_LOWER protected (declared in WhereExpression)
const DYN_WHERE_LOWER: String = 'lower'
const String DYN_WHERE_LOWER = "lower"
static let DYN_WHERE_LOWER: String = "lower"
Const DYN_WHERE_LOWER As String = "lower"
DYN_WHERE_MACRO protected (declared in WhereExpression)
const DYN_WHERE_MACRO: String = 'macro'
const String DYN_WHERE_MACRO = "macro"
static let DYN_WHERE_MACRO: String = "macro"
Const DYN_WHERE_MACRO As String = "macro"
DYN_WHERE_NAME protected (declared in WhereExpression)
const DYN_WHERE_NAME: String = 'name'
const String DYN_WHERE_NAME = "name"
static let DYN_WHERE_NAME: String = "name"
Const DYN_WHERE_NAME As String = "name"
DYN_WHERE_NULL protected (declared in WhereExpression)
const DYN_WHERE_NULL: String = 'null'
const String DYN_WHERE_NULL = "null"
static let DYN_WHERE_NULL: String = "null"
Const DYN_WHERE_NULL As String = "null"
DYN_WHERE_OPERATOR protected (declared in WhereExpression)
const DYN_WHERE_OPERATOR: String = 'operator'
const String DYN_WHERE_OPERATOR = "operator"
static let DYN_WHERE_OPERATOR: String = "operator"
Const DYN_WHERE_OPERATOR As String = "operator"
DYN_WHERE_PARAMETER protected (declared in WhereExpression)
const DYN_WHERE_PARAMETER: String = 'parameter'
const String DYN_WHERE_PARAMETER = "parameter"
static let DYN_WHERE_PARAMETER: String = "parameter"
Const DYN_WHERE_PARAMETER As String = "parameter"
DYN_WHERE_PART protected (declared in WhereExpression)
const DYN_WHERE_PART: String = 'part'
const String DYN_WHERE_PART = "part"
static let DYN_WHERE_PART: String = "part"
Const DYN_WHERE_PART As String = "part"
DYN_WHERE_RIGHT protected (declared in WhereExpression)
const DYN_WHERE_RIGHT: String = 'right'
const String DYN_WHERE_RIGHT = "right"
static let DYN_WHERE_RIGHT: String = "right"
Const DYN_WHERE_RIGHT As String = "right"
DYN_WHERE_SIZE protected (declared in WhereExpression)
const DYN_WHERE_SIZE: String = 'size'
const String DYN_WHERE_SIZE = "size"
static let DYN_WHERE_SIZE: String = "size"
Const DYN_WHERE_SIZE As String = "size"
DYN_WHERE_TABLE protected (declared in WhereExpression)
const DYN_WHERE_TABLE: String = 'table'
const String DYN_WHERE_TABLE = "table"
static let DYN_WHERE_TABLE: String = "table"
Const DYN_WHERE_TABLE As String = "table"
DYN_WHERE_TYPE protected (declared in WhereExpression)
const DYN_WHERE_TYPE: String = 'type'
const String DYN_WHERE_TYPE = "type"
static let DYN_WHERE_TYPE: String = "type"
Const DYN_WHERE_TYPE As String = "type"
DYN_WHERE_TYPE_VALUE protected (declared in WhereExpression)
const DYN_WHERE_TYPE_VALUE: String = 'query.where'
const String DYN_WHERE_TYPE_VALUE = "query.where"
static let DYN_WHERE_TYPE_VALUE: String = "query.where"
Const DYN_WHERE_TYPE_VALUE As String = "query.where"
DYN_WHERE_UNARYOPERATION protected (declared in WhereExpression)
const DYN_WHERE_UNARYOPERATION: String = 'unaryoperation'
const String DYN_WHERE_UNARYOPERATION = "unaryoperation"
static let DYN_WHERE_UNARYOPERATION: String = "unaryoperation"
Const DYN_WHERE_UNARYOPERATION As String = "unaryoperation"
DYN_WHERE_UPPER protected (declared in WhereExpression)
const DYN_WHERE_UPPER: String = 'upper'
const String DYN_WHERE_UPPER = "upper"
static let DYN_WHERE_UPPER: String = "upper"
Const DYN_WHERE_UPPER As String = "upper"
DYN_WHERE_VALUE protected (declared in WhereExpression)
const DYN_WHERE_VALUE: String = 'value'
const String DYN_WHERE_VALUE = "value"
static let DYN_WHERE_VALUE: String = "value"
Const DYN_WHERE_VALUE As String = "value"
ExtractAllConstantExpression
Establishes a list of all ConstantExpression contained in the expression.
method ExtractAllConstantExpression(expressions: List<ConstantExpression>)
void ExtractAllConstantExpression(List<ConstantExpression> expressions)
func ExtractAllConstantExpression(_ expressions: List<ConstantExpression>)
Sub ExtractAllConstantExpression(expressions As List<ConstantExpression>)
Parameters:
- expressions:
ExtractAllFieldNames
Establishes a list of field names used in the expression.
method ExtractAllFieldNames(fieldNames: List<String>)
void ExtractAllFieldNames(List<String> fieldNames)
func ExtractAllFieldNames(_ fieldNames: List<String>)
Sub ExtractAllFieldNames(fieldNames As List<String>)
Parameters:
- fieldNames:
ExtractAllParams
Fills SchemaParameterCollection with ParameterExpressions and ConstantExpressions (as ParameterExpressions) contained in the expression.
method ExtractAllParams(parameters: SchemaParameterCollection)
void ExtractAllParams(SchemaParameterCollection parameters)
func ExtractAllParams(_ parameters: SchemaParameterCollection)
Sub ExtractAllParams(parameters As SchemaParameterCollection)
Parameters:
- parameters:
FromJsonObject (declared in WhereExpression)
Creates expression from the given Json object, that should be in the correct Dynamic Where JSON Format.
class method FromJsonObject(node: JsonObject): WhereExpression
static WhereExpression FromJsonObject(JsonObject node)
static func FromJsonObject(_ node: JsonObject) -> WhereExpression
Shared Function FromJsonObject(node As JsonObject) As WhereExpression
Parameters:
- node: json object
FromJsonString (declared in WhereExpression)
Creates expression from the given string, that should be in the correct Dynamic Where JSON Format.
class method FromJsonString(json: String): WhereExpression
static WhereExpression FromJsonString(String json)
static func FromJsonString(_ json: String) -> WhereExpression
Shared Function FromJsonString(json As String) As WhereExpression
Parameters:
- json: string in Json format
FromString (declared in WhereExpression)
Creates new WhereExpression from string, which should contain where node in the correct Dynamic Where XML Format.
class method FromString(value: String): WhereExpression
static WhereExpression FromString(String value)
static func FromString(_ value: String) -> WhereExpression
Shared Function FromString(value As String) As WhereExpression
Parameters:
- value: string in XML or Json format
FromStringToSql (declared in WhereExpression)
class method FromStringToSql(xml: String): String
static String FromStringToSql(String xml)
static func FromStringToSql(_ xml: String) -> String
Shared Function FromStringToSql(xml As String) As String
Parameters:
- xml:
FromXmlNode (declared in WhereExpression)
Creates new WhereExpression from xml node, which should be in the correct Dynamic Where XML Format.
class method FromXmlNode(node: XmlNode): WhereExpression
static WhereExpression FromXmlNode(XmlNode node)
static func FromXmlNode(_ node: XmlNode) -> WhereExpression
Shared Function FromXmlNode(node As XmlNode) As WhereExpression
Parameters:
- node: XML node
FromXmlString (declared in WhereExpression)
Creates new WhereExpression from xml string which should be in the correct Dynamic Where XML Format.
class method FromXmlString(xml: String): WhereExpression
static WhereExpression FromXmlString(String xml)
static func FromXmlString(_ xml: String) -> WhereExpression
Shared Function FromXmlString(xml As String) As WhereExpression
Parameters:
- xml: XML string
Insert
Inserts a provided WhereExpression instance to the list of macro parameter values at the Position position.
method Insert(index: Int32; value: WhereExpression)
void Insert(Int32 index, WhereExpression value)
func Insert(_ index: Int32, _ value: WhereExpression)
Sub Insert(index As Int32, value As WhereExpression)
Parameters:
- index: Position
- value: Item
Item
Gets or sets a macro parameter at the index position.
property Item[index: Int32]: WhereExpression read write;
WhereExpression Item[Int32 index] { get; set; }
subscript Item(_ index: Int32) -> WhereExpression { get{} set{} }
Property Item(index As Int32) As WhereExpression
Kind
Represents the type of WHERE expression.
property Kind: WhereKind read;
WhereKind Kind { get; }
var Kind: WhereKind { get{} }
ReadOnly Property Kind() As WhereKind
Name
Name of the macro expression. Can be considered as name of the underlying SQL function.
property Name: String read write;
String Name { get; set; }
var Name: String { get{} set{} }
Property Name() As String
ParseExpression (JsonBaseObject): WhereExpression (declared in WhereExpression)
Creates new Where expression from Json object.
class method ParseExpression(node: JsonBaseObject): WhereExpression
static WhereExpression ParseExpression(JsonBaseObject node)
static func ParseExpression(_ node: JsonBaseObject) -> WhereExpression
Shared Function ParseExpression(node As JsonBaseObject) As WhereExpression
Parameters:
- node: Json object
ParseExpression (XmlNode): WhereExpression (declared in WhereExpression)
Creates new Where expression from XML node.
class method ParseExpression(node: XmlNode): WhereExpression
static WhereExpression ParseExpression(XmlNode node)
static func ParseExpression(_ node: XmlNode) -> WhereExpression
Shared Function ParseExpression(node As XmlNode) As WhereExpression
Parameters:
- node: XML node
ReadFromJson
Creates expression from the given Json object, that should be in the correct Dynamic Where JSON Format.
method ReadFromJson(node: JsonObject)
void ReadFromJson(JsonObject node)
func ReadFromJson(_ node: JsonObject)
Sub ReadFromJson(node As JsonObject)
Parameters:
- node: Json object
ReadFromXml
Creates expression from the given xml node, that should be in the correct Dynamic Where XML Format.
method ReadFromXml(node: XmlNode)
void ReadFromXml(XmlNode node)
func ReadFromXml(_ node: XmlNode)
Sub ReadFromXml(node As XmlNode)
Parameters:
- node: XML node
Remove
Removes a provided WhereExpression instance from the macro parameters list.
method Remove(value: WhereExpression)
void Remove(WhereExpression value)
func Remove(_ value: WhereExpression)
Sub Remove(value As WhereExpression)
Parameters:
- value: Item
RemoveAt
Removes the macro parameter stored in the macro parameters list at the index position.
method RemoveAt(index: Int32)
void RemoveAt(Int32 index)
func RemoveAt(_ index: Int32)
Sub RemoveAt(index As Int32)
Parameters:
- index: Position
ToJsonString (declared in WhereExpression)
Creates query node (in the Dynamic Where Json Format) from WhereExpression and returns it in the string format.
method ToJsonString: String
String ToJsonString()
func ToJsonString() -> String
Function ToJsonString() As String
ToSQLString (declared in WhereExpression)
Creates an SQL representation of the current where expression instance
method ToSQLString: String
String ToSQLString()
func ToSQLString() -> String
Function ToSQLString() As String
ToSQLString (StringBuilder)
Creates an SQL representation of the current where expression instance and appends it to the provided StringBuilder.
method ToSQLString(destination: StringBuilder)
void ToSQLString(StringBuilder destination)
func ToSQLString(_ destination: StringBuilder)
Sub ToSQLString(destination As StringBuilder)
Parameters:
- destination: The destination string builder to be appended.
ToString (declared in WhereExpression)
Returns a SQL string representation of the current expression.
method ToString: String
String ToString()
func ToString() -> String
Function ToString() As String
ToXmlNode (declared in WhereExpression)
Creates query node (in the Dynamic Where XML Format) from WhereExpression.
method ToXmlNode: XmlNode
XmlNode ToXmlNode()
func ToXmlNode() -> XmlNode
Function ToXmlNode() As XmlNode
ToXmlString (declared in WhereExpression)
Creates query node (in the Dynamic Where XML Format) from WhereExpression and returns it in the string format.
method ToXmlString: String
String ToXmlString()
func ToXmlString() -> String
Function ToXmlString() As String
Validate (declared in WhereExpression)
Validates that expression doesn't contain any errors, using WhereValidator. The main purpose of this validation - to scan all objects of expession tree and make sure that it contains correct field names.
method Validate: Boolean
Boolean Validate()
func Validate() -> Boolean
Function Validate() As Boolean
Validate (WhereExpression): Boolean (declared in WhereExpression)
Validates that expression doesn't contain any errors, using WhereValidator. The main purpose of this validation - to scan all objects of expession tree and make sure that it contains correct field names.
class method Validate(expression: WhereExpression): Boolean
static Boolean Validate(WhereExpression expression)
static func Validate(_ expression: WhereExpression) -> Boolean
Shared Function Validate(expression As WhereExpression) As Boolean
Parameters:
- expression: Expression
WriteExpression (declared in WhereExpression)
Writes expression to Json object
class method WriteExpression(node: JsonBaseObject; tag: String; value: WhereExpression)
static void WriteExpression(JsonBaseObject node, String tag, WhereExpression value)
static func WriteExpression(_ node: JsonBaseObject, _ tag: String, _ value: WhereExpression)
Shared Sub WriteExpression(node As JsonBaseObject, tag As String, value As WhereExpression)
Parameters:
- node:
- tag:
- value:
WriteToJson
Writes Json object from expression.
method WriteToJson(node: JsonObject)
void WriteToJson(JsonObject node)
func WriteToJson(_ node: JsonObject)
Sub WriteToJson(node As JsonObject)
Parameters:
- node: Json object
WriteToXml
Writes xml node from expression.
method WriteToXml(node: XmlNode)
void WriteToXml(XmlNode node)
func WriteToXml(_ node: XmlNode)
Sub WriteToXml(node As XmlNode)
Parameters:
- node: XML node
DYN_WHERE_BETWEEN protected (declared in WhereExpression)
const DYN_WHERE_BETWEEN: String = 'between'
const String DYN_WHERE_BETWEEN = "between"
static let DYN_WHERE_BETWEEN: String = "between"
Const DYN_WHERE_BETWEEN As String = "between"
DYN_WHERE_BINARYOPERATION protected (declared in WhereExpression)
const DYN_WHERE_BINARYOPERATION: String = 'binaryoperation'
const String DYN_WHERE_BINARYOPERATION = "binaryoperation"
static let DYN_WHERE_BINARYOPERATION: String = "binaryoperation"
Const DYN_WHERE_BINARYOPERATION As String = "binaryoperation"
DYN_WHERE_CONSTANT protected (declared in WhereExpression)
const DYN_WHERE_CONSTANT: String = 'constant'
const String DYN_WHERE_CONSTANT = "constant"
static let DYN_WHERE_CONSTANT: String = "constant"
Const DYN_WHERE_CONSTANT As String = "constant"
DYN_WHERE_DATATYPE protected (declared in WhereExpression)
const DYN_WHERE_DATATYPE: String = 'datatype'
const String DYN_WHERE_DATATYPE = "datatype"
static let DYN_WHERE_DATATYPE: String = "datatype"
Const DYN_WHERE_DATATYPE As String = "datatype"
DYN_WHERE_DATETIMENOW protected (declared in WhereExpression)
const DYN_WHERE_DATETIMENOW: String = 'datetimenow'
const String DYN_WHERE_DATETIMENOW = "datetimenow"
static let DYN_WHERE_DATETIMENOW: String = "datetimenow"
Const DYN_WHERE_DATETIMENOW As String = "datetimenow"
DYN_WHERE_DATETIMEPART protected (declared in WhereExpression)
const DYN_WHERE_DATETIMEPART: String = 'datetimepart'
const String DYN_WHERE_DATETIMEPART = "datetimepart"
static let DYN_WHERE_DATETIMEPART: String = "datetimepart"
Const DYN_WHERE_DATETIMEPART As String = "datetimepart"
DYN_WHERE_DATETIMETODAY protected (declared in WhereExpression)
const DYN_WHERE_DATETIMETODAY: String = 'datetimetoday'
const String DYN_WHERE_DATETIMETODAY = "datetimetoday"
static let DYN_WHERE_DATETIMETODAY: String = "datetimetoday"
Const DYN_WHERE_DATETIMETODAY As String = "datetimetoday"
DYN_WHERE_EXPRESSION protected (declared in WhereExpression)
const DYN_WHERE_EXPRESSION: String = 'expression'
const String DYN_WHERE_EXPRESSION = "expression"
static let DYN_WHERE_EXPRESSION: String = "expression"
Const DYN_WHERE_EXPRESSION As String = "expression"
DYN_WHERE_FIELD protected (declared in WhereExpression)
const DYN_WHERE_FIELD: String = 'field'
const String DYN_WHERE_FIELD = "field"
static let DYN_WHERE_FIELD: String = "field"
Const DYN_WHERE_FIELD As String = "field"
DYN_WHERE_FUNCTION protected (declared in WhereExpression)
const DYN_WHERE_FUNCTION: String = 'function'
const String DYN_WHERE_FUNCTION = "function"
static let DYN_WHERE_FUNCTION: String = "function"
Const DYN_WHERE_FUNCTION As String = "function"
DYN_WHERE_ITEMS protected (declared in WhereExpression)
const DYN_WHERE_ITEMS: String = 'items'
const String DYN_WHERE_ITEMS = "items"
static let DYN_WHERE_ITEMS: String = "items"
Const DYN_WHERE_ITEMS As String = "items"
DYN_WHERE_KIND protected (declared in WhereExpression)
const DYN_WHERE_KIND: String = 'kind'
const String DYN_WHERE_KIND = "kind"
static let DYN_WHERE_KIND: String = "kind"
Const DYN_WHERE_KIND As String = "kind"
DYN_WHERE_LEFT protected (declared in WhereExpression)
const DYN_WHERE_LEFT: String = 'left'
const String DYN_WHERE_LEFT = "left"
static let DYN_WHERE_LEFT: String = "left"
Const DYN_WHERE_LEFT As String = "left"
DYN_WHERE_LIST protected (declared in WhereExpression)
const DYN_WHERE_LIST: String = 'list'
const String DYN_WHERE_LIST = "list"
static let DYN_WHERE_LIST: String = "list"
Const DYN_WHERE_LIST As String = "list"
DYN_WHERE_LOWER protected (declared in WhereExpression)
const DYN_WHERE_LOWER: String = 'lower'
const String DYN_WHERE_LOWER = "lower"
static let DYN_WHERE_LOWER: String = "lower"
Const DYN_WHERE_LOWER As String = "lower"
DYN_WHERE_MACRO protected (declared in WhereExpression)
const DYN_WHERE_MACRO: String = 'macro'
const String DYN_WHERE_MACRO = "macro"
static let DYN_WHERE_MACRO: String = "macro"
Const DYN_WHERE_MACRO As String = "macro"
DYN_WHERE_NAME protected (declared in WhereExpression)
const DYN_WHERE_NAME: String = 'name'
const String DYN_WHERE_NAME = "name"
static let DYN_WHERE_NAME: String = "name"
Const DYN_WHERE_NAME As String = "name"
DYN_WHERE_NULL protected (declared in WhereExpression)
const DYN_WHERE_NULL: String = 'null'
const String DYN_WHERE_NULL = "null"
static let DYN_WHERE_NULL: String = "null"
Const DYN_WHERE_NULL As String = "null"
DYN_WHERE_OPERATOR protected (declared in WhereExpression)
const DYN_WHERE_OPERATOR: String = 'operator'
const String DYN_WHERE_OPERATOR = "operator"
static let DYN_WHERE_OPERATOR: String = "operator"
Const DYN_WHERE_OPERATOR As String = "operator"
DYN_WHERE_PARAMETER protected (declared in WhereExpression)
const DYN_WHERE_PARAMETER: String = 'parameter'
const String DYN_WHERE_PARAMETER = "parameter"
static let DYN_WHERE_PARAMETER: String = "parameter"
Const DYN_WHERE_PARAMETER As String = "parameter"
DYN_WHERE_PART protected (declared in WhereExpression)
const DYN_WHERE_PART: String = 'part'
const String DYN_WHERE_PART = "part"
static let DYN_WHERE_PART: String = "part"
Const DYN_WHERE_PART As String = "part"
DYN_WHERE_RIGHT protected (declared in WhereExpression)
const DYN_WHERE_RIGHT: String = 'right'
const String DYN_WHERE_RIGHT = "right"
static let DYN_WHERE_RIGHT: String = "right"
Const DYN_WHERE_RIGHT As String = "right"
DYN_WHERE_SIZE protected (declared in WhereExpression)
const DYN_WHERE_SIZE: String = 'size'
const String DYN_WHERE_SIZE = "size"
static let DYN_WHERE_SIZE: String = "size"
Const DYN_WHERE_SIZE As String = "size"
DYN_WHERE_TABLE protected (declared in WhereExpression)
const DYN_WHERE_TABLE: String = 'table'
const String DYN_WHERE_TABLE = "table"
static let DYN_WHERE_TABLE: String = "table"
Const DYN_WHERE_TABLE As String = "table"
DYN_WHERE_TYPE protected (declared in WhereExpression)
const DYN_WHERE_TYPE: String = 'type'
const String DYN_WHERE_TYPE = "type"
static let DYN_WHERE_TYPE: String = "type"
Const DYN_WHERE_TYPE As String = "type"
DYN_WHERE_TYPE_VALUE protected (declared in WhereExpression)
const DYN_WHERE_TYPE_VALUE: String = 'query.where'
const String DYN_WHERE_TYPE_VALUE = "query.where"
static let DYN_WHERE_TYPE_VALUE: String = "query.where"
Const DYN_WHERE_TYPE_VALUE As String = "query.where"
DYN_WHERE_UNARYOPERATION protected (declared in WhereExpression)
const DYN_WHERE_UNARYOPERATION: String = 'unaryoperation'
const String DYN_WHERE_UNARYOPERATION = "unaryoperation"
static let DYN_WHERE_UNARYOPERATION: String = "unaryoperation"
Const DYN_WHERE_UNARYOPERATION As String = "unaryoperation"
DYN_WHERE_UPPER protected (declared in WhereExpression)
const DYN_WHERE_UPPER: String = 'upper'
const String DYN_WHERE_UPPER = "upper"
static let DYN_WHERE_UPPER: String = "upper"
Const DYN_WHERE_UPPER As String = "upper"
DYN_WHERE_VALUE protected (declared in WhereExpression)
const DYN_WHERE_VALUE: String = 'value'
const String DYN_WHERE_VALUE = "value"
static let DYN_WHERE_VALUE: String = "value"
Const DYN_WHERE_VALUE As String = "value"
Count
Gets a count of defined macro parameters.
property Count: Int32 read;
Int32 Count { get; }
var Count: Int32 { get{} }
ReadOnly Property Count() As Int32
Item
Gets or sets a macro parameter at the index position.
property Item[index: Int32]: WhereExpression read write;
WhereExpression Item[Int32 index] { get; set; }
subscript Item(_ index: Int32) -> WhereExpression { get{} set{} }
Property Item(index As Int32) As WhereExpression
Kind
Represents the type of WHERE expression.
property Kind: WhereKind read;
WhereKind Kind { get; }
var Kind: WhereKind { get{} }
ReadOnly Property Kind() As WhereKind
Name
Name of the macro expression. Can be considered as name of the underlying SQL function.
property Name: String read write;
String Name { get; set; }
var Name: String { get{} set{} }
Property Name() As String
Combine (WhereExpression, WhereExpression): WhereExpression (declared in WhereExpression)
Creates new BinaryExpression from given left
and right
operands, using operator And
.
class method Combine(left: WhereExpression; right: WhereExpression): WhereExpression
static WhereExpression Combine(WhereExpression left, WhereExpression right)
static func Combine(_ left: WhereExpression, _ right: WhereExpression) -> WhereExpression
Shared Function Combine(left As WhereExpression, right As WhereExpression) As WhereExpression
Parameters:
- left:
- right:
Combine (WhereExpression, WhereExpression, BinaryOperator): WhereExpression (declared in WhereExpression)
Creates new BinaryExpression from given left and right operands, using operator.
class method Combine(left: WhereExpression; right: WhereExpression; operator: BinaryOperator): WhereExpression
static WhereExpression Combine(WhereExpression left, WhereExpression right, BinaryOperator operator)
static func Combine(_ left: WhereExpression, _ right: WhereExpression, _ operator: BinaryOperator) -> WhereExpression
Shared Function Combine(left As WhereExpression, right As WhereExpression, operator As BinaryOperator) As WhereExpression
Parameters:
- left:
- right:
- operator:
FromJsonObject (declared in WhereExpression)
Creates expression from the given Json object, that should be in the correct Dynamic Where JSON Format.
class method FromJsonObject(node: JsonObject): WhereExpression
static WhereExpression FromJsonObject(JsonObject node)
static func FromJsonObject(_ node: JsonObject) -> WhereExpression
Shared Function FromJsonObject(node As JsonObject) As WhereExpression
Parameters:
- node: json object
FromJsonString (declared in WhereExpression)
Creates expression from the given string, that should be in the correct Dynamic Where JSON Format.
class method FromJsonString(json: String): WhereExpression
static WhereExpression FromJsonString(String json)
static func FromJsonString(_ json: String) -> WhereExpression
Shared Function FromJsonString(json As String) As WhereExpression
Parameters:
- json: string in Json format
FromString (declared in WhereExpression)
Creates new WhereExpression from string, which should contain where node in the correct Dynamic Where XML Format.
class method FromString(value: String): WhereExpression
static WhereExpression FromString(String value)
static func FromString(_ value: String) -> WhereExpression
Shared Function FromString(value As String) As WhereExpression
Parameters:
- value: string in XML or Json format
FromStringToSql (declared in WhereExpression)
class method FromStringToSql(xml: String): String
static String FromStringToSql(String xml)
static func FromStringToSql(_ xml: String) -> String
Shared Function FromStringToSql(xml As String) As String
Parameters:
- xml:
FromXmlNode (declared in WhereExpression)
Creates new WhereExpression from xml node, which should be in the correct Dynamic Where XML Format.
class method FromXmlNode(node: XmlNode): WhereExpression
static WhereExpression FromXmlNode(XmlNode node)
static func FromXmlNode(_ node: XmlNode) -> WhereExpression
Shared Function FromXmlNode(node As XmlNode) As WhereExpression
Parameters:
- node: XML node
FromXmlString (declared in WhereExpression)
Creates new WhereExpression from xml string which should be in the correct Dynamic Where XML Format.
class method FromXmlString(xml: String): WhereExpression
static WhereExpression FromXmlString(String xml)
static func FromXmlString(_ xml: String) -> WhereExpression
Shared Function FromXmlString(xml As String) As WhereExpression
Parameters:
- xml: XML string
ParseExpression (JsonBaseObject): WhereExpression (declared in WhereExpression)
Creates new Where expression from Json object.
class method ParseExpression(node: JsonBaseObject): WhereExpression
static WhereExpression ParseExpression(JsonBaseObject node)
static func ParseExpression(_ node: JsonBaseObject) -> WhereExpression
Shared Function ParseExpression(node As JsonBaseObject) As WhereExpression
Parameters:
- node: Json object
ParseExpression (XmlNode): WhereExpression (declared in WhereExpression)
Creates new Where expression from XML node.
class method ParseExpression(node: XmlNode): WhereExpression
static WhereExpression ParseExpression(XmlNode node)
static func ParseExpression(_ node: XmlNode) -> WhereExpression
Shared Function ParseExpression(node As XmlNode) As WhereExpression
Parameters:
- node: XML node
Validate (WhereExpression): Boolean (declared in WhereExpression)
Validates that expression doesn't contain any errors, using WhereValidator. The main purpose of this validation - to scan all objects of expession tree and make sure that it contains correct field names.
class method Validate(expression: WhereExpression): Boolean
static Boolean Validate(WhereExpression expression)
static func Validate(_ expression: WhereExpression) -> Boolean
Shared Function Validate(expression As WhereExpression) As Boolean
Parameters:
- expression: Expression
WriteExpression (declared in WhereExpression)
Writes expression to Json object
class method WriteExpression(node: JsonBaseObject; tag: String; value: WhereExpression)
static void WriteExpression(JsonBaseObject node, String tag, WhereExpression value)
static func WriteExpression(_ node: JsonBaseObject, _ tag: String, _ value: WhereExpression)
Shared Sub WriteExpression(node As JsonBaseObject, tag As String, value As WhereExpression)
Parameters:
- node:
- tag:
- value:
constructor
Default parameterless constructor.
Required properties have to assigned in addition
constructor
MacroExpression()
init()
Sub New()
constructor (String)
Creates a new instance of the MacroExpression class.
constructor(name: String)
MacroExpression(String name)
init(_ name: String)
Sub New(name As String)
Parameters:
- name: Name of the macro expression
constructor (String, array of WhereExpression)
Creates a new instance of the MacroExpression class.
constructor(name: String; params values: array of WhereExpression)
MacroExpression(String name, params WhereExpression[] values)
init(_ name: String, _ values: WhereExpression...)
Sub New(name As String, ParamArray values As WhereExpression())
Parameters:
- name: Name of the macro expression
- values: Parameters
Add
Adds a provided WhereExpression instance to the list of macro parameter values.
method Add(value: WhereExpression)
void Add(WhereExpression value)
func Add(_ value: WhereExpression)
Sub Add(value As WhereExpression)
Parameters:
- value: The macro parameter to be added.
ApplyFieldMapping
Adjusts the field names in accordance with table names of fields in the given schema column mapping.
method ApplyFieldMapping(columnMappings: SchemaColumnMappingCollection)
void ApplyFieldMapping(SchemaColumnMappingCollection columnMappings)
func ApplyFieldMapping(_ columnMappings: SchemaColumnMappingCollection)
Sub ApplyFieldMapping(columnMappings As SchemaColumnMappingCollection)
Parameters:
- columnMappings:
ApplySourceTableNumber
Adjusts the source table number
method ApplySourceTableNumber(number: Int32): WhereExpression
WhereExpression ApplySourceTableNumber(Int32 number)
func ApplySourceTableNumber(_ number: Int32) -> WhereExpression
Function ApplySourceTableNumber(number As Int32) As WhereExpression
Parameters:
- number:
ApplyTableMapping
Adjusts the table names
method ApplyTableMapping(schemaTable: String; databaseTable: String)
void ApplyTableMapping(String schemaTable, String databaseTable)
func ApplyTableMapping(_ schemaTable: String, _ databaseTable: String)
Sub ApplyTableMapping(schemaTable As String, databaseTable As String)
Parameters:
- schemaTable:
- databaseTable:
ApplyTableNameOrAlias
Adjusts the table names
method ApplyTableNameOrAlias(name: String)
void ApplyTableNameOrAlias(String name)
func ApplyTableNameOrAlias(_ name: String)
Sub ApplyTableNameOrAlias(name As String)
Parameters:
- name:
ExtractAllConstantExpression
Establishes a list of all ConstantExpression contained in the expression.
method ExtractAllConstantExpression(expressions: List<ConstantExpression>)
void ExtractAllConstantExpression(List<ConstantExpression> expressions)
func ExtractAllConstantExpression(_ expressions: List<ConstantExpression>)
Sub ExtractAllConstantExpression(expressions As List<ConstantExpression>)
Parameters:
- expressions:
ExtractAllFieldNames
Establishes a list of field names used in the expression.
method ExtractAllFieldNames(fieldNames: List<String>)
void ExtractAllFieldNames(List<String> fieldNames)
func ExtractAllFieldNames(_ fieldNames: List<String>)
Sub ExtractAllFieldNames(fieldNames As List<String>)
Parameters:
- fieldNames:
ExtractAllParams
Fills SchemaParameterCollection with ParameterExpressions and ConstantExpressions (as ParameterExpressions) contained in the expression.
method ExtractAllParams(parameters: SchemaParameterCollection)
void ExtractAllParams(SchemaParameterCollection parameters)
func ExtractAllParams(_ parameters: SchemaParameterCollection)
Sub ExtractAllParams(parameters As SchemaParameterCollection)
Parameters:
- parameters:
Insert
Inserts a provided WhereExpression instance to the list of macro parameter values at the Position position.
method Insert(index: Int32; value: WhereExpression)
void Insert(Int32 index, WhereExpression value)
func Insert(_ index: Int32, _ value: WhereExpression)
Sub Insert(index As Int32, value As WhereExpression)
Parameters:
- index: Position
- value: Item
ReadFromJson
Creates expression from the given Json object, that should be in the correct Dynamic Where JSON Format.
method ReadFromJson(node: JsonObject)
void ReadFromJson(JsonObject node)
func ReadFromJson(_ node: JsonObject)
Sub ReadFromJson(node As JsonObject)
Parameters:
- node: Json object
ReadFromXml
Creates expression from the given xml node, that should be in the correct Dynamic Where XML Format.
method ReadFromXml(node: XmlNode)
void ReadFromXml(XmlNode node)
func ReadFromXml(_ node: XmlNode)
Sub ReadFromXml(node As XmlNode)
Parameters:
- node: XML node
Remove
Removes a provided WhereExpression instance from the macro parameters list.
method Remove(value: WhereExpression)
void Remove(WhereExpression value)
func Remove(_ value: WhereExpression)
Sub Remove(value As WhereExpression)
Parameters:
- value: Item
RemoveAt
Removes the macro parameter stored in the macro parameters list at the index position.
method RemoveAt(index: Int32)
void RemoveAt(Int32 index)
func RemoveAt(_ index: Int32)
Sub RemoveAt(index As Int32)
Parameters:
- index: Position
ToJsonString (declared in WhereExpression)
Creates query node (in the Dynamic Where Json Format) from WhereExpression and returns it in the string format.
method ToJsonString: String
String ToJsonString()
func ToJsonString() -> String
Function ToJsonString() As String
ToSQLString (declared in WhereExpression)
Creates an SQL representation of the current where expression instance
method ToSQLString: String
String ToSQLString()
func ToSQLString() -> String
Function ToSQLString() As String
ToSQLString (StringBuilder)
Creates an SQL representation of the current where expression instance and appends it to the provided StringBuilder.
method ToSQLString(destination: StringBuilder)
void ToSQLString(StringBuilder destination)
func ToSQLString(_ destination: StringBuilder)
Sub ToSQLString(destination As StringBuilder)
Parameters:
- destination: The destination string builder to be appended.
ToString (declared in WhereExpression)
Returns a SQL string representation of the current expression.
method ToString: String
String ToString()
func ToString() -> String
Function ToString() As String
ToXmlNode (declared in WhereExpression)
Creates query node (in the Dynamic Where XML Format) from WhereExpression.
method ToXmlNode: XmlNode
XmlNode ToXmlNode()
func ToXmlNode() -> XmlNode
Function ToXmlNode() As XmlNode
ToXmlString (declared in WhereExpression)
Creates query node (in the Dynamic Where XML Format) from WhereExpression and returns it in the string format.
method ToXmlString: String
String ToXmlString()
func ToXmlString() -> String
Function ToXmlString() As String
Validate (declared in WhereExpression)
Validates that expression doesn't contain any errors, using WhereValidator. The main purpose of this validation - to scan all objects of expession tree and make sure that it contains correct field names.
method Validate: Boolean
Boolean Validate()
func Validate() -> Boolean
Function Validate() As Boolean
WriteToJson
Writes Json object from expression.
method WriteToJson(node: JsonObject)
void WriteToJson(JsonObject node)
func WriteToJson(_ node: JsonObject)
Sub WriteToJson(node As JsonObject)
Parameters:
- node: Json object
WriteToXml
Writes xml node from expression.
method WriteToXml(node: XmlNode)
void WriteToXml(XmlNode node)
func WriteToXml(_ node: XmlNode)
Sub WriteToXml(node As XmlNode)
Parameters:
- node: XML node