私はPentahoで新しく、私は助けが必要です。Pentaho:列名を自動的に読み込み、変数に保存する方法は?
私はデータベーステーブルからデータを取得しています。そして、これらのテーブルのカラム数を数え、その名前を変数に保存する必要があります。誰かがこれを作る方法を知っていますか?または、Java Scriptのステップで列名を読み取る方法は?ご協力ありがとうございました。
私はPentahoで新しく、私は助けが必要です。Pentaho:列名を自動的に読み込み、変数に保存する方法は?
私はデータベーステーブルからデータを取得しています。そして、これらのテーブルのカラム数を数え、その名前を変数に保存する必要があります。誰かがこれを作る方法を知っていますか?または、Java Scriptのステップで列名を読み取る方法は?ご協力ありがとうございました。
まず、あなたが設定/変更した同じ変換では、変数値が表示されないことに注意してください。基本的には、変換のための変数値が初期化時に読み込まれます。したがって、親/祖父母ジョブの変数値は変更できますが、同じ変換は変更できません。
オプション1(ストリームステップのメタデータ構造):
1つのオプションは、http://wiki.pentaho.com/display/EAI/Metadata+Structure+of+Stream ステップは、あなたの次のフィールドを与えるストリームステップのメタデータ構造を使用することですインバウンドデータストリームのフィールド名
その後、このステップの出力を使用して変数値を設定できます。
オプション2(Javascriptを):
JavaスクリプトステップはRowMetaInterfaceオブジェクトを返すgetInputRowMeta()機能 を持っています。
さらにのリストを返すgetValueMetaList()メソッドを呼び出すことができます。次に、リスト内のすべての項目を繰り返し処理し、オブジェクトごとにgetName()
を呼び出して、各入力フィールドの名前を取得できます。
例(ここでは、コードのほとんどは、単に出力を説明するために実際にある):あなたが数を知らないので
2016/10/13 15:33:09 - Modified Java Script Value.0 - Optimization level set to 9.
2016/10/13 15:33:09 - Modified Java Script Value.0 - JSON string:
2016/10/13 15:33:09 - Modified Java Script Value.0 - [{"fieldName":"test","fieldType":"String"},{"fieldName":"test 2","fieldType":"Integer"},{"fieldName":"another field","fieldType":"BigNumber"}]
2016/10/13 15:33:09 - Modified Java Script Value.0 - Field number 0:
2016/10/13 15:33:09 - Modified Java Script Value.0 - test
2016/10/13 15:33:09 - Modified Java Script Value.0 - String
2016/10/13 15:33:09 - Modified Java Script Value.0 - Field number 1:
2016/10/13 15:33:09 - Modified Java Script Value.0 - test 2
2016/10/13 15:33:09 - Modified Java Script Value.0 - Integer
2016/10/13 15:33:09 - Modified Java Script Value.0 - Field number 2:
2016/10/13 15:33:09 - Modified Java Script Value.0 - another field
2016/10/13 15:33:09 - Modified Java Script Value.0 - BigNumber
2016/10/13 15:33:09 - Modified Java Script Value.0 - Finished processing (I=0, O=0, R=1, W=1, U=0, E=0)
:あなたは次のような出力が表示されますログに
変数を変数に格納することは、奇妙ではありませんが、不可能ではありません。なぜあなたはこれをしたいのですか?どのように変数の名前を付ける予定ですか? – matthiash