- 次の計算結果フィールド値の例は、文書内の異なる 2 つのフィールドを使用した算術演算を実行します。これらのフィールドが文書内にあり、数値が入っていて、数値用に初期化されていなければなりません。
TotalSales - CostOfSales
- 次のエージェントの例は、カレント文書内の 2 つのフィールドを使用して算術演算を実行し、結果を 3 番目のフィールドに代入します。参照される 2 つのフィールドが存在していなければなりません。[GrossSales] は新規作成できます。
FIELD GrossSales := TotalSales - CostOfSales;
SELECT @All
- 次のエージェントの例は、カレント文書内の 2 つのフィールドを使用して算術演算を実行し、3 番目のフィールドに値を代入するか、メールメッセージを送信します。最初のステートメントで [GrossSales] を初期化するため、フィールドの存在を確認する必要はありません。
FIELD GrossSales := 0;
gs := TotalSales - CostOfSales;
@If(gs > 0; @SetField("GrossSales"; gs); @MailSend("Ian Perron"; ""; ""; "No gross sales"; "Gross sales are zero or less for "; Subject));
SELECT @All
- 次の列式の例は、[KeyThought] がある文書についてこのフィールドの値を評価します。文書に [KeyThought] フィールドがない場合は、デフォルトとして、この値を [Topic] の値にします。
DEFAULT KeyThought := Topic;
KeyThought
- これは、上記の例の別のコーディング方法です。
@If(@IsAvailable(KeyThought); KeyThought; Topic)
- 次のエージェントの例は、[GrossSales] フィールドを削除します。
@If (@IsUnavailable(GrossSales); @Return(""); "");
FIELD GrossSales := @DeleteField;
SELECT @All
- 次のエージェントの例は、[GrossSales] フィールドを計算して結果を表示しますが、文書に更新のマークを付けません。その結果、変更内容は保存されません。@DocMark を省略するか "@DocMark([Update])" と指定すると、変更内容が保存されます。
FIELD GrossSales := TotalSales - CostOfSales;
@Prompt([Ok]; "Gross sales for " + Subject; @Text(GrossSales));
@DocMark([NoUpdate]);
SELECT @All
- 次の例は、現在の文書の全フィールドを表示します。
@Prompt([OkCancelList]; "Fields"; "Fields in document"; ""; @DocFields);
SELECT @All
- 次のウィンドウタイトル式は、新規文書に「New Document」と表示します。既存の文書の場合は、[Subject] フィールドと返答文書数を表示します。
@If(@IsNewDoc; "New Document"; Subject + " with " + @Text(@Responses) + " response(s)")
- 次のビュー選択式は、[Form] フィールドに「Profile」か「Log」が入っている文書以外の全文書を選択します。
SELECT !@Contains(Form; "Profile" : "Log")
- 次のビュー選択式は、大文字か小文字かを問わず、[Subject] フィールドに「acme」が入っている全文書と、そのすべての子文書を選択します。
SELECT @Contains(@LowerCase(Subject); "acme") | @AllDescendants
- 次のフォームアクション式は、文書内の添付ファイルすべての名前と長さを表示します。添付ファイルがない場合は「No attachments」と表示します。
@If(@Attachments > 0; @Prompt([OkCancelList]; "Attachments"; "Attachment names and lengths"; ""; @AttachmentNames + " (" + @Text(@AttachmentLengths) + " bytes)"); @Prompt([Ok]; "Attachments"; "No attachments"))
- 次の onHelp イベントは、現在フォーカスがある表の名前、行、列を返します。
row := @GetFocusTable([CellRow]);
@If(row = "0"; @Prompt([Ok]; "*No table*"; "Not in a table");
@Do(
column := @GetFocusTable([CellColumn]);
name0 := @GetFocusTable([TableName]);
name := @If(name0 = ""; "No name"; name0);
@Prompt([Ok]; "*" + name + "*";
"Row " + row + ", column " + column)))