1、场景:FastReport.NET V2017版本的DateTime可能长短空的,导致后台经由过程DataTable传递空值的DateTime列,到FastReport缺显示“0001-01-01 00:00:00”这类的成果。
2、思绪:
1)利用FastReport的Year、IIf函数连系,当后台返回空值时,界面也显示空值
2)后台返回处置过的string字段,供FastReport绑心猿意马
【体例一】FastReport的Year函数,判定当前日期的年是否小于指心猿意马年份,好比小于1900,即当做无效年份处置:
Year([数据源.日期字段]) < 1900
【体例一】FastReport的FormatDateTime函数,格局化日期为指心猿意马格局:
FormatDateTime([数据源.日期字段],"yyyy-MM-dd HH:mm:ss")
【体例一】连系IIf、Year、FormatDateTime格局化日期字段的完当作格局如下:
[IIf((Year([数据源.日期字段]) < 1900),"",FormatDateTime([数据源.日期字段],"yyyy-MM-dd HH:mm:ss"))]
【体例二】后台实体字段日期转换为string类型,若是日期为空值,就给string赋值为空,若是日期是有用日期,就给日期格局化显示的格局
【体例二】点窜FastReport模板的SQL语句,将日期字段类型改为字符串类型,或者直接点窜FastReport的数据源字段类型为字符串
【体例二】在绑心猿意马字段的时辰,按照字符串类型绑心猿意马,不需要格局化,因为后台已经格局化好了
运行结果,若是日期为空,打印显示就是空白的。若是日期值有用,就显示对应日期值
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!