hAPI retornando vazio

Estou pegando um campo do formulário com a hAPI, mas ele retorna vazio. Alguém sabe dizer pq o idEmpresa retorna vazio?

Código do campo no Formulário (as empresas vem via WS)


<select id="cmbNumeroEmpresa" name="cmbNumeroEmpresa" class="form-control">
     <option value="" data-filial="">- Selecione -</option>
</select>

Código do Evento:


function beforeStateEntry(sequenceId) {
    var idEmpresa = hAPI.getCardValue("cmbNumeroEmpresa");
    log.info("###### beforeStateEntry # idEmpresa: " + idEmpresa); // Retorna Vazio
}

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.

Você tem mais options ? Neste código a única option é vazia.

Os campos vem do Protheus. Eu consigo retornar o nome da empresa que é um campo text. O id da empresa corresponde ao “01”, mas ele não retorna.

Do tipo “option” só tenho esse no formulário.


var idEmpresa = hAPI.getCardValue('cmbNumeroEmpresa');
var txtNomeEmpresa = hAPI.getCardValue('txtNomeEmpresa');
	
log.info("######ENT_DOCS#AfterTaskCreate#idEmpresa: " + idEmpresa); // vazio
log.info("######ENT_DOCS#AfterTaskCreate#txtNomeEmpresa: " + txtNomeEmpresa); // 01/14 - RDO

Você esta colocando o retorno do Protheus no value do option, ou seja, esta criando dinamicamente os options com o retorno do protheus?Pode postar o codigo?
Att.

Nas linhas 106 e 107 do formulário vc consegue ver “cmbNumeroEmpresa” e “txtNomeEmpresa”. Na linha 37 do beforeStateEntry é onde ocorre o erro pois não encontra o idEmrepsa.

Não coloco no value, funcionava assim na versão 1.5.9, agora to testando a versão 1.6.2. Postei os códigos.

Não tinha visto os anexos rsrs.

No seu ambiente, o campo de cmbNumeroEmpresa está aparecendo as opções para preencher né(os códigos do Protheus vêm para esscolher)? Na função javascript preenche o value do option né?Poderia disponibilizar o javascript que cria o select dinamicamente?
Att.

Adicionei o arquivo scripts.js, na linha 117 mostra como é feito. Coloquei uma imagem também de como são exibidas as empresas. Acho que assim vai dar para entender melhor.

Coloque antes do apend um log de dsEmpresas.values[i][“CRETEMP”], vê se está trazendo algo?

Aí ele traz o id de cada empresa, só não retorna o idEmpresa nos eventos de processo quando o usuário aprova o pedido. Exemplo: Quando o usuário 1 faz o pedido, o idEmpresa é mostrado nos logs… Quando o usuário 2 vai aprovar esse pedido, o idEmpresa vem vazio.

Vamos tentar alterar o evento para fazer um teste, coloca no beforeTaskComplete.

Aconteceu a mesma coisa… Continua sem vir o id.


var idEmpresa   = hAPI.getCardValue("cmbNumeroEmpresa");
var nomeEmpresa = hAPI.getCardValue("txtNomeEmpresa");

(default task-56) ###### beforeTaskComplete # idEmpresa: 
(default task-56) ###### beforeTaskComplete # nomeEmpresa: 01/14 - RDO