目次

Search

  1. はじめに
  2. SAPテーブルコネクタの概要
  3. SAPテーブルコネクタの接続
  4. SAPテーブルを使用したマッピングとマッピングタスク
  5. SAPテーブルを使用した同期タスク
  6. データ型リファレンス
  7. SAPテーブルコネクタに関するFAQ

SAPテーブルコネクタ

SAPテーブルコネクタ

フィルタのオプション

フィルタのオプション

データがデータフローに入る前に、データのフィルタリングを行えるようにソーストランスフォーメーションを設定できます。ソースクエリオプションを使用してソースデータをフィルタリングできます。
データをフィルタリングするには、ソーストランスフォーメーションの
[ソース]
タブで、ソースクエリオプションを設定します。
[クエリオプション]
セクションを展開し、フィルタの条件を設定します。
フィルタを設定する際は、簡易フィルタまたは詳細フィルタを使用できます。フィルタ式のパラメータを使用して、タスクのフィルタ式を定義することもできます。
ソーストランスフォーメーションでは、次のフィルタを設定できます。
簡易データフィルタ
簡易データフィルタを使用するには、ソースオブジェクト、ソースフィールド、演算子を選択してから、値を入力します。
例えば、EKKOテーブルのBEDATフィールドから、日付が2016-01-29より前のデータをフィルタリングするには、
EKKO BEDAT <= 2016-01-29
という形式を使用します。
簡易データフィルタで、フィルタ式のパラメータを使用することもできます。
例えば、
EKKO EBELN = $$PARAM
のように使用します。
次の図は、EKKOテーブルのBEDATフィールドから、日付が2016-01-29より前のデータをフィルタリングするように設定した簡易データフィルタを示しています。
ソースオブジェクトに対し、日付データ型の値を使用してデータをフィルタリングするように設定した簡易データフィルタ。
$LastRunTime変数を使用した簡易データフィルタ
簡易データフィルタで$LastRunTime変数を使用するには、ソースオブジェクト、ソースフィールド、演算子を選択してから、値を入力します。
例えば、BKPFテーブルのCPUTMフィールドから、LastRunTime変数と同じかそれより前のデータをフィルタリングするには、
BKPF CPUTM <= $LastRunTime
という形式を使用します。
次の図は、BKPFテーブルのCPUTMフィールドから、LastRunTime変数と同じかそれより前のデータをフィルタリングするように設定した簡易データフィルタを示しています。
ソースオブジェクトに対し、$LastRunTime変数を使用してデータをフィルタリングするように設定した簡易データフィルタ。
ABAP CDSビューオブジェクトの簡易データフィルタ
ABAP CDSビューオブジェクトで簡易データフィルタを使用するには、ABAP CDSビューのソースオブジェクト、ソースフィールド、演算子を選択してから、値を入力します。
例えば、ZSAN_CDS_OPT_PARAM ABAP CDSビューオブジェクトのparamO_P2フィールドから、値が10ではないデータをフィルタリングするには、次の形式を使用します。
ZSAN_CDS_OPT_PARAM paramO_P2 <> 10
簡易データフィルタでは、フィルタ式のパラメータを使用して、ABAP CDSビューオブジェクトからデータをフィルタリングすることもできます。
例えば、
ZSAN_CDS_OPT_PARAM paramM_P3 = $$PARAM1
のように使用します。
この例では、paramOはオプションのパラメータを示し、paramMは必須のパラメータを示します。
次の図は、ABAP CDSビューオブジェクトのparamM_P3フィールドから、定義したパラメータと一致するデータをフィルタリングするように設定した簡易データフィルタを示しています。
パラメータ化した値を使用して、ABAP CDSビューオブジェクトからデータをフィルタリングするように設定した簡易データフィルタ。
単一の条件を使用した詳細データフィルタ
単一の条件を含む詳細なデータフィルタを使用するには、フィルタの種類として
[詳細]
を選択してから、次の形式でフィールド式を入力します。
( <TableName.Field> <Operator> <'Value'> )
例えば、EKKOテーブルのBUKRSフィールドから、値が1010のデータをフィルタリングするには、
( EKKO.BUKRS = '1010' )
という形式を使用します。
詳細データフィルタで、フィルタ式のパラメータを使用することもできます。
例えば、
( EKKO EBELN = $$PARAM )
のように使用します。
次の図は、EKKOテーブルのBUKRSフィールドから、定義したパラメータと一致するデータをフィルタリングするように設定した詳細データフィルタを示しています。
ソースオブジェクトに対し、パラメータを使用してデータをフィルタリングする単一の条件を含む、設定済みの詳細データフィルタ。
複数の条件を使用した詳細データフィルタ
複数の条件を含む詳細データフィルタを使用するには、フィルタの種類として
[詳細]
を選択してから、次の形式でフィールド式を入力します。
( <TableName.Field> <Operator> <'Value'> AND <Table name.Field> <Operator> <'Value'> ) OR ( <Table name.Field> <Operator> <'Value'> AND <Table name.Field> <Operator> <'Value'> )
例えば、EKKOテーブルの複数のフィールドからデータをフィルタリングするには、論理式を含む次の形式を使用します:
( EKKO.BUKRS = '1010' AND EKKO.LPONR < '60' AND EKKO.ERNAM <> 'PURCHASER' AND EKKO.BEDAT <= '20160129' ) OR ( EKKO.BUKRS = '1110' )
詳細データフィルタで、フィルタ式のパラメータを使用することもできます。
例えば、
( EKKO.BUKRS = $$PARAM AND EKKO.LPONR < $$PARAM1 AND EKKO.ERNAM <> 'PURCHASER' AND EKKO.BEDAT <= $$PARAM2 ) OR ( EKKO.BUKRS = $$PARAM3 )
のように使用します。
次の図は、論理条件であるANDおよびORを含む式を使用して、EKKOテーブルの複数のフィールドからデータをフィルタリングするように設定された詳細データフィルタを示しています。
ソースオブジェクトに対し、パラメータ化されていない値を使用してデータをフィルタリングする複数の条件を含む、設定済みの詳細データフィルタ。
$LastRunTime変数を使用した詳細データフィルタ
詳細データフィルタで$LastRunTime変数を使用するには、フィルタの種類として
[詳細]
を選択してから、次の形式でフィールド式を入力します。
( <Table name.Field> <operator> <Value> )
例えば、EKKOテーブルのBEDATフィールドから、LastRunTime変数より前のデータをフィルタリングするには、
( EKKO.BEDAT < $LastRunTime )
という形式を使用します。
次の図は、EKKOテーブルのBEDATフィールドから、LastRunTime変数より前のデータをフィルタリングするように設定した詳細データフィルタを示しています。
ソースオブジェクトに対し、$LastRunTime変数を使用してデータをフィルタリングするように設定した詳細データフィルタ。
SY-DATUM変数を使用した詳細データフィルタ
詳細データフィルタでSY-DATUM変数を使用するには、フィルタのタイプとして
[詳細]
を選択し、インストールしたトランスポートに基づいて次の形式でフィールド式を入力します。
( <Table name.Field> <operator> <Value> )
例えば、データが現在の日付より2日前のものであり、TABLE_READERトランスポートがインストールされている場合に、EKKOテーブルのBEDATフィールドのデータをフィルタリングするには、次の形式を使用します:
( EKKO.BEDAT = SY-DATUM - 2 )
TABLE_READER_Addonトランスポートをインストールしたときに、詳細データフィルタでSY-DATUM変数を使用することもできます。
例えば、次の形式を使用します:
( EKKO.BEDAT = @SY-DATUM - 2 )
次の図は、データが2日前のものであり、TABLE_READER_Addonトランスポートがインストールされている場合に、EKKOテーブルのBEDATフィールドからデータをフィルタリングする設定済みの詳細データフィルタを示しています。
SY-DATUM変数を使用して過去の日付からソースオブジェクトにデータをフィルタリングする、設定済みの詳細データフィルタ。