Диалоговое окно «Расширенное редактирование» (условие)

С помощью диалогового окна Расширенное редактирование создаются сложные выражения для условий управления на основе политик.

Параметры

  • Значение ячейки
    Отображает функцию или выражение, которое будет использовано в качестве значения для ячейки при ее создании. При нажатии кнопки ОК значение ячейки появится в ячейке Поле или Значение в поле выражения условия диалогового окна Создание нового условия или Открытие условия на странице Общие.

  • Функции и свойства
    Отображает доступные функции и свойства.

  • Сведения
    Отображает сведения о функциях и свойствах в следующем формате: подпись функции, описание функции, возвращаемое значение и пример.

Синтаксис

Допустимые выражения должны быть представлены в следующем формате:

{property | function | constant}

{operator}

{property | function | constant}

Примеры

Ниже приводятся примеры допустимых выражений:

  • Property1 > 5

  • Property1 = Property2

  • Add(5, Multiply(.2, Property1)) < Property2

  • Sometext IN Property1

  • Property1 < Fn(Property2)

  • BitwiseAnd(Property1, Property2) = 0

Дополнительные сведения о функциях

В следующих разделах приводятся дополнительные сведения о функциях, которые можно использовать при создании сложных выражений для условий управления на основе политик.

Важное примечаниеВажно!

В функциях, которые можно использовать для создания условий управления на основе политик, не всегда используется синтаксис Transact-SQL. Необходимо следовать синтаксисту примера. Например, при использовании функций DateAdd или DatePart необходимо заключать аргумент datepart в одинарные кавычки.

Функция

Описание

Add()

Подпись функции: Numeric Add (Numeric expression1, Numeric expression2)

Описание функции: складывает два числа.

Аргументы:

  • expression1 и expression2. Любое допустимое выражение одного из типов данных числовой категории, кроме типа bit. Может быть константой, свойством или функцией, возвращающей числовой тип данных.

Возвращаемое значение: возвращает тип данных аргумента, у которого более высокий приоритет.

Пример: Add(Property1, 5)

Array()

Подпись функции: Array Array (VarArgs expression)

Описание функции: создает массив из заданного списка значений. Может использоваться с агрегатными функциями, например Sum() или Count().

Аргументы:

  • expression. Выражение, которое должно быть преобразовано в массив.

Возвращаемое значение: массив.

Пример: Array(2,3,4,5,6)

Avg()

Подпись функции: Numeric Avg (VarArgs)

Описание функции: возвращает среднее значение значений в списке аргументов.

Аргументы:

  • VarArgs — это список выражений типа Variant, относящихся к категории точных числовых или приблизительных числовых типов данных, за исключением типа данных bit.

Возвращаемое значение: возвращаемый тип определяется типом вычисленного результата выражения.

Если результат выражения относится к категории integer, decimal, money или smallmoney, float или real, то возвращаемыми типами будут int, decimal, money и float соответственно.

Пример: Инструкция Avg(1.0, 2.0, 3.0, 4.0, 5.0) в этом примере возвращает значение 3.0.

BitwiseAnd()

Подпись функции: Numeric BitwiseAnd (Numeric expression 1, Numeric expression2)

Описание функции: Выполняет побитовую логическую операцию «И» между двумя целочисленными значениями.

Аргументы:

  • expression1 и expression2 — любое допустимое выражение одного из типов данных категории типов данных integer.

Возвращаемое значение: возвращает значение из категории типа данных integer.

Пример: BitwiseAnd(Property1, Property2)

BitwiseOr()

Подпись функции: Numeric BitwiseOr (Numeric expression1, Numeric expression2)

Описание функции: выполняет побитовую логическую операцию «ИЛИ» применительно к двум указанным целочисленным значениям.

Аргументы:

  • expression1 и expression2 — любое допустимое выражение одного из типов данных категории типов данных integer.

Возвращаемое значение: возвращает значение из категории типа данных integer.

Пример: BitwiseOr(Property1, Property2)

Concatenate()

Подпись функции: String Concatenate (String string1, String string2)

Описание функции: Объединяет две строки.

Аргументы:

  • string1 и string2 — две строки для объединения. Допускаются любые строки со значением, отличным от NULL.

Возвращаемое значение: Объединенная строка, в которой за строкой string1 следует строка string2.

Пример: Concatenate("Hello", " World") возвращает строку Hello World.

Count()

Подпись функции: Numeric Count (VarArgs)

Описание функции: возвращает количество элементов в списке аргументов.

Аргументы:

  • VarArgs — это выражение любого типа, за исключением text, image или ntext.

Возвращаемое значение: возвращает значение из категории типа данных integer.

Пример: Инструкция Count(1.0, 2.0, 3.0, 4.0, 5.0) в этом примере возвращает значение 5.

DateAdd()

Подпись функции: DateTime DateAdd (String datepart, Numeric number, DateTime date)

Описание функции: возвращает новое значение типа datetime, получаемое за счет добавления интервала к указанной дате.

Аргументы:

  • datepart — параметр, указывающий, для какой части даты вернуть новое значение. Некоторыми из поддерживаемых типов являются: year (yy, yyyy), month (mm, m) и dayofyear (dy, y). Дополнительные сведения см. в разделе DATEADD (Transact-SQL).

  • number — значение, используемое для увеличения datepart.

  • date — выражение, которое возвращает значение типа datetime или строку символов в формате даты.

Возвращаемое значение: Новое значение типа datetime, получаемое за счет добавления интервала к указанной дате.

Пример: Инструкция DateAdd('day', 21, DateTime('2007-08-06 14:21:50')) в этом примере возвращает значение '2007-08-27 14:21:50'.

В следующей таблице перечисляются значения dateparts и аббревиатуры, поддерживаемые данной функцией.

Часть даты

Сокращения

year

yy, yyyy

month

mm, m

dayofyear

dy, y

day

dd, d

week

wk, ww

weekday

dw, w

hour

hh

minute

mi, n

second

ss, s

millisecond

ms

DatePart()

Подпись функции: Numeric DatePart (String datepart, DateTime date)

Описание функции: возвращает целое число, представляющее указанную часть datepart указанной даты.

Аргументы:

  • datepart — параметр, который указывает возвращаемую часть даты. Некоторыми из поддерживаемых типов являются: year (yy, yyyy), month (mm, m) и dayofyear (dy, y). Дополнительные сведения см. в разделе DATEPART (Transact-SQL).

  • date — выражение, которое возвращает значение типа datetime или строку символов в формате даты.

Возвращаемое значение: возвращает значение из категории типов данных integer, представляя указанную часть datepart указанной даты.

Пример: Инструкция DatePart('month', DateTime('2007-08-06 14:21:50.620')) в этом примере возвращает значение 8.

DateTime()

Подпись функции: DateTime DateTime (String dateString)

Описание функции: создает значение типа datetime из строки.

Аргументы:

  • dateString. Значения даты и времени в виде строки.

Возвращаемое значение: возвращает значение даты и времени, созданное на основе входной строки.

Пример: DateTime('3/12/2006')

Divide()

Подпись функции: Numeric Divide (Numeric expression_dividend, Numeric expression_divisor)

Описание функции: делит одно число на другое.

Аргументы:

  • expression_dividend — делимое числовое выражение. Делимое может представлять собой любое допустимое выражение любого из типов данных категории числовых типов данных, кроме типа данных datetime.

  • expression_divisor — это числовое выражение, на которое делится делимое. Делитель может представлять собой любое допустимое выражение любого из типов данных категории числовых типов данных, кроме типа данных datetime.

Возвращаемое значение: возвращает тип данных аргумента, у которого более высокий приоритет.

Пример: Divide(Property1, 2)

ПримечаниеПримечание

Это операция со значениями типа double. Чтобы выполнить целочисленное сравнение, необходимо применить к результатам функцию Round(). Например: Round(Divide(10, 3), 0) = 3.

Enum()

Подпись функции: Numeric Enum (String enumTypeName, String enumValueName)

Описание функции: создает значение типа enum из строки.

Аргументы:

  • enumTypeName. Представляет собой имя типа enum.

  • enumValueName — значение типа enum.

Возвращаемое значение: возвращает значение типа enum в виде числового значения.

Пример: Enum('CompatibilityLevel','Version100')

Escape()

Подпись функции: String Escape (String replaceString, String stringToEscape, String escapeString)

Описание функции: Экранирует подстроку входной строки заданной экранизирующей строкой.

Аргументы:

  • replaceString — входная строка.

  • stringToEscape — подстрока строки replaceString. Это строка, перед которой добавляется экранизирующая строка.

  • escapeString — экранизирующая строка, добавляемая перед каждым экземпляром строки stringToEscape.

Возвращаемое значение: Возвращает измененную строку replaceString, в которой перед каждым экземпляром строки stringToEscape помещена строка escapeString.

Пример: Escape("Hello", "l", "[") возвращает строку He[l[lo.

ExecuteSQL()

Подпись функции: Variant ExecuteSQL (String returnType, String sqlQuery)

Описание функции: выполняет запрос Transact-SQL к целевому серверу.

Аргументы:

  • returnType — указывает тип данных, возвращаемый инструкцией Transact-SQL. Допустимыми литералами для аргумента returnType являются: Numeric, String, Bool, DateTime, Array и Guid.

  • sqlQuery — строка, содержащая выполняемый запрос.

Пример. ExecuteSQL ('Numeric', 'SELECT COUNT(*) FROM msdb.dbo.sysjobs') <> 0

Выполняет скалярный запрос Transact-SQL к целевому экземпляру SQL Server. В инструкции SELECT можно указать только один столбец; дополнительные столбцы вслед за первым не учитываются. Результирующий запрос должен возвращать только одну строку; дополнительные строки не учитываются. Если запрос возвращает пустой набор, то выражение условия, построенное на функции ExecuteSQL, возвращает значение false. ExecuteSql поддерживает режимы вычисления По запросу и По расписанию.

  • @@ObjectName — соответствует полю name в таблице sys.objects. Переменная будет заменена именем текущего объекта.

  • @@ObjectSchema — соответствует полю name в таблице sys.schemas. Переменная будет заменена именем схемы текущего объекта, если это возможно.

ПримечаниеПримечание

Если в инструкцию ExecuteSQL необходимо включить одиночную кавычку, ее следует экранировать второй одиночной кавычкой. Например, чтобы включить ссылку на пользователя с именем O'Brian, следует ввести O''Brian.

ExecuteWQL()

Подпись функции: Variant ExecuteWQL (string returnType , string namespace, string wql)

Описание функции: выполняет скрипт WQL по отношению к предоставленному пространству имен. Инструкция выборки может содержать только единственный возвращаемый столбец. Если предоставлен больше чем один столбец, выдается ошибка.

Аргументы и определение возвращаемого типа

  • returnType — указывает тип данных, возвращаемый WQL-запросом. Допустимыми литералами являются Numeric, String, Bool, DateTime, Array и Guid.

  • namespace — пространство имен WMI, для которого выполняется запрос.

  • wql — строка, содержащая выполняемый WQL-запрос.

Пример: ExecuteWQL('Numeric', 'root\CIMV2', 'select NumberOfProcessors from win32_ComputerSystem') <> 0

False()

Подпись функции: Bool False()

Описание функции: возвращает логическое значение FALSE.

Возвращаемое значение: возвращает логическое значение FALSE.

Пример: IsDatabaseMailEnabled = False()

GetDate()

Подпись функции: DateTime GetDate()

Описание функции: возвращает системную дату.

Возвращаемое значение: возвращает системную дату как значение типа DateTime.

Пример: @DateLastModified = GetDate()

Guid()

Подпись функции: Guid Guid(String guidString)

Описание функции: возвращает значение идентификатора GUID из строки.

Аргументы:

  • guidString. Строковое представление создаваемого идентификатора GUID.

Возвращаемое значение: возвращает идентификатор GUID, созданный на основе строки.

Пример: Guid('12340000-0000-3455-0000-000000000454')

IsNull()

Подпись функции: Variant IsNull (Variant check_expression, Variant replacement_value)

Описание функции: возвращается значение check_expression, если это выражение не равно NULL; в противном случае возвращается значение replacement_value. Если тип аргументов отличается, тип аргумента replacement_value неявно преобразуется в тип аргумента check_expression.

Аргументы:

  • check_expression — выражение, для которого проверяется значение NULL. check_expression может иметь любой тип, поддерживаемый для управления на основе политик: Numeric, String, Bool, DateTime, Array и Guid.

  • replacement_value — выражение, возвращаемое, если check_expression имеет значение NULL. Аргумент replacement_value должен иметь тип, который неявно преобразован в тип check_expression.

Возвращаемое значение: возвращаемый тип — check_expression в том случае, если значение check_expression не равно NULL; в противном случае возвращается тип replacement_value.

Len()

Подпись функции: Numeric Len (string_expression)

Описание функции: возвращает количество символов указанного строкового выражения, исключая конечные пробелы.

Аргументы:

  • string_expression — оцениваемое строковое выражение.

Возвращаемое значение: возвращает значение из категории типа данных integer.

Пример: Инструкция Len('Hello') в этом примере возвращает значение 5.

Lower()

Подпись функции: String Lower (String_expression)

Описание функции: возвращает строку после преобразования всех символов верхнего регистра в нижний регистр.

Аргументы:

  • expression. Выражение исходной строки.

Возвращаемое значение: возвращает строку, которая представляет исходную строку после преобразования всех символов верхнего регистра в нижний регистр.

Пример: Инструкция Len('HeLlO') в этом примере возвращает значение 'hello'.

Mod()

Подпись функции: Numeric Mod (Numeric expression_dividend, Numeric expression_divisor)

Описание функции: вычисляет целочисленный остаток после деления первого числового выражения на второе.

Аргументы:

  • expression_dividend — делимое числовое выражение. Аргумент expression_dividend должен быть допустимым выражением любого типа данных из категории целочисленных или числовых.

  • expression_divisor — числовое выражение, на которое делится делимое. Аргумент expression_divisor должен быть допустимым выражением любого типа данных из категории целочисленных или числовых.

Возвращаемое значение: возвращает значение из категории типа данных integer.

Пример: Mod(Property1, 3)

Multiply()

Подпись функции: Numeric Multiply (Numeric expression1, Numeric expression2)

Описание функции: умножает два выражения.

Аргументы:

  • expression1 и expression2 — любое допустимое выражение одного из типов данных числовой категории, кроме типа datetime.

Возвращаемое значение: возвращает тип данных аргумента, у которого более высокий приоритет.

Пример: Multiply(Property1, .20)

Power()

Подпись функции: Numeric Power (Numeric numeric_expression, Numeric expression_power)

Описание функции: возвращает значение указанного выражения, возведенное в заданную степень.

Аргументы:

  • numeric_expression — выражение категории точного числового или приблизительного числового типа данных, за исключением типа данных bit.

  • expression_power — степень, в которую возводится аргумент numeric_expression. expression_power может быть выражением категории точного или приблизительного числового типа данных, за исключением типа данных bit.

Возвращаемое значение: возвращаемым типом является такой же тип, как у выражения numeric_expression.

Пример: Power(Property1, 3)

Round()

Подпись функции: Numeric Round (Numeric expression, Numeric expression_precision)

Описание функции: возвращает числовое выражение, округленное до указанной длины или точности.

Аргументы:

  • expression — выражение категории точного или приблизительного числового типа данных, за исключением типа данных bit.

  • expression_precision — точность, до которой должно быть округлено значение выражения. Если аргумент expression_precision является положительным числом, значение numeric_expression округляется до числа десятичных разрядов, указанных в виде длины. Когда expression_precision является отрицательным числом, numeric_expression округляется слева от точки, отделяющей десятичную дробь от целого числа, как указано в expression_precision.

Возвращаемое значение: возвращает тот же тип, что и аргумент numeric_expression.

Пример: Round(5.333, 0)

String()

Подпись функции: String String (Variant_expression)

Описание функции: преобразует данные типа Variant в строку.

Аргументы:

  • expression. Выражение типа Variant, которое должно быть преобразовано в строку.

Возвращаемое значение: возвращает строковое значение выражения типа Variant.

Пример: String(4)

Sum()

Подпись функции: Numeric Sum (VarArgs)

Описание функции: возвращает сумму всех значений в списке аргументов. Эту функцию можно использовать с численными значениями.

Аргументы:

  • VarArgs — список выражений типа Variant, относящихся к категории точных числовых или приблизительных числовых типов данных, за исключением типа данных bit.

Возвращаемое значение: возвращает сумму всех значений выражения, представленную в наиболее точном формате данных.

Если результат выражения относится к категории integer, numeric, money или small money, float или real, то возвращаемыми типами будут int, numeric, money и float соответственно.

Пример: Инструкция Sum(1.0, 2.0, 3.0, 4.0, 5.0) в этом примере возвращает значение 15.

True()

Подпись функции: Bool TRUE()

Описание функции: возвращает логическое значение TRUE.

Возвращаемое значение: возвращает логическое значение TRUE.

Пример: IsDatabaseMailEnabled = True()

Upper()

Подпись функции: String Upper (String_expression)

Описание функции: возвращает строку после преобразования всех символов нижнего регистра в верхний регистр.

Аргументы:

  • expression. Выражение исходной строки.

Возвращаемое значение: возвращает строку, представляющую собой исходное строковое выражение после преобразования всех символов нижнего регистра в верхний регистр.

Пример: В данном примере Len('HeLlO') возвращает 'HELLO'.

См. также

Справочник

Диалоговое окно «Создание нового условия» или «Открытие условия», страница «Общие»

Основные понятия

Администрирование серверов с помощью управления на основе политик