Infopath 2007 - Как выполнить проверку данных ТОЛЬКО в текущем представлении?

У меня есть форма infopath 2007, которую я разрабатываю и которая использует 3 разных представления.
3 разных вида в основном имеют одинаковую форму, но имеют разные текстовые поля, в зависимости от того, какую кнопку выбирает пользователь. Я столкнулся с проблемой, когда "представление 1" имеет некоторую проверку формы, но пользователь выбрал "представление 2" и отправляет его. Проверка формы в "представлении 1" запущена, и пользователь не может отправить форму. Как можно игнорировать проверку формы в "представлении 1", если пользователь в данный момент отправляет "представление 2"?

1 ответ

Решение

Вместо того, чтобы ставить стандартную галочку "это поле не может быть пустым" (например), вам нужно вместо этого использовать правила проверки данных. Допустим, у вас есть два представления с текстовым полем в каждом, которое не может быть пустым, но вы хотите использовать только текущий вид. Вот структура формы:

поля:

  • currentView (число) (по умолчанию = 1)
  • текст1 (текст) текст2 (текст)
  • button1
  • button2

вид 1 (по умолчанию)

text1 - правило: если (currentView = 1 И text1 пусто), показать "не может быть пустым"

button1 - действие: установить значение поля (currentView = 2); переключить представления (на 2)

вид 2:

text2 - правило: если (currentView = 2 И text2 пусто), показать "не может быть пустым"

button2 - действие: установить значение поля (currentView = 1); переключить представления (на 1)

Есть смысл?

Oisin

Другие вопросы по тегам