Класс SelectQuery
Пространство имен Terrasoft.Nui.ServiceModel.DataContract библиотеки классов Terrasoft.Nui.ServiceModel.dll.
Назначение класса SelectQuery — чтение записей раздела. Передача данных непосредственно в сервис работы с данными DataService осуществляется по HTTP протоколу при помощи POST-запроса по URL.
Контракт данных SelectQuery имеет иерархическую структуру с несколькими уровнями вложенности. Для простоты восприятия иерархическую структуру контракта данных SelectQuery удобно представить в формате объекта JSON.
Свойства
Коллекция фильтров запросов. Имеет тип Filters, определенный в пространстве имен Terrasoft.Nui.ServiceModel.DataContract.
Идентификатор запроса.
Дополнительная информация о запросе, которая может быть использована для отправки запроса DBExecutor.
| General | Используется, как значение по умолчанию. |
| Limited | Используется, чтобы показать, что запрос может быть отправлен исполнителю с ограниченными ресурсами. |
Значения колонок.
Строка, содержащая название корневой схемы объекта добавляемой записи.
Тип операции с записью. Задается значением перечисления QueryOperationType пространства имен Terrasoft.Nui.ServiceModel.DataContract. Для SelectQuery устанавливается значение QueryOperationType.Select.
| Select | 0 |
| Insert | 1 |
| Update | 2 |
| Delete | 3 |
| Batch | 4 |
Флаг, который включает данные о выполнении процесса.
Целочисленное свойство, которое соответствует критериям фильтрации записей по источнику вхождения пользователя в роли. Значение по умолчанию: 0. Перечисление AdminUnitRoleSources находится в пространстве имен Terrasoft.Common. Чтобы сформировать AdminUnitRoleSources, необходимо с помощью побитового ИЛИ ("|") перечислить константы из JS-класса Terrasoft.AdminUnitRoleSources. В результате, на серверной стороне запись будет возвращена, если у пользователя есть хоть одна роль, которой доступна запись, и пользователь входит в эту роль в соответствии с источниками, указанными в условиях фильтрации.
| All | Получает все роли. |
| AsManager | Получает роль менеджера. |
| Delegated | Делегированная роль. |
| ExplicitEntry | Явное вхождение в роль. |
| FuncRoleFromOrgRole | Получает функциональную роль с организационной роли. |
| None | Пустое значение. |
| Self | Самостоятельно. |
| UpHierarchy | Возвращает роль вверх по иерархии. |
Признак выбора всех колонок. Если значение установлено как true, в результате выполнения запроса будут выбраны все колонки корневой схемы.
Количество сущностей в блоке.
Содержит коллекцию колонок для считываемых записей. Имеет тип SelectQueryColumns, определенный в пространстве имен Terrasoft.Nui.ServiceModel.DataContract. Следует конфигурировать, если значение признака AllColumns установлено как false и нужен определенный набор колонок корневой схемы, не включающий колонку Id.
Условия для построения постраничного запроса. Тип ColumnValues определен в пространстве имен Terrasoft.Nui.ServiceModel.DataContract.
Имя колонки, использующейся для построения иерархического запроса.
Начальное значение иерархической колонки, от которого будет строиться иерархия.
Максимальный уровень вложенности иерархического запроса.
Флаг, который указывает, что запрос не будет использоваться для отображения значений столбцов.
Признак, указывающий убирать или нет дубли в результирующем наборе данных.
Признак иерархической выборки данных.
Признак постраничной выборки данных.
Позволяет использовать оптимизацию запросов.
Источник запроса.
| Filter | Из фильтра. |
| FilterSummary | Из аннотации с фильтром. |
| Undefined | Не задано. |
Тип запроса.
| Delete | Удаление данных. |
| Select | Чтение данных. |
| Update | Изменение данных. |
Количество выбираемых строк. По умолчанию содержит значение -1, т. е. выбираются все строки.
Количество пропущенных строк.
Параметры кэширования EntitySchemaQuery на сервере. Тип ServerESQCacheParameters определен в пространстве имен Terrasoft.Nui.ServiceModel.DataContract.
Параметр, который определяет использование локализованных данных.
Использует метрики для запроса.
Определяет отключение данных при фильтрации.
Класс SelectQueryColumns
Пространство имен Terrasoft.Nui.ServiceModel.DataContract.
Свойства
Коллекция ключей и значений Dictionary<string, SelectQueryColumn>. Ключом является строка с названием добавляемой колонки, а значением — экземпляр класса SelectQueryColumn, который определен в пространстве имен Terrasoft.Nui.ServiceModel.DataContract.
| OrderDirection OrderDirection | Направление сортировки. Задается значением перечисления OrderDirection пространства имен Terrasoft.Common, определенного в библиотеке классов Terrasoft.Common. |
| OrderPosition int | Задает номер позиции в коллекции колонок запроса, по которой производится сортировка. |
| Caption string | Заголовок колонки. |
| Expression ColumnExpression | Свойство, определяющее выражение типа выбираемой колонки. |
Класс ColumnExpression
Пространство имен Terrasoft.Nui.ServiceModel.DataContract.
Класс ColumnExpression определяет выражение, задающее тип колонки схемы. Он определен в пространстве имен Terrasoft.Nui.ServiceModel.DataContract библиотеки Terrasoft.Nui.ServiceModel. Свойства экземпляра этого класса заполняются в зависимости от свойства ExpressionType, которое и задает тип выражения.
Свойства
Тип макроса основной колонки.
Тип макроса отображаемой колонки.
Тип макроса основной колонки изображения.
Тип выражения, определяющий значение, которое будет содержаться в добавляемой колонке. Задается значением перечисления EntitySchemaQueryExpressionType пространства имен Terrasoft.Core.Entities, определенного в библиотеке классов Terrasoft.Core. Для SelectQuery устанавливается значение EntitySchemaQueryExpressionType.Parameter.
| SchemaColumn | 0 | Колонка схемы. |
| Function | 1 | Функция. |
| Parameter | 2 | Параметр. |
| SubQuery | 3 | Вложенный запрос. |
| ArithmeticOperation | 4 | Арифметическая операция. |
Блокировка.
Путь к колонке относительно корневой схемы.
Определяет значение, которое будет содержаться в добавляемой колонке. Имеет тип Parameter, определенный в пространстве имен Terrasoft.Nui.ServiceModel.DataContract.
Тип функции. Задается значением из перечисления FunctionType, определенного в пространстве имен Terrasoft.Nui.ServiceModel.DataContract.
| None | 0 | Не определен. |
| Macros | 1 | Макрос. |
| Aggregation | 2 | Агрегирующая функция. |
| DatePart | 3 | Часть даты. |
| Length | 4 | Длина. |
Тип макроса. Задается значением перечисления EntitySchemaQueryMacrosType, определенного в пространстве имен Terrasoft.Core.Entities.
Аргумент функции. Принимает значение, если функция определена с параметром. Класс BaseExpression определен в пространстве имен Terrasoft.Nui.ServiceModel.DataContract, является предком для класса ColumnExpresion и имеет такой же набор свойств.
Массив аргументов функции.
Интервал разницы дат.
Часть даты. Задается значением из перечисления DatePart, определенного в пространстве имен Terrasoft.Nui.ServiceModel.DataContract.
| None | 0 | Не определен. |
| Day | 1 | День. |
| Week | 2 | Неделя. |
| Month | 3 | Месяц. |
| Year | 4 | Год. |
| Weekday | 5 | День недели. |
| Hour | 6 | Час. |
| HourMinute | 7 | Минута. |
Тип агрегирующей функции. Задается значением из перечисления AggregationType, определенного в пространстве имен Terrasoft.Common, определенного в библиотеке классов Terrasoft.Common.
Область применения агрегирующей функции. Задается значением из перечисления AggregationEvalType, определенного в пространстве имен Terrasoft.Core.DB, определенного в библиотеке классов Terrasoft.Core.
Коллекция фильтров вложенных запросов. Имеет тип Filters, определенный в пространстве имен Terrasoft.Nui.ServiceModel.DataContract.
Тип арифметической операции.
| Addition | Сложение. |
| Division | Деление. |
| Multiplication | Умножение. |
| Subtraction | Вычитание. |
Левый операнд.
Правый операнд.
Класс ServerESQCacheParameters
Пространство имен Terrasoft.Nui.ServiceModel.DataContract.