打印      打开 PDF 版本的联机帮助


上一主题

下一主题

Expression Builder 中的数据类型

本主题说明 Oracle CRM On Demand 中的数据类型,以及如何在 Expression Builder 中使用这些数据类型。

注意:用于本主题中任何示例表达式的独立于语言的字段名称以及字段名称语法是比第 29 版 Service Pack 1 更旧的 Expression Builder 版本中使用的字段名称和字段名称语法。这些示例仍然有效。但是,如果您从第 29 版 Service Pack 1 或更高版本的 Expression Builder 的“字段”列表中选择表达式的对应字段,则字段名称和字段名称语法将不同于示例中所显示的字段名称和字段名称语法。建议您始终从 Expression Builder 内的“字段”列表中为表达式选择字段,以便字段名称和字段名称语法始终正确。有关表达式中的字段名称和字段名称语法的更多信息,请参阅关于表达式

Oracle CRM On Demand 中的数据类型

下表显示了在表达式中使用 Oracle CRM On Demand 字段时返回的数据类型。要获取字段值,请使用 [{FieldName}] 语法或 [<FieldName>] 语法。

Oracle CRM On Demand 字段类型

表达式中的返回类型

整数

整数

选择列表

字符串

币种

币种

ID

字符串

文本

字符串

复选框

布尔。

例如,您可以直接在需要条件的地方使用 [<Active>]。您也可以使用 FieldValue('<Active>') = 'Y'。

日期

日期

日期时间

日期时间

数字

数字

数据类型算术

如果某个语句引用多个字段值,字段数据类型也不相同,则数据类型的顺序会影响计算结果。在对两个不同数据类型的操作数应用运算符(非指数运算符)时,运算符右边的操作数将先转换为左边的操作数的数据类型,然后才会进行运算。例如,如果 CloseDate 为 02/09/2007,以下表达式:

PRE('<CloseDate>') + 30

的计算结果为 02/09/200730。因此以下条件:

[<CloseDate>] > PRE('<CloseDate>') + 30

在语法上有效,但其意义无效。该条件的正确书写形式如下:

[<CloseDate>] - 30 > PRE('<CloseDate>')。

注意:如果使用指数运算符,则不会将运算符右边的操作数转换成左边操作数的数据类型。

下表使用示例值显示了各种算术运算可能具有的结果。

字段

数据类型

示例值

数量

整数

5

项目价格

币种

2.25

计算

 

结果

数据类型

[<Item Price>] + [<Quantity>]

7.25

币种

[<Quantity>] + [<Item Price>]

7

整数

[<Item Price>] - [<Quantity>]

(2.75)

注意:对于货币字段,括号表示值为负值。

币种

[<Quantity>] - [<Item Price>]

3

整数

[<Item Price>] * [<Quantity>]

11.25

币种

[<Quantity>] * [<Item Price>]

10

整数

[<Item Price>] / [<Quantity>]

0.45

币种

[<Quantity>] / [<Item Price>]

2.50

币种

如果使用指数运算符,则不会将运算符右边的操作数转换成左边操作数的数据类型。

在此示例(其中“数量”是整数字段,其值为 5,“物品价格”是货币字段,其值为 2.25)中,如果运算符右边的操作数转换为左边的操作数的数据类型,则“数量 ^ 物品价格”的预计值应为 25,预计的数据类型应为整数。但是,其结果如下表所示。

计算

 

结果

数据类型

[<Item Price>] ^ [<Quantity>]

57.67

币种

[<Quantity>] ^ [<Item Price>]

37.38

币种

Expression Builder还支持求反运算符(负号 [-])。例如:

计算

 

结果

数据类型

-1 * [<ItemPrice>]

(2.25)

币种

如果将数值转换为字符串,则无法正确进行计算。例如:

计算

 

结果

说明

 

数据类型

1234 + abcd

1234

数字

字符串“abcd”的计算结果为数值 0,此结果随后将与 1234 相加。

abcd + 1234

abcd1234

字符串

数值 1234 的计算结果为字符串“1234”,该字符串将附加到字符串“abcd”的后面。

相关主题

请参阅以下主题以了解相关的 Expression Builder 信息:


已发布 10月 2016 Copyright © 2005, 2016, Oracle. 保留所有权利。Legal Notices.