Boa tarde pessoal,
Gostaria de saber se existe uma forma de carregar o primeiro resultado de uma pesquisa externa como primeira opção de um ComboBox, no carregamento do formulário.
Exemplo atual do carregamento do campo:
Neste caso, gostaria que o combobox ‘Empresa’, já carregasse a primeira empresa que vem da consulta externa: ‘001 - Empresa demonstração’.
Obrigado.
Olá @lourenco.junior!
Você pode selecionar o primeiro valor da ComboBox preenchendo-a com a ação “Popular Campos e Variáveis” dos Procedimentos. Basta informar o valor referente a opção que você deseja selecionar.
Mas se você precisa de algo mais “dinâmico”, você pode usar o código JavaScript abaixo:
// Adiciona Callback para o evento "FormCreated" do Formulário.
// Este evento ocorre quando o Formulário é exibido no navegador.
latromi.formManager.setOnFormCreatedCallback( function(args) {
var fieldNames = Object.keys(args.form.fields);
[].forEach.call(fieldNames, function(fieldName) {
// Informações sobre o campo
var field = args.form.fields[fieldName];
// Quando o tipo for ComboBox (4) e o valor for nulo.
if (field.type === 4 && field.getValue() == null) {
// Pega o elemento select
var select = document.getElementById(field.clientId);
// Se tem mais de uma opção, seleciona a primeira
if (typeof select.options[1] !== 'undefined') {
field.setValue(select.options[1].value);
}
}
});
});
Se você usar este código no JavaScript Público do sistema, ele vai ser aplicado a todos os Formulários.
Para usar em um Formulário específico ou conseguir exportar o código no arquivo LCP, use no arquivo JavaScript do Formulário. Neste caso, também é possível referenciar o mesmo arquivo JS em vários Formulários diferentes.
2 curtidas