Column Lookup


실제 값 보다 의미있고 이해하기 쉬운 값을 대신 표시 할 수 있다.

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

  - Options
      Lookup Display : 체크 시 데이터값이 자세하게 나온다.
      Lookup Labels : 데이터값을 다른 방식으로 표현한다.
      Label Field : 데이터값을 다른 방식으로 표현한다.
  - Update Data : 선택행의 값을 변경해서 Lookup 컬럼에 잘 표시되는 지 확인한다.
  - Update Label Field : 선택행의 값을 Label field 셀 값을 변경해서 참조하는 컬럼에 잘 표시되는 지 확인한다.
  - Export to local : 현재 작성된 데이터행을 기반으로 실행 시 'excel' 파일의 형태(.xlsx)로 데이터가 그대로 넘어간다.
  - Export to email : 현재 작성된 데이터행을 기반으로 실행 시 '.excel' 파일이 첨부되며 메일을 통해 원하는 주소로 전송 할 수 있다.
 소스보기
public void run(Context ctx, GridView grid) throws Exception { final DataColumn column = grid.focusedDataColumn(); if (column == null || !"colProdName".equals(column.getName()) && !"colCustName".equals(column.getName())) { Utils.alert(ctx, "옵션을 설정할 Lookup 컬럼을 선택하세요."); return; } Form form; if ("colProdName".equals(column.getName())) { form = formLookup; form.setValue("lookupDisplay", column.isLookupDisplay()); form.setValue("lookupLabels", column.getLookupLabels()[0].startsWith("2_") ? "labels_2" : "labels_1"); } else { form = formLabel; form.setValue("lookupDisplay", column.isLookupDisplay()); form.setValue("labelField", column.getLabelField()); } new FormDialog2().show(grid.getContext(), form, new FormDialog2.OnCloseListener() { @Override public void onClose(Context ctx, Form form) { column.setLookupDisplay(form.getBool("lookupDisplay")); if ("colProdName".equals(column.getName())) { column.setLookupLabels("labels_2".equals(form.getString("lookupLabels")) ? m_product_names2 : m_product_names); } else { column.setLabelField(form.getString("labelField")); } } }); }
public void run(Context ctx, GridView grid) throws Exception { int row = grid.focusedDataRow(); if (row < 0) { Utils.alert(ctx, "값을 변경할 데이터행을 선택하세요."); } int field = m_ds.getFieldIndex("product_id"); Object v = m_ds.getValue(row, field); Object[] values = m_ds.getDistinctValues(field); if (values.length > 1) { while (true) { int n = Value.irandom(values.length); Object v2 = values[n]; if (!v.equals(v2)) { m_ds.setValue(row, field, v2); break; } } } else { m_ds.setValue(row, field, v.toString() + "_2"); } }
public void run(Context ctx, GridView grid) throws Exception { DataColumn column = grid.dataColumnByName("colCustName"); int row = grid.focusedDataRow(); if (row < 0) { Utils.alert(ctx, "값을 변경할 데이터행을 선택하세요."); } int field = column.getLabelFieldIndex(); Object v = m_ds.getValue(row, field); m_ds.setValue(row, field, v.toString() + "_2"); }