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”).
  • 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”).
  • 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).
  • Maior (>): Verifica se um valor é maior que outro.

    • Exemplo: [CAMPO_Y] > 18 (O campo será obrigatório se [CAMPO_Y] for maior que 18).
  • Menor (<): Verifica se um valor é menor que outro.

    • Exemplo: [CAMPO_Y] < 60 (O campo será obrigatório se [CAMPO_Y] for menor que 60).
  • 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).
  • 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).

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
  1. Acesse o formulário onde o colaborador preenche os dados.
  2. Clique com o botão direito sobre o campo desejado.
  3. Selecione “Inspecionar” no menu que aparece.
  4. 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.