5.3. TssDataProcessor

Предки: TssDataProducer.

В качестве входных данных используется объект-наследник от TssDataProducer. Далее к входным данным может быть применены (в любых сочетаниях):

Правила обработки входных данных находятся в свойстве LSQL. Дополнительные условия фильтрации находятся в свойстве ManualFilter. Объединяя эти два свойства, получаем строку, имеющую синтаксис, сходный с синтаксисом SQL инструкции SELECT. Формат строки:

      SELECT [<дополнительные вычисляемые поля>] FROM source alias [<выражение where>] [<выражение compute>] […n] ] [<выражение order by>]
      <дополнительные вычисляемые поля> ::= выражение AS псевдоним [{ASC|DESC}] [, …n]
      <выражение where> ::= WHERE условие.
      <выражение compute> ::= COMPUTE [агрегатная функция AS псевдоним [, …n]] BY [имя поля [ASC|DESC] [, …n]]
      <выражение order by> ::= ORDER BY имя поля [ASC|DESC] [, …n]
      

<выражение compute> служит как для указания полей группировки (если не относится ко всем данным), так и для указания агрегатных функций, применяемых к этой группировке (или в целом ко всем данным, если поля группировки не заданы).

Если задана группировка, то <выражение order by> в качестве ведущих (первых в списке) полей сортировки должно включать поля группировки.