/**
* EntityViewInfo的使用
*/
@SuppressWarnings("unused")
private void getData() throws BOSException{
// 查詢組織編碼為:001,性别為:男,工資大于:3000
// 按照人員編碼排序
// select tst.* from T_UYG_Test tst
// inner join T_ORG_Baseunit org on org.fid = tst.forgunitid
// where org.fnumber = '001'
// and tst.fgender = 1
// and tst.famount > 3000
// order by tst.fnumber desc
EntityViewInfo view = new EntityViewInfo(); //視圖,了解為SQL語句結構,可以通用于用戶端與服務端
/*
* 指定查詢那些字段
* 使用實體的屬性值
* 了解為select之後所列字段
*/
SelectorItemCollection selector = new SelectorItemCollection(); //将查詢指定字段
selector.add(new SelectorItemInfo("*"));
/*
* 過濾條件
* 相當于where之後的條件語句部分
* 使用實體的屬性值
*/
FilterInfo filter = new FilterInfo();
filter.getFilterItems().add(new FilterItemInfo("orgUnit.number", "001", CompareType.EQUALS)); //組織編碼
filter.getFilterItems().add(new FilterItemInfo("gender", GenderEnum.FEMALE_VALUE, CompareType.EQUALS)); //性别
filter.getFilterItems().add(new FilterItemInfo("amount", 3000, CompareType.GREATER)); //工資
/*
* 排序
* 使用實體的屬性值
* 相當于order by之後的語句部分
*/
SorterItemCollection sorters = new SorterItemCollection();
SorterItemInfo sorter1 = new SorterItemInfo("number"); //編碼
sorter1.setSortType(SortType.DESCEND); //倒序
sorters.add(sorter1);
view.setSelector(selector); //查詢字段
view.setFilter(filter); //篩選條件
view.setSorter(sorters); //排序
TestCollection coll = TestFactory.getRemoteInstance().getTestCollection(view);
}