アプリケーションの設計


例:ビューに表示する文書を選択するプログラムを作成する
次の例では、ビューに表示する文書を選択するためのさまざまなシナリオを説明しています。

フォーム名とフィールド値によって文書を選択するデータベースに [Action Item] フォームがあり、このフォームに [Status] フィールドがある場合は、[Action Item] フォームを使って作成された文書から、[Status] フィールドの値が [Open] であるすべての文書をデータベースのビューで選択できます。この場合の文書選択式は、次のとおりです。
SELECT Form ="Action Item" & Status="Open"

返答以外の文書だけを選択する次の式を使うと、主要文書フォームを使って作成された文書だけを選択できます。返答フォームや返答への返答フォームを使って作成された文書は、選択されません。
SELECT !@IsResponseDoc

主要文書と返答文書を選択するデータベースに [Action Item] フォームがある場合は、次の式を使うと、[Action Item] フォームを使って作成されたすべての文書とすべての返答文書を選択できます。
SELECT Form = "Action Item" | @IsResponseDoc

特定のフォームを使用して作成した文書以外の文書を選択する[DB ライブラリ] テンプレートの [データベース名別] ビューでは、次の式を使うことにより、[登録者リスト] フォーム以外のフォームを使って作成された文書を選択します。
SELECT Form != "Librarian"

競合する文書を選択する2 人以上のユーザーが、データベースの異なるレプリカで同じ文書を変更した場合は、複製によってデータベースが更新されたときに競合が起こります。データベースでは、オリジナル文書に対する返答として競合する文書が表示されます。競合を解決するためには、競合する文書だけを表示するビューを設計する必要があります。
競合する文書をビューで表示するには、[ビューのプロパティ] インフォボックスの [オプション] タブにある [返答文書を階層表示する] チェックボックスがオフになっていることを確認します。次の式をビュー選択式として入力します。

SELECT @IsAvailable($Conflict)