EAS-GUI单据头值改变事件案例

涎涎原创约 452 字大约 2 分钟...KingdeeKingdee

142-EAS-GUI单据头值改变事件案例.mdopen in new window

注意

本博文仅供学术研究和交流参考,严禁将其用于商业用途。如因违规使用产生的任何法律问题,使用者需自行负责。

需求背景

笔者有遇到这么一个需求,一个F7字段在前,另一F7字段在后,当A F7字段进行选择时,B F7 根据A F7 字段选择的值进行过滤

实现步骤

  1. 找到AF7字段的Edit.ui并选择此字段的属性,在事件里找到datachange将其方法放出来,并保存
  1. 业务建模视图将此单据重新发布

  2. 在Edit类里重写此方法

/**
    * <p>Title: prmtbank_dataChanged</p>
    * <p>
    *    Description:
    *    金融机构值改变事件发生之后更改F7授信额度的值
    *    
    *    金融机构表名: T_BD_Bank
    *    授信额度:CreditLimit 表名 T_FIN_CreditLimit
    * </p>
    * <p>Copyright: Copyright (c) 2020</p>
    * @author xx
    * @date 2019-6-10 
    * @param param the bare_field_name
    * @param e
    * @throws Exception
    * @see com.kingdee.eas.custom.bill.leaseconbill.client.AbstractLeaseConBillEditUI#prmtbank_dataChanged(com.kingdee.bos.ctrl.swing.event.DataChangeEvent)
    * @version 1.0
    */
@Override
protected void prmtbank_dataChanged(DataChangeEvent e) throws Exception {
    super.prmtbank_dataChanged(e);
    if(null != e.getNewValue() && !e.getNewValue().equals(e.getOldValue())){
        prmtcreditline.setValue(null);//每次值改变时必须清空授信额度值
        BankInfo bankInfo = (BankInfo) e.getNewValue();
        String sql = "select T_FIN_CreditLimit.fid from T_FIN_CreditLimit left join " +
        "T_BD_Bank on T_FIN_CreditLimit.FCREDITINSTITUTIONID = T_BD_Bank.fid" +
        " where T_BD_Bank.fid = '" + bankInfo.getId().toString()+ "'";
        EntityViewInfo evInfo = new EntityViewInfo();
        FilterInfo f = new FilterInfo();
        f.getFilterItems().add(new FilterItemInfo("id",sql,CompareType.INNER));
        evInfo.setFilter(f);
        prmtcreditline.setEntityViewInfo(evInfo);
        prmtcreditline.setEnabled(true);
    }
}

通过以上步骤则可以实现B F7 的值是经A f7 过滤后产生的


分割线


相关信息

以上就是我关于 EAS-GUI单据头值改变事件案例 知识点整理与总结的全部内容,希望对你有帮助。。。。。。。

上次编辑于:
贡献者: 涎涎
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.4