- YesNo。次の確認式は、[TotalAmount] フィールドについてユーザーに照会します。ユーザーが [いいえ] をクリックすると、失敗のメッセージが表示されます。
@If(@Prompt([YesNo]; "Is this total within budget?"; @Text(TotalAmount; "C")); @Success; @Failure("Total not within budget"))
- OkCancelEdit。次のボタン式は、ユーザーにサーバーとデータベースを照会し、データベースを開きます。ユーザーが編集ボックスに値を入力せずに [はい] をクリックした場合は、戻り値は空の文字列になります。
server := @Prompt([OkCancelEdit]; "Server"; "Enter the name of a server"; "");
database0 := @Prompt([OkCancelEdit]; "Database"; "Enter the name of a database on " + @If(server = ""; "your workstation"; server); "");
database := @If(@Contains(database0; "."); database0; database0 + ".nsf");
@Command([FileOpenDatabase]; server : database)
- Password。次のフィールド確認式は、ユーザーからパスワードを受け取り、文書の [Password] フィールドと比較します。
pass := @Prompt([Password]; "Password"; "What is the password?");
@If(pass = Password; @Success; @Failure("Password incorrect"))
- OkCancelList。次の式は、データベースカタログ内のデータベースのリストをユーザーに表示し、ユーザーが選択したデータベースを開きます。最初の @DbColumn は、[Databases by _Replica ID] ビューの列 4 の値のリストを一時変数 titles に入れます。2 番目の @DbColumn は、[Databases by _Replica ID] ビューの列 2 の値のリストを一時変数 servers に入れます。3 番目の @DbColumn は、[Databases by _Replica ID] ビューの列 3 の値のリストを一時変数 databases に入れます。一時変数 list では、@Prompt でのユーザーへの表示に備えて、タイトル、サーバー、データベースを組み合わせます。この式では、その後、@Prompt からの戻り値をサーバー名とデータベース名に分解し、@コマンド FileOpenDatabase に渡します。
titles := @DbColumn(""; "doc":"catalog.nsf"; "Databases by _Replica ID"; 4);
servers := @DbColumn(""; "doc":"catalog.nsf"; "Databases by _Replica ID"; 2);
databases := @DbColumn(""; "doc":"catalog.nsf"; "Databases by _Replica ID"; 3);
list := titles + " *-* " + servers + " *:* " + databases;
member := @Prompt([OkCancelList]; "Open Database"; "Select a database"; ""; list);
server := @Left(@Right(member; " *-* "); " *:* ");
database := @Right(member; " *:* ");
@Command([FileOpenDatabase]; server:database)
- OkCancelListMult。次のボタン式は、部門名と売上合計のリストをユーザーに表示します。ユーザーがリストから任意の数の要素を選択すると、総合計を計算します。
departments := @DbColumn(""; "" : "sales.nsf"; "Main View"; 1);
totalSales := @DbColumn(""; "" : "sales.nsf"; "Main View"; 2);
totalsList := @Text(totalSales; "C") + " " + departments;
sumList := @Prompt([OkCancelListMult]; "Total sales by department"; "Select the ones you want to sum"; ""; totalsList);
sum := @Sum(@TextToNumber(sumList)); @Prompt([Ok]; "Sum"; @Text(sum))
- Custom。次のボタン式は、doc という名前のサーバーの catalog.nsf から [Databases by Replica ID] ビューをユーザーに表示します。ユーザーがリスト (ビュー) から要素 (行) を選択すると、その行の列 3 にある名前のデータベースが開かれます。
name := @PickList([Custom]; "doc" : "catalog"; "Databases by Replica ID"; "Open database"; "Select a database that is on server Doc"; 3);
@Command([FileOpenDatabase]; "doc" : name)