2015-06-11 2 views
0

Я не программист, но мне нужна помощь с кодировкой javascript, чтобы снять настроенную кнопку «Отправить с помощью Docusign» в salesforce. Im пытается иметь 3 встроенных в него основных функцийНастроить кнопку «Отправить с помощью Docusign» в Salesforce

1) Он проверяет, что все необходимые поля слияния в salesforce заполняются, прежде чем позволить пользователю нажать кнопку . 2) Он смотрит на значение одного из полей в salesforce и выбирает подходящий шаблон для использования (Китай против не-Китая). Каждый шаблон точно совпадает с заполняемыми полями, имеет только другой язык для области в теле. 3) Он заполняет правильный шаблон с полями слияния Salesforce и отправляет сообщение docusign.

У меня есть код пользовательской кнопки из моего первоначального вызова с Docusign. Я мог бы использовать этот код, чтобы просто создать две отдельные пользовательские кнопки, но я бы предпочел только одну кнопку, чтобы удалить вероятность ошибки пользователя. Код, который они предоставили мне здесь:

{!REQUIRESCRIPT("/apex/dsfs__DocuSign_JavaScript")} 
//********* Option Declarations (Do not modify)*********// 
var RC = '';var RSL='';var RSRO='';var RROS='';var CCRM='';var CCTM='';var CCNM='';var CRCL='';var CRL='';var OCO='';var DST='';var LA='';var CEM='';var CES='';var STB='';var SSB='';var SES='';var SEM='';var SRS='';var SCS ='';var RES=''; 
//*************************************************// 
CES='This is my subject'; //Email Subject 
CEM='This is my message'; //Email Message 
LA='0'; //List Attachments from within Notes and Attachments - 0 or 1 
DST='Template ID 1'; //Default Standard Template ID 
OCO='Send'; //On Click Options - Send or Tag 
CRL='Email~{!Account.Email_of_Signer__c};LastName~{!Account.Name_of_Signer__c};RoutingOrder~1;Role~R1'; 
CCRM='R1~Signer 1'; 
//********* Page Callout (Do not modify) *********// 
window.location.href="/apex/dsfs__DocuSign_CreateEnvelope?DSEID=0&SourceID={!Account.Id}&RC="+RC+"&RSL="+RSL+"&RSRO="+RSRO+"&RROS="+RROS+"&CCRM="+CCRM+"&CCTM="+CCTM+"&CRCL="+CRCL+"&CRL="+CRL+"&OCO="+OCO+"&DST="+DST+"&CCNM="+CCNM+"&LA="+LA+"&CEM="+CEM+"&CES="+CES+"&SRS="+SRS+"&STB="+STB+"&SSB="+SSB+"&SES="+SES+"&SEM="+SEM+"&SRS="+SRS+"&SCS="+SCS+"&RES="+RES; 
//*******************************************// 

Затем я попытался собрать воедино логику, необходимую для выполнения 3 пункта выше других форумов Salesforce и DocuSign, но я не могу заставить его работать. Опять же, я не программист, так что я, вероятно, сделать некоторые очень глупые ошибки здесь, но то, что у меня есть:

{!REQUIRESCRIPT("/apex/dsfs__DocuSign_JavaScript")} 
{!REQUIRESCRIPT("/soap/ajax/20.0/connection.js")} 
{!REQUIRESCRIPT("/soap/ajax/20.0/apex.js")} 
//********* Option Declarations (Do not modify)*********// 
var RC = '';var RSL='';var RSRO='';var RROS='';var CCRM='';var CCTM='';var CCNM='';var CRCL='';var CRL='';var OCO='';var DST='';var LA='';var CEM='';var CES='';var STB='';var SSB='';var SES='';var SEM='';var SRS='';var SCS ='';var RES=''; 
//*************************************************// 

//Verify that all fields are filled out 
if(ISBLANK({!Account.Company_s_Legal_Name__c})||ISBLANK({!Account.Incorporation_Location__c})||ISBLANK({!Account.Principle_Place_of_Business__c})||ISBLANK({!Account.Name_of_Signer__c})||ISBLANK({!Account.Title_of_Signer__c})||ISBLANK({!Account.Email_of_Signer__c})){ 
alert ("Please feel out all fields in the 'NDA Requirements' section"); 
} 
//Fill out and send Chinese template if incorporated in China or Hong Kong 
elseif({!Account.China_or_HK__c}=="China"||{!Account.China_or_HK__c}=="Hong Kong"){ 
CES='This is my subject'; //Email Subject 
CEM='This is my message'; //Email Message 
LA='0'; //List Attachments from within Notes and Attachments - 0 or 1 
DST='Tempalte ID 1'; //Default Standard Template ID 
OCO='Send'; //On Click Options - Send or Tag 
CRL='Email~{!Account.Email_of_Signer__c};LastName~{!Account.Name_of_Signer__c};RoutingOrder~1;Role~R1'; 
CCRM='R1~Signer 1'; 

//********* Page Callout (Do not modify) *********// 
window.location.href="/apex/dsfs__DocuSign_CreateEnvelope?DSEID=0&SourceID={!Account.Id}&RC="+RC+"&RSL="+RSL+"&RSRO="+RSRO+"&RROS="+RROS+"&CCRM="+CCRM+"&CCTM="+CCTM+"&CRCL="+CRCL+"&CRL="+CRL+"&OCO="+OCO+"&DST="+DST+"&CCNM="+CCNM+"&LA="+LA+"&CEM="+CEM+"&CES="+CES+"&SRS="+SRS+"&STB="+STB+"&SSB="+SSB+"&SES="+SES+"&SEM="+SEM+"&SRS="+SRS+"&SCS="+SCS+"&RES="+RES; 
//*******************************************// 
} 
//Otherwise fill out and send Non-china template 
else{ 
CES='This is my subject'; //Email Subject 
CEM='This is my message'; //Email Message 
LA='0'; //List Attachments from within Notes and Attachments - 0 or 1 
DST='Template ID 2'; //Default Standard Template ID 
OCO='Send'; //On Click Options - Send or Tag 
CRL='Email~{!Account.Email_of_Signer__c};LastName~{!Account.Name_of_Signer__c};RoutingOrder~1;Role~R1'; 
CCRM='R1~Signer 1'; 

//********* Page Callout (Do not modify) *********// 
window.location.href="/apex/dsfs__DocuSign_CreateEnvelope?DSEID=0&SourceID={!Account.Id}&RC="+RC+"&RSL="+RSL+"&RSRO="+RSRO+"&RROS="+RROS+"&CCRM="+CCRM+"&CCTM="+CCTM+"&CRCL="+CRCL+"&CRL="+CRL+"&OCO="+OCO+"&DST="+DST+"&CCNM="+CCNM+"&LA="+LA+"&CEM="+CEM+"&CES="+CES+"&SRS="+SRS+"&STB="+STB+"&SSB="+SSB+"&SES="+SES+"&SEM="+SEM+"&SRS="+SRS+"&SCS="+SCS+"&RES="+RES; 
//*******************************************// 
} 

Мой DocuSign Вводный Успех Консультант указал, что StackOverflow сообщество может быть в состоянии помочь здесь , Если так, я был бы чрезвычайно благодарен. Даже если кто-то с опытом кодирования может сказать мне, что это трудная вещь для снятия или нет, было бы полезно, чтобы я мог знать, есть ли у меня шанс заставить его работать самостоятельно или нет.

+0

Что проблема? Ошибка Javascript, что-нибудь еще? –

+0

Он генерирует «отсутствующий» после списка аргументов «сообщение об ошибке – Larry

ответ

0

Я считаю, что поле слияния должно быть указано в условных операторах. Вместо:

elseif({!Account.China_or_HK__c}=="China"||{!Account.China_or_HK__c}=="Hong Kong"){ 

Попробуйте

elseif("{!Account.China_or_HK__c}"=="China"||"{!Account.China_or_HK__c}"=="Hong Kong"){ 

И сделать то же самое во всех ваших еслиещеElseIf

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