Discussões
New AI Community Guidelines. Please review and follow them to ensure AI use stays safe, accurate, and compliant.
Narrative Insights is Temporarily Unavailable due to an Infrastructure Issue. Learn how This Impacts Your Account and What to Expect While the Feature is Disabled.
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!