2014-01-29 2 views
1

Я создал кнопку для эскалации чехла. Я пытаюсь изменить тип записи, «Owner» и добавить «Case Escalated» в поле «Notes».Обновление Salesforce Информация о корпусе

Код:

{!REQUIRESCRIPT("/soap/ajax/27.0/connection.js")} 

var objCase = new sforce.SObject('Case'); 
objCase.Id = '{!Case.Id}'; 
objCase.Owner__c = 'Global Salesforce Team'; 
objCase.RecordTypeId = '012C00000007l5WIAQ'; 
objCase.Notes__c += 'Case Escalated'; 

var result = sforce.connection.update([objCase]); 
if(result[0].success=='true'){ 
    alert('The Case was Updated Successfully'); 
    location.reload(true); 
} else if(result[0].success=='true'){ 
    alert('There was an issue updating the case'); 
} 

Однако это вытирает поле «Примечания» и добавляет в «undefinedCase обостряются» вместо присоединения строки «Case обостряются» до конца все, что там.

Я новичок в JavaScript, пожалуйста, приятно :)

+0

Я не использовал библиотеку sforce js, так что это всего лишь догадка: objCase.Notes__c = objCase.Notes__c + 'Case Escalated'; Я знаю, что мы ожидаем от + =, но, возможно, это ведет себя по-другому. –

ответ

1

я видел код и проблема, кажется, что вы создаете новый экземпляр Case для обновления, так что нет ничего на поле Примечания , и как только вы вставляете запись, она перезаписывает единственный текст там «Case Escalated», чтобы заставить это работать, вам нужно сделать запрос для поиска значения, которое было до этого в поле, а затем добавить значение в примечания__c поле.

{!REQUIRESCRIPT("/soap/ajax/27.0/connection.js")} 

var result = sforce.connection.query("select Id, Owner__c, RecordTypeId, Notes__c from  Case WHERE Id='{!Case.Id}' LIMIT 1"); 
var records = result.getArray('records'); 

var objCase = records[0]; 
objCase.Owner__c = 'Global Salesforce Team'; 
objCase.RecordTypeId = '012C00000007l5WIAQ'; 
objCase.Notes__c += 'Case Escalated'; 

var result = sforce.connection.update([objCase]); 
if(result[0].success=='true'){ 
    alert('The Case was Updated Successfully'); 
location.reload(true); 
} else if(result[0].success=='true'){ 
    alert('There was an issue updating the case'); 
} 

Ссылка на руководстве для разработчиков с примером находится в http://www.salesforce.com/us/developer/docs/ajax/apex_ajax.pdf

Havent тестировал и есть некоторая обработка ошибок должно быть сделано в моем коде, но он должен работать.

Смежные вопросы