2008-09-16 11 views
2

J'ai une forme InfoPath 2007 que je développe qui utilise 3 vues différentes.
Les 3 vues différentes sont fondamentalement la même forme, mais ont des zones de texte affichés, en fonction de ce bouton, l'utilisateur sélectionne. Je INTRODUISE un problème où « 1 vue » a une certaine forme de validation, mais l'utilisateur a sélectionné « vue 2 » et le soumet. La validation de formulaire sur 'view 1' est déclenchée et l'utilisateur ne peut pas soumettre le formulaire. Comment puis-je ignorer la validation de formulaire sur 'view 1' si l'utilisateur soumet actuellement 'view 2'?Infopath 2007 - Comment effectuer la validation des données sur la vue actuelle SEULEMENT?

Répondre

2

Plutôt que de cocher la norme « ce champ ne peut être vide » case à cocher (par exemple), vous devez utiliser la validation des données règles à la place. Disons que vous avez deux vues avec une zone de texte dans chacune qui ne peut pas être vide, mais que vous voulez seulement appliquer la vue actuelle. Voici la structure de la forme:

champs:

  • currentView (nombre) (valeur par défaut = 1)
  • text1 (texte) texte2 (texte)
  • button1
  • Bouton2

vue 1 (par défaut)

text1 - règle: si (currentView = 1 ET text1 est vide) show "ne peut pas être vide"

button1 - action: définir une valeur de champs (currentView = 2); changer de vue (à 2)

vue 2:

texte2 - règle: if (currentView = 2 ET texte2 est vide) montrer "ne peut pas être vide"

Bouton2 - Action: définir une valeur de champs (currentView = 1); changer de vue (à 1)

sens?

Oisin

Questions connexes