Discussões
New AI Community Guidelines. Please review and follow them to ensure AI use stays safe, accurate, and compliant.
Keep an eye out for upcoming NetSuite events, including meetups, workshops, and webinars. These sessions are a great way to connect with peers, learn from experts, and stay current on the latest NetSuite updates and best practices. Registration links are provided in each event.
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!