Delphi Rave向EvarianToverfloweror报告主要细节

Delphi Rave向EvarianToverfloweror报告主要细节,delphi,rave-reports,Delphi,Rave Reports,我有一个使用主查询和子查询的报告-主查询在分组中选择三个字段:billstatus、oscategory(服务器或工作站)和groupname 子查询从同一视图中选择一组信息,没有分组依据 我使用rave向导创建了一个主详细信息报告,链接了groupname和oscategory上的父级和子级 我在过去的许多报告中都这样做过。。。但这一个让我很不舒服 查询将毫无问题地打开,我可以使用F9在Rave中预览报告-但是当我尝试运行程序生成报告时,它会给我以下错误: 将类型(Decimal)的变量转换为

我有一个使用主查询和子查询的报告-主查询在分组中选择三个字段:billstatus、oscategory(服务器或工作站)和groupname

子查询从同一视图中选择一组信息,没有分组依据

我使用rave向导创建了一个主详细信息报告,链接了groupname和oscategory上的父级和子级

我在过去的许多报告中都这样做过。。。但这一个让我很不舒服

查询将毫无问题地打开,我可以使用F9在Rave中预览报告-但是当我尝试运行程序生成报告时,它会给我以下错误: 将类型(Decimal)的变量转换为类型(Currency)时,使用消息“Overflow”初始化EVariantOverflowError

我在选择列表中没有十进制值,但是,查询确实使用了几个参数:groupname、DateStart和DateEnd

在这一点上,任何想法都会有所帮助,因为当我使用两个查询将报表设置为master/detail时,我甚至无法运行没有字段的报表

大师:

SELECT groupname, oscategory, billstatus
FROM MyView
WHERE groupname = :groupname
AND lastcheckin >= :StartDate
AND firstcheckin < :EndDate
AND BillStatus <> 'Do Not Bill'
GROUP BY groupname, oscategory, billstatus
选择组名、oscategory、billstatus
从我的观点
其中groupname=:groupname
和lastcheckin>=:StartDate
和首次签入<:EndDate
和BillStatus“不记账”
按组名、oscategory、billstatus分组
儿童:

SELECT machine_groupid, agentguid, machName, groupname, firstcheckin, lastcheckin, currentuser, lastloginname, lastreboot, agentversion, contactname, contactemail, 
contactphone, contactnotes, enabletickets, enableremotecontrol, enablechat, loginname, credentialname, primarykserver, secondarykserver, quickcheckinsecs, agenttempdir, 
manufacturer, productname, machineversion, sysserialnumber, chassisserialnumber, chassisassettag, busspeed, maxmemorysize, maxmemoryslots, chassismanufacturer, 
chassistype, chassisversion, motherboardmanufacturer, motherboardproductcode, motherboardversion, motherboardserialnumber, computername, subnetmask, 
defaultgateway, dnsserver1, dnsserver2, dnsserver3, dnsserver4, dhcpenabled, dhcpserver, winsenabled, primarywinsserver, secondarywinsserver, connectiongatewayip, 
ostype, osinfo, majorversion, minorversion, macaddr, loginnamemach, billstatus, oscategory, cpudesc, cpuspeed, cpucount, totalram,
(manufacturer + ' ' + LTRIM(RTRIM(productname))) as displaypc, 
('CPU/Memory: ' + CONVERT(varchar(10), cpuspeed) + ' MHZ x ' + CONVERT(varchar(10), cpucount) + ' / ' + CONVERT(varchar(10), totalram) + ' Mb') as cpuspecs, 
(ostype + ' ' + osinfo) as osdisplay, 
(cpudesc + '/' + maxmemorysize + ' x ' + maxmemoryslots) as memorydisplay, 
('Ip Address: ' + ipaddress) as ipinformation
FROM MyView
WHERE groupname = :groupname
and machName is not null
AND lastcheckin >= :StartDate
AND firstcheckin < :EndDate
AND BillStatus <> 'Do Not Bill'
选择机器\u groupid、agentguid、machName、groupname、firstcheckin、lastcheckin、currentuser、lastloginname、lastreboot、agentversion、contactname、contactemail、,
contactphone、contactnotes、enabletickets、enableremotecontrol、enablechat、loginname、credentialname、primarykserver、secondarykserver、QuickCheckInspes、agenttempdir、,
制造商、产品名称、machineversion、sysserialnumber、chassisserialnumber、chassisassettag、busspeed、maxmemorysize、maxmemoryslots、chassismanufacturer、,
chassistype、chassisversion、主板制造商、主板产品代码、主板版本、主板序列号、计算机名称、子网掩码、,
defaultgateway、dnsserver1、dnsserver2、dnsserver3、dnsserver4、dhcpenabled、dhcpserver、winsenabled、primarywinsserver、secondarywinsserver、connectiongatewayip、,
ostype、osinfo、majorversion、minorversion、MacAddress、LoginNameach、billstatus、oscategory、cpudesc、cpuspeed、cpucount、totalram、,
(制造商+“”+LTRIM(RTRIM(productname)))作为displaypc,
('CPU/内存:'+CONVERT(varchar(10),cpuspeed)+'MHZ x'+CONVERT(varchar(10),cpucount)+'/'+CONVERT(varchar(10),totalram)+'Mb')作为cpuspec,
(ostype+“”+osinfo)作为osdisplay,
(cpudesc+'/'+maxmemorysize+'x'+maxmemoryslots)作为内存显示,
('Ip地址:'+ipaddress)作为ipinformation
从我的观点
其中groupname=:groupname
并且名称不为空
和lastcheckin>=:StartDate
和首次签入<:EndDate
和BillStatus“不记账”

这是我的日期格式-我使用的是startothemonth函数,它返回扩展值而不是日期值。我在函数周围添加了一个'DateOf(),一切都很顺利


谢谢大家:-)

这是我的日期格式-我使用的是startothemonth函数,它返回扩展值而不是日期值。我在函数周围添加了一个'DateOf(),一切都很顺利

谢谢大家:-)