Controle HTML Livre - Erro no submit do formulário

Olá, boa tarde.

Estou criando aqui uma tela de login utilizando a aplicação controle no formato HTML Livre.

Não é a primeira vez que tenho esse problema e não lembro como foi resolvido, também não sei nem se é um BUG ou não. Estou na versão 9.3.012 ainda!

Criei todo o conteúdo da tela de login dentro da biblioteca externa(tudo dentro do padrão solicitado):


49

Executo o login e funciona normal, todo o CSS e JAVASCRIPT, normal!
Coloquei no evento onValidateSuccess a macro de erro para simular e poder estilizar as mensagens de erro do login.

08

Quando eu executo a tela e clico no botão conectar, não acontece nada.
Então eu fui inspecionar elemento pra saber o que tinha de erro e …

04

Abri o erro para saber mais e vi que existe uma função que está acessando o formulário F1 da página, indo até o campo com o nome nm_form_submit para pegar o valor dele.

Então eu fui no HTML e mandei pesquisar esse nome de campo pra ver se existia e percebi que ele existe, só que ele não pertence ao formulário F1 e sim ao formulário F2.

Por este motivo o controle não executa a validação, porque ele procuro valor no lugar errado.
Eu poderia resolver? Sim, claro. Só que qual é a lógica disso acontecer ? E o pior ainda, acontecer de vez em quando!

Será que tem algo de errado com a compilação do meu controle, será que tem algum código que eu coloquei que não deveria ter(mesmo que eu utilize o mesmo formato em outros projetos e não aconteça isso) ?

Enfim, se alguém souber me explicar, agradeço.

Já passei por isso Camila… Apontei o problema mas a solução demorou tanto que resolvi contornar da seguinte forma:

Uma rotina no evento onapplictioninit.

testa a existência de um arquivo na pasta corrente (pasta da aplicação)
exemplo: nome_app.cm

existe: Sim -> Não faz nada.
existe: Não -> abro com fopen o fonte da aplicação onde encontro o erro, varro as linhas até encontrar a linha que desejo alterar diretamente no fonte. Altera a linha salvo o fonte com a alteração e gero na pasta corrente o arquivo nome_app.cm (cm seriam as iniciais de seu nome).

Fiz e faço muito isso, inclusive altero muito css fisicamente em tempo de execução dessa forma.

Se você publicar a aplicação novamente, deve rodar uma app que remove os arquivos .ca nas pastas.

O primeiro usuário que executar a aplicação, dinamicamente o fonte é alterado (corrigido) e nas próximas execuções nada é feito e a aplicação é carregada normalmente.

A primeira vez dependendo do ponto da correção pode demorar um pouco, mas só na primeira execução.

Meu deus, que mão tem que fazer pra resolver isso. :tired_face::woman_facepalming:
Mas tudo bem, obrigada pela resposta.
Vou tentar aqui e aviso se der tudo certo.

O legal é que eu troquei de input para button e ele submita o formulário. Porém agora com 2 erros e a mensagem fica completamente desconfigurada.