Eas

1 / 4
EAS 序时簿支持快速过滤开发指南

  1. 在序时簿的Query 中增加快速过滤的字段的扩展属性,该字段出现在快速输入框的下拉条件中(也
    可有DEP 中进行修改支持此过滤条件);目前只支持字符串类型,比较类型只支持LIKE。
  2. 如果需要设置日期条件,需要在Query 主信息上增加扩展属性,名称是bizDateField。增加后序时
    簿界面会出现”最近的单据“项,及快速输入框中的日期选择范围,主界面见下图。如果不设置该字段,
    则不会出现日期的过滤。
    ④内部公开 请勿外传
    2 / 4
  3. 序时簿覆盖方法getQuickFilteringSupport,表示支持快速过滤功能。
    QuickFilteringSupportItems qfsi = new QuickFilteringSupportItems(true, true);
    protected QuickFilteringSupportItems getQuickFilteringSupport(){
    return qfsi;
    }
  4. 最近的单据或快速过滤的方式下,默认为用户全部有权限的组织范围。如果要支持一个组织,则需
    要如下设置。
    return qfsi.supportSingleMainOrg();
    supportSingleMainOrg()无参数时,系统会自动按默认规则取默认组织。也可以传递一个组织Info,
    作为默认组织。
  5. 增加默认方案的过滤条件。
    因为默认方案和通用过滤对话框有区别,即没有”条件“页签的过滤条件,需要在初始化时加入。如供
    应链单据示例。
    qfsi.getSystemSolutionItem().getDefaultFilter()
    //默认主业务组织
    .add(“companyOrgUnit.id”, CompareType.EQUALS, BizOrgEnum.DEFAULTMAINORG)
    ④内部公开 请勿外传
    3 / 4
    //默认最近一个月日期范围
    .add(“bizDate”, CompareType.IS, DateEnum.RECENTONEMONTH);
    在不使用枚举的情况下,可以增加任意过滤条件,用法和FilterItemInfo 一样。在没有默认过滤条
    件时,选择默认方案时会比较慢。
  6. 增加日期下拉框的选择项目
    FixedPopupItem allItem = new FixedPopupItem(“所有”, null);//第一个是标题,第二个日期的过滤条件
    (这里可以是空的)
    this.getQuickFilteringSupportManager().getDateRangePopupModel().addLast(allItem);
    7.通过自定义来控制快速过滤日期范围下拉框的当前选择项
    选择第三个项目,在序时簿的事件处理中调用,
    this.getQuickFilteringSupportManager().getDateRangePopupManager().updateSelectedDateRang
    eItem(2);
    8.不支持主业务组织,此时不会增加有权限主业务组织的过滤条件
    QuickFilteringSupportItems qfsi = new QuickFilteringSupportItems(true, true);
    protected QuickFilteringSupportItems getQuickFilteringSupport(){
    return qfsi.notSupportMainOrgUnitFilter();
    }
    9.快速过滤子类扩展重新布局,如客商等需要增加额外的面板。
    增加快速过滤重新布局调整处理器接口,子类可以自己调整快速过滤的布局
    public interface IQuickFilterReLayoutHandler {
    /**
  • 描述:在调整主面板前加入自己的控件布局调整
  • @param bounds 在布局调整后修改bounds 参数用于调整主面板
  • 创建时间:2013-3-25


    /
    public void beforeReLayoutMainPanel(Rectangle bounds);
    /
    *

  • 描述:如果需要自己处理主面板的布局调整,返回true,否则返回false,由框架处理
  • @param mainComponent
  • @param bounds
  • @return
  • 创建时间:2013-3-25

4 / 4
*/
public boolean reLayoutMainPanel(Component mainComponent, Rectangle bounds);
}
子类在需要时实现该接口,实现方法beforeReLayoutMainPanel
实现后需要设置QuickFilteringSupportItems. setQuickFilterReLayoutHandler(…)
10. 首次必须查询(不管是否有下次进入方案及本周方案),需要设置下面的接口
QuickFilteringSupportItems.setMustQueryAtFirst(true);
11.没有任何快速过滤条件时,回车仍执行查询
设置方式,下面的方法supportExecutionWithoutFilters,
private QuickFilteringSupportItems qfsi = new QuickFilteringSupportItems(true, true);
protected QuickFilteringSupportItems getQuickFilteringSupport()
{
return qfsi.supportExecutionWithoutFilters();
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值