3

カスタムオブジェクトを既存のリードオブジェクトに挿入しようとすると、エラーメッセージが表示されます。

List<Lead> leads =[select Id from Lead where Email =:lead.Email ];
if(leads.size()>0)
{
    Lead existing_lead = new Lead(Id = leads[0].id);
    social_account.Lead__c = existing_lead.Id; //social_account is a custom object that
                                               //has a child relationship to lead.
                                               //ie lead is a parent of social_accounts.
    update existing_lead;
    insert social_account; //if there is an existing lead with same same email,
                           //i'd like to insert new social_account to an exsiting lead.
}

このエラーが発生します:


554 System.DmlException:更新に失敗しました。ID00Q3000000WW3isEADの行0の最初の例外。最初のエラー:CANNOT_UPDATE_CONVERTED_LEAD、変換されたリードを参照できません:[]

Class.ProcessContact.handleInboundEmail:行81、列9外部エントリポイント


「updateexisting_lead」をコメントアウトしても、同様のエラーメッセージが表示されます。


554 System.DmlException:挿入に失敗しました。行0の最初の例外。最初のエラー:CANNOT_UPDATE_CONVERTED_LEAD、変換されたリードを参照できません:[Lead__c]

Class.ProcessContact.handleInboundEmail:行82、列9外部エントリポイント


何か提案をいただければ幸いです。

よろしく

4

2 に答える 2

15

このエラーは、リードレコードが連絡先に変換されたことを意味します。変換されると、リードレコードは更新できません。LeadオブジェクトにはIsConvertedプロパティがあり、変換されているかどうかを確認できます。IsConvertedがtrueの場合、ConvertedContactIdは新しい連絡先レコードの連絡先IDを保持します。

リードオブジェクトリファレンス

于 2010-09-29T22:06:16.143 に答える
0

変換されたリードはデフォルトでは更新できませんが、Sprint 16のリリース後は、いくつかの設定が必要になる可能性があります。

-[設定]から、[クイック検索]ボックスに[ユーザーインターフェイス]と入力し、[ユーザーインターフェイス]を選択して、[レコード作成時に監査フィールドを設定する]と[非アクティブな所有者でレコードを更新する]ユーザー権限を有効にします。

-[設定]から、[クイック検索]ボックスに「プロファイル」と入力し、[プロファイル]を選択します。プロファイルを選択してから、[レコード作成時に監査フィールドを設定]を選択します。

ここでは、これに関する詳細情報を見つけることができます。

于 2016-07-21T10:43:51.980 に答える