我认为我非常聪明地编写这种方法来加载一个组的成员.但返回的值不是通用名称格式:
如何轻松地以通用名称获取这些值或轻松将它们转换为通用名称?
private void loadNetworkTeam() {
try {
Session session = Factory.getSession();
Database tmpDB = session.getCurrentDatabase();
Database tmpDB2 = session.getDatabase(tmpDB.getServer(), "names.nsf");
View grpView = tmpDB2.getView("($VIMGroups)");
Vector<Object> nTeam = new Vector<Object>();
nTeam.addElement("NetWorkTeam");
Document grpDoc = grpView.getFirstDocumentByKey("Network Team");
Item itm = grpDoc.getFirstItem("members");
networkTeam.addAll(itm.getValues());
} catch (Exception e) {
XspOpenLogUtil.logError(e);
}
}
Run Code Online (Sandbox Code Playgroud)
使用类Name及其方法getCommon()将层次结构名称转换为通用名称.
例:
Item itm = grpDoc.getFirstItem("members");
List<String> networkTeam = new ArrayList<String>();
for (Object value : itm.getValues()) {
networkTeam.add(session.createName((String) value).getCommon());
}
Run Code Online (Sandbox Code Playgroud)