【问题标题】:Custom Button to Set Fields on Form in NetSuite SS2.0在 NetSuite SS2.0 中设置表单字段的自定义按钮
【发布时间】:2018-08-25 18:24:24
【问题描述】:

我在 NetSuite 中有一个自定义按钮,我想知道是否可以使用该按钮在表单上设置字段。基本上,我将有一个批准按钮来锁定编辑,我想知道我是否可以通过按钮和 javascript 来做到这一点。据我所知,我无法访问脚本的上下文,因为我从用户事件脚本开始,然后转到客户端。我也可能只是错过了一些非常愚蠢的东西,但我对 NetSuite 还很陌生。这是我的用户事件脚本中的内容

function beforeLoad(context) {

        var form = context.form;
        form.clientScriptModulePath = './_kk_fc_cs_sd.js';

        form.addButton({
            id           : 'custpage_china_approve_btn', 
            label        : 'Approve - China', 
            functionName : 'chinaApproveFinalQuote'
        });
        form.addButton({
            id           : 'custpage_dallas_approve_btn', 
            label        : 'Approve - Dallas', 
            functionName : 'dallasApproveFinalQuote'
        })
}

然后对于我的客户端脚本我有

function chinaApproveFinalQuote()
    {
        alert(record.id);
        var firstCost = context.currentRecord;

        firstCost.setValue('custrecord_kk_sd_fc_master_carton_cb', true);
    }

它几乎不知道上下文是什么。我尝试在用户事件脚本中传递它,并尝试使用 record.id,但这些都不起作用。有什么想法,还是我必须以不同的方式解决这个问题?

【问题讨论】:

    标签: netsuite suitescript suitescript2.0


    【解决方案1】:

    尽管您可以这样做(查看SS2.0 Display Message on Record 中的客户端和用户脚本之间的关系,这是工作流趋于出色的领域

    工作流具有锁定记录的方法,特定用户除外;显示特定用户的批准/拒绝按钮;在批准时设置字段等。

    【讨论】:

    • 谢谢!是的,我在想我可能不得不使用工作流程。我会看看那个,但我也很欣赏另一个选择!
    【解决方案2】:

    您遇到的问题是因为您需要在客户端脚本中使用 currentRecord 才能设置/获取值。这里要注意的另一件事是,如果您仅通过其 NetSuite 文件夹位置引用客户端脚本(实际上并未部署到记录中),您仍然需要包含一个 pageInit 入口点函数(尽管它可以为空)。只是另一个 SuiteScript 2.0 警告...

    /**
     *@NApiVersion 2.x
     *@NScriptType ClientScript
     */
    define(
        [
            'N/currentRecord'
        ],
    
        function (
            nsCurRec
        ) {
    
            function chinaApproveFinalQuote() {
                var btn;
                var rec = nsCurRec.get();
    
                alert(rec.id);
                btn = rec.getField('custpage_china_approve_btn');
                btn.isDisabled = true;
                rec.setValue({
                    fieldId: 'custrecord_kk_sd_fc_master_carton_cb',
                    value: true
                });
            }
    
            function pageInit(context) {
    
            }
    
            return {
                pageInit: pageInit,
                chinaApproveFinalQuote: chinaApproveFinalQuote
            };
        }
    );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-15
      • 1970-01-01
      • 2017-12-08
      • 1970-01-01
      • 1970-01-01
      • 2022-01-10
      • 1970-01-01
      相关资源
      最近更新 更多