电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

金蝶EAS Cloud 费用报销扩展指导.docx

金蝶EAS Cloud 费用报销扩展指导.docx_第1页
1/78
金蝶EAS Cloud 费用报销扩展指导.docx_第2页
2/78
金蝶EAS Cloud 费用报销扩展指导.docx_第3页
3/78
目录一、扩展注意事项...........................................................................................................................3二、gui扩展.....................................................................................................................................51费用报销主要元数据............................................................................................................52.gui费用单据扩展.................................................................................................................92.1.费用单据列表页扩展增加分录字段........................................................................92.2生成凭证时,不允许多选凭证规则.......................................................................123.gui费用报表扩展...............................................................................................................144.套打二开数据源扩展.........................................................................................................14三、web扩展.................................................................................................................................161费用功能扩展......................................................................................................................161.1web增加打回功能...................................................................................................161.2反审核功能扩展.......................................................................................................201.3查看影像扩展...........................................................................................................222报销平台扩展......................................................................................................................242.1带申请中页签报销平台扩展...................................................................................242.1.1报销平台页签列表页需要增加字段............................................................242.1.2报销平台列表页设置过滤和排序................................................................282.1.3报销平台增加二开单据列表........................................................................302.2.4报销平台默认选中页签扩展........................................................................312.2.5报销平台自助报销服务区域扩展................................................................312.2.6切换报销平台按钮隐藏................................................................................352.2左树右表报销平台扩展...........................................................................................362.2.1切换报销平台报销平台隐藏........................................................................362.2.2扩展需求:隐藏标准列表页面,增加二开列表页面................................373费用报销业务单据扩展......................................................................................................413.1费用报销单...............................................................................................................413.1.1扩展标准js的_public方法...........................................................................413.1.2页面二开控件初始化扩展............................................................................423.1.3分录扩展........................................................................................................443.1.4扩展单据增加冲申请和冲借款分录............................................................463.1.5分录字段弹框实现........................................................................................473.1.6js中动态设置控件是否必录.........................................................................483.1.6提交单据相关扩展........................................................................................493.1.7审批、核定单据相关扩展............................................................................523.2差旅报销单...............................................................................................................533.2.1分录扩展金额字段,计算合计金额............................................................533.2.2eas8.2差旅单弹出框分录字段扩展.............................................................543.2.3差旅单交通工具枚举字段扩展....................................................................543.3web端金额精度及金额计算...................................................................................543.4费用单据类型名称(枚举字段)扩展.........................................................................553.5单据页面更改枚举字段的选项...............................................................................573.6费用单据分录前置、后置事件扩展.......................................................................594基础资料扩展......................................................................................................................614.1费用类型扩展...........................................................................................................614.1.1费用类型绑定增加单据类型........................................................................614.1.2业务单据费用类型扩展................................................................................634.2收款信息...................................................................................................................70一、扩展注意事项1、扩展开发注意事项:一定要采用兼容标准产品、兼容后续补丁的方式二开。(1)对于元数据、•不兼容扩展方式:bos工具中采用直接修改元数据,然后用私包形式部署。这种方式如果标准产品补丁中对元数据有更改,打补丁后就会造成冲突。•兼容扩展方式:通过dep扩展元数据。这样后续才能持续更新补丁,不会因扩展开发引起冲突。只有dep不支持扩展的元数据,才采用直接修改元数据的方式扩展,比如枚举类型等。这种元数据标准产品基本不修改,所以影响较小。但也还是有冲突风险,要少用。(2)对于代码•不兼容扩展方式:采用直接修改标准代码,私包形式部署。会造成补丁冲突。•兼容扩展方式:采用eas提供的扩展类去扩展代码。如客户端页面扩展类xxCTEx、服务端扩展类XXControllerBeanEx、js在扩展平台的扩展js中扩展代码。如何使用扩展类进行扩展,可参考以下文档《EAS扩展类开发介绍》。(3)对于代码•不兼容扩展方式:虽然是采用eas提供的扩展类去扩展,但在扩展方法或事件中,直接复制的标准产品代码,在该代码上直接进行的修改。这种方式同样会造成补丁冲突。因为标准的这些方法在后续补丁中是会随着需求变动等因素而更改的。因为方法被重写了,而扩展的该方法还是以前的代码,就会造成补丁的这种更改无法生效。•兼容扩展方式:扩展方法时,先调用标准产品该方法,再做二开业务代码的修改。类似java继承类直接,用super先调用父类方法,在做子类的扩展处理。这样即使标准产品后续补丁更改了该方法,扩展的方法同样能够生效,不会存在冲突情况。注意:web端页面的before、after这些事件,在扩展页面重写不会覆盖标准的事件,所以扩展这些事件不需要再调用标准事件。(4)二开过程中遇到标准产品不兼容,扩展开发困难,比如方法私有无法调用,没有扩展点,只能复制标准产品代码或直接更改标准产品代码才能实现二开时,可以提单给费用报销模块,注明遇到的二开问题,与标准产品的冲突点。我们会评估二开需求,合理优化产品,提高产品兼容性2、二开扩展采用不兼容补丁方式扩展带来的危害:(1)对客户来说。最大的问题是不能更新标准补丁,更新就会因补丁和二开存在冲突而报错。发现的产品问题无法修复,新的需求无法更新,客户往往寻求更多的私包解决。而大量的私包,只会造成系统越来越不稳定,进入恶性循环,既没法梳理去掉这些私包,又不敢更新补丁。对后续eas的版本升级就更麻烦了,这对客户的可持续性发展,客户对产品的体验都是非常不利的。(2)对于二开团队来说。发现的问题无法通过更新补丁修复,只能再通过二开修复,增加了二开后续维护的工作量,大量的二开会造成系统不稳定。客户往往前后会经过多个二开团队,如果上一个团队采用私包部署的形式二开,那么对后续二开团队来说,这些二开内容将不是透明的。后续团队不知道到底二开了什么内容,哪些是二开的代码,哪些是标准的代码。对于二开团队应对客户后续的二开需求变更和维护非常不利,相信每一个二开团队都不想遇到这样的场景。(3)对于eas维护团队来说。客户无法更新补丁修复问题,会寻求私包,增加了维护的工作量。同时私包的给出,对于后续系统问题的跟踪和维护也会非常不利。因为随着人员的变动,可能后续都不知道这个私包是谁给的,解决了什么问题。所以,针对已有补丁修复的问题,原则上不再出私包解决。所以要想eas系统稳定,可持续性更新产品,一定是要尽量避免私包部署的,不管是针对标准私包还是二开私包。这需要客户的管控,二开团队的可兼容行扩展,以及eas团队共同的努力。3、费用报销业务扩展注意事项:•1、费用模块所有单据,在单据提交后,不允许再保存单据(比如前台将隐藏的save按钮放出以及后台调save)。如果有修改,只能通过单据提交来更新单据数据。原因详见3.1.5章节。•2、费用模块所有单据,不允许在单据提交过程中,同时再调单据保存或提交方法。原因详见3.1.5章节。•3、费用单据的状态变化往往都伴随着相关业务的处理,如预算及相关金额反写、上游单据状态及金额反写等。比如单据废弃、审批不通过就要返还预算和上游单据余额。所以一般不允许二开直接反写或通过后台事务等方式直接改单据状态。如果一定要二开,也要在完全清楚标准产品相关业务的情况下二开。•4、费用的预算、额度业务不建议进行二开,因为这些业务往往很复杂,牵连很广。扩展开发难度大,很难完全把握业务点。付款和生成凭证业务因为需要保证安全可靠性,也不建议二开。二、gui扩展1费用报销主要元数据gui扩展时注意:(1)gui费用报销和费用核算下列表页为不同页面,具体如下表。(2)gui费用报销和费用核算下列表页,除了还款单外,页面所加载的query,都受CP021(是否在客户端序时簿显示分录明细信息)参数控制。页面加载时,根据该参数动态绑定。CP021为否,就为页面上绑定的query,该query只有单头字段(特别注意:只有单头字段的query不能加任何分录字段,也不能关联上分录表,只能有单头字段);CP021为是,query为带分录query。所以要根据扩展需求,扩展不同的query。具体如下表。(3)套打各单据,各分录的query都可以在com.kingdee.eas.cp.bc.util.BizCollBillDataProvider类中找到。单据元数据费用申请单bosType:E76173ADbillTypeCode:70实体:com.kingdee.eas.cp.bc.app.OtherExpenseBill(T_BC_OtherExpenseBill)分录:com.kingdee.eas.cp.bc.app.OtherExpenseBillEntry(T_BC_OtherExpenseBillEntry)GUI编辑页:com.kingdee.eas.cp.bc.client.OtherExpenseEditUI1.gui费用报销下GUI列表页:com.kingdee.eas.cp.bc.client.OtherExpenseReqListUIGUI列表页query:com.kingdee.eas.cp.bc.app.OtherExpBillQueryGUI带分录query:com.kingdee.eas.cp.bc.app.OtherExpBillWithEntryQuery2.gui费用核算下(eas8.2、8.5才有核算)GUI核算下列表页:com.kingdee.eas.cp.bc.client.OtherExpenseReqShareListUIGUI核算下列表页query:com.kingdee.eas.cp.bc.app.OtherExpBillSharingQueryGUI核算下带分录query:com.kingdee.eas.cp.bc.app.OtherExpBillWithEntrySharingQuery3.套打queryReportQuery:com.kingdee.eas.cp.bc.app.OtherExpBillForPrintQueryR1ReportBillQuery:com.kingdee.eas.cp.bc.app.OtherExpenseBillForR1PrintQueryR1ReportEntryQuery:com.kingdee.eas.cp.bc.app.OtherExpenseBillEntryForPrintQuery出差申请单bosType:DE853384billTypeCode:10实体:com.kingdee.eas.cp.bc.app.EvectionReqBill(T_BC_EvectionReqBill)分录:EvectionReqBillEntry(T_BC_EvectionReqBillEntry)GUI编辑页:com.kingdee.eas.cp.bc.client.EvectionReqBillEditUI1.gui费用报销下GUI列表页:com.kingdee.eas.cp.bc.client.EvectionReqBillListUIGUI列表页query:com.kingdee.eas.cp.bc.app.EvectionReqQueryGUI带分录query:com.kingdee.eas.cp.bc.app.EvectionReqWithEntryQuery2.gui费用核算下(eas8.2、8.5才有核算)GUI核算下列表页:com.kingdee.eas.cp.bc.client.EvectionReqBillShareListUIGUI核算下列表页query:com.kingdee.eas.cp.bc.app.EvectionReqSharingQueryGUI核算下带分录query:com.kingdee.eas.cp.bc.app.EvectionReqWithEntrySharingQuery3.套打queryReportQuery:com.kingdee.eas.cp.bc.app.EvectionReqForPrintQueryR1ReportBillQuery:com.kingdee.eas.cp.bc.app.EvectionReqBillForR1PrintQueryR1ReportEntryQuery:com.kingdee.eas.cp.bc.app.EvectionReqBillEntryForPrintQuery借款单bosType:8110AAB2billTypeCode:30实体:com.kingdee.eas.cp.bc.app.DailyLoanBill(T_BC_DailyLoanBill)分录:DailyLoanBillEntry(T_BC_DailyLoanBillEntry)冲申请分录:DailyLoanBillReqCheckEntry(T_BC_DailyLBRCE)GUI编辑页:com.kingdee.eas.cp.bc.client.DailyLoanBillEditUI1.gui费用报销下GUI列表页:com.kingdee.eas.cp.bc.client.LoanReqListUIGUI列表query:com.kingdee.eas.cp.bc.app.DailyLoanBillQueryGUI带分录query:com.kingdee.eas.cp.bc.app.DailyLoanWithEntryBillQuery2.gui费用核算下(eas8.2、8.5才有核算)GUI核算下列表页:com.kingdee.eas.cp.bc.client.LoanReqShareListUIGUI核算下列表query:com.kingdee.eas.cp.bc.app.DailyLoanBillSharingQueryGU核算下带分录query:com.kingdee.eas.cp.bc.app.DailyLoanWithEntryBillSharingQuery查看付款明细UI:com.kingdee.eas.cp.bc.client.DailyLoanBillPayEntryListUI3.套打queryReportQuery:com.kingdee.eas.cp.bc.app.DialyLoadBillQueryForPrintQueryR1ReportBillQuery:com.kingdee.eas.cp.bc.app.DailyLoanBillForR1PrintQueryR1ReportEntryQuery:com.kingdee.eas.cp.bc.app.DailyLoanBillEntryForPrintQueryR1ReportCollectionEntryQuery:com.kingdee.eas.cp.bc.app.DailyLoanBillAccountEntryForPrintQuery出差借款单bosType:7AE53B38billTypeCode:20实体:com.kingdee.eas.cp.bc.app.EvectionLoanBill(T_BC_EvectionLoanBill)分录:EvectionLoanBillEntry(T_BC_EvectionLoanBillEntry)冲申请分录:EvectionLoanBillReqCheckEntry(T_BC_EvectionLBRCE)GUI编辑页:com.kingdee.eas.cp.bc.client.EvectionLoanBillEditUI1.gui费用报销下GUI列表页:com.kingdee.eas.cp.bc.client.EvectionLoanBillListUIGUI列表query:com.kingdee.eas.cp.bc.app.EvectionLoanBillQueryGUI带分录query:com.kingdee.eas.cp.bc.app.EvectionLoanWithEntryBillQuery2.gui费用核算下(eas8.2、8.5才有核算)GUI核算下列表页:com.kingdee.eas.cp.bc.client.EvectionLoanBillShareListUIGUI核算下列表query:com.kingdee.eas.cp.bc.app.EvectionLoanBillSharingQueryGUI核算下带分录query:com.kingdee.eas.cp.bc.app.EvectionLoanWithEntryBillSharingQuery查看付款明细UI:com.kingdee.eas.cp.bc.client.EvectionLoanBillPayEntryListUI3.套打queryReportQuery:com.kingdee.eas.cp.bc.app.EvectionLoanForPrintQueryR1ReportBillQuery:com.kingdee.eas.cp.bc.app.EvectionLoanBillForR1PrintQueryR1ReportEntryQuery:com.kingdee.eas.cp.bc.app.EvectionLoanBillEntryForPrintQuery费用报销单bosType:4A44F49FbillTypeCode:90实体:com.kingdee.eas.cp.bc.app.BizAccountBill(T_BC_BizAccountBill)分录:BizAccountBillEntry(T_BC_BizAccountBillEntry)冲申请分录:BizAccountBillReqCheckEntry(T_BC_BizABRCE)冲借款分录:BizAccountBillLoanCheckEntry(T_BC_BizABLCE)多收款人分录:BizAccountBillAccountEntry(T_BC_BizAccountBCE)发票分录:TicketEntry(T_BC_TicketEntry)GUI编辑页:com.kingdee.eas.cp.bc.client.BizAccountEditUI1.gui费用报销下GUI列表页:com.kingdee.eas.cp.bc.client.BizExpenseAccountListUIGUI列表query:com.kingdee.eas.cp.bc.app.BizAccountQueryGUI带分录query:com.kingdee.eas.cp.bc.app.BizAccountWithEntryQuery2.gui费用核算下(eas8.2、8.5才有核算)GUI核算下列表页:com.kingdee.eas.cp.bc.client.BizExpenseAccountShareListUIGUI核算下列表query:com.kingdee.eas.cp.bc.app.BizAccountSharingQueryGUI核算下带分录query:com.kingdee.eas.cp.bc.app.BizAccountWithEntrySharingQuery查看付款明细UI:com.kingdee.eas.cp.bc.client.BizAccountBillPayEntryListUI3.套打queryReportQuery:com.kingdee.eas.cp.bc.app.BizAccountForPrintQueryR1ReportBillQuery:com.kingdee.eas.cp.bc.app.BizAccountBillForR1PrintQueryR1ReportEntryQuery:com.kingdee.eas.cp.bc.app.BizAccountBillEntryForPrintQueryR1ReportCollectionEntryQuery:com.kingdee.eas.cp.bc.app.BizAccountBillAccountEntryForPrintQuery差旅费报销单bosType:C57003BCbillTypeCode:110实体:com.kingdee.eas.cp.bc.app.TravelAccountBill(T_BC_TravelAccountBill)分录:TravelAccountBillEntry(T_BC_TravelAccountBillEntry)冲申请分录:TravelAccountBillReqCheckEntry(T_BC_TravelABRCE)冲借款分录:TravelAccountBillLoanCheckEntry(T_BC_TravelABLCE)多收款人分录:TravelAccountBillAccountEntry(T_BC_TravelAccountBCE)发票分录:TraTicketEntry(T_BC_TraTicketEntry)GUI编辑页:com.kingdee.eas.cp.bc.client.TravelAccountEditUI1.gui费用报销下GUI列表页:com.kingdee.eas.cp.bc.client.TravelExpenseAccountListUIGUI列表query:com.kingdee.eas.cp.bc.app.TravelAccountQueryGUI带分录query:com.kingdee.eas.cp.bc.app.TravelAccountWithEntryQuery2.gui费用核算下(eas8.2、8.5才有核算)GUI核算下列表页:com.kingdee.eas.cp.bc.client.TravelExpenseAccountShareListUIGUI核算下列表query:com.kingdee.eas.cp.bc.app.TravelAccountSharingQueryGUI核算下带分录query:com.kingdee.eas.cp.bc.app.TravelAccountWithEntrySharingQuery查看付款明细UI:com.kingdee.eas.cp.bc.client.TravelAccountBillPayEntryListUI3.套打queryReportQuery:com.kingdee.eas.cp.bc.app.TravelAccountForPrintQueryR1ReportBillQuery:com.kingdee.eas.cp.bc.app.TravelAccountBillForR1PrintQueryR1ReportEntryQuery:com.kingdee.eas.cp.bc.app.TravelAccountBillEntryForPrintQueryR1ReportEntrySumQuery:com.kingdee.eas.cp.bc.app.TravelAccountBillEntrySumForPrintQueryR1ReportCollectionEntryQuery:com.kingdee.eas.cp.bc.app.TravelAccountBillAccountEntryForPrintQuery物品采购报销单bosType:30BD2798billTypeCode:100实体:com.kingdee.eas.cp.bc.app.DailyPurchaseAccountBill(T_BC_DailyPurchaseAccountBill)分录:DailyPurchaseAccountBillEntry(T_BC_DailyPurchaseAccontEntry)冲申请分录:DailyPurchaseAccountBillReqCheckEntry(T_BC_DailyPABRCE)冲借款分录:DailyPurchaseAccountBillLoanCheckEntry(T_BC_DailyPABLCE)多收款人分录:DailyPurchaseAccountBillAccountEntry(T_BC_DailyPurchaseBAE)发票分录:PurTicketEntry(T_BC_PurTicketEntry)GUI编辑页:com.kingdee.eas.cp.bc.client.DailyAccountEditUI1.gui费用报销下GUI列表页:com.kingdee.eas.cp.bc.client.DailyExpenseAccountListUIGUI列表query:com.kingdee.eas.cp.bc.app.DailyPurAccountQueryGUI带分录query:com.kingdee.eas.cp.bc.app.DailyPurAccountWithEntryQuery2.gui费用核算下(eas8.2、8.5才有核算)GUI核算下列表页:com.kingdee.eas.cp.bc.client.DailyExpenseAccountListShareUIGUI核算下列表query:com.kingdee.eas.cp.bc.app.DailyPurAccountSharingQueryGUI核算下带分录query:com.kingdee.eas.cp.bc.app.DailyPurAccountWithEntrySharingQuery查看付款明细UI:com.kingdee.eas.cp.bc.client.DailyPurchaseAccountBillPayEntryListUI3.套打queryReportQuery:com.kingdee.eas.cp.bc.app.DailyPurAccountForPrintQueryR1ReportBillQuery:com.kingdee.eas.cp.bc.app.DailyPurchaseAccountBillForR1PrintQueryR1ReportEntryQuery:com.kingdee.eas.cp.bc.app.DailyPurchaseAccountBillEntryForPrintQuery对公费用报销单bosType:92F938DDbillTypeCode:40实体:com.kingdee.eas.cp.bc.app.BizAccountOutBill(T_BC_BizAccountOutBill)实体表:com.kingdee.eas.cp.bc.app.T_BC_BizAccountOutBill分录:BizAccountOutBillEntry(T_BC_BizAccountOutBillEntry)冲申请分录:BizAccountOutBillReqCheckEntry(T_BC_BizAOBRCE)冲借款分录:BizAccountOutBillLoanCheckEntry(T_BC_BizAOBLCE)多收款人分录:BizAccountOutBillAccountEntry(T_BC_BizAOBAE)发票分录:BizOutTicketEntry(T_BC_BizOutTicketEntry)1.套打queryReportQuery:com.kingdee.eas.cp.bc.app.BizAccountOutForPrintQueryR1ReportBillQuery:com.kingdee.eas.cp.bc.app.BizAccountOutBillForR1PrintQueryR1ReportEntryQuery:com.kingdee.eas.cp.bc.app.BizAccountOutBillEntryForPrintQuery还款单bosType:0B104F5CbillTypeCode:108实体:com.kingdee.eas.cp.bc.app.RePaymentBillGUI编辑页:com.kingdee.eas.cp.bc.client.RePaymentBillEditUI1.gui费用报销下GUI列表页:com.kingdee.eas.cp.bc.client.RePaymentBillListUIGUI列表页query:com.kingdee.eas.cp.bc.app.RePaymentBillQuery2.gui费用核算下(eas8.2、8.5才有核算)GUI列表页:com.kingdee.eas.cp.bc.client.RePaymentBillSharingListUIGUI列表页:com.kingdee.eas.cp.bc.app.RePaymentBillSharingQuery收款帐号维护bosType:A62F9111实体:com.kingdee.eas.cp.bc.app.CollectionAccount实体表:com.kingdee.eas.cp.bc.app.T_BC_CollectionAccountGUI编辑页:com.kingdee.eas.cp.bc.client.CollectionAccountListUIGUI列表页:com.kingdee.eas.cp.bc.client.CollectionAccountEditUI报表费用申请明细报表:com.kingdee.eas.cp.bc.client.ReqListRptMainUI借款费用明细报表:com.kingdee.eas.cp.bc.client.LoanListRptMainUI费用报销明细报表:com.kingdee.eas.cp.bc.client.BizListRptMainUI申请单统计报表:com.kingdee.eas.cp.bc.client.ExpenseReqRpt借款单统计报表:com.kingdee.eas.cp.bc.client.LoanRpt报销单统计报表:com.kingdee.eas.cp.bc.client.ExpenseActRpt备用金余额查:com.kingdee.eas.cp.bc.client.AssistantAccountListUI2.gui费用单据扩展2.1.费用单据列表页扩展增加分录字段gui扩展时注意:(1)gui费用报销和费用核算下列表页为不同页面,具体如下表。(2)gui费用报销和费用核算下列表页,除了还款单外,页面所加载的query,都受CP021(是否在客户端序时簿显示分录明细信息)参数控制。页面加载时,根据该参数动态绑定。CP021为否,就为页面上绑定的query,该query只有单头字段(特别注意:只有单头字段的query不能加任何分录字段,也不能关联上分录表,只能有单头字段);CP021为是,query为带分录query。所以要根据扩展需求,扩展不同的query。具体可见以上第1节费用报销主要元数据。以下以扩展费用管理—费用报销—费用报销单序时簿页面,增加分录字段为例说明:该报销单序时薄页面绑定query为:单头query:com.kingdee.eas.cp.bc.app.BizAccountQuery(为页面默认绑定query,该query只能有单头字段,不能关联分录表,不能有任何分录字段)带分录query:com.kingdee.eas.cp.bc.app.BizAccountWithEntryQuery(cp021为是,页面加载时动态绑定该query)1.如果只是扩展增加单头字段,只需要这两个query上增加需要扩展的单头字段即可。2.如果需要增加分录字段,需要做一些特殊处理。以下以增加字段entries.exchangeRate(分录汇率)、entries.convertmode(分录汇率折算方式)、entries.name(分录名称)说明:(1)在BizAccountQuery中增加分录及分录字段,分录命名需要用entries(2)在BizAccountWithEntryQuery中增加分录字段,注意该query本身有分录字段,所以只需要增加没有的分录字段即可。(3)在报销单序时簿页面增加分录字段,并和query相应字段绑定绑定字段后(4)重要:将BizAccountQuery中加的所有分录、及分录字段都去掉,该query不允许有分录字段。去掉不会影响之前页面添加的绑定字段。这步必须做,不然会影响cp021为否,页面只显示单头字段时的单据显示及单头金额合计的计算。扩展后的页面效果2.2生成凭证时,不允许多选凭证规则扩展需求:标准产品生成凭证时,可以多选转换规则,客户希望隐藏生成凭证选择规则界面的【多选】选项,不希望一张费用报销单可以选择多个规则生成多张凭证扩展实现:Dap关联生成时,规则选择框是否显示支持多选,可以通过在相应页面重写botp模块提供的isSupportMultiDAP()方法控制,true表示显示多选,false则隐藏。标准产品实际是在列表和编辑页面的基类里面设置的显示多选,如下图。所以如果需要二开隐藏多选,需要扩展相应页面,重写该方法,返回false即可。Gui页面的扩展可参考第一章《扩展注意事项》中的《EAS扩展类开发介绍》文档。3.gui费用报表扩展4.套打二开数据源扩展4.1二开类扩展目前(2021-9)费用报销所有单据的套打数据源均在com.kingdee.eas.cp.bc.util.BizCollBillDataProvider配置,为二开提供了一个扩展类用于扩展。1、首先二开query数据源命名需要以ext结尾,在BizCollBillDataProvider类中做了如下截图控制:2、然后重写数据源获取类com.kingdee.eas.cp.bc.util.BizCollBillDataProviderExt的getRowSet_ext方法,数据组装可参照com.kingdee.eas.cp.bc.app.ForPrintFacadeControllerBean4.2二开数据源扩展8.6版本,需打2022-12月补丁(PT161495)或此补丁之后的才可使用此功能。二开全新的查询query数据源,配置套打模版时,重命名套打模版的数据源名称为query数据源的全路径名称即可。三、web扩展1费用功能扩展1.1web增加打回功能需求背景:gui支持单据打回功能,希望在web端也实现该功能。1.错误扩展案例:只看到了表面现象,以为打回就是将单据设置为暂存状态,所以web扩展增加了打回按钮,直接将单据设置为了暂存。造成的问题:正常单据提交时,是有扣减预算和上游单据余额的。所以打回单据变为暂存状态时,需要返还预算和上游单据余额。否则,这张单再次提交,重新扣减预算和上游单据余额,就会造成预算和上游单据余额多扣减一次;每次打回再提交,都会多扣减一次。2.正确的扩展流程:先必须理清楚标准产品打回功能业务,都做了什么处理。(1)找到标准产品打回业务处理代码Alt+shift+D:查看easgui当前界面uipk在扩展平台导入该页面,通过工具栏定位到按钮绑定的功能。eas费用报销包路径:私包:\eas\server\deploy\fileserver.ear\easWebClient\lib\sp\*.jar补丁包:\eas\server\deploy\fileserver.ear\easWebClient\lib\patch\sp-cp_bc-client.jar发版包(未打过费用补丁):\eas\server\deploy\fileserver.ear\easWebClient\lib\client\eas\cp_bc-client.jar若类在以上三个包都有,包加载优先级为,私包——补丁包——发版包。(2)web开发实现打回功能增加打回按钮的功能callBack,并注册后台打回事件和handler增加打回按钮,并绑定上面增加的callBack功能扩展js注册页面事件,并在事件中调用后台Handler方法生成CallBackEvent事件在CallBackHandler中做打回反写的业务处理。3.最好的解决方法因为打回功能直接在gui页面实现的,没法在别的地方直接调用该方法。所以可以给标准产品提单(提单注意写清楚二开需求及需要标准产品做什么,这样我们能更好的评估),建议把打回功能封装到controlBean的方法中,这样二开扩展,就可以直接调用。如果还要增加别的个性化需求,如在打回时反写一些二开字段,也可以直接扩展该方法。注意:二开类型的提单要写清楚二开需求及遇到的难点,以及需要标准产品做什么,这样我们能够更快的了解意图,并进行评估,若需求合理,就会出补丁处理。1.2反审核功能扩展扩展需求:反审核单据,需要增加二开字段的反写。扩展实现:1.可以在前端js找到,费用业务单据(不包括还款单)反审批都统一在基类bizCollBillSharingList.js的disAudit方法处理,前端主要处理单据合理性校验、权限校验、向后端发送反写请求等。费用大部分按钮功能都发起了“/cp/bc/bill.do?”请求,其服务端处理类为com.kingdee.eas.cp.bc.dynamic.web.BizCollBillBaseController服务端处理类和反写方法,8.5版本gui和web的反审核反写都统一在disAuditAddMessage处理。反审核反写分为两种场景:(1)审核通过状态之前的单据反审核,这时的反写走流程图中的反审批节点(2)审核通过的单据反审核,代码中反写单据信息、及返还预算。二开根据扩展需要去扩展相应方法。注意:扩展重写方法一定不要直接覆盖,会让标准产品功能失效。需要先super调用标准功能后,再处理二开的反写逻辑1.3查看影像扩展查看影像功能前端实现方法为bizCollBillBase.js中的viewImage方法,后端调用类为com.kingdee.eas.cp.bc.dynamic.handler.ViewImageHandler。如果要在二开页面增加查看影像功能,可以直接调用viewImage方法。标准控制了只有流程的审批、核定页面查看影像时,能够退回重扫。对应请求中的参数isAudit和isApproved,这两个参数任意一个为true时,查看影像支持退回重扫ViewImageHandler2报销平台扩展2.1带申请中页签报销平台扩展2.1.1报销平台页签列表页需要增加字段2.1.1.1eas8.0、8.2报销平台列表页需要增加字段由于dep不支持扩展联合查询query、而费用报销工作台申请中、待报销、报销中、已完成列表都为联合查询,所以不能直接通过dep在query增加字段。只能通过bos开发工具直接扩展query,然后以私包形式部署。以扩展“报销中”页签列表为例,联合查询query为:com.kingdee.eas.cp.bc.app.ExpensingQuery1.需要bos工具中导入query,在以下4个子query中增加扩展字段(增加的字段必须相同)。然后在联合查询ExpensingQuery同步字段即可。2.部署元数据因为query元数据没有源码,所以直接将发布的元数据部署到元数据私包路径即可。部署路径:服务端元数据私包路径:eas\server\metas\sp客户端元数据私包路径:eas\server\deploy\fileserver.ear\easWebClient\metas\sp由于是以私包部署,会存在和补丁冲突的可能。不过这些query标准产品一般不改动,所以冲突可能性很小,标准产品也会探讨dep支持联合查询扩展或业务去掉联合查询的可能。2.1.1.2eas8.5报销平台扩展说明8.5版本相比较低版本有所不同,在此说明:1.8.5版本需要更新补丁PT150234(发布日期2020-07-03)才支持报销平台的扩展,如各页签添加扩展字段、添加扩展单据,扩展标准过滤条件等。2.8.5报销平台为了提升性能,在后台拼接的sql查询单据。前端js设置的过滤条件都没有作用了。后台入口类为:com.kingdee.eas.cp.bc.dynamic.handler.MainPageDataGridOverHandler后台查询主要处理类为:com.kingdee.eas.cp.bc.dynamic.controller.MainPageDataGridController提供给二开扩展类为:com.kingdee.eas.cp.bc.dynamic.controller.MainPageDataGridControllerEx该类继承MainPageDataGridController,可通过该Ex类扩展重写MainPageDataGridController的一些方法,如添加扩展单据,扩展标准过滤条件等。MainPageDataGridController类MainPageDataGridControllerEx类扩展实例3.8.5扩展举例:以下扩展都是在MainPageDataGridControllerEx类中扩展(1)扩展各页签中增加二开的单据(指和标准单据不是一张表的单据),增加一些初始化参数(2)扩展各页签过滤条件扩展原则:要特别注意扩展过滤条件对性能影响(3)扩展各页签中,增加字段。扩展举例:希望在报销平台增加承担公司...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

金蝶EAS Cloud 费用报销扩展指导.docx

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信