データフィルタ
Salesforce接続を使用するときに、任意のタスクタイプに対して次のタイプのデータフィルタを作成できます。
- •簡易
1つまたは複数の簡易データフィルタを作成します。複数の簡易データフィルタを作成した場合、関連するタスクでは各フィルタ間にAND演算子が作成され、すべての簡易データフィルタに当てはまる行がロードされます。例えば、取引先のSalesforceオブジェクトの行を、データベーステーブルにロードする場合を考えます。年間売上が$100,000以上で、従業員数が500を超える取引先のみをロードするとします。この場合、簡易データフィルタを次のように設定します。
フィールド | 演算子 | フィールド値 |
---|
AnnualRevenue | 以上 | 100000 |
NumberOfEmployees | より大きい | 500 |
- •詳細
AND、OR、またはネストされた条件を使用する複雑な式を作るには、詳細データフィルタを作成します。すべてのフィルタを含めた1つの式を入力します。入力した式は、ソースからレコードを取得するために使用されるクエリ内のWHERE句になります。
例えば、取引先のSalesforceオブジェクトの行を、データベーステーブルにロードする場合を考えます。請求先の州がカリフォルニアまたはニューヨークで、年間売上が$100,000以上のレコードをロードするとします。この場合、詳細フィルタの式を次のように設定します。
(BillingState = 'CA' OR BillingState = 'NY') AND (AnnualRevenue >= 100000)
Salesforceオブジェクトにデータフィルタを作成すると、対応するタスクによって、WHERE句を含むSOQLクエリが生成されます。このWHERE句はデータフィルタを表します。SOQLクエリの文字数は、20,000字より少なくする必要があります。クエリの文字制限を超過すると、次のエラーが表示されます。
Salesforce SOQL limit of 5000 characters has been exceeded for the object: <Salesforce object>.
Please exclude more fields or decrease the filters.
同期タスクに含まれる各オブジェクトに対して、データフィルタのセットを作成できます。データフィルタの各セットは、互いに独立して動作します。簡易および詳細のデータフィルタの条件で、次のデータフィルタ変数を使用できます。
- •$LastRunDate
- •$LastRunTime
注: 複数のタイムゾーンにまたがる日付を比較する場合は、タイムゾーンの違いを考慮します。$LastRunDate変数および$LastRunTime変数の日時は、データ統合のSalesforceアプリケーションで設定されたタイムゾーンに基づきます。実際のジョブの日付と時間は、SalesforceソースのGMTタイムゾーンに基づいています。
データフィルタのルールおよびガイドライン
Salesforceコネクタタスクのデータフィルタについては、次のルールおよびガイドラインを考慮します。
- •簡易データフィルタのフィールドのリストには、LongTextAreaデータ型のSalesforceフィールドが表示されません。
- •URLデータ型のSalesforceフィールドを含める際に、値に「http:// 」を含めないようにします。例えば、値がhttp://www.informatica.com の場合は、www.informatica.com と入力します。
- •Phoneデータ型のSalesforceフィールドを含める場合は、値を(XXX) XXX-XXXXの構文で入力します。例えば、(555) 555-1212と入力します。指定した構文が正しくないと、アプリケーションはこのフィルタを無視します。
- •フィルタにSalesforce IDのフィールドを含める際に、IDの値を正確に指定します。ダミーのID値を入力すると、SOQLクエリは失敗します。
- •Salesforceデータを同期タスクのデータベースターゲットに書き込むときは、Salesforceデータの日時データ型が、Date(yyyy-MM-dd)およびDateTime(yyyy-MM-dd HH:mm:ss)という必須形式に従っていることを確認してください。
レコードに含まれる日時の形式が正しくないと、その行はアプリケーションによって拒否されます。Salesforceソースの日時データ型に日付が含まれていて時刻が含まれていない場合、アプリケーションでは日付値の末尾に「00:00:00」が付加され、値が必須形式になります。
データベースターゲットに書き込むとき、アプリケーションでは、Salesforceの日付データと日時データが、データベースによって期待される正しい形式に変換されます。