Adempiere Fork,列表生成错误



我在分叉 Adempiere 项目后工作,当我使用 list() 方法从表创建列表时处理补丁,而不是特定的类列表,我得到的是通用 PO 列表。在补丁上工作可能是此错误的痛点。

这是代码

    @Override
protected String doIt() throws Exception {

    int orgId = Env.getAD_Org_ID(getCtx());
    int clientID=Env.getAD_Client_ID(getCtx());
    List<MEmployee> EmployeeList = new ArrayList<MEmployee>();
    EmployeeList =  getEmployeeList(p_MemberGroupId,orgId);
    String msg  =   "";
    for ( MEmployee employee : EmployeeList )   {
    }
    return null;
}

private List<MEmployee> getEmployeeList(int EmployeeGroupID, int orgId) {
    List<MEmployee> employeeList =  new ArrayList<MEmployee>();
    StringBuffer employeeWhereClause =  new StringBuffer();

        employeeWhereClause.append( MEmployeeGroup.COLUMNNAME_E2_HR_PAGRP_ID )
                .append( " = " ).append( EmployeeGroupID )
                .append(" and ")
                .append( MEmployee.COLUMNNAME_AD_Org_ID)
                .append( " = " )
                .append(orgId)
                .append( " and " )
                .append( X_E2_HR_PAEM0.COLUMNNAME_Status )
                .append( " not in " )
                .append(" ('"+MEmployee.EMPSTATUS_OnHold+"','"+MEmployee.EMPSTATUS_Left+"') ");
        employeeList =  new Query(getCtx(), MEmployee.Table_Name, employeeWhereClause.toString(), get_TrxName())
                                .setClient_ID()
                                .setOnlyActiveRecords(Boolean.TRUE)
                                .list();
    return employeeList;
}

在这里,我得到的是通用 PO 列表,而不是 MEmployee 类型列表。

我找到了这个问题的答案,基本上员工表可以说ABC_Emp并且生成了我用于此ABC_Emp的模型类,并且MEmployee扩展了此X_ABC_Emp并实现了DocAction类,因此它不会生成列表。

我所做的是,我没有使用MEmployee,而是使用了模型类。 相反,X_ABC_Emp并尝试生成列表,它奏效了。我没有 确切地知道为什么MEmployee扩展X_ABC_Emp没有的原因 工作,但这几乎解决了我的问题。

相关内容

  • 没有找到相关文章

最新更新