使用【医为客户端】程序调用Excel打印功能时,返回:处理请求异常:Automation服务器不能创建对象问题
,是因为WPS安装是当前用户级别是安装,所以需要使用当前用户权限调用,而不能使用Administrator调用。处理办法如下:
确保客户端的版本号为1.0.0.30或以上版本。
进入iMedical – demo的头菜单找到【开发工具管理】界面,找到【插件管理Chrome】配置界面,找到CmdShell记录,为其增加CurrentUserEvalJs方法,如下图:
js代码中调用方法从EvalJs修改成CurrentUserEvalJs
方法
//...
// CmdShell.EvalJs(excelStr)修改成下面方法
CmdShell.CurrentUserEvalJs(excelStr);
修改完成后,再测试打印或导出。
问题说明:
使用中间件代码,导出Excel无反应
问题解决:
- demo – 配置管理 – 模板路径,如果是https开头,则要为每台客户端安装https证书,否则无反应
修改JS代码,使用JS来写打印的所有内容,不使用XLS模板导出
解释下,为啥之前的有的电脑不成功。ResultSetType: ExcelPlugin使用了插件。电脑必须安装Excel或者wps。同时受用户权限影响。有的时候,必须电脑管理员,才能运行成功。
1、需要改代码,改完后,不需要有excel或者wps也能导出
2、不改代码,需要去安装excel或者wsp就可以导出。异常的是电脑权限问题
测试下来 grid2excel 导出Excel是支持的最好的。
导出页面的产品组修改:
csp引入
<script type="text/javascript" src="../scripts_lib/xlsx/grid2excel.js" charset="utf-8"></script>
js 代码:修改 hisui的datagride的id ‘#tDHCSSuserLogonLog’ filename: ‘用户登入日志汇总数据’ :
grid2excel($('#tDHCSSuserLogonLog'), {
IE11IsLowIE: false, filename: '用户登入日志汇总数据', allPage: true
, callback:
function (success, data) {
if (success) {
$.messager.popover({ msg: '导出成功 ', type: 'success' });
} else {
$.messager.popover({ msg: '导出失败 ', type: 'error' });
}
$.messager.progress('close');
}
});
其他问题比较记录:
* 多页数据,默认只导出了,查询的第一页。少了其他页数的数据,问题解决记录:
发现还是只有一页,是产品组的datagride没有绑定query到options。
解决方法:cfg.customRows 使用这个参数,先执行他们的查询代码,再把数据当做入参送进来
grid2excel($('#tDHCSSuserLogonLog'), {
customRows:data
IE11IsLowIE: false, filename: '用户登入日志汇总数据', allPage: true....
访问量: 509807