Infopath 2007 - Como executo a validação de dados SOMENTE na visualização atual?
-
09-06-2019 - |
Pergunta
Eu tenho um formulário do infopath 2007 que estou desenvolvendo e que usa três visualizações diferentes.
As três visualizações diferentes têm basicamente o mesmo formato, mas apresentam caixas de texto diferentes, dependendo do botão selecionado pelo usuário.Me deparo com um problema em que 'visualização 1' tem alguma validação de formulário, mas o usuário selecionou 'visualização 2' e o envia.A validação do formulário na 'visualização 1' é acionada e o usuário não pode enviar o formulário.Como posso ignorar a validação do formulário na 'visualização 1' se o usuário está enviando a 'visualização 2'?
Solução
Em vez de marcar a caixa de seleção padrão "este campo não pode ficar em branco" (por exemplo), você precisa usar as regras de validação de dados.Digamos que você tenha duas visualizações com uma caixa de texto em cada uma que não pode ficar em branco, mas deseja impor apenas a visualização atual.Esta é a estrutura do formulário:
Campos:
- currentView (número) (padrão = 1)
- text1 (texto) text2 (texto)
- botão1
- botão2
visualizar 1 (padrão)
texto1 - regra:if (currentView = 1 AND text1 está em branco) mostra "não pode ficar em branco"
botão1 - ação:defina um valor de campo (currentView = 2);mudar visualizações (para 2)
visualização 2:
texto2 - regra:if (currentView = 2 AND text2 está em branco) mostra "não pode ficar em branco"
botão2 - ação:defina um valor de campo (currentView = 1);mudar visualizações (para 1)
Faz sentido?
Oisin