最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

How to pass parameters from Netsuite client script to user event script? - Stack Overflow

programmeradmin1浏览0评论

I hope you are well. I have my user event script to create custom button on netsuite message record. I have client script to refresh the page on button click. I am able to get selected template value in client script before and after refreshing the page but not able to set selected template on custom field (or any field) of message record.I So I want to pass selected template Id from client script to user event script and set in user event before load.

Thanks in advance!

//User Event BeforeLoad
 function beforeLoad(scriptContext) {
        try {
            if (scriptContext.type === 'create') {
                var form = scriptContext.form;
                var field = form.addField({
                    id : 'custpage_abc_text',
                    type : serverWidget.FieldType.TEXT,
                    label : 'Custom Template Id'
                });
                form.addButton({
                    id: 'custpage_email_message_button',
                    label: 'Refresh',
                    functionName: 'clientButtonClick'
                });
                form.clientScriptModulePath = 'SuiteScripts/cs_get_template.js';
                form.addButton({
                    id: 'custpage_email_message_button',
                    label: 'Refresh',
                    functionName: 'clientButtonClick'
                });

                var templateId = rec.getValue({
                    fieldId: 'custpage_abc_text',
                });
                log.debug("templateId",templateId);

                if(templateId == 272)
                {
                    //Set few sublists
            }
           
            }
        } catch (e) {
            log.error({ title: 'Error Details', details: e });
        }
    }

//Client Script
  function clientButtonClick() {
        try {
            var currentRec = currentRecord.get();
            var templateId = currentRec.getValue({fieldId:"template"})
            alert("templateId before refresh"+templateId);
            window.onbeforeunload = null;
            window.location.href = window.location.href;
            var templateId = currentRec.getValue({fieldId:"template"})
            alert("templateId after refresh"+templateId);
           } catch (e) {
          log.error("error in clientButtonClick()",e);
        }

    }

function pageInit() {
    // Initialization code
}

I hope you are well. I have my user event script to create custom button on netsuite message record. I have client script to refresh the page on button click. I am able to get selected template value in client script before and after refreshing the page but not able to set selected template on custom field (or any field) of message record.I So I want to pass selected template Id from client script to user event script and set in user event before load.

Thanks in advance!

//User Event BeforeLoad
 function beforeLoad(scriptContext) {
        try {
            if (scriptContext.type === 'create') {
                var form = scriptContext.form;
                var field = form.addField({
                    id : 'custpage_abc_text',
                    type : serverWidget.FieldType.TEXT,
                    label : 'Custom Template Id'
                });
                form.addButton({
                    id: 'custpage_email_message_button',
                    label: 'Refresh',
                    functionName: 'clientButtonClick'
                });
                form.clientScriptModulePath = 'SuiteScripts/cs_get_template.js';
                form.addButton({
                    id: 'custpage_email_message_button',
                    label: 'Refresh',
                    functionName: 'clientButtonClick'
                });

                var templateId = rec.getValue({
                    fieldId: 'custpage_abc_text',
                });
                log.debug("templateId",templateId);

                if(templateId == 272)
                {
                    //Set few sublists
            }
           
            }
        } catch (e) {
            log.error({ title: 'Error Details', details: e });
        }
    }

//Client Script
  function clientButtonClick() {
        try {
            var currentRec = currentRecord.get();
            var templateId = currentRec.getValue({fieldId:"template"})
            alert("templateId before refresh"+templateId);
            window.onbeforeunload = null;
            window.location.href = window.location.href;
            var templateId = currentRec.getValue({fieldId:"template"})
            alert("templateId after refresh"+templateId);
           } catch (e) {
          log.error("error in clientButtonClick()",e);
        }

    }

function pageInit() {
    // Initialization code
}
Share Improve this question asked Mar 3 at 7:29 Maira SMaira S 716 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 0
function afterSubmit(context) {
        try {
            if (context.type !== 'create' && context.type !== 'edit') return;

            var newRecord = context.newRecord;
            var salesOrderId = newRecord.id;
            var orderInfoId = newRecord.getValue('custpage_order_info');

            if (orderInfoId) {
                // Use submitFields instead of record.load for better performance and avoiding permission issues
                record.submitFields({
                    type: 'customrecord_order_info', // Order Info record type
                    id: orderInfoId,
                    values: {
                        custrecord__related_sales_order: salesOrderId
                    }
                });

                log.debug("afterSubmit Executed", "Updated Related Sales Order for Order Info ID: " + orderInfoId);
            } else {
                log.debug("afterSubmit Executed", "No Order Info ID found, skipping update.");
            }
        } catch (e) {
            log.error("Error in afterSubmit", e.message);
        }
    }

by these approach

you set the value in custom field

发布评论

评论列表(0)

  1. 暂无评论