Netsuite подходит для массового изменения групповых уровней ценообразования для специальной группы

#javascript #csv #scripting #netsuite #suitescript

#javascript #csv #сценарии #netsuite #suitescript

Вопрос:

Люди стекового потока!

Это будет мой первый вопрос здесь, но я, вероятно, уже несколько раз просматривал ваши вопросы или ответы по этой теме.

Наша проблема в том, насколько сложно при всех пользовательских ценах нам приходится менять группу людей на более высокую или более низкую цену, поскольку остальные их цены не совпадают. И поскольку мы хотим охватить либо всех клиентов, либо большую группу из X клиентов, нам придется экспортировать все их цены, чтобы просто изменить 1 ценовую группу на другой уровень.

Итак, я пытаюсь придумать способ создания suitelet, который мог бы просто изменить уровень цен на одну X ценовых групп из поиска клиентов.

ПРИМЕЧАНИЕ: я попытался просто экспортировать эту ценовую группу, а затем импортировать только новый уровень цен, но когда импорт видит, что у них уже есть X ценовая группа, он всегда останавливается на этом с ошибкой, что эта ценовая группа уже существует и не обновляет уровень цен.

Я поиграл с несколькими различными способами изменения одного группового уровня ценообразования для группы людей.

Я думал о создании подсписка

 function createForm(request, response) {

    //create form
    var form = nlapiCreateForm('Change Group Pricing');

    // Set form buttons
    form.addSubmitButton('Submit');

    //create sublist
    var sublist = form.addSubList('custpage_mysublist', 'list', 'Sublist');

    // run existing saved search X
    var searchResults = nlapiSearchRecord('customer', 'customsearchID');
    var columns = searchResults[0].getAllColumns();

    // Add the search column names to the sublist field
    for (var i = 0; i < columns.length; i  )
    {
        sublist.addField(columns[i].getName(), 'text', columns[i].getLabel()); 
        nlapiLogExecution('DEBUG', 'Column Label', columns[i].getLabel());
    }
    //add editable field
    sublist.addField('custpage_mysublistfield', 'text', 'test sublist field').setDisplayType('entry');
    sublist.addField('custpage_mysublistcb', 'checkbox', 'checkbox');
    //set values to fields
    sublist.setLineItemValue('custpage_mysublistfield', '1', 'sublist field 1');
    sublist.setLineItemValue('custpage_mysublistfield2', '1', 'sublist field 2'); 
    //send response
    response.writePage(form);
}
  

Я думал о создании скрипта, который выполняет поиск и превращает его в CSV, а затем импортирует этот CSV с помощью другого скрипта.