@IsNotMember (式言語)

文字列または文字列リストが他の文字列リストに含まれていないことを示します。この関数では大文字と小文字は区別されます。

構文

@IsNotMember( textValue ; textListValue ) または @IsNotMember( textListValue1 ; textListValue2 )

パラメータ

textValue

文字列。

textListValue

文字列リスト。

textListValue1

文字列リスト。

textListValue2

文字列リスト。

戻り値

flag

Boolean 型

使用法

リストを処理する場合、@IsNotMember は != を使用した単純な判定とは異なります。!= では、2 つのエンティティが並列演算によって比較され、まったく一致しなかった場合に True が返されます。False が返されるのは、2 つのエンティティを並列演算によって比較した結果、すべてのペアが等価であることが分かった場合だけです。@IsNotMember では並列演算による比較は行われません。この関数では、textListValue1 の各要素が textListValue2 の要素のどれとも一致しないかどうかが総当りで検査され、textListValue1 の要素のいずれかが textListValue2 の要素のいずれかと等価であった場合に False が返されます。

ペアでの比較の詳細については、「リストにおける演算」を参照してください。

@IsNotMember では、最初のパラメータのメンバーが 2 つ目のパラメータに 1 つも含まれていないときに限り True が返されます。

  1. 次の例では、0 が返されます。
    @IsNotMember("computer";"printer":"computer":"monitor")
  2. 次の例では、R&D がフィールド名 [Department] の値のリストにない場合は 1 が返されます。R&D がリストにある場合は 0 が返されます。
    @IsNotMember("R&D";Department) 
  3. 次の例では、現在のユーザーが [SalesDepartment] フィールドのリストに含まれていないときは [Dept] フィールドに Marketing が返されます。含まれているときは、[Dept] フィールドに Sales が返されます。
    FIELD Dept:=@If(@IsNotMember(@Username;SalesDepartment); "Marketing"; "Sales"); 
  4. 次の例では、現在のユーザーに [WebTeam] ロールと [ManageFiles] ロールの両方が割り当てられている場合に 1 が返されます。どちらか一方のロールのみが割り当てられている場合、または両方とも割り当てられていない場合は、0 が返されます。
    @IsNotMember("[WebTeam]":"[ManageFiles]";@UserRoles)