Discussões
New AI Community Guidelines. Please review and follow them to ensure AI use stays safe, accurate, and compliant.
Please note that on Saturday, April 11, 2026, at 8:00 PM Pacific time, our Case Management System will undergo a scheduled maintenance for approximately 30 minutes. During this time, case creation via SuiteAnswers will be unavailable and inbound calls will be routed to Customer Service.
Filtrar um campo de 'seleção' na mudança de campo usando o SuiteScript
Aplica-se a
Produto: NetSuite 2021.2
Cenário
O usuário gostaria de ter uma página que contenha um campo 'selecionar' que filtra outro campo 'selecionar'.
Solução
Abaixo estão os scripts de amostra para obter o resultado.
No SuiteScript 1.0
Script Suitelet:
function filterSelect(request,response){
var pEntity = request.getParameter('custpage_entity');
if (!pEntity) pEntity = 0;
var action = request.getParameter('custpage_action');
if (action == null || action == 'refresh')
{
response.writePage(refreshOtherSelect(pEntity));
}
}
function refreshOtherSelect(pEntity){
try {
var form = nlapiCreateForm('Fulfill Order Lines');
var action = form.addField('custpage_action', 'text', 'Action');
action.setDefaultValue('submit');
action.setDisplayType('hidden');
var entity = form.addField('custpage_entity', 'select', 'Customer');
addEntityOptions(entity, pEntity);
var transactions = form.addField('custpage_transaction','select','Transactions');
nlapiLogExecution('DEBUG','Entity', 'Entity is: '+pEntity);
nlapiLogExecution('DEBUG','Run Search', 'Running Search');
var search = nlapiLoadSearch('transaction', 'customsearch_all_transactions');
search.addFilter(new nlobjSearchFilter('entity', null, 'anyof', pEntity));
var resultSet = search.runSearch();
resultSet.forEachResult(function(result) {
var n = 0;
nlapiLogExecution('DEBUG','Transactions',result.getValue('number'));
transactions.addSelectOption(n, result.getValue('type') + ' ' + result.getValue('number'));
n++;
return true;
});
} catch(e) {
if ( e instanceof nlobjError )
nlapiLogExecution('DEBUG','Error','Details: ' + e.getDetails() + ' Code: ' + e.getCode());
else
nlapiLogExecution('DEBUG','Error','Error Details: ' + e.toString());
}
form.setScript('customscript_item_fulfillment_cs');
form.addSubmitButton('Submit');
form.addResetButton();
return(form);
}
function addEntityOptions(select, default_)
{
select.addSelectOption(0, '- Select One -');
var search = nlapiLoadSearch('transaction', 'customsearch_all_transactions');
search.addFilter(new nlobjSearchFilter('mainname', null, 'noneof',
Rotulado:
0
Olá, bem-vind@!
Faça login
Para ver todos os detalhes, faça o login.
Cadastre-se
Não tem uma conta? Clique aqui para começar!