2017-01-17 2 views
0

У меня есть этот код (Userevent скрипт), который работает хорошо с моей пользовательской кнопки,Открыть всплывающее окно до или после нажатия кнопки Workflow в NetSuite

function beforeLoad_addButton(type, form) { 
    var url = nlapiResolveURL('SUITELET', '543', 'customdeploy1')+'&entity=' + nlapiGetRecordId() + '&recordType=' + nlapiGetRecordType(); 
    var script = "win = window.open('" + url + "', 'win', 'resizable=0,scrollbars=0,width=450,height=300');"; 
    form.addButton('custpage_buttonalert', 'Add Memo', script); 
} 

, но теперь я хочу, чтобы открыть это всплывающее окно (Suitelet) из другая кнопка, созданная с помощью Workflow. Как я могу подключить действие onclick к кнопке, созданной с помощью Workflow, без прерывания рабочего процесса.

+0

Его невозможно в Workflow – Wenson

ответ

0

мне удалось сделать это следующим образом:

function beforeLoad_addButton(type, form) { 
    var url = nlapiResolveURL('SUITELET', '424', 'customdeploy1')+'&entity=' + nlapiGetRecordId() + '&recordType=' + nlapiGetRecordType(); 
    var script = "win = window.open('" + url + "', 'win', 'resizable=0,scrollbars=0,width=450,height=300');"; 
    form.addButton('custpage_buttonalert', 'Add Memo', script); 

    var ids = ['custpageworkflow105', 'custpageworkflow128', 'custpageworkflow148', 'custpageworkflow106', 'custpageworkflow129', 'custpageworkflow149', 'custpageworkflow107', 'custpageworkflow130', 'custpageworkflow150']; 
    var script1 = ''; 

    script1 += '<script>'; 

    ids.forEach(function(entry) { 
      script1 += 'jQuery("#' + entry + '").click(function() {'+ script +'});'; 
    }); 

    script1 += '</script>' 


    var newInlineHtmlField = form.addField('custpage_myinline','inlinehtml','',null,null); 
     newInlineHtmlField.setDefaultValue(script1); 
} 

Я инъекции Javascript в форме. Здесь массив «ids» содержит идентификаторы кнопки рабочего процесса. Когда одна из кнопок нажата, выполняется код в переменной script1, после чего выполняется рабочий процесс.

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