Параметры и пример использования функции FuncSQL
FuncSQL
- функция в построителе функций ограничения SQLWhereLanguageDef, позволяющая выполнять вставки SQL.
Note: Использовать данную функцию не рекомендуется.
Для случая, когда ExternalLanguageDef не располагает необходимым набором функций, ограничение можно построить в виде SQL-выражения. Пользоваться данной возможностью рекомендуется крайне осторожно, поскольку переключение типов источников данных в этом случае реализуется сложнее, ошибки выявлять тоже непросто.
Важно понимать, что funcSQL
может быть частью другой “нормальной” функции, в этом случае необходимо не забывать про скобки снаружи этого SQL-выражения. Скобки при интерпретации сами не ставятся.
Пример
Следующее выражение
lcs.LimitFunction = ldef.GetFunction(ldef.funcAND,
ldef.GetFunction(ldef.funcSQL, "\"abc\" = 1"),
ldef.GetFunction(ldef.funcSQL, "\"def\" = 2")
);
будет интерпретировано следующим образом:
WHERE ( "abc" = 1 AND "def" = 2)
Note: Названия атрибутов необходимо заключать в кавычки, это поможет Flexberry ORM корректно обрабатывать ограничение.