-
- それでは、DemoのVdri 画面での、Codeの検索を見て見ましょう。下記の2つの例です。最初は、通常画面を使用して検索する場合。
次は Dialog Modeで検索する場合です。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
FormAction formAction = new FormAction();
formAction.setFormStack(FormStack.NEXT);
formAction.setForm("vdrs");
formAction.getParams().put("_cat", cat);
formAction.getParams().put("_action","dataSelect");
formAction.getParams().put("_dataSelect",new DataSelect(formManager,"ccode"));
formManager.getSession().processAction(formAction, null);
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
FormAction formAction = new FormAction();
formAction.setFormStack(FormStack.DIALOG);
formAction.setForm("vdrSelect");
formAction.getParams().put("_cat", cat);
formAction.getParams().put("_action","dataSelect");
formAction.getParams().put("_dataSelect",new DataSelect(formManager,"ccode"));
formManager.getSession().processAction(formAction, null);
}
- FormStack.NEXT と FormStack.DIALOGしか違わないのが判ると思います。
formAction.getParams().put("_dataSelect",new DataSelect(formManager,"ccode"));で、DataSelect Objectに戻す
項目名をSetしています。
それでは、「VdrSelectDialog」で、選んだ値を戻す処理を見てみましょう。
private void jButtonEnterActionPerformed(java.awt.event.ActionEvent evt) {
int row = jTable1.getSelectionModel().getMinSelectionIndex();
if (row == -1) {
ValidationUtil.showErrorMessage("行が選ばれていません", formManager);
return;
}
BigDecimal ccode = (BigDecimal) golfTableModel.getValueAt(row,0);
if (formManager.getFormData().containsKey("_action")) {
if (formManager.getFormData().get("_action").equals("dataSelect")) {
DataSelect select = (DataSelect) formManager.getFormData().get("_dataSelect");
select.setSelectedDatum(ccode);
formManager.getSession().processDataSelect(select);
return;
}
}
}
- 最初呼ばれる時にParameterにSetされていた、DataSelect Objectに戻すDataをsetした後、
formManager.getSession().processDataSelect(select); を呼んでいますね。
この様に簡単に、選んだDataを呼び出し画面の項目に埋め込む事ができます。
- Golf 概要
- GOLF HOMEへのリンク
|