您可以在规则表达式中使用内置规则函数来对值进行各种变化。 内置规则函数调用的一般形式为
%[*]$$function(arg[,…])[:offset,length]%
其中,多值指示器星号 (*) 以及 Offset 和 Length 子字符串的指定也是可选的。
常用的内置函数如下所示:
|
内置规则函数 |
说明 |
|---|---|
|
ALLOF |
将所有参数合并到一个多值属性中。 保留顺序但会删除重复。 例如,如果用户属性设置为以下内容: eTCustomField01: { A, B } 则规则: %*ALLOF(%*UCU01%,%*UCU02%)% 会评估为三个值 { A, B, C }。 |
|
DATE |
评估为 dd/mm/yyyy 格式的当前日期。 规则表达式 %D% 相当于以下内容之一: %$$DATE()% |
|
FIRSTOF |
返回任何参数的第一个值。 如果不设置属性则用于插入默认值: %$$FIRSTOF(%UCU01%,'unknown')% 如果未设置任何值,结果则是没有值。 要在参数中输入常量字符串,请将其放在单引号中。 |
|
INDEX |
返回多值属性的一个值。 索引 1 是第一个值。 如果索引大于值的数目,结果则是未设置(空)值。 下列规则相当于以下内容: %$$INDEX(%*UCU01%,1)% %$$FIRSTOF(%*UCU01%)% |
|
NOTEMPTY |
返回其中一个参数的单一值,但如果未设置该设置时则会报告失败。 示例 1: 如果用户没有指定的 UID 属性,则使得帐户创建或更新失败: %$$NOTEMPTY(%UID%)% 示例 2: 使用名字,除非没有设置名字,在这种情况下使用姓氏。 如果都没设置,则帐户创建或更新失败。 %$$NOTEMPTY( %$$FIRSTOF( %UF%, %UL% )% )% |
|
PRIMARYEMAIL |
返回从多个电子邮件地址提取的主要电子邮件地址。 表达式 %UE% 相当于以下内容: %$$PRIMARYEMAIL(%UEP%)% |
|
RDNVALUE |
将属性值视作 LDAP 可分辨名称,并从该 DN 提取对象的通用名称: %*$$RDNVALUE(%#eTRoleDN%)% 该表达式将返回所有分配的配给角色的通用名称。 如果用户属于具有相同通用名称的两个配给角色,则列出该角色名称一次。 |
|
TOLOWER |
将大写文本转化成小写: %$$TOLOWER(%AC%)% |
|
TOUPPER |
将小写文本转化成大写: %$$TOUPPER(%U%)% |
|
TRIM |
删除属性值中的前导和结尾空白字符。 例如,“%UF %UL%”通常会创建一个以空白字符分隔的名字和姓氏组成的值。 然而,如果用户的名字属性为空,该规则则生成一个以空白结束的值。 但使用 “%$$TRIM(%UF% %UL%)% 将确保帐户属性值中不存在前导和结尾空白,即使未设置名字或姓氏中的一个也是如此。 |
|
版权所有 © 2013 CA。
保留所有权利。
|
|