【问题标题】:Open popup before or after clicking the Workflow button in Netsuite在 Netsuite 中单击“工作流”按钮之前或之后打开弹出窗口
【发布时间】:2017-01-17 21:02:44
【问题描述】:

我有这段代码(用户事件脚本),可以在我的自定义按钮上正常工作,

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)。如何在不中断工作流程的情况下,在使用工作流程创建的按钮上挂钩 onclick 操作。

【问题讨论】:

  • 在工作流中不可能

标签: suitescript


【解决方案1】:

我设法做到了:

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”数组包含工作流按钮 ID。单击其中一个按钮时,将执行 script1 变量中的代码,然后执行工作流。

【讨论】:

    猜你喜欢
    • 2019-01-17
    • 1970-01-01
    • 2018-12-18
    • 1970-01-01
    • 1970-01-01
    • 2018-11-07
    • 2022-12-01
    • 2017-10-13
    • 1970-01-01
    相关资源
    最近更新 更多