@Transform (式言語)

リストの各要素に式を適用し、その結果をリストとして返します。

注: この @ 関数は、Release 6 で新しく追加されました。

構文

@Transform( list ; variableName ; formula )

パラメータ

list

文字列、数値、日時のリスト。対象となるリストを指定します。

variableName

文字列。変数の名前です。式でこの変数を使用し、対象となるリスト要素を参照します。

formula

結果を計算する有効な式を指定します。@Transform の 2 番目のパラメータより後の部分は、入力リストの各要素に適用される式です。式は値を返すものでなければなりません。

戻り値

list

文字列、数値、日時。入力リストを変換した結果が返されます。式によって返された最初の値によって、リストのデータ型がわかります。2 番目以降の戻り値もデータ型は同じです。

使用法

式を繰り返して、リストを返すこともできます。これによって、複数の値が結果のリストに追加されます。

式の繰り返しでエラーが発生した場合は、@Transform はエラーを返します。

式の繰り返しによって @Nothing が返された場合は、結果のリストに要素は追加されません。

  1. 次の式では、値が 2、-2、4 の 3 要素のリストが返されます。
    @Transform(OriginalList; "x";
    @If(x >= 0; @Sqrt(x); -@Sqrt(@Abs(x))))
  2. 次の式では、前の式と同じ結果が返されます。ただし、[OriginalList] が Null の場合は、エラーではなく Null が返されます。
    @If(OriginalList = @Nothing; @Nothing;
    @Transform(OriginalList; "x";
    @If(x >= 0; @Sqrt(x); -@Sqrt(@Abs(x)))))
  3. 次の式では、値が 2 と 4 の 2 要素のリストが返されます。
    @If(OriginalList = @Nothing; @Nothing;
    @Transform(OriginalList; "x";
    @If(x >= 0; @Sqrt(x); @Nothing)))
  4. 次の式をホットスポットボタンで使用すると、[originalCorrected] というフィールドが作成されます。[original] の文字列リストの各要素の先頭にアスタリスク記号がなければ追加されます。
    FIELD originalCorrected := @Transform(original;"var";
    @If(@Begins(var;"*");
    var;
    "*" + var))

クロスリファレンス

LotusScript® 言語の ForAll ステートメント