取值的时候先做判断
如果为null,赋值为0,再加他们的和,这样可以吗?
如果为null,赋值为0,再加他们的和,这样可以吗?
解决方案 »
- 背景的问题
- U盘程序自启动
- 菜鸟问题!!!
- asp.net2.0错误1无法将类型“System.Web.UI.WebControls.GridViewRow”隐式转换为“System.Web.UI.WebControls.GridView”
- 关于字符串转换成uniqueidentifier值的问题
- 超级简单的问题小弟就是不懂,SWF的播放问题
- 一个很基础的问题,如果判断一个变量是一个数组变量,大侠来指教一下!
- WPF读取指定的Excel文件
- 为什么ASP.NET3.5 制作的网站到服务器就不能设置Session?
- 请问怎样在DataGrid所列出的数据中实现某些格不同颜色? 200分
- 新手问一个存储过程返回值问题,立刻给分
- 急,使用DataGrid分页时出现错误...在线等...
一般情况下,Crystal Reports 在公式中遇到空值字段时,会立即停止公式求值而不产生任何值。若要处理公式中的空字段值,则必须使用专门用于处理空字段值的特殊函数进行显式处理。这些函数包括:IsNull、PreviousIsNull 或 NextIsNull。 示例
{产品.颜色} 字段中既包含基本颜色(如“red”和“black”),也包含两个单词构成的更具描述性的颜色(如“steel satin”和“jewel green”)。以下示例是这样一个公式:当颜色为基本颜色时写出“basic”,为其他颜色时写出“fancy”。If InStr({产品.颜色}, " ") = 0 Then
formula = "basic"
Else
formula = "fancy"对 InStr 的函数调用搜索 {产品.颜色} 字符串中是否有空格。如果发现有空格,则该函数调用返回该空格的位置,否则返回 0。由于基本颜色只有一个单词,没有空格,所以 InStr 会对基本颜色返回 0。对于某些产品(如 Guardian Chain Lock)不记录颜色值,因而 {产品.颜色} 字段在数据库中对该记录有一个空值。这样,Guardian Chain Lock 记录就不在它旁边打印任何文字。 下例说明如何处理上面使用 IsNull 的示例:If IsNull({产品.颜色}) Or
InStr({产品.颜色}, " ") = 0 Then
"basic"
Else
"fancy"当 Crystal Reports 对以下条件求值时,运算符与这些函数相关:IsNull({产品.颜色}) Or
InStr({产品.颜色}, " ") = 0它首先对 IsNull ({产品.颜色}) 求值,当它确定该函数值为 True 时,便知道整个条件为 True,因此不需要检查是否InStr({产品.颜色}, " ") = 0换句话说,当 Crystal Reports 能够预知整个表达式的结果时,将停止对布尔表达式求值。在下例中,公式防止在分母为 0 的情况下被零除:Local NumberVar num;
Local NumberVar denom;
...
If denom <> 0 And num / denom > 5 Then
...注意: Visual Basic 不支持该技术,因为在 Visual Basic 中即使不必要,也对布尔表达式的所有部分求值。