由内部数据导出作一外部数据系统,原表达式的列的表达式需要转换成计算代码
IIF([造林类别] = '退耕',[设计面积],null)IIF([造林类别] = '退耕'and[林种] = '生态林',[设计面积],null)“合格面积”列等于“设计面积”列
if e.col.name = "计算代码列" '改为计算代码列的列名称
if e.datarow("造林类别")= "退耕" or e.datarow("造林类别")= "退耕" and e.datarow("林种") = "生态林"
e.datarow("计算代码列") = e.datarow("设计面积")
else
e.datarow("计算代码列") is nothing
end if
end if
其实,您的第二个条件是多余的,因为第一个判断条件就决定了,这样的运行效是一样的:
if e.col.name = "计算代码列" '改为计算代码列的列名称
if e.datarow("造林类别")= "退耕"
e.datarow("计算代码列") = e.datarow("设计面积")
else
e.datarow("计算代码列") is nothing
end if
end if
楼主的两个表达式好象不在一个计算列中吧?
如果不是,可以试试计算代码:
if e.datarow("造林类别") = "退耕" Then
e.datarow(e.datacol.name) = e.datarow("设计面积")
else
e.datarow(e.datacol.name) = nothing
end if
if e.datarow("造林类别") = "退耕" and e.datarow("林种") = "生态林" Then
e.datarow(e.datacol.name) = e.datarow("设计面积")
else
e.datarow(e.datacol.name) = nothing
end if
if e.datarow("造林类别") = "退耕" and e.datarow("林种") = "生态林" Then
e.datarow("合格面积") = e.datarow("设计面积")
else
e.datarow("合格面积") = nothing
end if
以下是引用易服在2008-11-19 12:33:00的发言:
独立的表达式:IIF([造林类别] = '退耕'and[林种] = '生态林',[设计面积],null)
“合格面积”列等于“设计面积”列
三楼是两个独立的计算代码。
以下是引用易服在2008-11-19 12:43:00的发言:
是的,怎么不会立即生效呢?
呵呵,看一下帮助中关于计算代码的说明。
计算代码是需要重算的,代码设置完成后点一下计算代码右侧的计算按钮即可。