Поделиться через


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

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

Параметры

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

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

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

Синтаксис

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

{property | function | constant}

{operator}

{property | function | constant}

Примеры

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

  • Property1> 5

  • Property1=Property2

  • Add(5, Умножение(.2,Property1))<Property2

  • Sometext IN Property1

  • Property1< Fn(Property2)

  • BitwiseAnd(Property1,Property2)= 0

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

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

Внимание

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

Function Description Аргументы Возвращаемое значение Пример
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' .

Ниже перечислены пары даты и аббревиаций, поддерживаемые этой функцией:

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 на целевом сервере.

Дополнительные сведения о функции ExecuteSql() см. в разделе Функция ExecuteSql().
returnType — указывает тип возвращаемых данных, возвращаемых инструкцией Transact-SQL. Допустимые литералы для returnType приведены следующим образом: Numeric, String, Bool, DateTime, и .GuidArray

sqlQuery — строка, содержащая выполняемый запрос.
ExecuteSQL ('Numeric', 'SELECT COUNT(*) FROM msdb.dbo.sysjobs') <> 0

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

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

@@SchemaName — соответствует полю имени в 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*_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)

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

expression_precision — точность, до которой должно быть округлено значение выражения. Если аргумент expression_precision является положительным числом, значение numeric_expression округляется до числа десятичных разрядов, указанных в виде длины. Когда expression_precision является отрицательным числом, numeric_expression округляется слева от точки, отделяющей десятичную дробь от целого числа, как указано в expression_precision.
Возвращает тот же тип, что и аргумент numeric_expression. Round(5.333, 0)
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*_expression*)

возвращает строку после преобразования всех символов нижнего регистра в верхний регистр.
expression — выражение исходной строки. возвращает строку, представляющую собой исходное строковое выражение после преобразования всех символов нижнего регистра в верхний регистр. Len('HeLlO') в этом примере возвращает значение 'HELLO' .

См. также

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