たま氏の覚え書き

KNIME・AccessVBA・Swift等、学習したことを覚え書き

KNIME_文字列入力フォームその2【Java Snippet】増強版

使用Node:Java Snippet
フォームを表示して任意の文字列を複数入力してもらい、ワークフローに取り込む

WFの例と解説

▼配置例▼

1. Node【Table Creator】を設置※中身はなんでもよいが、仮に「ID」「FIrstName」「Last Name」というカラムを作成
 →→→ 

2. Node【Java Snippet】で入力フォームを起動し、ワークフローの「ID」「FIrstName」「Last Name」というカラムにそれぞれ取り込む
 ※変数として使用したい場合にはOutputのaddで「Field type」を「FlowVariable」に設定


Node【Java Snippet】で文字列入力フォームを起動

▼記述例▼

// Your custom imports:
import java.awt.GridLayout;
import javax.swing.*;
"--------------------------";
// Enter your code here:
JTextField Field1 = new JTextField("000");
JTextField Field2 = new JTextField("Hanaco");
JTextField Field3 = new JTextField("Yamada");
JPanel Panel = new JPanel(new GridLayout(0,1));

Panel.add(new JLabel(""));//1行あける
Panel.add(new JLabel("もれなく記入してください"));

Panel.add(new JLabel("ID"));
Panel.add(Field1);
Panel.add(new JLabel("FirstName"));
Panel.add(Field2);
Panel.add(new JLabel("LastName"));
Panel.add(Field3);

Panel.add(new JLabel(""));//1行あける
Panel.add(new JLabel("最後にもういちど確認してください"));
Panel.add(new JLabel(""));//1行あける

int select = JOptionPane.showConfirmDialog(null,Panel,"●●ワークフロー",JOptionPane.OK_CANCEL_OPTION,JOptionPane.PLAIN_MESSAGE);
if(select == JOptionPane.OK_OPTION){
    out_ID = Field1.getText();
    out_FirstName = Field2.getText();
    out_LastName = Field3.getText();
    
}else{
    throw new Abort("キャンセル");
}

----解説----
「その1」と変わらないので割愛、今回は入力フォームに初期値をいれた


▼Node設定例▼


▼KNIME Hub▼
kni.me