Client script field changed is not working

I have created custom suitelet for. added select type field. If user selcts option3 then customer, ship to, item, wuantity and warehouse fields should be visible to user. So I have created suitelet and client script fieldchanged. but when I select option3 client script executes but fields are not visible.

/**
 * @NApiVersion 2.x
 * @NScriptType Suitelet
 */
define([“N/record”,”N/search”,”N/ui/serverWidget”,’N/runtime’,’N/redirect’,’N/task’,’N/file’,’N/url’],
function(record,search,serverWidget,runtime,redirect,task,file,url){
    function onRequest(scriptContext)
    {
        var request = scriptContext.request;
        log.debug(“request”,request);
        var response = scriptContext.response;
         var params = scriptContext.request.parameters;
         log.debug(‘Params’, params);
            if (scriptContext.request.method === “GET”) {
            try{
                log.debug(‘scriptContext.request.parameters’,scriptContext.request.parameters);
                var i_IFRecordId=scriptContext.request.parameters.if_record_id;
                log.debug(‘i_IFRecordId’,i_IFRecordId);
                    var form = serverWidget.createForm({
                    title: ‘Simple Form’,
                    hideNavBar: true
                });
                form.clientScriptFileId = 14916;
                msg=scriptContext.request.parameters.errorMsg;
                log.debug(“msg”,msg);
                if(msg)
                {
                var errorField = form.addField({
                  id : ‘custpage_error_message’,
                  type : serverWidget.FieldType.TEXT,
                  label : ‘Error’
              });errorField.defaultValue = msg
           }
                var customer = form.addField({
                    id : ‘custpage_customer’,
                    type : serverWidget.FieldType.TEXT,
                    label : ‘customer’
                });
                    var shipToField = form.addField({
                        id : ‘custpage_ship_to’,
                        type : serverWidget.FieldType.TEXT,
                        label : ‘ship To’
                    });
                    var item = form.addField({
                        id : ‘custpage_item’,
                        type : serverWidget.FieldType.TEXT,
                        label : ‘item’
                    });
                    var quantity = form.addField({
                        id : ‘custpage_quantity’,
                        type : serverWidget.FieldType.TEXT,
                        label : ‘quantity’
                    });
                    var warehouse = form.addField({
                        id : ‘custpage_warehouse’,
                        type : serverWidget.FieldType.TEXT,
                        label : ‘warehouse’
                    });
                    form.addSubmitButton({
                        label: ‘Print Label’
                    });
                    scriptContext.response.writePage(form)
            }catch(e)
            {
                log.debug(“error in get”,e);
            }
        }
        else if (scriptContext.request.method === ‘POST’) {
            try{
                var customerValue = scriptContext.request.parameters.custpage_customer;
                log.debug(“customerValue”, customerValue);
                var shipToFieldValue = scriptContext.request.parameters.custpage_ship_to;
                log.debug(“shipToFieldValue”, shipToFieldValue);
                var itemValue = scriptContext.request.parameters.custpage_item;
                log.debug(“itemValue”, itemValue);
                var quantityValue = scriptContext.request.parameters.custpage_quantity;
                log.debug(“quantityValue”, quantityValue);
                var warehousValue=scriptContext.request.parameters.custpage_warehouse;
                log.debug(“warehousValue”,warehousValue);
                var postparams=request.parameters;
                log.debug(“postparams”,postparams);
                var entryformquerystring=postparams.entryformquerystring;
                // log.debug(“ifidparam”,ifidparam);
                var ifidparam = null;
                if (entryformquerystring) {
                var params = entryformquerystring.split(‘&’);
                for (var i = 0; i < params.length; i++) {
                    var param = params[i].split(‘=’);
                    if (param[0] === ‘if_record_id’) {
                    ifidparam = param[1];
                    break;
                    }
                }
                }
                log.debug(“ifidparam”, ifidparam);
                var selectedValue = scriptContext.request.parameters.custpage_abc_text;
                log.debug(“selectedValue”,selectedValue);
                var recidparam = scriptContext.request.parameters.if_record_id;
                log.debug(“recidparam”,recidparam);
                if (!customerValue || !shipToFieldValue) {
                    var errorMsg = ‘Please enter customer and Ship To’;
                    log.debug(“post error message:”,errorMsg);
                }
                    redirect.toSuitelet({
                        scriptId: ‘customscript_sut_validated_pdf’,
                        deploymentId: ‘customdeploy_sut_validated_pdf’,
                        parameters: {
                            if_rec_id:ifidparam,
                            customerparam:customerValue,
                            shiptoparam:shipToFieldValue,
                            itemparam:itemValue,
                            quantityparam:quantityValue,
                            warehouseparam:warehousValue,
                            errorMsg:errorMsg
                            }
                    });
            }catch(ex)
            {
                log.debug(“error in post”,ex);
            }
        }
    }
return{
    onRequest:onRequest
}
});

//Client script

/**
 * @NApiVersion 2.x
 * @NScriptType ClientScript
 */
define([‘N/record’], function(record) {
    function fieldChanged(context) {
        alert(“client script is executing”)
        var currentRecord = context.currentRecord;
        console.log(“currentRecord”,currentRecord);
        var selectedValue = currentRecord.getValue({
            fieldId: ‘custpage_abc_text’
        });
        console.log(“selectedValue”,selectedValue);
        var customerField = currentRecord.getField({
            fieldId: ‘custpage_customer’
        });
        console.log(“customerField”,customerField);
        var shipToField = currentRecord.getField({
            fieldId: ‘custpage_ship_to’
        });
        console.log(“shipToField”,shipToField);
        var itemField = currentRecord.getField({
            fieldId: ‘custpage_item’
        });
        console.log(“itemField”,itemField);
        var quantityField = currentRecord.getField({
            fieldId: ‘custpage_quantity’
        });
        console.log(“quantityField”,quantityField);
        var warehouseField = currentRecord.getField({
            fieldId: ‘custpage_warehouse’
        });
        console.log(“warehouseField”,warehouseField);
        if (selectedValue ==’3′) {
            console.log(“Inside If”)
            // alert(“inside loop”);
            customerField.isDisplay = true;
            shipToField.isDisplay = true;
            itemField.isDisplay = true;
            quantityField.isDisplay = true;
            warehouseField.isDisplay = true;
        } else {
            customerField.isDisplay = false;
            shipToField.isDisplay = false;
            itemField.isDisplay = false;
            quantityField.isDisplay = false;
            warehouseField.isDisplay = false;
        }
    }
    return {
        fieldChanged: fieldChanged
    };
});
Beginner Asked on June 19, 2023 in SuiteScript.
Add Comment
0 Answer(s)

Your Answer

By posting your answer, you agree to the privacy policy and terms of service.
  • This site made possible by our sponsors:   Tipalti   Celigo   Become a Sponsor   Become a Sponsor