Netsuite Сохраненный поиск в запланированном сценарии Без результатов

#scripting #netsuite #suitescript2.0 #saved-searches

Вопрос:

У меня есть сохраненный поиск (SS), который дает результаты при запуске в браузере. Однако при выполнении в коде с помощью запланированного сценария результатов нет.

Вот упрощенный пример:

SS с идентификатором customsearch1181 возвращает 10 результатов в браузере.

Однако после выполнения приведенного ниже сценария массив результатов пуст.

Мы можем предположить, что SS даст результаты менее 4k, поэтому нет необходимости выполнять поиск по страницам.

 define(['N/search'],
    (search) => {
        const execute = (scriptContext) => {
            
            const custSearch = search.load({id: 'customsearch1181'});
            const results = [];
            
            custSearch.run().each( function(result) {
                results.push(result);
                return true;
            });
            
            log.debug({title: 'search result count', details: results.length});
        }
        return {execute}
    });

 

Этот скрипт регистрирует результаты для других идентификаторов SS. Одно из моих наблюдений состоит в том, что в рассматриваемой СС существует множество фильтров.

Кто-нибудь сталкивался с этой проблемой? Что отвечает за такое поведение?

Ответ №1:

Здесь SS-скрипт на стороне сервера, выполняемый как администратор, так и пользователь «система».

Здесь пользовательские фильтры/ разрешения могут влиять на фильтры.

Пожалуйста, протестируйте с помощью ручного триггера (Сохранить и выполнить) и запланированных триггеров отдельно.

Надеюсь, это предположение поможет выяснить, в чем проблема