ソート処理
オペレーション名
ソート
機能概要
入力データをソートします。
プロパティ
基本設定
項目名 |
必須/省略可 |
変数の使用 |
説明 |
備考 |
---|---|---|---|---|
名前 |
必須 |
使用不可 |
スクリプトキャンバス上での名前を入力します。 |
|
入力データ |
必須 |
使用不可 |
スクリプトキャンバス上にあるコンポーネントを選択します。 |
|
必須設定
項目名 |
必須/省略可 |
変数の使用 |
説明 |
備考 |
---|---|---|---|---|
ソートキー設定 |
必須 |
- |
ソート処理のキーとなる列を指定します。 上の行に設定したキーの比較優先順位が高くなります。 各列は以下のボタンで操作することができます。
|
注意
データ型がbyte[]型の列を指定してソートすることはできません。 |
ソートキー設定/列名 |
必須 |
使用不可 |
キーとなる列名を選択します。 |
|
ソートキー設定/データ型 |
必須 |
使用不可 |
キーとなる列が文字列の場合、ソート時のデータ型を選択します。
|
|
ソートキー設定/順序 |
必須 |
使用不可 |
ソート処理の順序を選択します。
|
|
ソートキーの値が同じデータは入力順序を維持する |
省略可 |
使用不可 |
ソートキーの値が同じデータの場合、入力データの順序を維持するかどうかを選択します。
|
|
出力設定
項目名 |
必須/省略可 |
変数の使用 |
説明 |
備考 |
---|---|---|---|---|
出力を手動で設定 |
省略可 |
使用不可 |
出力対象となる列を手動で設定するかどうかを選択します。
|
|
出力対象設定 |
省略可 |
- |
出力対象となる列を指定します。 各列は以下のボタンで操作することができます。
|
|
出力対象設定/列名 |
必須 |
使用不可 |
出力対象となる列の列名を選択します。 |
|
コメント
項目名 |
必須/省略可 |
変数の使用 |
説明 |
備考 |
---|---|---|---|---|
コメント |
省略可 |
使用不可 |
このコネクターの簡単な説明を記述することができます。 |
|
スキーマ
入力スキーマ
入力元コンポーネントのスキーマと同じです。
Mapperでのスキーマ読み込み
出力スキーマは自動で読み込まれますが、入力スキーマは手動で読み込む必要があります。
読み取りを行うデータのスキーマを指定してください。
詳細については、「スキーマ編集」を参照してください。
大容量データ処理
大容量データ処理には対応していません。
PSPでの使用について
PSPでは使用できません。
使用できるコンポーネント変数
コンポーネント変数名 |
説明 |
備考 |
---|---|---|
message_category |
エラー発生時、発生したエラーに対応するメッセージコードのカテゴリが格納されます。 |
|
message_code |
エラー発生時、発生したエラーに対応するメッセージコードのコードが格納されます。 |
|
message_level |
エラー発生時、発生したエラーに対応するメッセージコードの重要度が格納されます。 |
|
error_type |
エラー発生時、発生したエラーの種類が格納されます。 |
|
error_message |
エラー発生時、発生したエラーのメッセージが格納されます。 |
|
error_trace |
エラー発生時、発生したエラーのトレース情報が格納されます。 |
|
入力元コンポーネントのスキーマ変更について
-
[入力データ]に指定したコンポーネントのスキーマを変更した場合、ソート処理にその変更を反映させるため、ソート処理のプロパティ設定ダイアログを開いて[完了]ボタンをクリックしてください。
-
[入力データ]に指定したコンポーネントのスキーマ構造を変更(スキーマの要素の順序変更や削除など)した場合、[ソートキー設定/列名]や[出力対象設定/列名]の設定も合わせて変更する必要があります。
これは、ソート処理が列情報を名前ではなく順序(インデックス)で保持しているためです。
nullと空文字について
-
[ソートキー設定]で指定した列の値にnullが存在する場合、エラーが発生します。
-
[ソートキー設定]で指定した列の値に空文字が存在する場合、[ソートキー設定/データ型]で指定した値により動作が異なります。
-
[文字列]の場合、空文字をソートキーの値として処理します。
-
[文字列]以外の場合、エラーが発生します。
-
-
並列処理をサポートしています。
= 備考 =並列処理の仕様制限については、「仕様制限」を参照してください。
-
[ソートキー設定]および[出力対象設定]を指定する際には、入力元コンポーネントの出力スキーマが設定されている必要があります。
スキーマを手動で設定するコンポーネントの場合は、Mapperでスキーマを読み込んでください。
-
[ソートキー設定/データ型]に[日付/時間]を選択した場合、指定した列の値に複数の日付フォーマットが混在すると、実行時にエラーが発生します。
-
入力元のコンポーネントが大容量データ処理を行う場合でも、ソート処理では一時的にデータをメモリ中に保持します。
そのためデータが大きい場合には、大容量データ処理時にもOutOfMemoryErrorが発生する可能性があります。
例外名 |
原因 |
対策 |
---|---|---|
InputDataNotFoundException |
[入力データ]が指定されていません。 |
[入力データ]を指定する、またはデータフローを引いてください。 |
InvalidInputTypeException |
[入力データ]がテーブルモデル型ではありません。 |
[入力データ]がテーブルモデル型かどうかを確認してください。 |
InvalidPropertyConfigurationException <プロパティ名>に値が指定されていません。 |
[<プロパティ名>]に値が指定されていません。 |
[<プロパティ名>]を指定してください。 |
InvalidPropertyConfigurationException <プロパティ名1>の[<行番号>]行目の[<プロパティ名2>]に値が指定されていません。 |
[<プロパティ名2>]に値が指定されていません。 |
[<プロパティ名2>]を指定してください。 |
InvalidPropertyConfigurationException <プロパティ名>の[<行番号>]行目に指定された値が重複しています。 |
[<プロパティ名>]に指定した値が重複しています。 |
[<プロパティ名>]に指定した値が適切かどうかを確認してください。 |
ConversionFailedException 列の値をソートキーとして処理できません。 |
入力データの内容に、[ソートキー設定]に指定したとおりに処理できない値が含まれています。 |
入力データが[ソートキー設定]に指定した内容に適合するかどうか、またはnullや空文字が含まれているかどうかを確認してください。 |
ConversionFailedException [<列の値>]に適用可能な日付フォーマットが見つかりませんでした。 |
[<列の値>]に適用可能な日付フォーマットが見つかりませんでした。 |
[<列の値>]がHULFT Squareの日付フォーマットにしたがっているか確認してください。 |