ParameterExpression

The ParameterExpression is part of the Dynamic Where feature; it represents a parameter in where expressions.

Implementation

Example

Target SQL where clause:

WHERE LASTNAME LIKE :p

WhereExpression where = new BinaryExpression(
                          new FieldExpression("SALESMEN","lastname"),
                          new ParameterExpression("p", DataType.String, 120),
                          BinaryOperator.Equal);

let whereExpression = BinaryExpression(
                        FieldExpression("SALESMEN", "lastname"),
                        ParameterExpression("p", DataType.String, 120),
                        BinaryOperator.Equal)

WhereExpression where = new BinaryExpression(
                          new FieldExpression("SALESMEN","lastname"),
                          new ParameterExpression("p", DataType.String, 120),
                          BinaryOperator.Equal);

let whereExpression = BinaryExpression(
                        FieldExpression("SALESMEN", "lastname"),
                        ParameterExpression("p", DataType.String, 120),
                        BinaryOperator.Equal)

with ClientDataModule.tbl_SALESMEN,DynamicWhere do begin
  Expression:=NewBinaryExpression(
                NewField(LogicalName,'lastname'),
                NewParameter('p', datString),
                dboLike);
end;

myTable.dynamicWhere = new RemObjects.DataAbstract.DynamicWhere(
              new RemObjects.DataAbstract.BinaryExpression(
                new RemObjects.DataAbstract.FieldExpression("LastName"),
                new RemObjects.DataAbstract.ParameterExpression("p", "String", 120), "Equal")
            ));

Generated XML

<?xml version="1.0"?>
<query xmlns="http://www.remobjects.com/schemas/dataabstract/queries/5.0" version="5.0">
  <where>
    <binaryoperation operator="Like">
      <field tablename="SALESMEN">lastname</field>
      <parameter type="String">p</parameter>
    </binaryoperation>
  </where>
</query>