Crystal Reports公式工坊:{report_field1}与{report_field2}互显公式实现求助
Crystal Reports 实现字段互显的解决方案
步骤1:创建新公式字段
- 打开Crystal Reports报表,在字段资源管理器里右键点击「公式字段」,选择「新建」,输入公式名称(比如
Display_Field)后点击确定。
步骤2:编写公式逻辑
根据需求,分情况判断字段状态:
- 当
{report_field1}的值为0时,显示{report_field2} - 当
{report_field1}有有效值时,若{report_field2}无输入(0或空值),则显示{report_field1}
数值型字段适用公式
If {report_field1} = 0 Then {report_field2} Else If {report_field2} = 0 Or IsNull({report_field2}) Then {report_field1} Else // 可选:若两个字段都有值,可自定义显示规则,比如优先显示{report_field1} {report_field1}
字符串型字段适用公式
如果字段是字符串格式(无输入时为空字符串),调整为:
If {report_field1} = "0" Or {report_field1} = "" Or IsNull({report_field1}) Then {report_field2} Else If {report_field2} = "0" Or {report_field2} = "" Or IsNull({report_field2}) Then {report_field1} Else {report_field1}
步骤3:替换原有字段
删除报表上原有的{report_field1}和{report_field2},将刚创建的公式字段Display_Field拖到报表对应位置即可。
常见排查点
- 若字段存在数据库空值,必须加上
IsNull()判断,否则会出现显示异常 - 严格匹配字段的数据类型,数值型和字符串型的判断逻辑不能混用
内容的提问来源于stack exchange,提问作者jcbj1281
相关产品推荐
相关产品推荐

