使用web报表工具遇到的问题汇总(efreport.com)

服务器篇:

Q:服务器上,设置好邮局配置后,为何不能正常发送邮件?

A:邮件配置需要确定发送的邮箱系统是否启用了SSL,一般情况下没有启用SSL,使用的邮局网关SMTP端口是25,启用的情况下端口是465。如配置正确仍然发送不出去,就要查看部署的服务器是否开启了配置的端口,正常开启了相应的端口后,邮件将正常发送出去。

 

Q:任务配置里配置好任务后,为何没有起作用?

A:任务配置后,需要点击重启任务,这样设置好的任务才能重新启用。

 

Q:设置好OEM后,为什么没有效果?

A:因为浏览器有之前的缓存,需要强制刷新,或清除缓存重新进入。

Q:管理员密码忘记,如何处理?

A:请及时联系我们客服人员,我们会帮忙解决此问题。

Q:非管理员忘记密码,如何处理?

A:通知管理员,管理员可以重置非管理员的密码。

 

报表制作篇:

Q:数据库连接文件正常,设置数据源时,为什么数据源无法正常显示?

A:数据源无法正常显示的现象分为以下几种:1. 网络异常;2. 数据库实际连接出现异常;3. 数据源的查询语句错误;4. 数据源的查询语句本身耗费大量时间。

 

Q:制作报表设置序号后,为什么没有正常的显示序号?

A:制作序号时,不仅要设置相应的公式,更要设置其左父格,这样它才会真正的跟随每一条记录,从而显示正确的序号。例如:编号模板里,B5单元格设置成“&C5”的公式,在扩展里设置其左父格方式为“自定义”,再选择其左父格为C5,这样就正常显示序号了。

 

Q:正常设置好序号后,为什么显示的不是列表形式?

A:设置的序号单元格是跟随设置的左父格单元格状态,左父格单元格的数据设置是“分组”,编号也会跟随着是分组后的编号,只需将为左父格单元格的数据设置改为“列表”,序号则变为列表形式。

Q:设置序号后,预览时为何总是提示“父单元格循环设置”,无法正常预览?

A:出现“父单元格循环设置”提示,一般是指单元格之间的父单元格之间出现了循环设置。单元格的左父格默认时,它的左父格指的是左边的相近的字段单元格;单元格的上父格默认时,它的上单元格指的是上边的相近的字段单元格。出现此问题后,需要重新查看每个单元格的父格(左父格与上父格)设置,找出错误设置的单元格,将其父单元格改正即可。

 

Q:设置数据填报后,如何添加记录或删除记录?

A:在要填报的数据字段后面添加按钮控件,一个是“添加行”,一个是“删除行”,并设置它们的首单元格,这样在客户端预览时每一条记录后都会出现“增加行”,“删除行”两个按钮,点击后可做相应的操作。

 

Q:设置的数据填报模板,为什么不能编辑?

A:制作填报模板时,需要将要填报的字段添加控件设置。设置好其控件后,客户端填报时才可对其编辑。

 

Q:数据填报时,为什么总提示“填报SQL执行失败”?

A:出现此问题时,首先需要查看一下模板中,数据填报设置里的数据链接与名表是否正确,再查看一下所填写的列所在的单元格的数据类型是否与实际表中的类型相匹配。以上没有问题,需要确定实际要填报的表是否有特殊设置,导致其不能填报。

 

Q:数据填报设置的没有任何错误,填报时为什么影响到其他的数据?

A:需要填报的模板设置数据填报时,必须设置可以确保数据唯一性的信息。实际操作数据填报时,是根据填写的填报信息来对数据库进行回写,如果数据信息没有确保唯一性,很容易出现此类现象。

 

Q:数据库中的ID是自动生成的,填报时,无法正常填报。

A:数据库中的ID是自动生成,这样的模板设置数据填报时,需要将ID加入其中,ID字段无需添加控件。客户端填写数据时,ID字段无需编辑,直接填写其他字段即可。

 

Q:填报时,添加了数据校验,为什么总是不通过?

A:数据校验不通过时,修改相应的数据,满足校验条件,即可通过。如果还是不通过,检查模板中数据校验的公式,是否正确。错误的数据校验公式是无法通过校验的,修改正确即可正常使用。

 

Q:如何让指定的用户可以填报?

A:制作模板时,可以设置控件动态显示条件,在公式编辑里面写入“@{userName} == ‘实际的用户账号’”,这样在客户端预览此模板时,只有此用户登陆查看时,控件才会显示,才能正常的填报。通过这种方式,不仅可以指定用户,还能指定用户名称、某个部门、或某个角色。

 

Q:如何不让指定的用户可以填报?

A:数据填报时,如不想让特定的用户填报,可以在控件设置动态显示条件,将相应不想填报的用户人员,不显示相应的控件。即使该用户登陆了,控件编辑不了,就无法进行填报。还可以添加数据校验,在数据校验的条件里,指定某个用户不通过即可。例如:在校验编辑框中输入“@{userName}  != ‘demo’”,demo账号登陆后,修改的数据提交时,不会提交成功。

 

Q:插入公式后,公式为什么没有起到作用?

A:公式必须满足JavaScript公式格式,如果设置的公式中包括单元格,需要看单元格的实际数据类型。默认的数据类型是Double,如需要将其转化成字符串,可将此单元格加上单引号。例如:A1单元格写有abc,在公式里判断A1是否与“abc”相等时,需要写成’A1’==’abc’,这样返回的布尔值是true,如写成A1==’abc’,则返回false。如公式中使用到模板参数,模板参数需要用@{param}格式使用。

Q:使用的公式无法满足需求,如何添加公式?

A:在服务器安装目录的/webapps/ROOT/WEB-INF/classes/javascript目录,里面包含clacexpr.js文件,将其文本打开,并将需要的公式编写进去,这样就可以使用新增的函数了。如果想在设计器公式编辑框里面显示新增的公式,可编辑服务区安装目录/webapps/ROOT/design下的exprd.json文件,按照其他函数的格式,将新增的函数添加进去,这样公式编辑框中将会显示相应的函数信息。添加的函数必须是JavaScript函数格式。

Q:如何显示图片?

A:在数据库中,图片的存储需要存储的是文件名称。在模板上设置数据单元格,选中图片字段,并设置图片在服务器的相对位置,这样web上预览相应的字段时,相应的字段会显示实际的图片。

 

Q:数据库连接时,如何设置带参数的web数据源地址?

A:首先在模板上需要设置一下模板参数,再用设置好的模板参数代入web数据源请求地址中。例如:http://192.168.1.10:8099/thirdSys/getJsonData/total=@{param1}&id=@{param2}

 

Q:数据库连接设置好web数据源后,为什么不能正常使用?

A:Web数据源的格式是JSON格式,如不能正常使用,可在浏览器中打开设置的数据源,查看数据源请求是否返回正常的JSON。如带有参数,可实际将参数值代入测试。

 

Q:如何使用存储过程设置数据源?

A:添加数据源时,直接用相应的数据库调用存储过程的函数调用即可。例如:MySql数据库使用 call <存储过程名> [(<参数表>)],Oracle、SQL Server、PostgreSQL数据库使用execute <存储过程名> [(<参数表>)]。

 

Q:数据源中如何使用自定义参数?

A:首先需要在模板参数中设置一个模板参数,设置后的参数直接可以在数据源中使用,格式为@{param}。例如:select * from 城市销量 where 城市=@{param}。为了方便制作报表模板,建议模板参数设置默认值,做好模板后,按照实际需求,再将默认值去掉即可。

 

Q:模板中如何使用用户参数?

A:系统默认的用户参数有如下几个:

@{userName}:显示当前用户的账号。

@{name}:显示当前用户的名字。

@{roleName}:显示当前用户的角色。

@{deptName1}:显示当前用户的部门第一级别。用户的部门是多级别的,安装正常排序deptName1代表第一级别,deptName2代表第二级别,deptName3代表第三级别……

@{email}:显示当前用户的E-mail。

@{wechat}:显示当前用户的微信。

@{talkding}:显示当前用户的钉钉。

用户参数的使用方式与模板参数的使用方式一致。

 

Q:在页眉页脚中,如何添加页码?

A:在设置页眉与页脚界面中,默认的格式有[页码]、[页数]、[时间]、[日期],在相应的位置直接写入即可。页眉页脚只在打印时有效果,正常客户端预览时看不到效果。

 

Q:多个表单中,如何在第一个表单中,显示第二个表单的内容?

A:在当前表单显示其他表单的内容,可以将要显示的表单设置为要显示表单的子表单,在模板的一块区域直接关联子表单即可,这样连个表单融合为一个表单显示。如果只想在当前表单显示另一表单内容,而不融合为一体,仍然是多表单,可以使用出入公式,写入[表单名]![单元格]的格式,当前表单就可以显示其他表单的单元格内容。例如:sheet1表单的A1单元格想显示sheet2表单的B2单元格内容,在sheet1表单的A1单元格插入公式,写入“sheet2!B2”,确认后预览即可在sheet1表单的A1单元格位置看到sheet2表单B2单元格的内容。

 

Q:设置超级链接时,参数写的@{param}=CATEGORY,为何没有跳转?

A:在超级链接写参数需要传递的是跳转后的模板参数,并且使用“param=…”格式。例如A模板有模板参数paramA,B模板有模板参数paramB,A模板想跳转到B模板,A模板使用参数时需要写成“paramB=…”,这样才会把参数实际的传递过去。

Q:设置区域联动时,参数写@{param}=CATEGORY,为何联动效果?

A:区域联动设置参数时,同样需要使用“param=…”格式,不能使用“@{param}”格式。“@{param}”格式主要是当前表单使用,“param=…”格式是其他表单或模板需要传递参数时使用格式。

Q:模板参数设置的是多选下拉框,在模板上使用此参数时,为什么取到的值与选择的值不统一?

A:模板参数使用的是多选下拉框,或多选下拉树时,实际参数获取的值格式为“A,B,C”,在使用参数值时,需要用JS公式转化成实际的数组,如不转化会认为参数里是一个带有“,”的表达式,最后返回的是最后一个值。

发布了39 篇原创文章 · 获赞 1 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/efreport/article/details/95166665