2008-09-16 1 views
2

私は3種類のビューを使用して開発中のinfopath 2007フォームを持っています。
3つの異なるビューは基本的に同じフォームですが、ユーザーが選択するボタンに応じて異なるテキストボックスが表示されます。 私は 'view 1'に何らかのフォームの検証がありますが、ユーザーが 'view 2'を選択して送信してしまうという問題が発生しました。 「ビュー1」のフォーム検証がトリガーされ、ユーザーはフォームを送信できません。 ユーザーが現在「ビュー2」を送信している場合、フォーム1のフォーム検証を無視するにはどうすればよいですか?Infopath 2007 - 現在のビューでのみデータ検証を実行するにはどうすればよいですか?

答えて

2

標準の「このフィールドは空白にできません」チェックボックス(たとえば)をチェックするのではなく、データ検証ルールを使用する必要があります。空白にすることはできないが、現在のビューのみを適用するテキストボックスを持つ2つのビューがあるとします。

フィールド:ここではフォームの構造だ

  • currentView(数)(デフォルト= 1)
  • テキスト1(テキスト) テキスト2(テキスト)
  • ボタン1
  • Button2の

ビュー1(デフォルト)

text1 - ルール:if(currentView = 1 AND text1が空白) "空白にすることはできません"を表示します。

button1 - アクション:フィールド値(currentView = 2)を設定します。 IF(currentView = 2およびテキスト2が空白)

ボタン2 "空白にすることはできません" と表示 - アクション:設定フィールドの値を( - ルール

テキスト2:(2)図

図2スイッチcurrentView = 1);ビューの切り替え(1へ)

意味がありますか?

オイシン

関連する問題