問題タブ [scriptella]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
693 参照

java - Scriptella: SQL から Java にデータを転送する

scriptellaでSQLリクエストを使用してデータを取得し、Javaコードにアクセスすることは可能ですか? 次のようなもの:

0 投票する
1 に答える
687 参照

java - Scriptella: コレクションと for each ループの使用

scriptella で次のコードを記述するにはどうすればよいですか? Set と String を比較しようとしているようで、最後の for ループが気に入らないようです。&&のような論理式の書き方とは?ありがとうございました。

0 投票する
2 に答える
806 参照

java - Scriptella の出力 CSV ファイルで二重引用符が表示されるのはなぜですか?

次の問題に直面しています。

etl 構成ファイルを使用Oracleして、これらのデータをファイルにエクスポートするよりも、DB テーブルからいくつかのデータをロードしCSVます。ただし、フィールドに二重引用符 (") が含まれている場合、この文字は重複します。

簡単な例で説明します。

テーブル NAMES のフィールド DESCRIPTION には、次の内容が含まれています。
これは、私の名前の「説明」です。

CSV ドライバーを使用してこのテーブルの内容をエクスポートすると、CSV に次のデータが表示されます。
これは私の名前の「説明」です。

ETL 設定:

<connection id="out-names" driver="csv" url="names.csv">
quote=
encoding=UTF-8
trim=true
null_string=
</connection>
...

<query connection-id="db" >
名前から名前、説明を選択します。
<script connection-id="out-names">
$1;$2
</script>
</query>

これについて何か助けはありますか?

前もって感謝します

0 投票する
0 に答える
287 参照

scriptella - 速度テンプレートのパスを設定するには?

scriptellaとvelocityでレポートを作ってみます。scriptella ディストリビューションには、速度に関する例が 1 つしかありません。そこに、ヘッダーとフッターが現在のパスです。しかし、テンプレートを使用して特定のパスを設定するにはどうすればよいですか?

@ejboy さん、リプレイありがとうございます。

速度ドライバーには 2 つの問題があります。1 つ目は、Velocity Connection 定義で URL パラメータを変数として設定する方法です。「SELECT * FROM table」のようなクエリがあり、レコードごとに、たとえばレコードのIDに関連付けられた名前で別のファイルにレポートを作成する必要があります。

2 つ目の問題は、「header.vm」および「footer.vm」ファイルのパスにあります。私のプロジェクト (Maven を使用) では、etl.xml ファイルは src/main/resources/scriptella の下にあり、ヘッダーとフッターは同じディレクトリにある可能性があります。このパスは、etl.xml (または含めることができるプロパティ ファイル) のどこに設定できますか。

よろしく、ジャセク

0 投票する
1 に答える
213 参照

scriptella - scriptella の列数が不明な INSERT INTO

列の数を変更できるテーブルをバックアップする必要があります。私のetlスクリプトが開始すると、列の数がわかりません。INSERT INTO table VALUES (?1, ?2, ...) スクリプトをその場で作成するにはどうすればよいですか?

よろしく、ジャセク

0 投票する
1 に答える
193 参照

parallel-processing - scriptlla 同時実行の問題?

「antcall」scriptlla 同時呼び出しを使用していますが、「javax.mail. Management InstanceNotFoundException」が表示されます。私は 10 の同時実行をセットアップします。時には 10 になることもあれば、いくつかしか上昇しないこともあります。

mbean scriptella:type=etl,url="file:/informatica/infa861/oss_etl_523/src/ElectricCable/Pair_Conn.xml" javax.management.InstanceNotFoundException: scriptella:type=etl,url="file:/informatica/ infa861/oss_etl_523/src/ElectricCable/Pair_Conn.xml"

scriptella のソース コードを表示すると、コードは既に同期されています。

この状況について、あなたに何か提案はありますか? 解決策を見つけるために何を試すべきですか、または何を読むべきですか?

0 投票する
1 に答える
484 参照

scriptella - scriptella を使用して fixwidth テキスト ファイルをインポートする

scriptellaを使用してfixwidthファイルをテーブルにインポートする最良の方法は何ですか?

テキストファイル:

列幅:

テーブル:

0 投票する
1 に答える
466 参照

scriptella - onerror での Scriptella 機能のリクエスト: 接続 ID

これは機能リクエストです。以下のリンクからは、他の回避策はまだないようですが、コンテキスト内の現在の接続で操作を実行する必要があります。

https://groups.google.com/forum/?fromgroups=#!topic/scriptella/BpfD6BJc804

「onerror」タグで「connection-id」をサポートすることは可能ですか? ありがとう

0 投票する
2 に答える
1181 参照

java - Scriptella:clobオブジェクトから動的にデータをフェッチし、それをデータベースに挿入するにはどうすればよいですか?

私はScriptellaを使用する初心者です。

私の要件は次のようなものです:

1)まず、非常に大きなxmlファイルがいくつかあり、そこからデータベースにデータを挿入する必要があります。そのため、xmlファイルをclobオブジェクトとして挿入することにしました。これが私が使用した構文です:

正常に実行されました。

2)次に、Clobデータをフェッチし、それをxpathクエリとして解析し、最後にxpathフィールドの下のテキスト値をデータベース列に抽出します。

そのために、次のように、クエリブロック内にjavajaninoブロックを記述しました。

私の質問は、「ノード」ノードリストでフェッチされたデータをデータベース列に挿入する必要があるということです。

どうやってやるの?

XMLの場合、「query」ブロック内にXpath式を記述し、フェッチされたxpathフィールドごとにデータをDBに挿入できます。

しかし、ここでは、データがClobオブジェクトにある場合、Xpathクエリからデータを抽出するにはどうすればよいですか?Clobデータを取得するにはJavaコードを使用する必要があります。しかし、その後、Scriptellaには別の制約があるため、データを挿入するにはどうすればよいですか。

スクリプトブロック内でスクリプトを使用することはできません。「get」は「script」ブロック内でのみ使用できるため、ここではscriptタグを使用する必要があります。

しかし、その後、グローバル変数を使用するように指示されます。しかし、別の問題があります。宣言するグローバル変数の数は?? 「ノード」ノードリスト内には多くのフィールドがあります。したがって、フィールドごとにグローバル変数を宣言することはできませんよね??

誰かが私にこの特定の問題についてのヒントを与えることができますか?Scriptellaで可能かどうか教えていただけますか?

0 投票する
2 に答える
705 参照

scriptella - クエリからの空の結果セットの処理

同じ構造のデータベースが2つあり、データベース間のレコードを比較したいと思います。2番目のデータベースのレコードは最初のデータベースからコピーされますが、コピープロセスが機能しない場合があり、1つのテーブルの最初のデータベースには、2番目のデータベースの同じテーブルよりも多くのレコードがあります。したがって、最初のデータベースのどのレコードが2番目のデータベースに存在しないかを知りたいのです。私はそのようなもので試しました:

問題は、db2に対するクエリの結果が空の場合、スクリプトが実行されないことです。

この問題を解決する方法は?

よろしく、Jacek