0

ボタンをクリックすると、Opportunity と Contact の子である Guarantor__c というオブジェクトの複数のレコードを作成しようとしています。すべての保証人レコードは、ボタンがあるページの商談に関連している必要があります。レコードは、保証人レコード タイプを持つ商談のアカウントのすべての連絡先です。以下の SOQL は非常に単純です。これはエラーなしで実行されますが、レコードは入力されません。何か案は?

{!REQUIRESCRIPT('/soap/ajax/27.0/connection.js')} 
var url = parent.location.href; 
var updateRecords = []; 
var principalContacts = sforce.connection.query("Select Id From Contact where AccountId ='{!Account.Id}' and RecordTypeId ='012A0000000nr4BIAQ'"); 
var principalContactsArray = principalContacts.getArray("records"); 
if (principalContactsArray.length < 1){ 
    alert("There are no guarantors for this opportunity. Go back to the Account and enter the guarantors.")  
}else{ 
    for (eachPrincipalContact in principalContactsArray){ 
        var newGuarantor = new sforce.SObject("Guarantor__c"); 
        newGuarantor.COntact__ = eachPrincipalContact; 
        newGuarantor.Opportunity__c ="{!Opportunity.Id}"; 
        updateRecords.push(newGuarantor); 
        sforce.connection.create(updateRecords); 
    } 
}
4

1 に答える 1

0
sforce.connection.create(updateRecords);

for ループの外側に配置する必要があります。お気に入り

for (eachPrincipalContact in principalContactsArray){ 
    var newGuarantor = new sforce.SObject("Guarantor__c"); 
    newGuarantor.COntact__ = eachPrincipalContact; 
    newGuarantor.Opportunity__c ="{!Opportunity.Id}"; 
    updateRecords.push(newGuarantor);        
}
sforce.connection.create(updateRecords);
于 2014-02-03T21:23:12.127 に答える