suitescript 2.0: когда я использую removeSelectOption, выдается ошибка 'TypeError Cannot read свойство "removeSelectOption" of null' error - PullRequest
0 голосов
/ 25 сентября 2018

Возникает ошибка js. Когда я использую removeSelectOption, чтобы удалить все выпадающие списки. Код выглядит следующим образом:

function fieldChanged(scriptContext) {
    if(scriptContext.fieldId == 'class'){
        var currentRecord = scriptContext.currentRecord;
        var brand_id = currentRecord.getValue({fieldId:'class'});
        if(brand_id){
            var itemList = [];
            var itemField = currentRecord.getField({
                fieldId: 'item'
            });
            itemField.removeSelectOption({
                value: null,
            });
            search.create({
                type: search.Type.INVENTORY_ITEM,
                columns:[{name:'internalid'}],
                filters:[
                    ['custitem30',search.Operator.ANYOF,brand_id]
                ]
            }).run().each(function(result){
                item_id = result.getValue({
                    name:'internalid'
                });
                var in_item = record.load({
                    type: record.Type.SALES_ORDER, 
                    id: item_id,
                });
                itemList.push(item_id);
                itemField.insertSelectOption({
                    value: item_id,
                    text: in_item
                });
                console.log('item_id:' + item_id);
            });
            console.log('itemList:' + itemList);
        }
    }
}

И документ API в справочном центре сказал - Чтобы удалить все параметры изв списке установите для этого поля значение null, как указано ниже:

field.removeSelectOption({
value: null,
});

Если я хочу удалить все параметры из раскрывающегося списка, что мне делать?Спасибо.

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

enter image description here

  1. Создать поиск сохраненного элемента 2. Форма транзакции Элемент Фильтр Поле выберите этот сохраненный поиск.

В качестве вопросая предполагал, что вы показываете предмет инвентаря только в поле предмета.

0 голосов
/ 25 сентября 2018

Прежде всего вы получите объект поля

var field = currentRecord.getField({
    fieldId: 'Your Field ID'
});

, затем используйте следующий код

field.removeSelectOption({
value: null,
});
...