DEP方案实现应付系统付款申请单生成凭证

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-22浏览:1

DEP方案实现应付系统付款申请单生成凭证

一、业务场景

适用条件:生成的凭证不能包含应收应付对账科目,否则会影响应收应付系统期末对账

实现应付系统【付款申请单】生成凭证

二、实践思路

  1. 付款申请单编辑界面工具栏增加【生成凭证】、【删除凭证】功能按钮

  2. 付款申请单单头记录凭证ID,凭证字,凭证号,是否生成凭证,会计等信息

三、详细设计

  1. 付款申请单单头增加以下二开字段

    字段名称数据来源字段类型别名关联对象长度
    fiVouchered手工录入布尔是否已生成凭证
    1
    voucher基础资料类别对象凭证凭证
    voucherNumber手工录入字符串凭证编号
    255
    voucherType基础资料类别对象凭证字凭证类型
    accountant基础资料类别对象会计员工_个人信息
  2. 付款申请单编辑界面工具栏放开【生成凭证】【删除凭证】按钮

  3. 【生成凭证】增加校验 审核的付款申请单才允许生成凭证

  4. 付款申请单凭证反写处理,生成凭证时记录凭证ID,凭证字,凭证号,是否生成凭证,会计等信息,删除凭证时清空对应信息

  5. 付款申请单序时簿增加对应的列展示凭证ID,凭证字,凭证号,是否生成凭证,会计等信息


四、代码样例

  • 放开【生成凭证】【删除凭证】按钮(扩展点:界面加载(OnLoad)后置)
     pluginCtx.getKDWorkButton("btnVoucher").setVisible(true);

        pluginCtx.getKDWorkButton("btnDelVoucher").setVisible(true);

  • 生成凭证前校验单据状态(扩展点:生成凭证(ActionVoucher)前置)

    var editData =  pluginCtx.getDataObject();
    var billStatus = editData.getBillStatus();
    if(!billStatus.equals(com.kingdee.eas.fi.ar.BillStatusEnum.AUDITED)){
        com.kingdee.eas.util.client.MsgBox.showInfo("单据未审核不允许生成凭证");
        com.kingdee.eas.util.SysUtil.abort();
    }


  • 凭证反写付款申请单单头字段(实体方法扩展:)

    var params = methodCtx.getParamValues()
    var operate = params[2];
    var relation = params[3];
    var ctx = pluginCtx.getContext();
    var destBillId = relation.getDestObjectID();
    var srcBillId = relation.getSrcObjectID();
    var userId = com.kingdee.eas.fi.ar.app.util.CommonServerUtils.getCurrentUser(ctx).getId();
    if("2652E01E".equals(relation.getDestEntityID())){
        if(com.kingdee.eas.base.botp.BOTBillOperStateEnum.ADDNEW.equals(operate)){
            var updateSql = "UPDATE T_AP_PAYREQUESTBILL set(CFVOUCHERID ,CFVOUCHERNUMBER ,CFVOUCHERTYPEID ,CFFIVOUCHERED,CFACCOUNTANTID )=";
            updateSql +=  "(select t2.fid,t2.fnumber,t2.fvouchertypeid,1,'"+userId+"' from t_gl_voucher t2 where t2.FID ='"+destBillId+"' ) where T_AP_PAYREQUESTBILL.FID ='"+srcBillId+"'";
            com.kingdee.eas.util.app.DbUtil.execute(ctx,updateSql);
        }else if(com.kingdee.eas.base.botp.BOTBillOperStateEnum.DELETE.equals(operate)){
            var updateSql = "UPDATE T_AP_PAYREQUESTBILL set CFVOUCHERID = NULL ,CFVOUCHERNUMBER=NULL ,CFVOUCHERTYPEID = NULL ,CFFIVOUCHERED = 0,CFACCOUNTANTID=NULL WHERE FID = '"+srcBillId+"'";
            com.kingdee.eas.util.app.DbUtil.execute(ctx,updateSql);
        }
    }

        

五、详细教程

本节涉及的DEP代码参考第四节代码样例

  • 配置【付款申请单】实体的二开凭证反写字段,配置凭证反写逻辑

导入付款申请单的业务单元,打开【付款申请单】实体,增加凭证反写字段 凭证ID,凭证字,凭证号,是否生成凭证,会计,字段类型参考第三节第1点的字段设计


进入【付款申请单】实体扩展定义,找到两个【反写】(reverseSave)扩展点,在后置脚本添加相同的凭证反写代码


  • 【付款申请单】编辑界面,显示【凭证生成】、【凭证删除】功能按钮

扩展【付款申请单】编辑界面,进入扩展定义,找到界面加载(OnLoad)扩展点,在后置脚本添加代码。

  • 生成凭证增加单据状态校验
    扩展【付款申请单】编辑界面,进入扩展定义,找到生成凭证(ActionVoucher)扩展点,在前置脚本添加代码

  • 在【付款申请单】序时簿展示凭证反写字段

扩展【付款申请单】数据源,实体关联【凭证字】(凭证类型)和【会计】(用户)属性


在字段页签导入凭证反写


扩展【付款申请单】序时簿界面,右键表格找到【编辑表信息】和【数据绑定】功能


先点击【编辑表信息】,增加对应的展示列


增加展示列后进入表格【字段绑定】,绑定展示列和数据源的扩展二开字段

六、效果展示

配置好后,启用方案验证

  • 付款申请单编辑界面展示【生成凭证】和【删除凭证】按钮,功能可用

  • 付款申请单生成凭证后能正常反写凭证ID,凭证字,凭证号,是否生成凭证,会计等信息,并在序时簿显示

DEP方案实现应付系统付款申请单生成凭证

一、业务场景适用条件:生成的凭证不能包含应收应付对账科目,否则会影响应收应付系统期末对账实现应付系统【付款申请单】生成凭证二、实践...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息