Discussões

Community Articles: What Topic Should We Cover Next? Your idea could be our next feature—drop your suggestion now and spark the next big discussion!

Filtrar um campo de 'seleção' na mudança de campo usando o SuiteScript

editado Jun 2, 2025 2:37PM Dentro SuiteCloud / Personalização

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',

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!

Ranking

Gênio da Comunidade

1º Trimestre (Jan-Mar 2026)

Líderes desta semana

Líderes deste mês

Líderes de todos os tempos