请教下,水晶报表 参数字段一个字段当条件

&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!有一个水晶报表公式转换成数字字符串值,但保留非数字的空/空-水晶报表crystal-reports,null,公式formula-CodeGo.net
有一个水晶报表公式转换成数字字符串值,但保留非数字的空/空
我有一个字符串字段,它大多含有十进制值,但包含像“&0.10”或“溶血”的价值观。
我希望有一个公式来这些值的字符串转换为值,让非空值(NULL)。
if isNumeric({a_omgang.omg_resultat}) then
toNumber({a_omgang.omg_resultat})
所有非数值,这使得它很难计算,例如返回0平均值或计数的值的数目。 (当然,后者可以实现一个运行总计数与isNumeric评价公式。)
任何建议我怎样才能得到公式工作 CodeGo.net,我想要什么?
编辑:我要的值是空(NULL),不只是把可见性,如果非
本文地址 :CodeGo.net/534009/
-------------------------------------------------------------------------------------------------------------------------
1. 在过去,我已经创建了一个返回NULL SQL表达式:
-- {@DB_NULL}
-- Oracle syntax
SELECT NULL FROM DUAL
-- {@DB_NULL}
-- MS SQL syntax
SELECT NULL
然后,我引用的公式在此领域:
// {@FormulaField}
If IsNumberic({table.field} Then
ToNumber({table.field})
ToNumber({@DB_NULL})
你可以得到这个通过执行下列工作:
创建一个新的公式,只需输入一个数字,然后保存。水晶现在这个公式有返回值相关联。
回去代入公式,并删除号码并重新保存它。现在你有一个公式返回一个null,但华润已经关联了它作为是一个公式让你随时随地你一个类型就可以了。
if isNumeric({a_omgang.omg_resultat})
then toNumber({a_omgang.omg_resultat})
else {@NullNumeric}
请注意 CodeGo.net,您可以在此为任何其他数据类型(包括字符串,因为一个空字符串不等同于空字符串),它是在那里你只是想直线上升忽略某些行汇总函数非常有用。
不知道这是最好的解决方案,但它是一个解决方案。
创建运行总计公式字段的最大值。通过公式计算NumericText(Replace({a_omgang.omg_resultat}, ".", ","))和由式复位true这会给你的每个条目的最大结果。 (即项目)。只有可以转换为一个值的项将被评估,因此所有其他人将是null。有true作为重置公式可以确保您始终获得被评估的项目的值。
这个运行总计的结果然后可以在问题被转换为一个公式。
该Replace()是由于语言环境,并根据您的系统的设置可能并不需要。如果需要的话,它也必须在值变换式。
尽我所知,你不能直接做到这一点。如果公式字段返回一个空它会转换为0。
你说你无法抑制。你能不能转换为数字,然后返回一个字符串?
本文标题 :有一个水晶报表公式转换成数字字符串值,但保留非数字的空/空
本文地址 :CodeGo.net/534009/
Copyright (C) 2014 CodeGo.net请教水晶报表子报表数据库字段设置的问题_水晶报表吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:253贴子:
请教水晶报表子报表数据库字段设置的问题
代码如下 只要我用了 rptDoc.VerifyDatabase(); 就会提示&系统错误. 缺少参数值。&如果不用就不报错, 但是取的是旧的数据库连接//连接字符串
var connectionString = new SqlConnectionStringBuilder(ConnectionString);
//为 报表中的每个报表 或者子报表设置连接字符串
foreach (CrystalDecisions.Shared.IConnectionInfo connection in rptDoc.DataSourceConnections)
if (connectionString.IntegratedSecurity)
connection.SetConnection(connectionString.DataSource, connectionString.InitialCatalog,
connectionString.IntegratedSecurity);
connection.SetConnection(connectionString.DataSource, connectionString.InitialCatalog,
connectionString.UserID, connectionString.Password);
foreach (CrystalDecisions.CrystalReports.Engine.ReportDocument subreport in rptDoc.Subreports)
foreach (CrystalDecisions.Shared.IConnectionInfo connection in subreport.DataSourceConnections)
if (connectionString.IntegratedSecurity)
connection.SetConnection(connectionString.DataSource, connectionString.InitialCatalog,
connectionString.IntegratedSecurity);
connection.SetConnection(connectionString.DataSource, connectionString.InitialCatalog,
connectionString.UserID, connectionString.Password);
#endregion
//rptDoc.Refresh();
rptDoc.VerifyDatabase();
贴吧热议榜
使用签名档&&
保存至快速回贴& 前一篇:
后一篇: &
如何在水晶报表里按照某个特定字段的内容自动进行分页
@ 8/8/2006
professionalism
前段时间项目中有一个需求,一个机场的销售收入日报要按照特定的承运人(航空公司)来进行自动分页,比如CA打在第一页,碰到CZ时,不管第一页的内容有没有满,都自动从第二页开始打,依此类推。知道水晶报表提供这样的功能:在特定页后面新建页,但一直不知道这个公式怎么写,直到昨天偶尔翻看水晶报表提供的公式集后,发现一个打印函数叫做PreviousValue,试了一下,果然可以,整个步骤如下:一、格式化节在水晶报表设计页上的任意位置单击鼠标右键,出现如下的菜单,选择“格式化节”。二、在后面页新建页在“节专家”的内容页面上,选择左侧的”详细资料“选项,同时选中右侧的”在后面页新建页“项,单击其公式内容,出现下面的公式编辑界面。三、编写公式公式的语法可以选择”Crystal Report“或”Basic“,对我来说,当然后者更加熟悉一些。这个公式本身也不复杂,一个简单的If分支判断。至此,功能实现完毕。后记:这个试验是在家里的机器上做成功的,但不知为什么,在公司的机器上,当我在公式里使用特定的报表字段或数据源字段,在报表加载时,总是提示”未知的报表引擎错误“。试验了公司的好几台机器,都是同样的问题。公式本身已经没有问题,而且如果不在公式里使用特定字段时,一切都是正常的。还没有解决这个问题,只好在项目里暂且不实现这样的功能,转而以其它方式替代。
紫 @ 12/10/:26
为什么我没有格式化节的啊
&匿名人士& @ 11/12/:23
楼主你后来是用什么方法解决的啊?
&匿名人士& @ 2/9/:46
水晶报表中一个表格行中,显示一个字段数据,数据太多,需要全部显示。勾选可以增大属性后,全部显示了,但这时会导致分页,(之前在控件&CR:CrystalReportViewer/&中屏蔽了水晶报表工具栏DisplayToolbar=&False&,加了 SeparatePages=&false&保障显示的时候显示所有的页 ),这样显示的时候,可以看到每页中所有的数据,但是在导出word格式后,页的底部会有部分内容不显示,感觉字体大了,word显示不全了。这中情况咋整啊。补充:导出成word后,字段数据在第1页没显示完,到了第2页继续显示,但是到了第2页只显示大部分(第2页的最下面是空白),再到第3页继续显示,同样第3页也只显示大部分,后面的页也都是:每页只显示大部分,其它地方是空白中间页(不是第一页和最后一页),中的图文框,填充不了整个页面(导出后的数据都放在图文框中的)。你还得拉一下图文框猜能显示全。问题2.把字段拖到报表中指定位置,任何拉大和表格框一样宽,这个字段是显示数据的,浏览报表的时候,这个内容要是多的时候,超过一行,它会提前换行,这个一行还没有显示到头呢就换行了,因为之前字段已经拉的和表格框一样宽了,还有这个字段不管是拉多大,它在显示的时候,一行都不显示到头,就提前换行了,不知道怎么回事。高手给说说呗!
看帖要回帖...
categories
British got talent的选秀场景,很感人
很深刻的生活哲理
呵呵,很有趣的总结~
statistics
网志数:102
评论数:233
查看保密网志
好友密码:
收信人:sdillon
你的大名:
你的 E-mail:
悄悄话标题:
悄悄话内容:

我要回帖

更多关于 水晶报表 的文章

 

随机推荐