Disable Item line fields in Item Receipt record based on a particular role.


define(['N/search', 'N/record', 'N/runtime', 'N/error'],

    function (search, record, runtime, error) {


        const beforeSubmit = (scriptContext) => {
            try {
                let newRec = scriptContext.newRecord;
                
                let userRole = runtime.getCurrentUser().role;
                //let userId = runtime.getCurrentUser().id;
                log.debug("user role", userRole);
                let attachField= newRec.getField({fieldId:'mediaitem'})
                attachField.isDisabled= true
                let searchField= newRec.getField({fieldId:'searchid'})
                searchField.isDisabled= true

               if (scriptContext.type == "edit") {
                log.debug("entered")

                var numLines = newRec.getLineCount({ sublistId: 'item' });
                var sublist = record.getSublist({
                    sublistId: 'item'
                  });
                for (var i = 0; i < numLines; i++) {
                    sublist.setSublistFieldDisabled({  id: "location", disabled: true });
                    sublist.setSublistFieldDisabled({  id: "quantity", disabled: true });
                    sublist.setSublistFieldDisabled({ id:"itemreceive", disabled: true })

                }
                }
            }catch(e){
                log.debug("error@afterSubmit",e)
            }
        }

            return {beforeSubmit}

        });

Leave a comment

Your email address will not be published. Required fields are marked *