Condições de Requerimento
As condições de requerimento são regras aplicadas a campos ou anexos que os tornam obrigatórios com base no valor preenchido em um ou mais campos distintos.
Operadores de comparação
Para verificar se um campo atende a determinada condição, utilizam-se operadores de comparação:
-
Igual (==): Verifica se dois valores são exatamente iguais.
- Exemplo:
[CAMPO_X] == "Masculino"
(O campo será obrigatório apenas se[CAMPO_X]
for exatamente “Masculino”).
- Exemplo:
-
Diferente (!=): Verifica se dois valores são diferentes.
- Exemplo:
[CAMPO_X] != "Feminino"
(O campo será obrigatório se[CAMPO_X]
for qualquer valor exceto “Feminino”).
- Exemplo:
-
Lógico (&&): Permite combinar duas ou mais condições, tornando um campo obrigatório somente quando todas as condições forem verdadeiras ao mesmo tempo.
- Exemplo:
[CAMPO_X] == "Masculino" && [CAMPO_Y] > 18
(O campo será obrigatório apenas se[CAMPO_X]
for “Masculino” e[CAMPO_Y]
for maior que 18).
- Exemplo:
-
Maior (>): Verifica se um valor é maior que outro.
- Exemplo:
[CAMPO_Y] > 18
(O campo será obrigatório se[CAMPO_Y]
for maior que 18).
- Exemplo:
-
Menor (<): Verifica se um valor é menor que outro.
- Exemplo:
[CAMPO_Y] < 60
(O campo será obrigatório se[CAMPO_Y]
for menor que 60).
- Exemplo:
-
Maior ou igual (>=): Verifica se um valor é maior ou igual a outro.
- Exemplo:
[CAMPO_Y] >= 18
(O campo será obrigatório se[CAMPO_Y]
for 18 ou mais).
- Exemplo:
-
Menor ou igual (<=): Verifica se um valor é menor ou igual a outro.
- Exemplo:
[CAMPO_Y] <= 12
(O campo será obrigatório se[CAMPO_Y]
for 12 ou menos).
- Exemplo:
Campos de Texto
Para campos de texto, a verificação pode ser feita comparando diretamente o valor inserido. Por exemplo:
[CAMPO_X] == "Masculino"
Nesse caso, o campo ou anexo se tornará obrigatório apenas quando [CAMPO_X]
estiver preenchido exatamente com “Masculino”.
Campos Decimais
Por padrão, os campos decimais não precisam de código, desde que a comparação seja feita de forma explícita, como no exemplo:
[CAMPO_X] == 10.1
Se os valores estiverem entre aspas duplas (” “), a comparação também funciona normalmente, recomendado utilizar quando há virgula no valor:
[CAMPO_X] == "10,1"
No entanto, se houver diferenças na pontuação (exemplo: uso de vírgulas e pontos), pode haver erro, pois o JavaScript os interpretará de forma distinta. Para corrigir isso, use:
parseFloat([CAMPO_X].replace(',', '.')) >= 10.5
Campos de Moeda
Os campos de moeda seguem a mesma lógica dos numéricos, mas podem conter formatos como 1.000,20
. O JavaScript não reconhece esse formato como número válido. Se os valores estiverem como strings (entre aspas), a comparação funciona:
[CAMPO_Y] > "1.000,21"
Mas no formato numérico, isso gerará erro:
[CAMPO_Y] > 1.000,21
Para evitar erros, remova os pontos e substitua a vírgula por um ponto antes da comparação:
[CAMPO_X].replace(/\./g, '').replace(/,/, '.') >= 1200.50
Campos de Data e DateTime
Os campos de data no HTML utilizam o formato norte-americano (YYYY-MM-DD
). Para comparar com o formato brasileiro (DD/MM/YYYY
), é necessário formatar a data:
new Date([CAMPO_Z]).getTime() >= new Date("2025-01-30").getTime()
new Date([CAMPO_Z]).toLocaleDateString('pt-br') >= "02/02/2025"
Se o usuário utilizar o formato padrão (YYYY-MM-DD
), a comparação funciona normalmente:
[CAMPO_Z] >= "2025-01-30"
Campos de Múltipla Escolha e Seleção Única
Os campos de múltipla escolha e seleção única são tratados como um conjunto de dados. Para verificar se um valor específico está presente nesse conjunto, é necessário utilizar um código em JavaScript para garantir a interpretação correta. Abaixo está exemplos de uso.
Caso um tipo de anexo seja obrigatório apenas se a opção “Financeiro” for selecionada em um conjunto formado por “RH”, “Financeiro” e “Contas”, a condição de requerimento será:
[CAMPO_Y].includes('Financeiro')
Se um campo for obrigatório para qualquer opção selecionada, exceto “Financeiro”, é necessário incluir um ponto de exclamação (!) antes da condição.
![CAMPO_Y].includes('Financeiro')
Campos Dentro de Tabela
Para definir um campo ou anexo como obrigatório dentro de uma tabela, é essencial identificar corretamente o código do campo. Como as tabelas são criadas de forma dinâmica, seus códigos também variam conforme a estrutura da tabela.
Como encontrar o código do campo
- Acesse o formulário onde o colaborador preenche os dados.
- Clique com o botão direito sobre o campo desejado.
- Selecione “Inspecionar” no menu que aparece.
- O navegador abrirá o inspetor de elementos, onde será exibida a estrutura do campo dentro de
<td>
e</td>
.
Por exemplo, para um campo de texto, o código pode aparecer assim:
<input type="text" campo="146_1" name="campo_146_1">
Nesse caso:
- “146_1” representa o código do campo e da linha na tabela.
O mesmo processo se aplica para outros tipos de campos, como seleção e numérico.
Após identificar corretamente o código do campo e sua linha na tabela, a configuração da obrigatoriedade segue as mesmas regras aplicadas aos campos do formulário anteriormente citados.