1: 单据头F7的过滤.
/**
*
* @Title: initEntry
* @Description: TODO(初始化分录信息)
* @return void 返回类型
* @throws
*/
private void initF7() {
try {
//初始化物料
LSCilentUtils.initTreeMaterialF7(prmtMaterial, NewExceptionBillUI.this);
} catch (Exception e) {
e.printStackTrace();
}
//单据类型的过滤
String sql=" select fid from T_SCM_BillType where fname_l2 in ('采购入库单','生产入库单','其他入库单','调拨入库单','领料出库单','销售出库单','调拨出库单','其他出库单') ";
String billids="";
try {
IRowSet rs = SQLExecutorFactory.getRemoteInstance(sql).executeSQL();
while(rs.next()){
billids+=""+rs.getString("fid")+",";
}
if(!"".equals(billids)){
billids = billids.substring(0, billids.length()-1);
EntityViewInfo entityView = new EntityViewInfo();
FilterInfo filter = new FilterInfo();
filter.getFilterItems().add(new FilterItemInfo("id",billids,CompareType.INCLUDE));
entityView.setFilter(filter);
prmtBillType.setEntityViewInfo(entityView);
}
} catch (BOSException e) {
e.printStackTrace();
}catch (SQLException e) {
e.printStackTrace();
}
}
2:分录F7的过滤
/**
*
* @Title: initEntry
* @Description: TODO(初始化分录F7信息)
* @return void 返回类型
* @throws
*/
private void initF7() {
if(Constant.JSLYCOMPANYID.equals(puInfo.getId().toString())){
String userids = "";
BasicDataMoveAuditMoveAuditorCollection conn = bInfo.getMoveAuditor();
for(int i=0;i<conn.size();i++){
BasicDataMoveAuditMoveAuditorInfo beinfo = conn.get(i);
userids += beinfo.getAuditor().getId().toString()+",";
}
/** 人员过滤 **/
if(!StringUtils.isEmpty(userids)){
final KDBizPromptBox kdtEntrys_moveAuditor_PromptBox = new KDBizPromptBox();
kdtEntrys_moveAuditor_PromptBox.setQueryInfo("com.kingdee.eas.base.permission.app.F7AllUserQuery");
userids = userids.substring(0, userids.length()-1);
EntityViewInfo ev = new EntityViewInfo();
FilterInfo filter = new FilterInfo();
filter.getFilterItems().add(new FilterItemInfo("id",userids,CompareType.INCLUDE));
ev.setFilter(filter);
kdtEntrys_moveAuditor_PromptBox.setEntityViewInfo(ev);
KDTDefaultCellEditor kdtEntrys_moveAuditor_CellEditor = new KDTDefaultCellEditor(kdtEntrys_moveAuditor_PromptBox);
this.kdtEntrys.getColumn("moveAuditor").setEditor(kdtEntrys_moveAuditor_CellEditor);
ObjectValueRender kdtEntrys_moveAuditor_OVR = new ObjectValueRender();
kdtEntrys_moveAuditor_OVR.setFormat(new BizDataFormat("$name$"));
this.kdtEntrys.getColumn("moveAuditor").setRenderer(kdtEntrys_moveAuditor_OVR);
}
}
}
本文介绍了一种在特定业务系统中实现单据头及分录F7过滤的方法,通过SQL查询限定单据类型,并利用业务逻辑对操作员进行过滤。
1112

被折叠的 条评论
为什么被折叠?



