変換スクリプトエンジンの基本概念は、Groovyスクリプト言語に基づいています。
変換スクリプトは、インポート中にデータを処理するための高度な機能です。変換スクリプトで以下のことが可能です:
- 値をクリーンアップ
- 値を変更する
- 他の列から計算された値で新しい列を作成する
- フラグとメモで値をマークする
- 列名に従って値を処理するためのインテリジェンスを構築する
インポート設定の設定または編集中に、列の詳細ダイアログに変換スクリプトを入力できます。
変換スクリプトの構文は、GroovyとJavaの構文に似ています。読みやすく効果的であるように設計されていますが、厳密ではありません。スクリプトとプログラミングに精通しているユーザーは、セキュリティやパフォーマンス上の理由から、ループなどの一般的な機能の一部が欠落していることを知っている必要があります。スクリプトを適用して列をインポートできます。基本的な機能は、列・行の入力値を別の値に変換することです。
変換スクリプトの基本
- スクリプトで変数を使用して、値を保存し、操作することができます。
- 条件と分岐を使用できます。
- 幅広い機能のパレットを使用できます。
変数と関数を使用した最初のスクリプト:
val = value() return trim(val)
このスクリプトは、各データインポートセルの列値の最初と最後から空白を削除します。ご覧のとおり、最後の行にはreturnコマンドが含まれています。スクリプトの関数は、「現在のセルから値を選択し、トリム関数を適用して結果を返す」と説明できます。
列の値にアクセスするには?
処理したい値にアクセスすることが重要な課題です。スクリプトは、現在の値を返すvalue()関数を提供します。値にアクセスするためのより高度な可能性があります。
Object value() | 現在カラムの値(String, Number, LocalDate, LocalTime – カラムタイプ通り)を返却します。 |
| カラムのインデックス位置にあるカラムの値(String, Number, LocalDate, LocalTime – カラムタイプ通り)を返却します。 |
| インジケータコードで指定された列の値(String, Number, LocalDate, LocalTime – カラムタイプ通り)を返却します。既存のデータを内のみ適用可能で設定します。 |
| 属性コードで指定された列の値(String, Number, LocalDate, LocalTime – カラムタイプ通り)を返却します。既存のデータを内のみ適用可能で設定します。 |
LocalDate dateValue() | 現在のカラムのLocalDatとして値を返却します。 |
LocalDate dateValue(int columnIndex) | columnIndex でカラムのLocalDateとして値を返却します。 |
LocalDate dateValue(String attributeCode) | 属性コードで指定されたカラムのLocalDate値を返却します。既存のデータを内のみ適用可能で設定します。 |
LocalTime timeValue() | 現在のカラムの現地時間として値を返却します。 |
LocalTime timeValue(int columnIndex) | 現在の列の列インデックスでのLocalDateとして値を返却します 。(LocalTime?) |
LocalTime timeValue(String attributeCode) | 属性コードで指定されたカラムのLocalTimeを返却します。既存のデータを内のみ適用可能で設定します。 |
Integer integerValue() | 現在の列の整数として値を返却します。 |
Integer integerValue(int columnIndex) | columnIndex で現在の列の整数として値を返却します。 |
Integer integerValue(String code) | attributeCode で指定された列の整数値を返却します。既存のデータを内のみ適用可能で設定します。 |
Double doubleValue() | 現在の列のダブルとして値を返却します。 |
Double doubleValue(int columnIndex) | columnIndex で現在の列のダブルとして値を返却します。 |
Double doubleValue(String code) | attributeCode で指定されたカラムのDouble値を返却します。既存のデータを内のみ適用可能で設定します。 |
| 現在のカラムの名前を返却します。 |
|
|
| 現在のカラムの形式を返却します。 |
| 「値と空のセルを交換」の値が現在のカラムのデフォルト値を返却します。 |
String getFileName() | インポートされたファイルのファイル名を返却します。 |
String getPath() | インポートされたファイルへのパスを返却します。 zipアーカイブ、FTPフォルダまたはHTTP接続するのに便利です。 |
変数
スクリプトの結果として変数に値を格納し、式にまたはそれらを使用できる。変数のタイピングはほとんどの場合で動的ですの変数の型を考えるする必要がなりません。
動的に型指定される汎用変数の宣言の例 後で使用するために変数に値を割り当てることができます:
a = value() b = 12 c = 100.56 bool = false e = "Hello" x = b + c return e + " world"
as nameOfTypeを追加することで変数や関数のリターンを再入力できます。
double b = value() as double
タイプ名 | |
---|---|
| 店はboolean値は、True / Falseの、式の分岐内の関数の結果として通常使用されます |
| 文字の文字列を格納 |
| 整数値を格納 |
| 10進数で格納 |
| gregory形式でDateオブジェクトを表す |
| 日付と時間の関数で使用するための日付の日付部分を表す |
| 日付と時間の関数で使用するための日付の時間部分を表す |
| 日付と時間の関数で使用するためのDateTimeオブジェクトを表す |
値関数はString型の値を返却します。それが正しく変換されない限り、文字列は数として扱うことはできません。変換は、通常(例:"。"ですべて","を置き換える)、正規化(例:ラウンド小数点以下2桁までのすべての数字)またはクリーンアップで構成されています。