waf2 常见问题

注意事项

1.   分录不显示数据

自己定义分录时,分录的首字母大写,数据虽保存成功,但是页面却不能正常显示数据。

解决:手动把分录名称的首字母改为小写。

2.   忽略静态化缓存影响使得页面完全重新渲染

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204878af4j52hn2uuyhkcqey5uaun4b55n8qz4.png

解决: url中追加&renderModel=client参数

3.   扩展页面调用标准页面方法报错

在扩展页面中给信息块重新绑定了浮动方法,在该方法中调用标准页面的方法报错

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204890mndxoxr89g2qr2xdn44ngga2rnb4drrc.png

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204902c55iix5lfuzf6tmo1umoufccd5urx2oo.png

解决: 在扩展页面只能调用标准页面的pulic的方法

4.   附件上传报错

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204911xxc2fwxz999t2ez9t99902foe20x6occ.png

解决: 8.2的附件上传不支持多组件,并且id必须为webAttachment

5.   表头获取值与分录获取值

单据表头字段可以根据自身的类型通过对应的接口来调用该控件下的属性或方法,分录中的字段都是只能通过表格的接口来调用表格的方法.例如:

获取表头中文本框的值: waf("#id").wafText("getValue");

获取表格中某个文本框的值: $("#list2").wafGrid("getCell",rowid,列名);

6.   _self.getCurrentModel()报错

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204921o7b71yk7z7c19b0ockcobr7v7kirb177.png

解决: 只有编辑界面才有_self.getCurrentModel(),列表界面没有

7.   单据下推时报错

单据下推时候报错,调试发现mainOrgName参数为null

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204937yikj7y5tyb0tj7g1y1b15qbw5g85zjkk.png

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204944x4kvrd8ul5rwrt3ug8sldi4vui4lgsvl.png

解决: 重写对应单据Info类的getBizOrgPropetName方法,在该方法中返回当前的主业务组织

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204952d5iotcclp2tdf5l2oorckrzcrkzybci1.png

8.   保存前插事件方法中返回false不生效

保存前插事件方法中发送ajax请求若响应为”success”则在ajaxsuccess回调中返回false组织保存

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204960bhshix75htizix7va2sa7kaqq377slvk.png

解决: saveBefore的末尾中返回false

9.   日期格式化

页面上直接得到的日期是格林威治时间,在使用请求传递到后台时候一般先需要使用format方法进行格式化

waf("#field_billDate").wafDatePicker("getValue").format("yyyy-MM-dd")

10. Dep给分录新增字段配置页面配置字段加载不到该字段

解决:  dep中增加字段以后要启用,浏览器要清理缓存重新加载

11. 信息块添加字段

82版本差旅费报销单编辑页面费用明细分录信息块添加字段

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204972h44785ls4c7l2p29pkc1p2ciwjpkppwa.png

解决: 配置页面去掉url参数中的&d=biz切换到旧版设计器中修改

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204978gioozqtwhjo3lrjhrr013o63vzliq3qo.png

12. 表格绑定自定义query无法配置字段

表格绑定了自定义query但是配置字段时候没有数据,调试发现该queryqueryPk为空所以该query加载不到

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204987cjipv6d6bigg3tzvibl6mjjmio6t6pti.png

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540204993pgz871lyb7r9gzroo7wgr319391yz1lz.png

解决: query中定义主键

13. Web登录报错

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205003ammjj0eye0y0fcllczmljjlnzjljwlyy.png

解决去掉本地的jdk环境并重启,否则会和EAS系统环境冲突从而登录报错

14. 配置后台action预览时报错提示handler创建失败

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205015yagiga75dg55qvkqtskrgqjgcksev55g.png

解决: 服务器使用debugserver启动,BOS上开发,开发以后需要把生成的eventhandler导成jar包并放入到server\deploy\easweb.ear\eas_web.war\WEB-INF\lib\sp目录下

15. 配置过滤条件

EAS85环境设置过滤条件的时候一般不要直接写成表达式的格式,这样容易引起安全问题,可以使用waf.parseSql.getFilter("a","in",[1,2])方法传入设置的过滤条件获取格式化后的过滤条件

16. 可以通过渲染前设置currentModel中的值的方式来设置默认值

17. 按钮的功能与事件

按钮在已经绑定了功能的情况下,再绑定click事件。click事件无效,两者只能二选一。功能的扩展性好,click事件相对直观

18. wafList.js wafEdit.js中的方法可以直接在控制台通过_self调用

19. 获取单据状态

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205026i59mmi98klam9h448968ml186amk6f9b.png

解决:  _self.getCurrentOperateState();

20. 单据预览时候报错显示找不到元数据

错误信息: com.kingdee.bos.metadata.MetaDataNotFoundException: Cannot findentity by BOSType[01C34327]. Because cannot find BOSType[01C34327] in index!

解决: 重新发布业务单元

21. EAS82版本差旅费报销单的费用明细分录对应的信息块添加字段控制台报错

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205035rb1snlevz6ldllnwnudnxby62hbhneu1.png

解决: 去掉参数中的&d=biz切换到旧版本设计器下添加字段

22. 修改单据时编辑页面分录数据显示不正确

解决: 如果要给编辑页面分录表格赋初始值的时候最好能判断一下页面状态,否则会导致在查看界面点击内置修改按钮的时候跳转至编辑界面数据表格数据丢失,其实在model中已经查出来了但是又在赋初始值时冲掉了

23. 列表页面显示表格单据编号列设置行融合不起作用,调试发现isRowSpan,rowSpans,colModel.rowspan参数均正常但editable属性为false导致该列未被当作行融合列

解决方法: 配置界面删除该字段重新添加

24. _self.getCurrentModel()modelwebEditOnloadHandleronload方法获取的

25. 表格后台获取数据调试

无论是列表页面的显示表格还是f7的显示表格在加载数据的时候都会执行到DataGridController.javagetGridDataEntity方法,在该方法中进行sql语句的拼接以及数据的查询,对该方法中的queryExecutor局部变量调用getSQL()方法可以看到具体执行的sql语句,从而可以判断数据表格的加载是否有问题.

26. f7点击确定执行的方法: jquery.ui.f7.common.js_appendButtonPnl方法的confirm方法

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205044w9w6uhu69k3kg3t63y3i9ii611yw2urg.png

f7设置过滤条件的时候所调用的接口类型必须和自身的类型一致

27. f7查看接口类型

解决: _self.searchComponent("id")查看propertiessubWidgetName属性

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205053i6n9nk96k0p10xw6njwknam91pp3nkvk.png

 

28. f7的弹框中默认按照姓名和编码检索可以通过defaultSearchItem属性修改:

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205065qukcpi3kkdvehyp37e55cute7lt71dvd.png

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205074euj7o76a8zguu9tw6a08oha99ju66fh8.png

29. 表格填完值以后使用getCell获取不到值

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205083g4chnujalln9y7jzcen7ny7kh3kkyjhk.png

编辑表格中某个字段值填完以后若焦点未移出则使用表格的getCell方法获取不到所填写的值,可以在调用getCell方法之前先调用editstop方法

30. 设置行融合

只有在表格创建(grid.waf.jscreateGridDOM方法)之前修改行融合的参数才能使得行融合生效

isRowSpan=true

rowSpans=”number,name,…”

colModel. rowspan = true

说明: 第一步表示该表格有行融合,第二步设置了那些列需要行融合,第三步表示本列需要行融合

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205097regflrrlxogyklby5km0plyhkrx0mmho.png

常见操作

1.        设置附件管理的文件后面的删除不可用:

waf("#webAttachment").webAttachment("deleteFileDisable",true)

2.        设置分录中某个字段为必输:

var colConfig = waf("#editGrid").wafGrid("getColumnConfig","material")

colConfig.editoptions.validateJson.rules="required:true"

waf("#editGrid").wafGrid("setColumnConfig","material",colConfig)

3.        EAS82差旅费报销单 费用明细分录,要去掉修改的图标和功能:

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205130mb90qjbdc2l2g9cbchlzh9lqz2c9uttg.png

为该页面绑定一个页面打开的后插事件,在该事件中使用代码

$("#rowOverLayer_"+表格id).find(".actions.edit").unbind("click.editGrid").remove();

4.        如果需要对分录的某个单元格设置为禁用(不可编辑)可以调用分录表格的锁定和解锁方法来实现

5.        使用代码进行表格数据导出至excel

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205139d8rb33kzavuuxrxgkulrvl3rg66y1yku.png

方法参数:        exportToExcel(isAll,datas,title,expColumns,options)

参数说明:       isAll: 是否全部导出

datas: 导出数据,数组(因为是从表格选择,所以一般为undefined)

title:标题

exportColumns:导出的列名

options:参数(一般可以不传)

6.        表头f7字段提交时候设置必输:

waf("#field_payCondition").wafValidator("option","rules","required:true");

waf("#field_payCondition").wafValidator("option","errMsg","required:'付款条件不能为空。'");

7.        自定义格式化

可以通过格式化类将特定的数据格式化成想要的格式,例如附件管理中将附件的名字格式化成超链接(做法: 自定义格式化类中return 一个a标签)

8.        82升级85以后列表页面无法配置编辑与查看页面

版本升级后85环境的列表配置页面中编辑页面与查看页面下拉列表没有供选择的数据,82环境有http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205152odkv2212kz7k2vf028dcd2wkdkyclly2.png

http://clubimg.kingdee.com/club/attachments/forum/201810/22/1540205158oflbmm53msdm2m33blmfq5sbdy3asclc.png

原因: isNew属性表示是否是新建页面,因该单据并不是在85环境中直接新建则该属性为false所以响应中的该条数据并不能被拼接至下拉列表

解决打开编辑与查看页面的配置界面,保存

 

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书耳朵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值