reportbuilder 知道出生年月,怎么把年龄打出来?(10分)

  • 主题发起人 主题发起人 inter123
  • 开始时间 开始时间
I

inter123

Unregistered / Unconfirmed
GUEST, unregistred user!
reportbuilder 知道出生年月,怎么把年龄打出来?,知道传出的一个字段birth 格式(19491001),怎么把年龄打印出来,是不是要在calc里面编写程序.
有高手知道,请给出答案.
问题如下:
1.能否实现?
2.如果能.怎么实现?
 
birth的字段类型是字符型还是日期型?
 
可以在SQL语句中想办法
假设BIRTH是日期型字段
SELECT DATEDIFF(YY,BIRTH,GETDATE()) AS AGE FROM TABLE
这样得出来的就是年龄
如果是字符类型,就要先想办法将其转成日期类型
 
bytelife :birth是字符型的,关键是我没有在reportbuild里面编写过程序,一点头绪也没有.只有delphi的编程基础,可有人知道reportbuild的资料?
我的mail是xboy2008@etang.com
 
你的BIRTH的值是不是全部都是类似这样的:
比如:
19491001
19500102
19800931
也就是说年月都是2位数的?
 
先将BIRTH转换成日期型,再计算年龄
SELECT DATEDIFF(YY,convert(datetime,substring(BIRTH,1,4)+'-'+substring(BIRTH,5,2)+'-'+substring(BIRTH,7,2)),GETDATE()) AS AGE FROM TABLE
我觉得在SQL中得出年龄是最简便的办法
 
好的,我来试下!
 
REPORTBUILDER的使用相当简单:
在界面上放ppDBPipeLine,ppReport,datasource控件
指定DATASOURCE的dateset
指定ppDBPipeLine的datasource
指定ppReport的DatePipeline为ppDBPipeLine
打开ppReport,在DETAIL栏放DBTEXT控件,指定DBTEXT的DATAFIELD属性为你所需要的字段名
一切都设置好后运行:ppreport.print你就可以看到结果了
 
后退
顶部