Row Filtering


조건에 맞는 데이터행들만 가져올 수 있다.

* 영상은 자동 재생되며, 영상화면 왼쪽 윗부분에 재생목록을 클릭해서 원하는 목록을 재생 할 수 있습니다.



  - Filter Bar Options
     Visible : 체크 시 Filter Bar가 보인다.
     Head Text : Filter Bar 왼쪽 윗부분에 원하는 텍스트를 입력 할 수 있다.
  - Activate 'filter_market': "시장" 필터를 적용한다.
  - Deactivate 'filter_market': "시장" 필터를 해제한다.
  - Activate 'filter_market': "가격" 필터를 적용한다.
  - Deactivate 'filter_market': "가격" 필터를 해제한다.
  - Activate All Filters: 모든 필터를 적용한다.
  - Deactivate All Filters: 모든 필터를 해제한다.
  - Clear All Filters: 모든 필터를 제거한다.
  - Add Callback Filters: 필터가 없는 경우 콜백함수로 설정한 필터들을 추가한다.
  - Export to local : 현재 작성된 데이터행을 기반으로 실행시 'excel' 파일의 형태(.xlsx)로 데이터가 그대로 넘어간다.
  - Export to email : 현재 작성된 데이터행을 기반으로 실행시 '.excel' 파일이 첨부되며 메일을 통해 원하는 주소로 전송 할 수 있다.
 소스보기
public void run(Context ctx, final GridView grid) throws Exception { final FilterBar filterBar = grid.getFilterBar(); formSettings.setValue("visible", filterBar.isVisible()); formSettings.setValue("text", filterBar.getHead().getText()); new FormDialog2().show(grid.getContext(), formSettings, new FormDialog2.OnCloseListener() { @Override public void onClose(Context ctx, Form form) { boolean visible = form.getBool("visible"); String text = form.getString("text"); filterBar .setVisible(visible); filterBar.getHead() .setText(text); } }); }
public void run(Context ctx, GridView grid) throws Exception { grid.activateRowFilters("filter_market"); } public void run(Context ctx, GridView grid) throws Exception { grid.deactivateRowFilters("filter_market"); }
public void run(Context ctx, GridView grid) throws Exception { grid.activateRowFilters("filter_price"); } public void run(Context ctx, GridView grid) throws Exception { grid.deactivateRowFilters("filter_price"); }
public void run(Context ctx, GridView grid) throws Exception { grid.activateAllRowFilters(); } public void run(Context ctx, GridView grid) throws Exception { grid.deactivateAllRowFilters(); }
public void run(Context ctx, GridView grid) throws Exception { grid.clearRowFilters(); }
public void run(Context ctx, GridView grid) throws Exception { if (grid.getAllRowFilters().length == 0) { grid.addRowFilters( new GridRowFilter( "filter_market", new GridRowFilter.Callback() { @Override public boolean select(GridItem item) { String s = (String)item.getValue("market"); return s != null && s.endsWith("시장"); } } ).setLabel("시장들만 표시").setActive(false), new GridRowFilter( "filter_price", new GridRowFilter.Callback() { @Override public boolean select(GridItem item) { Double v = (Double)item.getValue("price"); return v != null && v >= 10000; } } ).setLabel("단가 만원 이상 품목").setActive(false) ); } }