BBC开发基础二原创
金蝶云社区-BobbyLIU
BobbyLIU
2人赞赏了该文章 528次浏览 未经作者许可,禁止转载编辑于2022年08月29日 08:54:19

1、查找出相应模块的相应界面

登录BBC后台管理中心,在系统中,找到前端界面模块。可以调整对应的前端界面‘

在系统模块,业务中心模块中搜索对应的界面名称,可以查找到对应的模块信息,包括xml或者表信息

  数据库当中查看

--后台页面菜单(FURL中id的值即页面名称)
SELECT * 
FROM t_ess_menu 
WHERE fid IN (
  SELECT fid 
  FROM t_ess_menu_l 
  WHERE fname LIKE '%渠道档案%'
);

前台页面菜单(FPLATFORM:P-PC端,M-移动端;FPAGEPATH即页面名称)

SELECT *

FROM t_ess_syspage

WHERE fpageid IN(

SELECT fpageid

FROM t_ess_syspage_l

WHERE fname LIKE '%销售开单%'

);

1)   新增字段

首先找到相应的xml页面即ReturnReqBillEditView

 

接着新建一个xml文件,命名自由发挥,这里取名叫ReturnReqBillEditView_T,其页面结构跟ReturnReqBillEditView一致,关键点在于必须在pageview节点中新增一个append属性,其值为需要二开的页面xml文件名,即下图红色框的append="ReturnReqBillEditView"。

另外留意pageview节点当中的plugin属性,该属性实际上指定了当前页面的控制类,相关的业务逻辑都会在该控制类中实现。如果仅仅是增加一个字段,这个属性可以不添加。也就是说pageview节点就指定append属性就行。即<pageview append="ReturnReqBillEditView">。

如果还要实现额外的业务逻辑,那么必须指定plugin属性,其值为我们新建的一个java类的路径。例如<pageview append="ReturnReqBillEditView" plugin="kingdee.k3.xxx.xxxPlugin">

该新建类(xxxPlugin)必须继承ReturnReqBillEditView对应的java类(ReturnReqBillEditPlugin),然后在新建的java类当中实现相应的业务逻辑。如果需要修改父类的原有的的方法来实现新的业务逻辑,最好在新建的java类当中编写的方法里面先使用super调用父类的方法,再写相应的逻辑。

接着我们在ReturnReqBillEditView_T中新增退货理由字段,如上图。注意添加的字段的id必须唯一(不能跟ReturnReqBillEditView中的字段的id重名)。具体的orm配置请参考《帮助文档》,里面有详细的描述。配好orm之后,系统框架会帮我们自动保存改字段,并不需要再写任何代码来实现保存

2)   隐藏字段

BBC系统页面已存在的字段是不允许删除的,只能通过隐藏的方式来实现“删除”的效果。要隐藏某个字段,我们可以是在相应的字段里面添加一个hidden="true"。但是不建议直接在原来的xml文件中进行修改,这样打完新的补丁之后你所做的修改又没了。所以我们最好还是通过append的方式来实现。

例如我们要隐藏退货申请单的联系电话字段,可以去ReturnReqBillEditView中把相应的节点

<text id="FCONTACTPHONE" name="联系电话" orm="contactPhone" disabled="disabled"/>拷到
ReturnReqBillEditView_T中,然后加上hidden=”true”即可。(原理是id相同就覆盖,以二开定义的id为主)。


赞 2