標準オブジェクトの特殊処理
子オブジェクトまたは連結オブジェクトに外部IDフィールドを作成できない場合は、挿入操作で外部IDを作成します。タスクを実行する前に、タスク操作を挿入から更新/挿入に変更します。
次の標準オブジェクトでは、特殊処理が必要です。
- Pricebook2
- 組織ごとに、変更できない標準Pricebookオブジェクトが含まれます。ソースにPricebook2オブジェクトが含まれる場合、タスクでターゲットに外部IDが生成された後、タスクを実行する前にPricebook2オブジェクトIDをターゲットの対応する外部IDフィールドにコピーする必要があります。
- RecordTypes
- RecordTypesオブジェクトは、個々のオブジェクトのプロファイルレベルで有効にした場合に限り選択できます。タスクを実行する前に、ターゲットプロファイルで必要なRecordTypesを有効にします。
- AssetRecord
- AssetRecordオブジェクトを作成するには、AccountオブジェクトまたはContactオブジェクトをタスク内のAssetオブジェクトに追加する必要があります。追加しない場合、タスクが失敗します。これらのリレーションは必須ではないため、検証レポートにエラーも警告も表示されません。
- PersonAccounts
PersonAccountsオブジェクトでは、AccountNameフィールドを直接編集できません。Salesforceは、FirstNameフィールドとLastNameフィールドを、設定した言語設定に基づき適切な順序で結合し、AccountNameフィールドを作成します。AccountNameフィールドは表示および編集できます。AccountNameフィールドのフィールドレベルのセキュリティを変更して、読み取り専用フィールドにすることはできません。AccountNameフィールドへの書き込みを回避するには、PersonAccountsオブジェクトでAccountNameフィールドに無効化マスキングを適用します。
- Contracts
- Contractsオブジェクトの挿入とアクティブ化は一度に実行できません。Contractsオブジェクトをドラフトステータスで挿入してから、アクティブ化ステータスに更新します。Contractsオブジェクトをアクティブ化ステータスで挿入しようとすると、「無効なステータス」エラーが発生します。
- Idea
- Ideaオブジェクトは、インプレースマスキングにのみ使用します。Ideaオブジェクトには、Communityオブジェクトとの必須の親リレーションがあります。ただし、Communityオブジェクトには読み取り専用フィールドが含まれています。ターゲットがソースと異なる場合、タスクはレコードをCommunityオブジェクトに挿入できません。
- OpportunityLineItem
- OpportunityLineItemオブジェクトでは、Unit PriceフィールドとTotal Priceフィールドを表示および更新できます。レコードを挿入するときは、フィールドを1つのみ指定します。両方をしていると、タスクは失敗しエラーが発生します。デフォルトでは、Unit PriceフィールドとTotal Priceフィールドの両方が指定されています。エラーを回避するには、フィールドのいずれかに無効化マスキングを適用します。
- User
- タスクでは、2つの方法でUserオブジェクトのリレーションを調整できます。対応するユーザーリレーションが[ソース]ページで選択されている場合、タスクは、デフォルトで[エイリアス]フィールドを使用して調整を行います。
- もう1つの方法では、オブジェクトの[所有者ID]フィールドにカスタムの置換マスキングを適用します。この場合、タスクはデフォルトのエイリアスの調整を無効にするため、[ソース]ページでユーザーリレーションを選択する必要はありません。カスタムの置換マスキングを適用するには、次の手順を実行します。
- 1ターゲットおよび対応するソースユーザーのIDを使用して、ディクショナリファイルを作成します。
- 2Secure Agentインストールディレクトリのディクショナリファイルの場所にファイルをコピーします。
- 3ディクショナリファイルディレクトリへのフラットファイル接続を作成します。
- 4ディクショナリファイルを使用して、[所有者ID]フィールドでカスタムの置換マスキングを設定します。
- 5ターゲットにソースと同じ所有者IDが含まれていない場合は、ルックアップエラー定数のターゲットユーザーIDを指定します。