これは、最初に Edit->Settings でパラメーターを設定し、パラメータータブを表示してパラメーターを追加し、TABLE_NAME のようなパラメーター名を想定してから、以下のように Java コードを記述して、Java コードを使用することで解決できます。
import org.pentaho.di.core.KettleEnvironment;
import org.pentaho.di.core.Result;
import org.pentaho.di.core.RowMetaAndData;
import org.pentaho.di.core.exception.KettleException;
import org.pentaho.di.core.util.EnvUtil;
import org.pentaho.di.trans.Trans;
import org.pentaho.di.trans.TransMeta;
上記の jar ファイルは pdi lib フォルダーにあります。以下のようにテーブル名を設定します
KettleEnvironment.init(false);
EnvUtil.environmentInit();
TransMeta transmeta = new TransMeta("path of your ktr file");
Trans trans = new Trans(transmeta);
trans.setParameterValue("TABLE_NAME",your_table_name );
trans.execute(null);
trans.waitUntilFinished();
Result r = trans.getResult();
List<RowMetaAndData> rowsResult = r.getRows();
System.out.println(trans.getTransMeta());
if (trans.getErrors() > 0) {
throw new RuntimeException();
}
そして、ktrテーブルクエリに次のように記述しますselect * from ${TABLE_NAME}